Évaluer la performance
Enfin, comme toujours, nous voulons évaluer la performance de notre meilleur modèle pour voir dans quelle mesure il s'en sort. Idéalement, il vaudrait mieux faire un rétrotest (back-testing), mais c'est un processus complexe que nous n'avons pas le temps d'aborder dans ce cours.
Nous avons déjà vu les scores R\(^2\), mais examinons maintenant le nuage de points des prédictions par rapport aux valeurs réelles avec matplotlib. Des prédictions parfaites formeraient une ligne diagonale du coin inférieur gauche au coin supérieur droit.
Cette activité fait partie du cours
Machine Learning pour la finance en Python
Instructions de l’exercice
- Utilisez le meilleur nombre pour
max_featuresdans notreRandomForestRegressor(rfr) que nous avons trouvé à l'exercice précédent (c'était 4). - Faites des prédictions avec le modèle en utilisant
train_featuresettest_features. - Faites un nuage de points des cibles réelles (train/test_targets) par rapport aux prédictions (train/test_predictions) et identifiez les jeux de données
trainettest.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Use the best hyperparameters from before to fit a random forest model
rfr = RandomForestRegressor(n_estimators=200, max_depth=3, max_features=____, random_state=42)
rfr.fit(train_features, train_targets)
# Make predictions with our model
train_predictions = rfr.predict(____)
test_predictions = ____
# Create a scatter plot with train and test actual vs predictions
plt.scatter(train_targets, train_predictions, label='train')
plt.scatter(____)
plt.legend()
plt.show()