IniziaInizia gratis

Regolarizzazione

La regolarizzazione è il processo di aggiungere informazioni a un modello per prevenire l’overfitting. Questo è importante per migliorare le metriche di valutazione viste prima nel capitolo. In questo esercizio, varierai il parametro di profondità massima di un albero decisionale per vedere come cambiano i risultati di classificazione.

X_train, y_train, X_test, y_test sono disponibili nel tuo workspace. pandas come pd, numpy come np e sklearn sono anch’essi disponibili nel tuo workspace. Inoltre, confusion_matrix(), precision_score() e recall_score() da sklearn.metrics sono disponibili.

Questo esercizio fa parte del corso

Prevedere il CTR con il Machine Learning in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Crea alberi decisionali diversi variando la profondità massima di ciascun albero.
  • Per ogni albero, fai il fit e genera le predizioni sui dati di test.
  • Valuta la matrice di confusione, la precision e la recall per ogni albero.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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))
Modifica ed esegui il codice