Validação cruzada
Validação cruzada é uma técnica que tenta verificar o desempenho do modelo em dados de holdout. Ela é usada para garantir que o desempenho no teste não foi causado por algum problema específico na divisão dos dados. Neste exercício, você vai usar implementações do sklearn para rodar uma validação cruzada K-fold usando o módulo KFold() para avaliar precisão e recall de uma árvore de decisão.
X_train, y_train, X_test, y_test estão disponíveis no seu workspace. pandas como pd, numpy como np e sklearn também estão disponíveis no seu workspace. KFold() e cross_val_score() de sklearn.model_selection também estão disponíveis.
Este exercício faz parte do curso
Prevendo CTR com Machine Learning em Python
Instruções do exercício
- Crie um classificador de árvore de decisão.
- Configure uma validação cruzada K-Fold com quatro divisões e atribua-a a
k-fold. - Use
k_foldpara rodar a validação cruzada comcross_val_score()para avaliar a precisão e o recall do seu modelo (e não usandorecall_score()ouprecision_score()!).
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Create model
clf = ____
# Set up k-fold
k_fold = ____(n_splits = 4, random_state = 0, shuffle = True)
# Evaluate precision and recall for each fold
precision = ____(
clf, X_train, ____, cv = ____, scoring = 'precision_weighted')
recall = ____(
clf, X_train, ____, cv = ____, scoring = 'recall_weighted')
print("Precision scores: %s" %(precision))
print("Recall scores: %s" %(recall))