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
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)