Regularizare
Regularizarea este procesul de adăugare a unor informații suplimentare într-un model pentru a preveni supraadaptarea (overfitting). Aceasta este esențială pentru a îmbunătăți metricile de evaluare pe care le-ai văzut mai devreme în acest capitol. În acest exercițiu, vei varia parametrul de adâncime maximă al unui arbore de decizie pentru a observa cum sunt afectate rezultatele clasificării.
X_train, y_train, X_test, y_test sunt disponibile în spațiul tău de lucru. pandas ca pd, numpy ca np și sklearn sunt de asemenea disponibile. În plus, confusion_matrix(), precision_score() și recall_score() din sklearn.metrics sunt disponibile.
Acest exercițiu face parte din cursul
Predicția CTR cu Machine Learning în Python
Instrucțiuni pentru exercițiu
- Creează arbori de decizie diferiți variind adâncimea maximă a fiecărui arbore.
- Pentru fiecare arbore, antrenează modelul și generează predicții pe datele de testare.
- Evaluează matricea de confuzie, precizia și recall-ul pentru fiecare arbore.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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))