R'de mse nasıl hesaplanır


Bir modelin tahmin doğruluğunu ölçmek için en yaygın kullanılan ölçümlerden biri, ortalama kare hatası anlamına gelen MSE’dir . Aşağıdaki şekilde hesaplanır:

MSE = (1/n) * Σ(gerçek – tahmin) 2

Altın:

  • Σ – “toplam” anlamına gelen süslü bir sembol
  • n – örneklem büyüklüğü
  • gerçek – verilerin gerçek değeri
  • tahmin – tahmin edilen verilerin değeri

MSE değeri ne kadar düşük olursa, model değerleri o kadar doğru tahmin edebilir.

R’de MSE nasıl hesaplanır

Verilerinizin formatına bağlı olarak R’deki bir regresyon modelinin MSE’sini hesaplamak için kullanabileceğiniz iki basit yöntem vardır.

Yöntem 1: MSE’yi regresyon modelinden hesaplayın

Bir senaryoda, uygun bir regresyon modeline sahip olabilirsiniz ve yalnızca modelin MSE’sini hesaplamak isteyebilirsiniz. Örneğin, aşağıdaki regresyon modeline sahip olabilirsiniz:

 #load mtcars dataset
data(mtcars)

#fit regression model
model <- lm(mpg~disp+hp, data=mtcars)

#get model summary
model_summ <-summary(model)

Bu modelin MSE’sini hesaplamak için aşağıdaki formülü kullanabilirsiniz:

 #calculate MSE
mean(model_summ$residuals^2)

[1] 8.85917

Bu bize MSE’nin 8.85917 olduğunu söyler.

Yöntem 2: Tahmin edilen ve gerçek değerler listesinden MSE’yi hesaplama

Başka bir senaryoda, tahmin edilen ve gerçekleşen değerlerin bir listesine sahip olabilirsiniz. Örneğin:

 #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

Bu durumda MSE’yi hesaplamak için aşağıdaki formülü kullanabilirsiniz:

 #calculate MSE
mean((data$actual - data$pred)^2)

[1] 8.85917

Bu bize MSE’nin 8,85917 olduğunu ve önceki yöntemi kullanarak hesapladığımız MSE ile eşleştiğini gösterir.

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir