Dividimos los datos en dos partes, una para entrenar el modelo y otra para calcular el error de predicción con datos diferentes de los utilizados para entrenar:
\[ \hat f_{RF} = \frac{1}{B}\sum_{b=1}^B \hat f_b(x) \]
## randomForest 4.6-14
## Type rfNews() to see new features/changes/bug fixes.
# numero total de regresores: 7
rf1 = randomForest(consumo ~ ., data = datos_train, mtry = 7, ntree = 500)
Error del modelo:
yp_train_rf1 <- predict(rf1, newdata = datos_train)
y_train = datos_train$consumo
# error cuadratico medio en los datos de training
( MSE_train_rf1 = mean((y_train - yp_train_rf1)^2) )
## [1] 0.3210797
Error de predicción:
# prediccion del consumo con los datos test
yp_test_rf1 = predict(rf1, newdata = datos_test)
# error del test set
y_test = datos_test$consumo
(MSE_test_rf1 = mean((y_test - yp_test_rf1)^2))
## [1] 2.185575
Error del modelo:
yp_train_rf2 <- predict(rf2, newdata = datos_train)
# error cuadratico medio en los datos de training
( MSE_train_rf2 = mean((y_train - yp_train_rf2)^2) )
## [1] 0.3634849
Error de predicción:
# prediccion del consumo con los datos test
yp_test_rf2 = predict(rf2, newdata = datos_test)
# error del test set
(MSE_test_rf2 = mean((y_test - yp_test_rf2)^2))
## [1] 2.19534
Error del modelo:
yp_train_rf3 <- predict(rf3, newdata = datos_train)
# error cuadratico medio en los datos de training
( MSE_train_rf3 = mean((y_train - yp_train_rf3)^2) )
## [1] 0.3326407
Error de predicción:
# prediccion del consumo con los datos test
yp_test_rf3 = predict(rf3, newdata = datos_test)
# error del test set
(MSE_test_rf3 = mean((y_test - yp_test_rf3)^2))
## [1] 2.159857
## %IncMSE IncNodePurity
## cc 23.34714 1144.091032
## cv 13.81813 350.400180
## peso 22.20863 816.553365
## acel 7.52297 36.763574
## ano 40.21519 175.723637
## origen 3.94728 6.947013
## cilindros 10.31921 211.574000
%IncMSE: descenso de la calidad de las predicciones realizadas en los datos out of samples cuando los valores de una variable dada se permutan aleatoriamente (sería como quitarla del modelo).
IncNodePurity: suma del descenso acumulado del RSS al partir por dicha variable.