Definição do modelo e da função de perda
Neste exercício, você treinará uma rede neural para prever se o titular de um cartão de crédito ficará inadimplente. Os recursos e 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 as tendências no exercício anterior.
Observe que a camada predictions
é definida como \(\sigma(layer1*w2+b2)\), where \(\sigma\) é a ativação sigmoide, layer1
é um tensor de nós para a primeira camada densa oculta, w2
é um tensor de pesos e b2
é o tensor de polarização.
As variáveis treináveis são w1
, b1
, w2
, e b2
. Além disso, as seguintes operações foram importadas para você: keras.activations.relu()
e keras.layers.Dropout()
.
Este exercício faz parte do curso
Introdução ao TensorFlow em Python
Instruções de exercício
- Aplique uma função de ativação de unidade linear retificada à primeira camada.
- Aplique 25% de abandono 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 preenchendo 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(____, ____)