ComeçarComece de graça

Treinando um modelo linear em lotes

Neste exercício, vamos treinar um modelo de regressão linear em lotes, a partir de onde paramos no exercício anterior. Faremos isso percorrendo o conjunto de dados em lotes e atualizando as variáveis do modelo, intercept e slope, após cada etapa. Essa abordagem permite treinar com conjuntos de dados grandes demais para caber na memória.

Observe que a função de perda, loss_function(intercept, slope, targets, features), já foi definida para você. Além disso, keras já foi importado e numpy está disponível como np. As variáveis treináveis devem ser inseridas em var_list na mesma ordem em que aparecem como argumentos da função de perda.

Este exercício faz parte do curso

Introdução ao TensorFlow em Python

Ver curso

Instruções do exercício

  • Use o otimizador .Adam().
  • Carregue os dados de 'kc_house_data.csv' em lotes com chunksize de 100.
  • Extraia a coluna price de batch, converta para um array do numpy do tipo float de 32 bits e atribua a price_batch.
  • Complete a função de perda, preencha a lista de variáveis treináveis e realize a minimização.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Initialize Adam optimizer
opt = keras.optimizers.____

# Load data in batches
for batch in pd.read_csv('____', ____=____):
	size_batch = np.array(batch['sqft_lot'], np.float32)

	# Extract the price values for the current batch
	price_batch = np.array(batch['____'], np.____)

	# Complete the loss, fill in the variable list, and minimize
	opt.minimize(lambda: loss_function(____, slope, price_batch, size_batch), var_list=[intercept, ____])

# Print trained parameters
print(intercept.numpy(), slope.numpy())
Editar e executar o código