Orbit
Object Oriented Bayesian Time Series Forecasting
Orbit Development Team
Jul 2021 Uber Meetup
github: https://github.com/uber/orbit
doc: https://orbit-ml.readthedocs.io/en/stable/
blog post: https://eng.uber.com/orbit/
previous ISF talk: https://youtu.be/LXDpq_iwcWY
tutorial notebook: link
Agenda
Motivation
Introduction
Package Design
Performance
Hands-on
Motivation
Bayesian methods provide an intuitive way to connect prior belief (information) with new data
The Bayesian approach in general and for times series in particular can
Motivation
Orbit aims to simplify Bayesian time-series workflow with powerful APIs
Your Business
Problem
Stan
Pyro
Motivation
An overview of Bayesian time-series workflow
Motivation
Compare to other solutions in Bayesian time-series
ABILITY TO GENERALIZE
MODEL IMPLEMENTATION
prophet
bsts
orbit
pymc3
pyro
tensorflow
probability
Introduction
Why Orbit?
Introduction
Time series modeling with ease
Intuitive initialize-fit-predict interface while Orbit doing the heavy lifting under the hood.
Initialize
Fit and Predict
Introduction
Allows user choice of
MAP
MCMC
SVI
PPD
Pior
Allow prediction decomposition
Introduction
Orbit predictions can be decomposed in a structural way
Package Design
Use composition and inheritance to build customized model
Package Design
Follow initialize-fit-predict convention along with the object-oriented design
Initialize | Fit | Predict | Explore and Validate |
|
|
|
|
from estimation template
from base model
Package Design
Diagnose the fitted models with built-in backtest modules
Performance
Benchmark against other models with built-in backtest modules
Performance
More robust check behind the scene
Meet Michelangelo: Uber’s Machine Learning Platform https://eng.uber.com/michelangelo-machine-learning-platform
A Peek into the Math for Damped Local Trend (DLT)
Hands-on
Forecasting Equations
Update Equations
Hands-on
A couple lines from data to forecast and diagnostics
Initialize
Fit and Predict
Plot
Hands-on
Consistent interface for all models
Exponential Smoothing (ETS)
Local Global Trend (LGT)
Damped Local Trend (DLT)
Kernel Time-based Regression (KTR-Lite)
Hands-on
Support for different types of regression penalties
Regular Regression
Fixed/Auto Ridge
Lasso
Hands-on
Posterior distributions and model convergence check
Integrated with arviz
Available on arxiv and github
Code on Github
Paper with the code
Post on Uber Engineering Blog
The Team and Alumni
Team at Uber
Alumni
Roadmap
Q&A
Thanks for joining!
Take a minute and fill out the survey for feedbacks!
Survey Link & QR Code: https://forms.gle/ZXqSqXahRS7G3W157