Skip to content
ML Academy

Time series and forecasting · insight-1255

Bag an ETS model with bootstrapped STL remainders when single fits are unstable

Evidence type
empirical finding
Difficulty
medium
Roles
Data scientist, ML engineer
Industries
retail, energy, cross-industry

Summary: situation, action, reason, boundary

  1. Situation

    Monthly ETS forecasts for 400 series change noticeably each time the models are refitted, though the history changed by one point.

  2. Action

    Transform if needed, decompose with STL, block-bootstrap the remainder, add it back to trend and seasonality, fit ETS to each bootstrapped series, and average the forecasts. Compare with plain ETS and an equal-weight ETS plus ARIMA average over rolling origins, and budget for the added compute.

  3. Reason

    Averaging forecasts over many similar series reduces variance from parameter and model-selection noise, and the published M3 results found bagged ETS to be consistently better than the original.

  4. Boundary

    Monthly or quarterly series where ETS is the production model and refit stability matters.

Symptom or risk

A single fit is sensitive to noise in the latest observations, so planners see forecast churn that is estimation noise rather than information.

Exceptions

Series that are very short give the bootstrap too little remainder to resample.

Trade-offs

Bagging multiplies fitting time by the number of bootstrap series; the FPP3 example uses 100.

Pitfalls

Using a block size shorter than the autocorrelation in the remainder, which destroys dependence the bootstrap should keep.

Lessons and concepts

Claims and their sources