Căutare pe grilă
Reamintește-ți că am creat un model de bază de Gradient Boosting în lecția anterioară. Obiectivul tău acum este să găsești cea mai bună valoare a hiperparametrului max_depth pentru acest model. Hiperparametrul respectiv limitează numărul de noduri din fiecare arbore individual. Vei folosi validarea încrucișată K-fold pentru a măsura performanța locală a modelului pentru fiecare valoare a hiperparametrului.
Îți este oferită funcția get_cv_score(), care primește ca argumente setul de date de antrenament și un dicționar cu parametrii modelului, și returnează scorul RMSE de validare global pe o validare încrucișată cu 3 fold-uri.
Acest exercițiu face parte din cursul
Câștigarea unei competiții Kaggle în Python
Instrucțiuni pentru exercițiu
- Specifică grila cu valorile posibile pentru
max_depth: 3, 6, 9, 12 și 15. - Transmite fiecare candidat din grilă în dicționarul
paramsal modelului.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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)