Forecast accuracy: MAE, RMSE, MAPE and MASE
Summaries of forecast errors on data the model did not see: MAE and RMSE in the series' units, MAPE in percent, and MASE scaled by the in-sample naive method.
- actual value and forecast for test period
- number of forecast periods evaluated
- length of the TRAINING series
- seasonal period (: scale by the naive method; : by the seasonal naive method)
When to use
- Comparing forecasting methods on a holdout set or with rolling-origin (time-series) cross-validation, never on the data used to fit.
- MAE: typical error in units, robust and easy to explain. RMSE: penalises large errors more; targets the mean. MAPE: unit-free, but only for strictly positive data far from 0. MASE: unit-free and safe for comparisons across series.
Assumptions
- Errors are computed out of sample, with no look-ahead (training data strictly before the forecast origin).
- MAPE requires every actual value to be non-zero (the engine refuses zeros) and is unstable for values near 0.
How to interpret
- MASE < 1: on average more accurate than the one-step naive forecast was in-sample; MASE > 1: worse.
- RMSE ≥ MAE always; a big gap means a few large errors.
- MAPE treats over- and under-forecasts asymmetrically and can reward forecasts that are biased low.
Common mistakes
- Reporting in-sample (fitted) errors as forecast accuracy.
- Averaging MAE across series with different scales.
- Using MAPE for intermittent demand or series that cross zero.
Example
Training series 40, 44, 43, 47, 46; test actuals 50, 54, 49; forecasts 52, 51, 50. Errors −2, 3, −1: MAE = 2, RMSE = 2.16, MAPE = 3.87%. Naive in-sample scale = mean(4, 1, 4, 1) = 2.5, so MASE = 2/2.5 = 0.8.