Aan de slagGa gratis aan de slag

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

Cursus bekijken

Oefeninstructies

  • Importeer mean_squared_error uit sklearn.metrics.
  • Gebruik een for-lus om over elke rij van input_data te itereren:
    • Maak voorspellingen voor elke rij met weights_0 met de functie predict_with_network() en voeg ze toe aan model_output_0.
    • Doe hetzelfde voor weights_1 en voeg de voorspellingen toe aan model_output_1.
  • Bereken de mean squared error van model_output_0 en daarna model_output_1 met de functie mean_squared_error(). Het eerste argument moet de echte waarden (target_actuals) zijn, en het tweede argument de voorspelde waarden (model_output_0 of model_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)
Code bewerken en uitvoeren