Vyzkoušej různé hodnoty max_depth
Chceme vždy optimalizovat naše modely strojového učení tak, aby dávaly co nejlepší předpovědi. Toho dosáhneme laděním hyperparametrů – tedy nastavení, která ovlivňují chování modelu. V dalších kapitolách se na ně podíváme podrobněji, ale prozatím si je představ jako otočné knoflíky, kterými dolaďujeme přesnost předpovědí.
U klasických rozhodovacích stromů je pravděpodobně nejdůležitějším hyperparametrem max_depth. Ten omezuje počet větvení stromu. Pojďme najít nejlepší hodnotu max_depth na základě skóre R\(^2\) našeho modelu na testovací sadě – získáme ho pomocí metody score() modelů rozhodovacích stromů.
Toto cvičení je součástí kurzu
Machine Learning for Finance in Python
Pokyny k cvičení
- Projdi smyčkou hodnoty 3, 5 a 10, které budeme používat jako parametr
max_depthv modelu rozhodovacího stromu. - V každé iteraci smyčky nastav parametr
max_depthvDecisionTreeRegressorna hodnotud. - Vypiš skóre modelu na
train_featuresatrain_targets.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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')