-
Notifications
You must be signed in to change notification settings - Fork 207
[ENH] Add Basic ARIMA model #2860
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
…oducing the expected results
Thank you for contributing to
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good start, some tidying up needed and we should think about utils structure
…into arb/base_arima
Reference Issues/PRs
Split out of #2828
Basis for #2838
What does this implement/fix? Explain your changes.
Adds basic ARIMA forecaster, which fits phi, theta (and optionally c) parameters, but takes in the model to use e.g. ARIMA(p,d,q) and an option to include a constant term.
I have restructured this for numba purposes. The parameters were found using a bespoke implementation of Nelder Mead, sensibly generalised for any loss function. However, doing this means it cannot be cached, which massively slows it down. I have moved Nelder Mead back into the forecasting module, and have introduced an integer switch dispatch function to facilitate caching.
This currently means some duplication of code in the loss_function and in ARIMA. This is usually the price for writing numba.