This repository contains implementations of hierarchical time series forecasting methods from the following papers:
- Baseline: Optimal forecast reconciliation for hierarchical and grouped time series through trace minimization
- Baseline: Regularized regression for hierarchical forecasting without unbiasedness condition
- Baseline: Simultaneously Reconciled Quantile Forecasting of Hierarchically Related Time Series
- Dynamic Combination of Heterogeneous Experts for Hierarchical Time Series (in submission to ICASSP'23)
To setup conda environment for running the program, use the following command:
conda env create -f htsf.yml
Activate the new environment:
conda activate htsf
This repository compares forecasting performance across benchmarked hierarchical time series (HTS) approaches on various real-world and simulated hierarchiclly related time series data.
HTS is a special type of multi-variate time series which has a predefined hierarchical structure between each variant. Below is an example of HTS with 13 variants, each variant could be e.g., a univariate time series that describes sales record at the corresponding level.
Input format on this example:
HTS data
: a Pandas DataFrame object, use numbers within bracket as feature names.Hierarchical structure
: a list that includes the number of children of each non-leaf vertex: [[3], [4, 3, 2]].
- Australian Labour Force
- Predict Future Sales
- Web Traffic Time Series Forecasting
- M3 Competition Data
- AEdemand Data
- Bottom up (BU)
- Trace Minimization (MinT) including shrinkage, sampling and OLS estimators
- Empirical risk minimization (ERM)
- HTS prophet