Grid search
V předchozí lekci jsme vytvořili základní model Gradient Boosting. Tvým úkolem je teď najít nejlepší hodnotu hyperparametru max_depth pro tento model. Hyperparametr max_depth omezuje počet uzlů v každém jednotlivém stromě. K měření lokální výkonnosti modelu pro každou hodnotu hyperparametru použiješ K-fold křížovou validaci.
Máš k dispozici funkci get_cv_score(), která přijímá trénovací dataset a slovník parametrů modelu a vrací celkové RMSE skóre validace přes 3-fold křížovou validaci.
Toto cvičení je součástí kurzu
Jak vyhrát soutěž na Kaggle v Pythonu
Pokyny k cvičení
- Definuj mřížku možných hodnot
max_depths hodnotami 3, 6, 9, 12 a 15. - Předej každého kandidáta z mřížky do slovníku parametrů
paramsmodelu.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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)