About Orbit¶
Orbit is a Python package for Bayesian time series modeling and inference. It provides a familiar and intuitive initialize-fit-predict interface for working with time series tasks, while utilizing probabilistic programing languages under the hood.
Currently, it supports the following models:
Exponential Smoothing (ETS)
Local Global Trend (LGT)
Damped Local Trend (DLT)
It also supports the following sampling methods for model estimation:
Markov-Chain Monte Carlo (MCMC) as a full sampling method
Maximum a Posteriori (MAP) as a point estimate method
Variational Inference (VI) as a hybrid-sampling method on approximate distribution
Quick Example¶
Orbit APIs follow a Scikit-learn stype API design, with a user-friendly interface. After instantiating a model object, one can use .fit and .predict for model training and prediction. Below is a quick illustration using the DLT model.
from orbit.models.dlt import DLTFull
dlt = DLTFull(
response_col='claims',
date_col='week',
regressor_col=['trend.unemploy', 'trend.filling', 'trend.job'],
seasonality=52,
)
dlt.fit(df=train_df)
predicted_df = dlt.predict(df=test_df)
Citation¶
To cite Orbit in publications, refer to the following whitepaper:
Orbit: Probabilistic Forecast with Exponential Smoothing
Bibtex:
@misc{ng2020orbit, title={Orbit: Probabilistic Forecast with Exponential Smoothing}, author={Edwin Ng, Zhishi Wang, Huigang Chen, Steve Yang, Slawek Smyl}, year={2020}, eprint={2004.08492}, archivePrefix={arXiv}, primaryClass={stat.CO}}