And now for the great thing ... Prophet uses Stan underneath [1] and thus is built on foundations of 'regular' Bayesian statistics. Andrew Gelman has written about Prophet as well [2].<p>After reading this blog I am tempted to get the ML for time series book though. I'd love to try and compare some less than trivial examples with covariates involved.<p>[1] <a href="https://peerj.com/preprints/3190/" rel="nofollow">https://peerj.com/preprints/3190/</a><p>[2] <a href="https://statmodeling.stat.columbia.edu/2017/03/01/facebooks-prophet-uses-stan/" rel="nofollow">https://statmodeling.stat.columbia.edu/2017/03/01/facebooks-...</a>
Basis function regression is a very under-appreciated method for producing time series forecasts. I've found that it beats most of the methods described in this article. Maybe I should make a blog post...
Normally the method for dealing with 'time series' is really just finding ways to turn a non-stationary distribution into a stationary distribution, where you can then apply classic statistical methods on them. So you're just finding ways to factor out the time component in the data so you can use the standard non-time sensitive regression models on the transformed data.<p>I don't think it's untill you get to the NN based models that they start treating time as a first-class component in the model.<p>* If I'm wrong please explain why instead of downvoting
Here are some old references for the problem of the OP:<p>David R. Brillinger,
<i>Time Series Analysis:
Data Analysis and Theory,
Expanded Edition</i>,
ISBN 0-8162-1150-7,
Holden-Day,
San Francisco,
1981.<p>George E. P. Box and
Gwilym M. Jenkins,
<i>Time Series Analysis ---
Forecasting and Control:
Revised Edition</i>,
ISBN 0-8162-1104-3,
Holden-Day,
San Francisco,
1976.<p>Brillinger was a John Tukey
student at Princeton and
long at Berkeley.
I mostly feel these methods are quite overkill for most applications. As a purist, I'd recommend starting out with a simple linear regression and then moving on to adding methods to cover the letters of SARIMA by showing the need for each. It may not be as flashy, but linear regression is a stupidly powerful and very cheap tool for all kinds of situations.
I really recommend Prophet as an easy to use option like the article says.<p>I needed anomaly detection for prometheus metrics integrated with grafana for marking "anomalous" regions so the model doesn't learn them.<p>Took me a week to set it all up including packaging up as a Microservice and deploying.
In the multivariate time series forecasting problem i found out that fine-tuned xgboost (and its variants) performs much better than fbprophet, sarimax, RNN variations. Predicting time series with RNN is like killing a bird for bazooka.
I really appreciate the philosophy of defining metric, and measuring performance going from simple to complex methods.<p>I've also used Prophet library, and find it works well out of the box.