A zero average error can still hide large misses
Suppose two models forecast slippage for the same four synthetic orders. Define the signed error as realised slippage minus forecast slippage; a negative error means the forecast overstated the realised cost.
| Order | Model A error (bps) | A squared error (bps²) | Model B error (bps) | B squared error (bps²) |
|---|---|---|---|---|
| 1 | ||||
| 2 | ||||
| 3 | ||||
| 4 |
Both models have mean signed error zero and MAE of basis point. Their RMSEs differ:
Model A's single basis point miss contributes of its basis points squared of total error. Model B spreads its absolute error evenly. RMSE prefers B on these observations, even though MAE ties. Neither score tells us whether underestimating costs is more damaging than overestimating them: squaring erases the sign.
For the same unweighted observations, RMSE is at least MAE; equality holds when all absolute errors are equal. It is also nonnegative and is zero exactly when every scored error is zero. It is not the average error magnitude in the ordinary arithmetic sense, nor is it the largest error or a bound on the next error.
What the root changes—and what it preserves
On the same evaluation cases, minimising RMSE gives the same ranking as minimising MSE: square root is strictly increasing. The root changes the reporting scale, not which prediction vector wins. A return forecast expressed in decimal returns will have a numerically different RMSE from the same forecast expressed in basis points; model comparisons need consistent units, targets and horizons.
A population version is
where is a random prediction error with a finite second moment. It differs from . Its squared value satisfies
Count scored cases, or estimate a noise variance?
The in empirical RMSE is the number of scored cases. It does not become just because predictions came from a fitted model.
A different question arises when estimating the disturbance variance in an ordinary linear regression. With fitted coefficients including the intercept, a full-rank design, , a correctly specified conditional mean and conditionally uncorrelated disturbances of common variance , the familiar estimator is
This degrees-of-freedom correction makes unbiased for under those assumptions. The residual standard error is ; taking its root does not itself make an unbiased estimator of . Empirical training RMSE remains . For simple regression with an intercept, .
Always read the stated convention: some regression reports use “root MSE” for the degrees-of-freedom-adjusted residual standard error. A number and a label alone may not identify which denominator was used.
A useful forecast report needs more than one number
Sources
- Christopher M. Bishop, Pattern Recognition and Machine Learning, Springer, 2006, §1.1, pp. 6–8, especially equation (1.3): RMS error, original target units and separate training/test evaluation.
- Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani and Jonathan Taylor, An Introduction to Statistical Learning: with Applications in Python, Springer, 2023, §3.1.2, pp. 75–76: disturbance assumptions and residual standard error with denominator in simple linear regression.
- Rob J Hyndman and George Athanasopoulos, Forecasting: Principles and Practice, third edition, §5.8: test-set errors, scale-dependent metrics and the RMSE/MAE distinction.
- scikit-learn documentation, root_mean_squared_error: regression scoring API, nonnegative score and zero-error optimum.