Validación cruzada
La validación cruzada es un método ingenioso para evitar el sobreajuste, como has visto. En este ejercicio vas a calcular la exactitud validada de forma cruzada.
Puedes ponerte manos a la obra: los datos necesarios defaultData y el modelo ya están preparados. La función de exactitud está en las primeras líneas de código: esa es tu función de coste. Déjala tal cual y utilízala en tu llamada a cv.glm() a continuación. ¡Pruébalo!
Este ejercicio forma parte del curso
Machine Learning para analítica de marketing en R
Instrucciones del ejercicio
Usa una validación cruzada de 6 particiones y calcula la exactitud para el modelo
logitModelNew. La función que necesitas escv.glm()del paqueteboot. La exactitud validada de forma cruzada se guarda en la primera posición del elementodeltadel resultado.Compara la exactitud de la validación cruzada con la de la validación in-sample. Recuerda que era
0.7922901.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
library(boot)
# Accuracy function
costAcc <- function(r, pi = 0) {
cm <- confusion.matrix(r, pi, threshold = 0.3)
acc <- sum(diag(cm)) / sum(cm)
return(acc)
}
# Cross validated accuracy for logitModelNew
set.seed(534381)
cv.glm(___, ___, cost = ___, K = ___)$delta[1]