Regressão linear múltipla
Na maioria dos casos, a execução de uma regressão linear univariada não produzirá um modelo que seja útil para fazer previsões precisas. Neste exercício, você realizará uma regressão múltipla, que usa mais de um recurso.
Você usará price_log
como seu alvo e size_log
e bedrooms
como seus recursos. Cada um desses tensores foi definido e está disponível. Você também deixará de usar a perda de erro quadrático médio para usar a perda de erro absoluto médio: keras.losses.mae()
. Por fim, os valores previstos são calculados da seguinte forma: params[0] + feature1*params[1] + feature2*params[2]
. Observe que definimos um vetor de parâmetros, params
, como uma variável, em vez de usar três variáveis. Aqui, params[0]
é a interceptação e params[1]
e params[2]
são as inclinações.
Este exercício faz parte do curso
Introdução ao TensorFlow em Python
Instruções de exercício
- Defina um modelo de regressão linear que retorne os valores previstos.
- Defina
loss_function()
para receber o vetor de parâmetros como uma entrada. - Use a perda de erro absoluto médio.
- Conclua a operação de minimização.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Define the linear regression model
def linear_regression(params, feature1 = size_log, feature2 = bedrooms):
return params[0] + feature1*____ + feature2*____
# Define the loss function
def loss_function(____, targets = price_log, feature1 = size_log, feature2 = bedrooms):
# Set the predicted values
predictions = linear_regression(params, feature1, feature2)
# Use the mean absolute error loss
return keras.losses.____(targets, predictions)
# Define the optimize operation
opt = keras.optimizers.Adam()
# Perform minimization and print trainable variables
for j in range(10):
opt.minimize(lambda: loss_function(____), var_list=[____])
print_results(params)