Začněte nyníZačněte zdarma

Prořezávání stromu

Přeučení (overfitting) je klasický problém v analytice, a to zejména u algoritmu rozhodovacích stromů. Plně rozvinutý strom může sice velmi přesně predikovat hodnoty v trénovací sadě, ale na testovací sadě už tak dobře nemusí fungovat. Proto se růst rozhodovacího stromu obvykle omezuje:

  • „Prořezáváním" stromu a nastavením maximální povolené hloubky.
  • Omezením minimálního počtu pozorování v jednom listu stromu.

V tomto cvičení:

  • prořežeš strom a omezíš jeho růst na 5 úrovní hloubky,
  • natrénuješ ho na datech o zaměstnancích,
  • otestuješ výsledky predikcí na trénovací i testovací sadě.

Proměnné features_train, target_train, features_test a target_test jsou v tvém pracovním prostředí již k dispozici.

Toto cvičení je součástí kurzu

HR Analytics: Predicting Employee Churn in Python

Zobrazit kurz

Pokyny k cvičení

  • Inicializuj DecisionTreeClassifier s omezením hloubky stromu na 5 úrovní.
  • Natrénuj model rozhodovacího stromu pomocí features a target z trénovací sady.
  • Zkontroluj přesnost predikcí na trénovací i testovací sadě.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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)
Upravit a spustit kód