ComenzarEmpieza gratis

Validación cruzada de 10 pliegues

Como viste en el vídeo, una forma mejor de validar modelos es usar múltiples conjuntos de prueba sistemáticos en lugar de una sola partición aleatoria de entrenamiento/prueba. Por suerte, el paquete caret lo hace muy fácil:

model <- train(y ~ ., my_data)

caret admite muchos tipos de validación cruzada, y puedes indicar el tipo y el número de pliegues con la función trainControl(), que se pasa al argumento trControl de train():

model <- train(
  y ~ ., 
  my_data,
  method = "lm",
  trControl = trainControl(
    method = "cv", 
    number = 10,
    verboseIter = TRUE
  )
)

Es importante tener en cuenta que el método de modelado se pasa a la función principal train() y el método de validación cruzada se pasa a la función trainControl().

Este ejercicio forma parte del curso

Machine Learning con caret en R

Ver curso

Instrucciones del ejercicio

  • Ajusta una regresión lineal para modelar price usando todas las demás variables del conjunto de datos diamonds como predictoras. Utiliza la función train() y validación cruzada de 10 pliegues. (Ten en cuenta que hemos tomado un subconjunto del conjunto de datos diamonds completo para acelerar esta operación, pero sigue llamándose diamonds.)
  • Imprime el modelo en la consola y examina los resultados.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Fit lm model using 10-fold CV: model
model <- train(
  ___, 
  ___,
  method = "lm",
  trControl = trainControl(
    method = "cv", 
    number = ___,
    verboseIter = TRUE
  )
)

# Print model to console
Editar y ejecutar código