Mesurer les performances
Maintenant que nous avons entraîné notre réseau de neurones, évaluons ses performances pour voir à quel point il prédit bien de nouvelles valeurs. Il n'existe pas de méthode intégrée .score() comme pour les modèles sklearn, nous allons donc utiliser la fonction r2_score() de sklearn.metrics. Elle calcule le score R\(^2\) à partir des arguments (y_true, y_predicted). Nous tracerons également nos prédictions par rapport aux valeurs réelles. Vous verrez bientôt des résultats intéressants (une fois que nous aurons implémenté notre propre fonction de perte personnalisée).
Cet exercice fait partie du cours
<cours>Machine Learning pour la finance en Python</cours>Instructions de l’exercice
- Obtenez les prédictions de
model_1sur l'ensemble de test mis à l'échelle (scaled_test_featuresettest_targets). - Affichez le score R\(^2\) sur l'ensemble de test (
test_targetsettest_preds). - Tracez
test_predsen fonction detest_targetsdans un nuage de points avecplt.scatter().
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
from sklearn.metrics import r2_score
# Calculate R^2 score
train_preds = model_1.predict(scaled_train_features)
test_preds = model_1.predict(____)
print(r2_score(train_targets, train_preds))
print(r2_score(____, ____))
# Plot predictions vs actual
plt.scatter(train_preds, train_targets, label='train')
plt.scatter(____)
plt.legend()
plt.show()