Batch
Ein Batch (Stapel) bezeichnet im Training neuronaler Netze eine Gruppe von Trainingsbeispielen, die gemeinsam durch das Netzwerk verarbeitet werden, bevor die Modellparameter aktualisiert werden. Anstatt das Netz nach jedem einzelnen Bild (Stochastic Gradient Descent) oder erst nach dem gesamten Datensatz (Batch Gradient Descent) zu aktualisieren, wählt man den Mittelweg des 'Mini-Batch Gradient Descent'.
Eine typische Batch Size könnte 32, 64 oder 128 betragen. Das bedeutet, das Netz sieht 64 Bilder, berechnet den durchschnittlichen Fehler über diese 64 Bilder und macht dann *einen* Schritt zur Verbesserung der Gewichte. Dies hat zwei Vorteile: Erstens stabilisiert es das Lernen, da Ausreißer in einzelnen Datenpunkten weniger ins Gewicht fallen. Zweitens ermöglicht es die massive Parallelisierung auf GPUs, da diese sehr effizient darin sind, viele Berechnungen gleichzeitig durchzuführen ('SIMD' - Single Instruction, Multiple Data).