Validação cruzada
Como você viu, a validação cruzada é uma forma inteligente de evitar overfitting. Neste exercício, você vai calcular a acurácia com validação cruzada.
Pode seguir em frente: os dados necessários defaultData e o modelo já estão prontos para você. A função de acurácia está nas primeiras linhas de código. Essa é a sua função de custo. Deixe-a como está e use-a na sua chamada a cv.glm() abaixo. Experimente!
Este exercício faz parte do curso
Machine Learning for Marketing Analytics in R
Instruções do exercício
Use uma validação cruzada com 6 folds e calcule a acurácia para o modelo
logitModelNew. A função que você precisa écv.glm()do pacoteboot. A acurácia com validação cruzada fica armazenada na primeira posição do elementodeltado resultado.Compare a acurácia da validação cruzada com a da validação in-sample. Lembre-se: foi
0.7922901.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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]