Extension à plusieurs points de données
Vous avez constaté que des pondérations différentes peuvent entraîner des précisions différentes pour une même prévision. Cependant, vous souhaiterez généralement mesurer la précision du modèle sur de nombreux points. Vous allez maintenant écrire du code pour comparer la précision des modèles pour deux ensembles de poids différents, qui ont été enregistrés sous les noms 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 correspond à la valeur réelle que nous essayons de prédire.
Dans cet exercice, vous utiliserez la fonction mean_squared_error()
disponible à l'adresse sklearn.metrics
. Il prend les valeurs réelles et les valeurs prédites comme arguments.
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 deuxième argument.
Cet exercice fait partie du cours
Introduction au Deep Learning avec Python
Instructions
Importez
mean_squared_error
à partir desklearn.metrics
.for
Utilisation d'une boucle « for » pour parcourir chaque ligne d'input_data
:Effectuez des prédictions pour chaque ligne à l'aide de l'
weights_0
, en utilisant la fonctionpredict_with_network()
, puis ajoutez-les àmodel_output_0
.Veuillez répéter cette procédure pour
weights_1
, en ajoutant les prédictions àmodel_output_1
.
Calculez l'erreur quadratique moyenne de l'
model_output_0
, puis de l'model_output_1
à l'aide de la fonctionmean_squared_error()
. Le premier argument doit correspondre aux valeurs réelles (target_actuals
), et le second argument aux valeurs prédites (model_output_0
oumodel_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)