Definice modelu a ztrátové funkce
V tomto cvičení natrénuješ neuronovou síť, která předpoví, zda držitel kreditní karty nesplatí svůj dluh. Příznaky a cílové hodnoty pro trénování sítě jsou v Pythonovém shellu dostupné jako borrower_features a default. Váhy a biasy jsi definoval/a v předchozím cvičení.
Vrstva predictions je definována jako \(\sigma(layer1*w2+b2)\), kde \(\sigma\) je sigmoidová aktivační funkce, layer1 je tensor uzlů první skryté husté vrstvy, w2 je tensor vah a b2 je tensor biasů.
Trénovatelné proměnné jsou w1, b1, w2 a b2. Kromě toho jsou pro tebe naimportovány tyto operace: keras.activations.relu() a keras.layers.Dropout().
Toto cvičení je součástí kurzu
Úvod do TensorFlow v Pythonu
Pokyny k cvičení
- Aplikuj aktivační funkci rectified linear unit na první vrstvu.
- Aplikuj 25% dropout na
layer1. - Předej cílové hodnoty
targetsa predikované hodnotypredictionsztrátové funkci křížové entropie.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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(____, ____)