Closed antoinecarme closed 2 years ago
Impact on plots ?
Demo notebook.
First demo dataset : wineind: Australian total wine sales
https://www.rdocumentation.org/packages/forecast/versions/8.1/topics/wineind
Summary of implementation details :
Updated Options. Only additive models are activated by default Generate all models with all possible decomposition types. Handle slow mode. XGBoost and LightGBM models are optional. Compute trend residues Compute cycle residues Compute AR residues Compute AR/Keras/Intermittent/Scikit models residues Added some functional tests Added sample jupyter notebooks with the same dataset and different model settings (T+S+R, TS+R, TSR, slow) ZeroAR constant value is 1.0 sometimes. ZeroCycle constant value is 1.0 in multiplicative models Updated model formula (informative) Use series.dtype instead of np.dtype(series). CicleCI effects Corrected typing of intermediate columns. Avoid unnecessary SettingWithCopyWarning Handle division by zeros in multiplicative models residues. Compute residues is not that easy!!! Avoid dataframe fragmentation warnings. Added some tests (slooooooow, for debugging purposes) Disable cross-validation by default in slow mode. Can be reenabled manually. Update model complexity. Additive models are simpler than multiplicative ones. Refactored model selection. Probably some issues corrected with very large models.
Added a report on the model selection as a dataframe with the best MAPE models , sorted by complexity.
lEngine.mSignalDecomposition.mModelShortList
Fixed.
PyAF uses an additive signal decomposition of the type \Phi( Trend + Seasonal + AR), where \Phi is a signal transformation.
It is interesting to add multiplicative decompositions to allow more diverse models. A decomposition can be of the form \Phi( Trend Seasonal + AR) or \Phi( Trend Seasonal * AR). More general models can be generated this way and allow exploring more forecast types/spaces.
References :
Target Release : 2022-07-14