Aan de slagGa gratis aan de slag

Regularisatie

Regularisatie is het toevoegen van informatie aan een model om overfitting te voorkomen. Dit is belangrijk om de evaluatiematen die je eerder in dit hoofdstuk hebt gezien te verbeteren. In deze oefening varieer je de maximale diepte-parameter van een beslisboom om te zien hoe de classificatieresultaten worden beïnvloed.

X_train, y_train, X_test, y_test zijn beschikbaar in je werkruimte. pandas als pd, numpy als np en sklearn zijn ook beschikbaar in je werkruimte. Daarnaast zijn confusion_matrix(), precision_score() en recall_score() uit sklearn.metrics beschikbaar.

Deze oefening maakt deel uit van de cursus

CTR voorspellen met Machine Learning in Python

Cursus bekijken

Oefeninstructies

  • Maak verschillende beslisbomen door de maximale diepte van elke boom te variëren.
  • Fit elk model en maak voorspellingen op de testdata.
  • Evalueer de confusion matrix, precision en recall voor elke boom.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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))
Code bewerken en uitvoeren