ComeçarComece de graça

Definindo o modelo e a função de perda

Neste exercício, você vai treinar uma rede neural para prever se um titular de cartão de crédito dará default. As variáveis de entrada e os alvos que você usará para treinar sua rede estão disponíveis no shell do Python como borrower_features e default. Você definiu os pesos e vieses no exercício anterior.

Note que a camada predictions é definida como \(\sigma(layer1*w2+b2)\), em que \(\sigma\) é a ativação sigmoide, layer1 é um tensor de nós da primeira camada densa oculta, w2 é um tensor de pesos e b2 é o tensor de viés.

As variáveis treináveis são w1, b1, w2 e b2. Além disso, as seguintes operações já foram importadas para você: keras.activations.relu() e keras.layers.Dropout().

Este exercício faz parte do curso

Introdução ao TensorFlow em Python

Ver curso

Instruções do exercício

  • Aplique a função de ativação ReLU (unidade linear retificada) à primeira camada.
  • Aplique 25% de dropout a layer1.
  • Passe o alvo, targets, e os valores previstos, predictions, para a função de perda de entropia cruzada.

Exercício interativo prático

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

# Define the model
def model(w1, b1, w2, b2, features = borrower_features):
	# Apply relu activation functions to layer 1
	layer1 = keras.activations.____(matmul(features, w1) + b1)
    # Apply dropout rate of 0.25
	dropout = keras.layers.Dropout(____)(____)
	return keras.activations.sigmoid(matmul(dropout, w2) + b2)

# Define the loss function
def loss_function(w1, b1, w2, b2, features = borrower_features, targets = default):
	predictions = model(w1, b1, w2, b2)
	# Pass targets and predictions to the cross entropy loss
	return keras.losses.binary_crossentropy(____, ____)
Editar e executar o código