Releases: Nixtla/hierarchicalforecast
Releases · Nixtla/hierarchicalforecast
v0.4.3
New Features
- [FEAT] Sparse middle-out reconciliation via
MiddleOutSparse
@christophertitchen (#281) - [FEAT] Add support for exogenous variables in utils.aggregate @KuriaMaingi (#297)
- [FEAT] Efficient Schafer-Strimmer for MinT @elephaint (#280)
- [FEAT] Improve residuals-based reconciliation stability and faster ma.cov @elephaint (#295)
Dependencies
- As of v0.4.3, hierarchicalforecast no longer officially supports Python 3.8, which is EOL.
v0.4.2
New Features
- Add sparse top-down reconciliation via
TopDownSparse
@christopher-titchen (#277) - Decrease wall time of
_get_PW_matrices
forBottomUp
andBottomUpSparse
@christopher-titchen (#276) - Efficient MinTrace (ols/wls_var/wls_struct/mint_cov/mint_shrink) @elephaint (#264)
Documentation
- Create CODE_OF_CONDUCT.md @tracykteal (#267)
- Fix evaluate argument in readme @jmoralez (#257)
- Update ml frameworks example @jmoralez (#254)
- Add step to trigger mintlify workflow @rpmccarter (#259)
Dependencies
- Remove numpy pin @DManowitz (#272)
Enhancement
v0.4.1
v0.4.0
New Features
- Sparse Reconciliation @mcsqr (#210)
- [FEAT] Probabilistic Forecasting Util Functions @dluuo (#195)
- [FEAT] NeuralForecast Compatibility and Example Notebook @dluuo (#188)
Bug Fixes
- fix aggregate function @jmoralez (#232)
- [FIX] Aggregate unbalanced datasets @FedericoGarza (#190)
- Fix assignment to unbound variable @nickto (#187)
Documentation
- [Doc] Updated FavoritaComplete evaluation @kdgutier (#220)
- [Doc] Added baseline version detail for replicability @kdgutier (#218)
- [Doc] Added HierE2E Favorita baseline @kdgutier (#217)
- [Doc]
aggregate
showdoc + external reconciliation tutorials' improvements @kdgutier (#214) - [Doc] First iteration of HierE2E baseline execution + Documentation detail improvements @kdgutier (#212)
- [Doc] Added baseline experiments and minor protection to Normality reconciler @kdgutier (#203)
- [FEAT] HierarchicalForecast With GluonTS Example Notebook @dluuo (#200)
- [Doc] Fix intro installation typo @kdgutier (#193)
Enhancement
v0.3.0
Computational Efficiency Improvements
- New
aggregate
function that generates the hierarchical time series and the aggregation constraints matrix. Improve from$O((N_{a}+N_{b})^{2}log(N_{a}+N_{b}))$ to$O((N_{a}+N_{b})$ . - Vectorization of the creation of probabilistic prediction levels, before done in for loops now performed in a single vectorized numpy call.
Evaluation Utilities
- Added scaled continuous ranked probability scores (sCRPS).
- Added mean scaled squared errors (MSSE).
- Added energy score metric.
- Added random sampling outputs to probabilistic reconcilers.
- Added
core.bootstrap_reconcile
method to apply over different random seeds the reconcilers and generate standard deviations.
Refactorization of the HierarchicalForecast classes
- Overall improvement of the
core.reconciliation
method. - Decoupled the probabilistic reconciler classes from the mean reconciler classes.
- Decoupled fit protections from reconciliation.
- Reconciler's inputs now mostly receive mostly numpy arrays.
- Simplified and deprecated dependencies.
Documentation Improvements
- Installation guide.
- New introduction tutorial with minimal, intuitive example.
- Tutorial on evaluation of reconciliation probabilistic reconciliation baselines.
New Collaborators and HierarchicalForecast Paper
- We started a fruitful collaboration with Souhaib Ben Taieb
and Shanika Wickramasuriya. - We submitted the HierarchicalForecast library paper to the Journal of Machine Learning Research.
What's Changed
- [FEAT] Ignore jupyter notebooks as part of
languages
in #120 - [FEAT] Factorizing reverse_sigmah from HierarchicalReconciliation in #121
- [FEAT] Decoupling
_reconcile
, from_get_PW_matrices
. in #123 - [FEAT] PW initialization in #124
- Prob Reconciler's tests location in #125
- Core Refactorization + Reconcilers.fit in #128
- CircleCI in #129
- Shared
HReconciler
+predict
method in #131 - [FEAT] Reconciler's sample method in #133
- [FEAT] CRPS, MSSE and Energy Score metrics in #134
- time tracking utils in #135
- [FEAT] Faster creation of ProbReconciler's ordered levels in #137
- [FIX] Matplotlib and numba errors in #142
- [FIX] Circle ci integration in #141
- [BUG] PERMBU
unique_id
order andnum_samples
in #143 - [Bug] Fixed
S_df
categorical index ordering in #145 - [FEAT] seed/num_samples usage possibility + MSSE evaluation example in #147
- [FEAT] Faster
aggregate
function + Gaussian Log Score in #150 - [FIX] Documentation + Update bib reference in #156
- light improvements to readme in #157
- [FIX] Use micromamba instead of miniconda (CI) in #167
- [BUG] Added
level
domain protection fornormality
andpermbu
methods in #166 - Level domain protection in #169
- Omit expensive linear algebra when not necessary in MinTrace in #171
- [FIX] Add correct github link in #173
- [DOCS] Improved index, intro, quick start, and geographical forecasts in #175
New Contributors
- @melopeo made their first contribution in #157
- @mcsqr made their first contribution in #171
- @cchallu made their first contribution in #175
Full Changelog: v0.2.1...v0.3.0
v0.2.1
What's Changed
- Introduction tutorial in #102
- [FIX] Docs source links in #107
- [FIX] General
plot_hierarchical_predictions_gap
in #106 - Doc: Updated ReadMe in #111
- FEAT: add installation guide in #114
- FEAT: Documentation Outline in #112
- [FIX] Add correct link to StatsForecast in #115
- [FIX] Deprecate mycolorpy dependency in #116
- [FEAT] Add conda badge to readme in #117
Full Changelog: v0.2.0...v0.2.1
v0.2.0
v0.1.3
What's Changed
- Utils documentation title change + H. aggregation gap plot in #71
- PERMBU in #73
- [FEAT] Non-negative reconciliation in #78
- [FIX] Examples numbering in #84
- [FEAT,BREAKING CHANGE] Add PERMBU integration to HierarchicalReconciliation class in #83
- [FEAT] Add test same series Y and S in #94
Full Changelog: v0.1.2...v0.1.3
v0.1.2
v0.1.1
What's Changed
- Improved documentation, contribution instructions and .gitignore in #57
- Intro paragraph for documentation, tutorial titles, gitignore protect… in #60
- Fixed missing documentation plots, working README example in #61
- [FIX] Plot single-valued time series in #64
- [FIX] h=1 evaluation in #63
- [FIX] Make Y_df optional for the reconcile method in #65
Full Changelog: v0.1.0...v0.1.1