Hoe mse in r te berekenen
Een van de meest gebruikte maatstaven om de voorspellingsnauwkeurigheid van een model te meten is MSE , wat staat voor mean square error . Het wordt als volgt berekend:
MSE = (1/n) * Σ(werkelijk – voorspelling) 2
Goud:
- Σ – een mooi symbool dat ‘som’ betekent
- n – steekproefomvang
- real – de werkelijke waarde van de gegevens
- voorspelling – de waarde van de voorspelde gegevens
Hoe lager de MSE-waarde, hoe nauwkeuriger een model waarden kan voorspellen.
Hoe MSE in R te berekenen
Afhankelijk van het formaat waarin uw gegevens zich bevinden, zijn er twee eenvoudige methoden die u kunt gebruiken om de MSE van een regressiemodel in R te berekenen.
Methode 1: Bereken de MSE uit het regressiemodel
In één scenario heeft u mogelijk een passend regressiemodel en wilt u eenvoudigweg de MSE van het model berekenen. U kunt bijvoorbeeld het volgende regressiemodel hebben:
#load mtcars dataset data(mtcars) #fit regression model model <- lm(mpg~disp+hp, data=mtcars) #get model summary model_summ <-summary(model)
Om de MSE van dit model te berekenen, kunt u de volgende formule gebruiken:
#calculate MSE
mean(model_summ$residuals^2)
[1] 8.85917
Dit vertelt ons dat de MSE 8.85917 is.
Methode 2: Bereken MSE uit een lijst met voorspelde en werkelijke waarden
In een ander scenario beschikt u mogelijk eenvoudigweg over een lijst met voorspelde en werkelijke waarden. Bijvoorbeeld:
#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
In dit geval kunt u de volgende formule gebruiken om de MSE te berekenen:
#calculate MSE
mean((data$actual - data$pred)^2)
[1] 8.85917
Dit vertelt ons dat de MSE 8.85917 is, wat overeenkomt met de MSE die we met de vorige methode hebben berekend.