Potatura dell'albero
L'overfitting è un classico problema nell'analisi, soprattutto con l'algoritmo degli alberi decisionali. Una volta che l'albero è completamente cresciuto, può fornire previsioni molto accurate sul campione di training, ma non essere altrettanto accurato sul test set. Per questo motivo, la crescita dell'albero decisionale viene di solito controllata tramite:
- "Potatura" dell'albero e impostazione di un limite alla profondità massima.
- Limitazione del numero minimo di osservazioni in una foglia dell'albero.
In questo esercizio:
- pota l'albero e limita la crescita a 5 livelli di profondità
- adatta il modello ai dati dei dipendenti
- testa i risultati delle previsioni sia sul training set che sul test set.
Le variabili features_train, target_train, features_test e target_test sono già disponibili nel tuo workspace.
Questo esercizio fa parte del corso
HR Analytics: prevedere l'abbandono dei dipendenti in Python
Istruzioni dell'esercizio
- Inizializza
DecisionTreeClassifierlimitando la profondità dell'albero a 5. - Adatta il modello ad albero decisionale usando le
featurese iltargetnel training set. - Verifica l'accuratezza delle previsioni sia sul training set che sul test set.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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)