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](https://arxiv.org/abs/2207.03517) to the Journal of Machine Learning Research.
What's Changed
* [FEAT] Ignore jupyter notebooks as part of `languages` in https://github.com/Nixtla/hierarchicalforecast/pull/120
* [FEAT] Factorizing reverse_sigmah from HierarchicalReconciliation in https://github.com/Nixtla/hierarchicalforecast/pull/121
* [FEAT] Decoupling `_reconcile`, from `_get_PW_matrices`. in https://github.com/Nixtla/hierarchicalforecast/pull/123
* [FEAT] PW initialization in https://github.com/Nixtla/hierarchicalforecast/pull/124
* Prob Reconciler's tests location in https://github.com/Nixtla/hierarchicalforecast/pull/125
* Core Refactorization + Reconcilers.fit in https://github.com/Nixtla/hierarchicalforecast/pull/128
* CircleCI in https://github.com/Nixtla/hierarchicalforecast/pull/129
* Shared `HReconciler` + `predict` method in https://github.com/Nixtla/hierarchicalforecast/pull/131
* [FEAT] Reconciler's sample method in https://github.com/Nixtla/hierarchicalforecast/pull/133
* [FEAT] CRPS, MSSE and Energy Score metrics in https://github.com/Nixtla/hierarchicalforecast/pull/134
* time tracking utils in https://github.com/Nixtla/hierarchicalforecast/pull/135
* [FEAT] Faster creation of ProbReconciler's ordered levels in https://github.com/Nixtla/hierarchicalforecast/pull/137
* [FIX] Matplotlib and numba errors in https://github.com/Nixtla/hierarchicalforecast/pull/142
* [FIX] Circle ci integration in https://github.com/Nixtla/hierarchicalforecast/pull/141
* [BUG] PERMBU `unique_id` order and `num_samples` in https://github.com/Nixtla/hierarchicalforecast/pull/143
* [Bug] Fixed `S_df` categorical index ordering in https://github.com/Nixtla/hierarchicalforecast/pull/145
* [FEAT] seed/num_samples usage possibility + MSSE evaluation example in https://github.com/Nixtla/hierarchicalforecast/pull/147
* [FEAT] Faster `aggregate` function + Gaussian Log Score in https://github.com/Nixtla/hierarchicalforecast/pull/150
* [FIX] Documentation + Update bib reference in https://github.com/Nixtla/hierarchicalforecast/pull/156
* light improvements to readme in https://github.com/Nixtla/hierarchicalforecast/pull/157
* [FIX] Use micromamba instead of miniconda (CI) in https://github.com/Nixtla/hierarchicalforecast/pull/167
* [BUG] Added `level` domain protection for `normality` and `permbu` methods in https://github.com/Nixtla/hierarchicalforecast/pull/166
* Level domain protection in https://github.com/Nixtla/hierarchicalforecast/pull/169
* Omit expensive linear algebra when not necessary in MinTrace in https://github.com/Nixtla/hierarchicalforecast/pull/171
* [FIX] Add correct github link in https://github.com/Nixtla/hierarchicalforecast/pull/173
* [DOCS] Improved index, intro, quick start, and geographical forecasts in https://github.com/Nixtla/hierarchicalforecast/pull/175
New Contributors
* melopeo made their first contribution in https://github.com/Nixtla/hierarchicalforecast/pull/157
* mcsqr made their first contribution in https://github.com/Nixtla/hierarchicalforecast/pull/171
* cchallu made their first contribution in https://github.com/Nixtla/hierarchicalforecast/pull/175
**Full Changelog**: https://github.com/Nixtla/hierarchicalforecast/compare/v0.2.1...v0.3.0