Package: orbit-ml
Join Slack|Documentation|Blog - Intro|Blog - v1.1User NoticeThe default page of the repo is ondevbranch. To install the dev version, please check the sectionInstalling from Dev Branch. If you are looking for astable version, please refer to themasterbranchhere.DisclaimerThis projectis stable and being incubated for long-term support. It may contain new experimental code, for which APIs are subject to change.requires PyStan as a system dependency. PyStan is licensed underGPLv3, which is a free, copyleft license for software.Orbit: A Python Package for Bayesian ForecastingOrbit is a Python package for Bayesian time series forecasting and inference. It provides a
familiar and intuitive initialize-fit-predict interface for time series tasks, while utilizing probabilistic programming languages under the hood.For details, check out our documentation and tutorials:HTML (stable):https://orbit-ml.readthedocs.io/en/stable/HTML (latest):https://orbit-ml.readthedocs.io/en/latest/Currently, it supports concrete implementations for the following models:Exponential Smoothing (ETS)Local Global Trend (LGT)Damped Local Trend (DLT)Kernel Time-based Regression (KTR)It also supports the following sampling/optimization methods for model estimation/inferences:Markov-Chain Monte Carlo (MCMC) as a full sampling methodMaximum a Posteriori (MAP) as a point estimate methodVariational Inference (VI) as a hybrid-sampling method on approximate
distributionInstallationInstalling Stable ReleaseInstall the library either from PyPi or from the source withpip.
Alternatively, you can also install it from Anaconda withconda:With pipInstalling from PyPI$pipinstallorbit-mlInstall from source$gitclonehttps://github.com/uber/orbit.git
$cdorbit
$pipinstall-rrequirements.txt
$pipinstall.With condaThe library can be installed from the conda-forge channel using conda.$condainstall-cconda-forgeorbit-mlInstalling from Dev Branch$pipinstallgit+https://github.com/uber/orbit.git@devQuick Start with Damped-Local-Trend (DLT) ModelFULL Bayesian Predictionfromorbit.utils.datasetimportload_iclaimsfromorbit.modelsimportDLTfromorbit.diagnostics.plotimportplot_predicted_data# log-transformed datadf=load_iclaims()# train-test splittest_size=52train_df=df[:-test_size]test_df=df[-test_size:]dlt=DLT(response_col='claims',date_col='week',regressor_col=['trend.unemploy','trend.filling','trend.job'],seasonality=52,)dlt.fit(df=train_df)# outcomes data framepredicted_df=dlt.predict(df=test_df)plot_predicted_data(training_actual_df=train_df,predicted_df=predicted_df,date_col=dlt.date_col,actual_col=dlt.response_col,test_actual_df=test_df)DemoNowcasting with Regression in DLT:Backtest on M3 Data:More examples can be found undertutorialsandexamples.ContributingWe welcome community contributors to the project. Before you start, please read ourcode of conductand check outcontributing guidelinesfirst.VersioningWe document versions and changes in ourchangelog.ReferencesPresentationsCheck out the ongoingdeckfor scope and roadmap of the project. An older deck used in themeet-upduring July 2021 can also be foundhere.CitationTo cite Orbit in publications, refer to the following whitepaper:Orbit: Probabilistic Forecast with Exponential SmoothingBibtex:@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}
}PapersBingham, E., Chen, J. P., Jankowiak, M., Obermeyer, F., Pradhan, N., Karaletsos, T., Singh, R., Szerlip,
P., Horsfall, P., and Goodman, N. D. Pyro: Deep universal probabilistic programming. The Journal of Machine Learning
Research, 20(1):973–978, 2019.Hoffman, M.D. and Gelman, A. The No-U-Turn sampler: adaptively setting path lengths in Hamiltonian Monte Carlo.
J. Mach. Learn. Res., 15(1), pp.1593-1623, 2014.Hyndman, R., Koehler, A. B., Ord, J. K., and Snyder, R. D. Forecasting with exponential smoothing:
the state space approach. Springer Science & Business Media, 2008.Smyl, S. Zhang, Q. Fitting and Extending Exponential Smoothing Models with Stan.
International Symposium on Forecasting, 2015.Related projectsPyroStanRlgtforecastprophet