Modifier la fonction de perte
Dans l’exercice précédent, vous avez défini une fonction de perte tensorflow puis l’avez évaluée une fois pour un ensemble de valeurs réelles et prédites. Dans cet exercice, vous allez calculer la perte dans une autre fonction appelée loss_function(), qui commence par générer des valeurs prédites à partir des données et des variables. L’objectif est de construire une fonction des variables entraînables du modèle qui renvoie la perte. Vous pourrez ensuite évaluer cette fonction à plusieurs reprises pour différentes valeurs de variables jusqu’à trouver le minimum. En pratique, vous passerez cette fonction à un optimiseur dans tensorflow. Notez que features et targets ont été définis et sont disponibles. De plus, Variable, float32 et keras sont disponibles.
Cet exercice fait partie du cours
Introduction à TensorFlow en Python
Instructions
- Définissez une variable
scalaravec une valeur initiale de 1.0 et un typefloat32. - Définissez une fonction appelée
loss_function()qui prendscalar,featuresettargetscomme arguments, dans cet ordre. - Utilisez une fonction de perte en erreur absolue moyenne.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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())