LoslegenKostenlos loslegen

Modell und Verlustfunktion definieren

In dieser Übung trainierst du ein neuronales Netzwerk, das vorhersagt, ob eine Kreditkarteninhaberin bzw. ein -inhaber in Verzug gerät. Die Merkmale und Zielwerte zum Trainieren deines Netzwerks stehen dir in der Python-Konsole als borrower_features und default zur Verfügung. Die Gewichte und Biases hast du in der vorherigen Übung definiert.

Beachte, dass die predictions-Schicht als \(\sigma(layer1*w2+b2)\) definiert ist, wobei \(\sigma\) die Sigmoid-Aktivierung ist, layer1 ein Tensor der Knoten der ersten verborgenen Dense-Schicht, w2 ein Tensor der Gewichte und b2 der Bias-Tensor.

Die trainierbaren Variablen sind w1, b1, w2 und b2. Außerdem wurden die folgenden Operationen für dich importiert: keras.activations.relu() und keras.layers.Dropout().

Diese Übung ist Teil des Kurses

Einführung in TensorFlow mit Python

Kurs anzeigen

Anleitung zur Übung

  • Wende auf die erste Schicht eine ReLU-Aktivierungsfunktion (rectified linear unit) an.
  • Wende 25 % Dropout auf layer1 an.
  • Übergib das Ziel targets und die vorhergesagten Werte predictions an die Kreuzentropie-Verlustfunktion.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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(____, ____)
Code bearbeiten und ausführen