Passer à plusieurs points de données
Vous avez vu que des poids différents donnent des précisions différentes pour une seule prédiction. Mais en pratique, vous voudrez évaluer la précision du modèle sur de nombreux points. Vous allez maintenant écrire du code pour comparer les précisions du modèle pour deux jeux de poids différents, stockés dans weights_0 et weights_1.
input_data est une liste de tableaux. Chaque élément de cette liste contient les données nécessaires pour effectuer une seule prédiction.
target_actuals est une liste de nombres. Chaque élément de cette liste est la valeur réelle que nous cherchons à prédire.
Dans cet exercice, vous utiliserez la fonction mean_squared_error() de sklearn.metrics. Elle prend en arguments les valeurs réelles et les valeurs prédites.
Vous utiliserez également la fonction préchargée predict_with_network(), qui prend un tableau de données comme premier argument et des poids comme second argument.
Cet exercice fait partie du cours
Introduction au Deep Learning en Python
Instructions
- Importez
mean_squared_errordepuissklearn.metrics. - À l’aide d’une boucle
forpour itérer sur chaque ligne deinput_data:- Faites des prédictions pour chaque ligne avec
weights_0à l’aide de la fonctionpredict_with_network()et ajoutez-les àmodel_output_0. - Faites de même avec
weights_1, en ajoutant les prédictions àmodel_output_1.
- Faites des prédictions pour chaque ligne avec
- Calculez l’erreur quadratique moyenne de
model_output_0, puis demodel_output_1, à l’aide de la fonctionmean_squared_error(). Le premier argument doit être les valeurs réelles (target_actuals), et le second les valeurs prédites (model_output_0oumodel_output_1).
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
from sklearn.metrics import mean_squared_error
# Create model_output_0
model_output_0 = []
# Create model_output_1
model_output_1 = []
# Loop over input_data
for row in input_data:
# Append prediction to model_output_0
model_output_0.append(____)
# Append prediction to model_output_1
model_output_1.append(____)
# Calculate the mean squared error for model_output_0: mse_0
mse_0 = ____
# Calculate the mean squared error for model_output_1: mse_1
mse_1 = ____
# Print mse_0 and mse_1
print("Mean squared error with weights_0: %f" %mse_0)
print("Mean squared error with weights_1: %f" %mse_1)