Beskär beslutsträdet
Överanpassning är ett klassiskt problem inom analys, särskilt för beslutsträdsalgoritmen. När trädet väl har vuxit fullt ut kan det ge mycket träffsäkra förutsägelser på träningsuppsättningen, men prestera sämre på testuppsättningen. Därför brukar beslutsträds tillväxt styras genom:
- Beskärning av trädet och en begränsning av det maximala djup det får ha.
- En miniminivå för antalet observationer i ett löv.
I den här övningen ska du:
- beskära trädet och begränsa dess tillväxt till 5 nivåer
- träna det på medarbetardatan
- testa förutsägelseresultaten på både tränings- och testuppsättningarna.
Variablerna features_train, target_train, features_test och target_test finns redan tillgängliga i din miljö.
Den här övningen är en del av kursen
HR-analys: Förutsäg personalomsättning i Python
Övningsinstruktioner
- Initiera
DecisionTreeClassifiermed en begränsning av trädets djup till 5. - Träna beslutsträdsmodellen med särdragen och målet i träningsuppsättningen.
- Kontrollera noggrannheten i förutsägelserna på både tränings- och testuppsättningarna.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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)