Heim > Backend-Entwicklung > Python-Tutorial > Warum trainiert Keras nur einen Teil meines Datensatzes, obwohl ich 60.000 Proben habe?

Warum trainiert Keras nur einen Teil meines Datensatzes, obwohl ich 60.000 Proben habe?

Patricia Arquette
Freigeben: 2024-10-29 10:37:30
Original
870 Leute haben es durchsucht

Why is Keras only training on a portion of my dataset, even though I have 60,000 samples?

Keras-Training mit begrenztem Datensatz

Beim Versuch, ein neuronales Netzwerk mit Keras zu trainieren, ist Ihnen aufgefallen, dass es nur einen Teil der verfügbaren Daten nutzt Datensatz, obwohl Zugriff auf 60.000 Proben vorhanden ist. Obwohl Sie dem offiziellen TensorFlow-Leitfaden gefolgt sind, weist der Trainingsprozess eine Diskrepanz auf. Ziel dieses Artikels ist es, zu erklären, warum Keras sich auf diese Weise verhält, und eine Lösung anzubieten.

Der Grund für die teilweise Verwendung von Datensätzen

Die Zahl „1875“, die während der Modellanpassung gefunden wird, ist der Fall stellt nicht die Anzahl der Trainingsproben dar; Vielmehr gibt es die Anzahl der Chargen an. Standardmäßig verwendet Keras während des Trainings eine Stapelgröße von 32. Für einen Datensatz mit 60.000 Proben entspricht dies:

60,000 / 32 = 1875
Nach dem Login kopieren

Daher unterteilt Keras Ihren Datensatz in 1875 Chargen mit jeweils 32 Proben. Infolgedessen iteriert jede Epoche über diese 1875 Batches und nicht über den gesamten Datensatz.

Lösung

Um den gesamten Datensatz zu nutzen, können Sie die Batchgröße explizit auf festlegen die Gesamtzahl der Stichproben:

<code class="python">model.fit(train_images, train_labels, epochs=10, batch_size=60000)</code>
Nach dem Login kopieren

Auf diese Weise trainiert Keras das Modell anhand des gesamten Datensatzes, was zu einer verbesserten Leistung führen kann.

Das obige ist der detaillierte Inhalt vonWarum trainiert Keras nur einen Teil meines Datensatzes, obwohl ich 60.000 Proben habe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage