Passer à plusieurs points de données
Vous avez vu que selon les poids, la précision peut varier pour une seule prédiction. Or, en pratique, vous voudrez évaluer la précision du modèle sur plusieurs points. Vous allez maintenant écrire du code pour comparer la précision du modèle pour deux jeux de poids différents, enregistrés sous 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 reçoit en arguments les valeurs réelles et les valeurs prédites.
Vous utiliserez aussi la fonction préchargée predict_with_network(), qui prend un tableau de données comme premier argument et des poids comme second argument.
Cette activité fait partie du cours
Introduction à Deep Learning en Python
Instructions de l’exercice
- 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_0en utilisant la fonctionpredict_with_network()et ajoutez-les àmodel_output_0. - Faites la même chose 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 ce code d’exemple.
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)