Încearcă diferite valori pentru max_depth
Vrem întotdeauna să optimizăm modelele de învățare automată pentru a obține cele mai bune predicții posibile. Putem face asta ajustând hiperparametrii – adică setările modelelor noastre. Vom vedea în capitolele viitoare cât de utili sunt aceștia, dar deocamdată poți să-i privești ca pe niște butoane pe care le reglăm pentru a îmbunătăți predicțiile pe cât posibil.
Pentru arborii de decizie simpli, cel mai important hiperparametru este probabil max_depth. Acesta limitează numărul de împărțiri dintr-un arbore de decizie. Să găsim cea mai bună valoare pentru max_depth pe baza scorului R\(^2\) al modelului nostru pe setul de testare, pe care îl putem obține folosind metoda score() a modelelor noastre de tip arbore de decizie.
Acest exercițiu face parte din cursul
Machine Learning pentru finanțe în Python
Instrucțiuni pentru exercițiu
- Parcurge în buclă valorile 3, 5 și 10 pentru a le folosi ca parametru
max_depthîn modelul nostru de arbore de decizie. - Setează parametrul
max_depthdin DecisionTreeRegressor la valoareadîn fiecare iterație a buclei. - Afișează scorul modelului pe
train_featuresșitrain_targets.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Loop through a few different max depths and check the performance
for d in [____]:
# Create the tree and fit it
decision_tree = DecisionTreeRegressor(____)
decision_tree.fit(train_features, train_targets)
# Print out the scores on train and test
print('max_depth=', str(d))
print(decision_tree.score(____))
print(decision_tree.score(test_features, test_targets), '\n')