Controlla i risultati
Una volta ottimizzato il modello, vogliamo verificare nel dettaglio come sta performando. Abbiamo già visto lo score R\(^2\), ma può essere utile visualizzare le predizioni confrontate con i valori reali. Possiamo usare il metodo .predict() del nostro modello di decision tree per ottenere predizioni sui train e test set.
Idealmente, vogliamo vedere linee diagonali dall'angolo in basso a sinistra verso l'alto a destra. Tuttavia, data la semplicità dei decision tree, il nostro modello non andrà bene sul test set. Invece, andrà bene sul train set.
Questo esercizio fa parte del corso
Machine Learning per la finanza in Python
Istruzioni dell'esercizio
- Crea un modello
DecisionTreeRegressorchiamatodecision_treeusando 3 come iperparametromax_depth. - Genera predizioni sui train e test set (
train_featuresetest_features) con il nostro modello di decision tree. - Fai uno scatter delle predizioni di train e test rispetto ai valori target reali con
plt.scatter(), e imposta l'argomentolabeluguale atestper il test set.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Use the best max_depth of 3 from last exercise to fit a decision tree
decision_tree = ____
decision_tree.fit(train_features, train_targets)
# Predict values for train and test
train_predictions = decision_tree.predict(train_features)
test_predictions = ____
# Scatter the predictions vs actual values
plt.scatter(train_predictions, train_targets, label='train')
plt.scatter(____)
plt.show()