ComeçarComece de graça

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

Ver curso

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 pacote boot. A acurácia com validação cruzada fica armazenada na primeira posição do elemento delta do 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]
Editar e executar o código