Regularização
Regularização é o processo de adicionar informação a um modelo para evitar overfitting. Isso é importante para melhorar as métricas de avaliação que você viu no início do capítulo. Neste exercício, você vai variar o parâmetro de profundidade máxima de uma árvore de decisão para ver como os resultados de classificação são afetados.
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. Além disso, confusion_matrix(), precision_score() e recall_score() de sklearn.metrics estão disponíveis.
Este exercício faz parte do curso
Prevendo CTR com Machine Learning em Python
Instruções do exercício
- Crie diferentes árvores de decisão variando a profundidade máxima de cada árvore.
- Para cada árvore, ajuste o modelo e gere previsões nos dados de teste.
- Avalie a matriz de confusão, a precisão e o recall de cada árvore.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Iterate over different levels of max depth
for max_depth_val in [2, 3, 5, 10, 15, 20]:
# Create and fit model
clf = ____(____ = max_depth_val)
print("Evaluating tree with max_depth = %s" %(max_depth_val))
y_pred = clf.fit(____, ____).predict(____)
# Evaluate confusion matrix, precision, recall
print("Confusion matrix: ")
print(____(y_test, y_pred))
prec = ____(____, ____, average = 'weighted')
recall = ____(____, ____, average = 'weighted')
print("Precision: %s, Recall: %s" %(prec, recall))