CommencerCommencer gratuitement

Définir le modèle et la fonction de perte

Dans cet exercice, vous allez entraîner un réseau de neurones pour prédire si un titulaire de carte de crédit fera défaut. Les variables explicatives et la cible à utiliser pour l’entraînement sont disponibles dans le shell Python sous les noms borrower_features et default. Vous avez défini les poids et les biais à l’exercice précédent.

Notez que la couche predictions est définie comme \(\sigma(layer1*w2+b2)\), où \(\sigma\) est l’activation sigmoïde, layer1 est un tenseur de nœuds pour la première couche dense cachée, w2 est un tenseur de poids, et b2 est le tenseur de biais.

Les variables entraînables sont w1, b1, w2 et b2. De plus, les opérations suivantes ont été importées pour vous : keras.activations.relu() et keras.layers.Dropout().

Cet exercice fait partie du cours

Introduction à TensorFlow en Python

Afficher le cours

Instructions

  • Appliquez une fonction d’activation ReLU (unité linéaire rectifiée) à la première couche.
  • Appliquez 25 % de dropout à layer1.
  • Passez la cible targets et les valeurs prédites predictions à la fonction de perte d’entropie croisée.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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(____, ____)
Modifier et exécuter le code