LoslegenKostenlos starten

Batch-Größen ändern

Du hast gesehen, dass Modelle üblicherweise in Batches fester Größe trainiert werden. Je kleiner die Batch-Größe, desto mehr Gewichtsaktualisierungen pro Epoche – allerdings auf Kosten eines instabileren Gradientenabstiegs. Besonders problematisch ist es, wenn die Batch-Größe zu klein ist und den gesamten Trainingssatz nicht gut repräsentiert.

Schauen wir uns an, wie unterschiedliche Batch-Größen die Genauigkeit eines einfachen Binärklassifikationsmodells beeinflussen, das rote von blauen Punkten trennt.

Du verwendest eine Batch-Größe von eins und aktualisierst die Gewichte in jeder Epoche einmal pro Sample in deinem Trainingssatz. Danach nimmst du den gesamten Datensatz und aktualisierst die Gewichte nur einmal pro Epoche.

Diese Übung ist Teil des Kurses

<Kurs>Einstieg ins Deep Learning mit Keras</Kurs>
Kurs ansehen

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# Get a fresh new model with get_model
model = ____

# Train your model for 5 epochs with a batch size of 1
model.fit(X_train, y_train, epochs=____, ____=____)
print("\n The accuracy when using a batch of size 1 is: ",
      model.evaluate(X_test, y_test)[1])
Code bearbeiten und ausführen