Die Verlustfunktion anpassen
In der vorherigen Übung hast du eine tensorflow-Verlustfunktion definiert und sie dann einmal für einen Satz tatsächlicher und vorhergesagter Werte ausgewertet. In dieser Übung berechnest du den Verlust in einer weiteren Funktion namens loss_function(), die zuerst aus den Daten und Variablen Vorhersagen erzeugt. Ziel ist es, eine Funktion der trainierbaren Modellvariablen zu erstellen, die den Verlust zurückgibt. Diese Funktion kannst du dann wiederholt für verschiedene Variablenwerte auswerten, bis du das Minimum findest. In der Praxis übergibst du diese Funktion einem Optimierer in tensorflow. Beachte: features und targets sind definiert und verfügbar. Außerdem stehen Variable, float32 und keras zur Verfügung.
Diese Übung ist Teil des Kurses
Einführung in TensorFlow mit Python
Anleitung zur Übung
- Definiere eine Variable
scalarmit einem Anfangswert von 1.0 und dem Typfloat32. - Definiere eine Funktion namens
loss_function(), diescalar,featuresundtargetsin genau dieser Reihenfolge als Argumente entgegennimmt. - Verwende eine Verlustfunktion mit mittlerem absoluten Fehler.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Initialize a variable named scalar
scalar = ____(1.0, ____)
# Define the model
def model(scalar, features = features):
return scalar * features
# Define a loss function
def loss_function(____, features = features, targets = targets):
# Compute the predicted values
predictions = model(scalar, features)
# Return the mean absolute error loss
return keras.losses.____(targets, predictions)
# Evaluate the loss function and print the loss
print(loss_function(scalar).numpy())