Skip to content

v0.3.0

Compare
Choose a tag to compare
@AzulGarza AzulGarza released this 02 Mar 18:15
· 62 commits to main since this release

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 and num_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 for normality and permbu 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

Full Changelog: v0.2.1...v0.3.0