Modificar la función de pérdida
En el ejercicio anterior definiste una función de pérdida de tensorflow y la evaluaste una vez para un conjunto de valores reales y predichos. En este ejercicio, calcularás la pérdida dentro de otra función llamada loss_function(), que primero genera valores predichos a partir de los datos y las variables. El objetivo es construir una función de las variables entrenables del modelo que devuelva la pérdida. Así podrás evaluar esta función repetidamente para distintos valores de las variables hasta encontrar el mínimo. En la práctica, pasarás esta función a un optimizador en tensorflow. Ten en cuenta que features y targets ya están definidos y disponibles. Además, Variable, float32 y keras están disponibles.
Este ejercicio forma parte del curso
Introducción a TensorFlow en Python
Instrucciones del ejercicio
- Define una variable,
scalar, con un valor inicial de 1.0 y tipofloat32. - Define una función llamada
loss_function(), que recibascalar,featuresytargetscomo argumentos, en ese orden. - Usa una función de pérdida de error absoluto medio.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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())