Спробуйте різні максимальні глибини
Ми завжди прагнемо оптимізувати наші моделі машинного навчання, щоб робити якомога кращі прогнози. Це можна зробити, налаштовуючи гіперпараметри — параметри керування моделями. У наступних розділах ми детальніше побачимо, як вони допомагають, але поки що уявімо їх як регулятори, якими можна крутити, щоб покращити якість прогнозів.
Для звичайних дерев рішень одним із найважливіших гіперпараметрів є max_depth. Він обмежує кількість розгалужень у дереві рішень. Знайдімо найкраще значення max_depth на основі метрики R\(^2\) нашої моделі на тестовій вибірці, яку можна отримати методом score() моделей дерева рішень.
Ця вправа є частиною курсу
Machine Learning для фінансів у Python
Інструкції до вправи
- Переберіть значення 3, 5 і 10 для використання як параметра
max_depthу моделі дерева рішень. - На кожній ітерації циклу задайте параметр
max_depthу DecisionTreeRegressor рівнимd. - Виведіть значення метрики моделі на
train_featuresіtrain_targets.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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')