Как рассчитать mse в r
Одной из наиболее часто используемых метрик для измерения точности прогнозирования модели является MSE , что означает среднеквадратическую ошибку . Он рассчитывается следующим образом:
MSE = (1/n) * Σ(факт – прогноз) 2
Золото:
- Σ – причудливый символ, означающий «сумма».
- n – размер выборки
- реальный – фактическое значение данных
- предсказание – значение прогнозируемых данных
Чем ниже значение MSE, тем точнее модель способна прогнозировать значения.
Как рассчитать MSE в R
В зависимости от формата ваших данных, вы можете использовать два простых метода для расчета MSE регрессионной модели в R.
Метод 1. Рассчитайте MSE из регрессионной модели.
В одном сценарии у вас может быть подобранная регрессионная модель, и вы просто хотите вычислить MSE модели. Например, у вас может быть следующая модель регрессии:
#load mtcars dataset data(mtcars) #fit regression model model <- lm(mpg~disp+hp, data=mtcars) #get model summary model_summ <-summary(model)
Для расчета MSE этой модели можно использовать следующую формулу:
#calculate MSE
mean(model_summ$residuals^2)
[1] 8.85917
Это говорит нам о том, что MSE составляет 8,85917 .
Метод 2. Рассчитайте MSE из списка прогнозируемых и фактических значений.
В другом сценарии у вас может быть просто список прогнозируемых и фактических значений. Например:
#create data frame with a column of actual values and a column of predicted values data <- data.frame(pred = predict(model), actual = mtcars$mpg) #view first six lines of data head(data) pred actual Mazda RX4 23.14809 21.0 Mazda RX4 Wag 23.14809 21.0 Datsun 710 25.14838 22.8 Hornet 4 Drive 20.17416 21.4 Hornet Sportabout 15.46423 18.7 Valiant 21.29978 18.1
В этом случае для расчета MSE можно использовать следующую формулу:
#calculate MSE
mean((data$actual - data$pred)^2)
[1] 8.85917
Это говорит нам о том, что MSE составляет 8,85917 , что соответствует MSE, которое мы рассчитали с помощью предыдущего метода.