Opschalen naar meerdere datapunten
Je hebt gezien dat verschillende gewichten tot verschillende nauwkeurigheden leiden voor één enkele voorspelling. Meestal wil je de modelnauwkeurigheid echter op veel punten meten. Je gaat nu code schrijven om de nauwkeurigheid van het model te vergelijken voor twee verschillende sets gewichten, opgeslagen als weights_0 en weights_1.
input_data is een lijst met arrays. Elk item in die lijst bevat de gegevens om één voorspelling te doen.
target_actuals is een lijst met getallen. Elk item in die lijst is de echte waarde die we proberen te voorspellen.
In deze oefening gebruik je de functie mean_squared_error() uit sklearn.metrics. Die neemt de echte waarden en de voorspelde waarden als argumenten.
Je gebruikt ook de vooraf ingeladen functie predict_with_network(), die een array met gegevens als eerste argument neemt en gewichten als tweede argument.
Deze oefening maakt deel uit van de cursus
Introductie tot Deep Learning in Python
Oefeninstructies
- Importeer
mean_squared_erroruitsklearn.metrics. - Gebruik een
for-lus om over elke rij vaninput_datate itereren:- Maak voorspellingen voor elke rij met
weights_0met de functiepredict_with_network()en voeg ze toe aanmodel_output_0. - Doe hetzelfde voor
weights_1en voeg de voorspellingen toe aanmodel_output_1.
- Maak voorspellingen voor elke rij met
- Bereken de mean squared error van
model_output_0en daarnamodel_output_1met de functiemean_squared_error(). Het eerste argument moet de echte waarden (target_actuals) zijn, en het tweede argument de voorspelde waarden (model_output_0ofmodel_output_1).
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
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)