Ein sequenzielles Modell kompilieren
In dieser Übung arbeitest du darauf hin, Buchstaben aus dem Sign Language MNIST-Datensatz zu klassifizieren. Dabei verwendest du jedoch eine andere Netzwerkarchitektur als in der vorherigen Übung: Es gibt weniger Schichten, aber mehr Knoten. Außerdem setzt du Dropout ein, um Overfitting zu vermeiden. Abschließend kompilierst du das Modell mit dem Optimizer adam und der Loss-Funktion categorical_crossentropy. Zusätzlich verwendest du eine Methode in keras, um die Architektur deines Modells zusammenzufassen. Beachte: keras wurde für dich aus tensorflow importiert und ein sequenzielles keras-Modell wurde als model definiert.
Diese Übung ist Teil des Kurses
Einführung in TensorFlow mit Python
Anleitung zur Übung
- Setze in der ersten dichten Schicht die Anzahl der Knoten auf 16, die Aktivierung auf
sigmoidund dasinput_shapeauf (784,). - Wende Dropout mit einer Rate von 25 % auf die Ausgabe der ersten Schicht an.
- Setze die Ausgabeschicht auf dense, mit 4 Knoten, und verwende die Aktivierungsfunktion
softmax. - Kompiliere das Modell mit dem Optimizer
adamund der Loss-Funktioncategorical_crossentropy.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Define the first dense layer
model.add(keras.layers.Dense(____, ____, ____))
# Apply dropout to the first layer's output
model.add(keras.layers.____(0.25))
# Define the output layer
____
# Compile the model
model.compile('____', loss='____')
# Print a model summary
print(model.summary())