Как рассчитать 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, рассчитанному с помощью предыдущего метода.

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.