The unreasonable difficulty of time series forecasting A new benchmark study comparing statistical, neural, tree-based, and LLM-based models across multiple time series datasets finds that simple statistical baselines and zero-shot foundation models outperform sophisticated deep learning approaches for series with strong seasonality, while many advanced models produce forecasts no better than naive predictors. The analysis attributes the difficulty of time series forecasting to the fundamental difference between learning from a data generating process (a single trajectory) versus i.i.d. samples from a distribution. The Unreasonable Difficulty of Time Series Forecasting Preview I’ve been thinking recently about what makes time series forecasting problems so difficult compared to other sequence learning tasks or IID Machine Learning problems. First some motivating baselines illustrating the difficulty of the forecasting problem. I ran a series of models - statistical Naive, AutoARIMA, Theta, MSTL, Seasonal-Naive - linear/transformer neural DLinear, NLinear, PatchTST - a gradient-boosted tree LightGBM - zero-shot foundation models Chronos, TimesFM, TTM - “AI” LLM prompted to continue numeric sequence Claude Opus, Haiku against the benchmark datasets - m4 hourly, m4 daily - etth - exchange - electricity - bitcoin These are interactive plots, click legend to hide a line, double click to isolate. Note that the historical sections have been truncated to 3x the forecasting window, for better visualisation. Results There are many lines to look at, but the benchmark study’s main takeaway is that for series with strong, stable seasonality such as m4 hourly, the simple statistical baselines Seasonal-Naive, MSTL and the zero-shot foundation models win by large margins. However, the sophisticated models tend to be completely off for many time series tasks and are not much better than naive predictors because their predictions may trend in the completely wrong direction. We probably have some intuitions like, the forecast doesnt take into account causal information which is necessary for prediction, especially with real world data like exchange rates. But even with those “features” people are not naively making a killing in the market. Also, for many ML problems, we don’t have full information about the casual factors either yet are able to do something reasonable, or at least better than a random walk. Hence, this post investigates the nature of the forecasting problem and what makes it so much more difficult than classical machine learning. What’s going on here? Why Time Series Forecasting is hard Problem Definition Forecasting is the act of estimating the future values of a random variable or a set of variables based on a historical sequence of observations, $y {1:t}$. The goal is to learn a forecasting function $f$, which predicts the value of the variable at a future time $t + h$, where $h \ge 1$ is called the forecast horizon. \ \hat{y} {t+h} = f y {1:t} \ There are several variations of this problem definition, if predicting with - exogenous variables, then we have $f y {1:t}, x {1:t} $, the forecast also conditions on external drivers $x$ weather, promotions, prices observed alongside the series. - probabilistic forecast instead of point forecast , then $p y {t+h} \mid y {1:t} $. - multiple series, then $f y {1:t}, v {1:t}, \cdots $. This is the setting for foundation models. Time Series data comes from a Data Generating Process and is not iid With today’s state of ML, we have very powerful and established algorithms the deep learning enterprise for learning a complex non-linear predictor $f \theta: X \rightarrow Y$, where $ x, y \sim p x, y $, for both classification and next-token prediction, by maximium likelihood estimation training, which minimizes expected loss over the training dataset: \ \begin{equation} \min \theta \mathbb{E} { x, y \sim p x, y } \ell f \theta x , y \approx \min \theta \frac{1}{n}\sum {i=1}^n \ell f \theta x i , y i \end{equation}\ However, time series differs fundamentally from this setup, because of the relationship between signal and predicion in the data. In time series, we are observing a single realization/trajectory through time over $t$ time steps, not $n$ samples. In contrast, i.i.d machine learning gets $n$ independent samples from $p$, the data generating distribution. Time series data comes from a Data Generating Process rather than a Data Generating Distribution , and the crucial implication is that the sequence of data is a joint probability distribution over the entire path, not individual iid data points. \begin{equation} p y 1, y 2, \cdots, y t = p y 1 \prod {i=2}^t p y i | y {i-1}, y {i-2}, \cdots, y 1 \end{equation} This factorization holds for any joint distribution. But under the iid assumption of classical ML framing, conditioning on the past is dropped which greatly simplifies the prediction problem. A lot of our learning assumptions from eq 1 do not hold and time series introduces unique challenges for learning. In particular, - Time Series is Low signal to Noise feature poor - Time Series has a “lack of data” - Time Series suffers much more from distribution shift 1. Time Series is low signal to noise feature poor One major difference to machine learning problems, is that in time series, the signal is scarce $f y t \mid y {