Wenn ich das Modell mit der .fit()
Ebene trainiere, ist das Argument shuffle auf True voreingestellt.Wie funktioniert shuffle = 'Batch' Argument der .fit() Schicht im Hintergrund?
Nehmen wir an, dass mein Datensatz 100 Proben hat und dass die Stapelgröße 10 ist. Wenn ich shuffle = True
einstelle, wählt Keras zuerst zufällig die Stichproben (jetzt haben die 100 Stichproben eine andere Reihenfolge) und auf der neuen Bestellung wird es beginnen Erstellen der Chargen: Charge 1: 1-10, Charge 2: 11-20 etc.
Wenn ich shuffle = 'batch'
wie soll es im Hintergrund arbeiten? Intuitiv und unter Verwendung des vorherigen Beispiels von 100 Proben-Datensätzen mit einer Chargengröße = 10 würde meine Vermutung sein, dass keras zuerst die Proben den Chargen zuordnet (dh Charge 1: Proben 1-10 nach der ursprünglichen Reihenfolge des Datensatzes, Charge 2: 11-20 folgend) die ursprüngliche Reihenfolge des Datensatzes, Stapel 3 ... so weiter) und mischt dann die Reihenfolge der Stapel. Das Modell wird nun an den zufällig angeordneten Chargen trainiert, zB: 3 (enthält die Proben 21 - 30), 4 (enthält die Proben 31 - 40), 7 (enthält die Proben 61 - 70), 1 (enthält die Proben 1 - 10), ... (Ich habe die Reihenfolge der Chargen zusammengestellt).
Ist mein Denken richtig oder fehlt mir etwas?
Danke!