Hochskalieren auf mehrere Datenpunkte
Du hast gesehen, dass unterschiedliche Gewichte zu unterschiedlicher Genauigkeit bei einer einzelnen Vorhersage führen. In der Praxis willst du die Modellgenauigkeit aber meist über viele Punkte messen. Nun schreibst du Code, um die Genauigkeiten zweier unterschiedlicher Gewichte-Einstellungen zu vergleichen, die als weights_0 und weights_1 gespeichert sind.
input_data ist eine Liste von Arrays. Jedes Element in dieser Liste enthält die Daten für eine einzelne Vorhersage.
target_actuals ist eine Liste von Zahlen. Jedes Element in dieser Liste ist der tatsächliche Wert, den wir vorhersagen möchten.
In dieser Übung verwendest du die Funktion mean_squared_error() aus sklearn.metrics. Sie nimmt die tatsächlichen Werte und die vorhergesagten Werte als Argumente.
Außerdem nutzt du die vorab geladene Funktion predict_with_network(), die ein Datenarray als erstes Argument und Gewichte als zweites Argument erwartet.
Diese Übung ist Teil des Kurses
Einführung in Deep Learning mit Python
Anleitung zur Übung
- Importiere
mean_squared_erroraussklearn.metrics. - Iteriere mit einer
for-Schleife über jede Zeile ininput_data:- Erstelle für jede Zeile mit
weights_0Vorhersagen mittelspredict_with_network()und hänge sie anmodel_output_0an. - Mache dasselbe für
weights_1und hänge die Vorhersagen anmodel_output_1an.
- Erstelle für jede Zeile mit
- Berechne die mittlere quadratische Abweichung (Mean Squared Error) von
model_output_0und anschließend vonmodel_output_1mit der Funktionmean_squared_error(). Das erste Argument sollten die tatsächlichen Werte (target_actuals) sein, das zweite Argument die vorhergesagten Werte (model_output_0odermodel_output_1).
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
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)