Addestra un decision tree
I random forest sono un modello di riferimento per le previsioni: funzionano bene già senza molte impostazioni. Ma prima impariamo il mattone di base dei random forest: i decision tree.
I decision tree suddividono i dati in gruppi in base alle feature. Partono da un nodo radice e continuano a dividere i dati finché non arriviamo ai nodi foglia.

Possiamo usare sklearn per addestrare un decision tree con DecisionTreeRegressor e .fit(features, targets).
Senza limitare la profondità (o altezza) dell'albero, continuerà a fare split finché ogni foglia non conterrà 1 solo campione: è l'emblema dell'overfitting. Impareremo di più sull'overfitting nei prossimi capitoli.
Questo esercizio fa parte del corso
Machine Learning per la finanza in Python
Istruzioni dell'esercizio
- Usa la classe importata
DecisionTreeRegressorcon gli argomenti predefiniti (cioè senza argomenti) per creare un modello di decision tree chiamatodecision_tree. - Addestra il modello usando
train_featuresetrain_targetsche abbiamo creato in precedenza (e che ora includono le feature giorno della settimana e volume). - Stampa lo score sia su feature e target di training, sia su
test_featuresetest_targets.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
from sklearn.tree import DecisionTreeRegressor
# Create a decision tree regression model with default arguments
decision_tree = ____
# Fit the model to the training features and targets
decision_tree.fit(____)
# Check the score on train and test
print(decision_tree.score(train_features, train_targets))
print(decision_tree.score(____))