ПочатиПочніть безкоштовно

Обрізання дерева

Переобучення — класична проблема в аналітиці, особливо для алгоритму дерева рішень. Коли дерево повністю вирощене, воно може давати дуже точні прогнози на тренувальній вибірці, але значно гірші — на тестовій. Тому зростання дерева рішень зазвичай контролюють так:

  • «Обрізають» дерево й встановлюють обмеження на його максимальну глибину.
  • Обмежують мінімальну кількість спостережень у одному листку дерева.

У цій вправі ви будете:

  • обрізати дерево й обмежувати його зростання до 5 рівнів глибини
  • навчати модель на даних про співробітників
  • перевіряти результати прогнозування як на тренувальній, так і на тестовій вибірках.

Змінні features_train, target_train, features_test і target_test уже доступні у вашому робочому середовищі.

Ця вправа є частиною курсу

HR Analytics: прогнозування плинності персоналу в Python

Переглянути курс

Інструкції до вправи

  • Ініціалізуйте DecisionTreeClassifier, обмеживши глибину дерева до 5.
  • Навчіть модель дерева рішень, використовуючи features і target у тренувальній вибірці.
  • Перевірте точність прогнозів як на тренувальній, так і на тестовій вибірках.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Initialize the DecisionTreeClassifier while limiting the depth of the tree to 5
model_depth_5 = DecisionTreeClassifier(____=5, random_state=42)

# Fit the model
____.fit(features_train,target_train)

# Print the accuracy of the prediction for the training set
print(____.____(features_train,target_train)*100)

# Print the accuracy of the prediction for the test set
print(model_depth_5.score(____,____)*100)
Редагувати та запускати код