Inizia subitoInizia gratis

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.

decision tree

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

Visualizza corso

Istruzioni dell'esercizio

  • Usa la classe importata DecisionTreeRegressor con gli argomenti predefiniti (cioè senza argomenti) per creare un modello di decision tree chiamato decision_tree.
  • Addestra il modello usando train_features e train_targets che 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_features e test_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(____))
Modifica ed esegui il codice