Treinar um modelo linear
Neste exercício, continuaremos de onde o exercício anterior terminou. A interceptação e a inclinação, intercept
e slope
, foram definidas e inicializadas. Além disso, foi definida uma função, loss_function(intercept, slope)
, que calcula a perda usando os dados e as variáveis do modelo.
Agora você definirá uma operação de otimização como opt
. Em seguida, você treinará um modelo linear univariado minimizando a perda para encontrar os valores ideais de intercept
e slope
. Observe que a operação opt
tentará se aproximar do ideal a cada etapa, mas serão necessárias muitas etapas para encontrá-lo. Você pode encontrar o ideal em qualquer etapa. Portanto, você deve executar a operação repetidamente.
Este exercício faz parte do curso
Introdução ao TensorFlow em Python
Instruções de exercício
- Inicialize um otimizador Adam como
opt
com uma taxa de aprendizado de 0,5. - Aplique o método
.minimize()
ao otimizador. - Passe
loss_function()
com os argumentos apropriados como uma função lambda para.minimize()
. - Forneça a lista de variáveis que precisam ser atualizadas para
var_list
.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Initialize an Adam optimizer
opt = keras.optimizers.____(0.5)
for j in range(100):
# Apply minimize, pass the loss function, and supply the variables
opt.____(lambda: ____(____, ____), var_list=[____, ____])
# Print every 10th value of the loss
if j % 10 == 0:
print(loss_function(intercept, slope).numpy())
# Plot data and regression line
plot_results(intercept, slope)