2017-08-28 4 views
1

Pourquoi le résultat 1 est différent du résultat 2? Intuitivement, je pense que $ RMSE est l'erreur quadratique moyenne des prévisions, mais je suppose que ce n'est pas le cas.qu'est-ce que RMSE dans l'objet de résultat dans le caret du paquet R?

library(caret) 
x <- data.frame(x = rnorm(15)) 
y <- x$x + rnorm(15) 
myTimeControl <- trainControl(method = "timeslice",initialWindow = 10, horizon = 1, fixedWindow = FALSE, savePredictions=TRUE) 
truc <- train(x,y,method = "lm",metric= "RMSE",trControl =myTimeControl,preProc = c("center", "scale")) 
result1 <- sqrt(mean((truc$pred$pred-truc$pred$obs)^2)) 
result2 <- truc$results$RMSE 
result1 
result2 

Répondre

1

Si vous inversez moyenne et sqrt, vous obtenez le même résultat ... Quelque chose est bizarre avec la formule de caret ... En fait, vous avez fait une observation intéressante ...

result1 <- mean(sqrt((truc$pred$pred-truc$pred$obs)^2)) 
+0

Hmm, il est pas MSE mais MAE alors. Peut-être que je devrais dire à l'auteur. merci beaucoup, je pensais devenir fou! –