Среднеквадратическая ошибка (RMSE) — это метрика, которая говорит нам, насколько далеко в среднем наши прогнозируемые значения от наших наблюдаемых значений в модели. Он рассчитывается как:
СКО = √[ Σ(P i – O i ) 2 / n ]
куда:
- Σ — причудливый символ, означающий «сумма».
- P i - прогнозируемое значение для i -го наблюдения
- O i - наблюдаемое значение для i -го наблюдения
- n - размер выборки
В этом руководстве объясняется простой метод расчета RMSE в Python.
Пример: расчет RMSE в Python
Предположим, у нас есть следующие массивы фактических и прогнозируемых значений:
actual= [34, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24]
pred = [37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23]
Чтобы вычислить RMSE между фактическими и прогнозируемыми значениями, мы можем просто взять квадратный корень из функции mean_squared_error() из библиотеки sklearn.metrics:
#import necessary libraries
from sklearn.metrics import mean_squared_error
from math import sqrt
#calculate RMSE
sqrt(mean_squared_error(actual, pred))
2.4324199198
RMSE оказывается равным 2,4324 .
Как интерпретировать среднеквадратичную ошибку
RMSE — полезный способ увидеть, насколько хорошо модель соответствует набору данных. Чем больше RMSE, тем больше разница между прогнозируемыми и наблюдаемыми значениями, а это означает, что модель хуже соответствует данным. И наоборот, чем меньше RMSE, тем лучше модель соответствует данным.
Может быть особенно полезно сравнить RMSE двух разных моделей друг с другом, чтобы увидеть, какая модель лучше соответствует данным.
Дополнительные ресурсы
Калькулятор среднеквадратичной ошибки
Как рассчитать среднеквадратичную ошибку (MSE) в Python
Как рассчитать MAPE в Python