Modificar la función de pérdida
En el ejercicio anterior, definiste una función de pérdida tensorflow
y luego 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. Se trata de construir una función de las variables entrenables del modelo que devuelva la pérdida. A continuación, puedes evaluar repetidamente esta función para distintos valores de las variables hasta que encuentres el mínimo. En la práctica, pasarás esta función a un optimizador en tensorflow
. Ten en cuenta que features
y targets
se han definido y están disponibles. Además, están disponibles Variable
, float32
y keras
.
Este ejercicio forma parte del curso
Introducción a TensorFlow en Python
Instrucciones de ejercicio
- Define una variable,
scalar
, con un valor inicial de 1,0 y un tipo defloat32
. - Define una función llamada
loss_function()
, que toma como argumentosscalar
,features
, ytargets
en ese orden. - Utiliza una función de pérdida de error medio absoluto.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este 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())