Skip to content
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

Add MFLES Method #810

Merged
merged 37 commits into from
May 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
64be207
add mfles
tblume1992 Apr 8, 2024
87545dc
Add files via upload
tblume1992 Apr 8, 2024
753f8d2
Add files via upload
tblume1992 Apr 8, 2024
99ffdec
remove jit
jmoralez Apr 12, 2024
6e5f3b2
add parameter docstrings
tblume1992 Apr 12, 2024
aab3f70
add optimizer and util funcs
tblume1992 Apr 16, 2024
77a5b9c
export and handle exog with naive
jmoralez Apr 17, 2024
4c4048d
Merge branch 'main' into feature/mfles
jmoralez Apr 17, 2024
4f7025f
add to models
jmoralez Apr 17, 2024
c7da5b6
add auto
jmoralez Apr 18, 2024
af94239
add more docstrings
jmoralez Apr 19, 2024
e1e9dd0
export automfles
jmoralez Apr 19, 2024
35aeb54
make X optional in predict
jmoralez Apr 19, 2024
66f67b5
add missing functions
jmoralez Apr 22, 2024
987e09c
remove try/except in cv
jmoralez Apr 22, 2024
4a946ca
speedup siegel medians
jmoralez Apr 26, 2024
6969bc5
restore jit in siegel and get_basis
jmoralez Apr 26, 2024
9e858da
more speedups
jmoralez May 7, 2024
970d501
fixes
jmoralez May 7, 2024
96d5bf3
improve handling of short series for cv
jmoralez May 8, 2024
7fe835b
Merge branch 'main' into feature/mfles
jmoralez May 8, 2024
a1568e0
add docstrings. update default space
jmoralez May 9, 2024
da87015
Create introduction.md
tblume1992 May 16, 2024
db6a58c
add mfles benchmark tests
tblume1992 May 16, 2024
9ebac5f
Create README.md
tblume1992 May 16, 2024
45fb470
Delete experiments/mfles/introduction.md
tblume1992 May 16, 2024
23c7284
Update README.md
tblume1992 May 16, 2024
d1c815e
raise import error for sklearn. move repr to base class
jmoralez May 16, 2024
3df5517
suppress convergence warningsand handle zero residuals
jmoralez May 16, 2024
608556a
default step_size
jmoralez May 16, 2024
1f6fe31
bump version
jmoralez May 21, 2024
4d76a38
add experiments
jmoralez May 21, 2024
5fc9e76
change default alpha
jmoralez May 23, 2024
3d90c8e
Delete experiments/mfles/statsforecast_auto_mfles_benchmark.ipynb
tblume1992 May 24, 2024
365aee8
added updated benchmark vs autoets
tblume1992 May 24, 2024
4a0389e
Update README.md
tblume1992 May 24, 2024
bf2fb4c
cap setuptools
jmoralez May 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions experiments/mfles/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# MFLES
A method to forecast time series based on Gradient Boosted Time Series Decomposition which treats traditional decomposition as the base estimator in the boosting process. Unlike normal gradient boosting, slight learning rates are applied at the component level (trend/seasonality/exogenous).

The method derives its name from some of the underlying estimators that can enter into the boosting procedure, specifically: a simple Median, Fourier functions for seasonality, a simple/piecewise Linear trend, and Exponential Smoothing.

## Gradient Boosted Time Series Decomposition Theory
The idea is pretty simple, take a process like decomposition and view it as
a type of 'psuedo' gradient boosting since we are passing residuals around
simlar to standard gradient boosting. Then apply gradient boosting approaches
such as iterating with a global mechanism to control the process and introduce
learning rates for each of the components in the process such as trend or
seasonality or exogenous. By doing this we graduate from this 'psuedo' approach
to full blown gradient boosting.

## Some Benchmarks
Average SMAPE from a few M4 datasets
| Dataset | AutoMFLES | AutoETS |
| -------- | ------- | ------- |
| Monthly | 12.91 | 13.59* |
| Hourly | 11.73 | 17.19 |
| Weekly | 8.18 | 8.64 |
| Quarterly | 10.72 | 10.25 |
556 changes: 556 additions & 0 deletions experiments/mfles/statsforecast_auto_mfles_benchmark.ipynb

Large diffs are not rendered by default.

Loading
Loading