Inizia subitoInizia gratis

Prova diverse profondità massime

Vogliamo sempre ottimizzare i nostri modelli di Machine Learning per ottenere previsioni quanto più accurate possibile. Possiamo farlo regolando gli iperparametri, ovvero le impostazioni dei nostri modelli. Vedremo più nel dettaglio quanto siano utili nei prossimi capitoli; per ora pensali come manopole che possiamo girare per migliorare le previsioni.

Per i normali decision trees, probabilmente l'iperparametro più importante è max_depth. Limita il numero di suddivisioni (split) in un albero decisionale. Troviamo il valore migliore di max_depth in base allo score R\(^2\) del nostro modello sul set di test, che possiamo ottenere usando il metodo score() dei nostri modelli di alberi decisionali.

Questo esercizio fa parte del corso

Machine Learning per la finanza in Python

Visualizza corso

Istruzioni dell'esercizio

  • Fai un ciclo sui valori 3, 5 e 10 da usare come parametro max_depth nel nostro modello ad albero decisionale.
  • Imposta il parametro max_depth del nostro DecisionTreeRegressor uguale a d in ogni iterazione del ciclo.
  • Stampa lo score del modello su train_features e train_targets.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# Loop through a few different max depths and check the performance
for d in [____]:
    # Create the tree and fit it
    decision_tree = DecisionTreeRegressor(____)
    decision_tree.fit(train_features, train_targets)

    # Print out the scores on train and test
    print('max_depth=', str(d))
    print(decision_tree.score(____))
    print(decision_tree.score(test_features, test_targets), '\n')
Modifica ed esegui il codice