LoslegenKostenlos loslegen

Grid Search

Erinnere dich: Im vorherigen Abschnitt haben wir ein Gradient-Boosting-Basismodell erstellt. Dein Ziel ist jetzt, den besten max_depth-Hyperparameter für dieses Gradient-Boosting-Modell zu finden. Dieser Hyperparameter begrenzt die Anzahl der Knoten in jedem einzelnen Baum. Du verwendest K-Fold-Cross-Validation, um die lokale Performance des Modells für jeden Hyperparameter-Wert zu messen.

Du bekommst die Funktion get_cv_score(). Sie nimmt den Trainingsdatensatz und ein Dictionary mit Modellparametern als Argumente und gibt den gesamten Validierungs-RMSE über eine 3-fache Cross-Validation zurück.

Diese Übung ist Teil des Kurses

Eine Kaggle-Competition in Python gewinnen

Kurs anzeigen

Anleitung zur Übung

  • Lege das Grid möglicher max_depth-Werte mit 3, 6, 9, 12 und 15 fest.
  • Übergib jeden Hyperparameter-Kandidaten im Grid an das params-Dictionary des Modells.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Possible max depth values
max_depth_grid = [____]
results = {}

# For each value in the grid
for max_depth_candidate in max_depth_grid:
    # Specify parameters for the model
    params = {'max_depth': ____}

    # Calculate validation score for a particular hyperparameter
    validation_score = get_cv_score(train, params)

    # Save the results for each max depth value
    results[max_depth_candidate] = validation_score   
print(results)
Code bearbeiten und ausführen