Читать книгу Praxiseinstieg Machine Learning mit Scikit-Learn, Keras und TensorFlow - Aurélien Géron - Страница 123

Mini-Batch-Gradientenverfahren

Оглавление

Als letzten Algorithmus unter den Gradientenverfahren sehen wir uns das Mini-Batch- Gradientenverfahren an. Es ist recht einfach nachzuvollziehen, wenn Sie mit dem Batch- und dem stochastischen Gradientenverfahren vertraut sind: Anstatt die Gradienten bei jedem Schritt auf dem gesamten Trainingsdatensatz (wie beim Batch-Gradientenverfahren) oder nur auf einem Datenpunkt (wie beim stochastischen Gradientenverfahren) zu berechnen, berechnet das Mini-Batch-Gradientenverfahren die Gradienten auf kleinen, zufälligen Teilmengen, den Mini-Batches. Der Hauptvorteil des Mini-Batch-Gradientenverfahrens gegenüber dem stochastischen Verfahren ist, dass Sie die Leistung durch für Matrizenoperationen optimierte Hardware steigern können, besonders beim Verwenden von GPUs.

Die Fortschritte des Algorithmus im Parameterraum sind weniger abrupt als beim SGD, besonders bei größeren Mini-Batches. Daher wandert das Mini-Batch-Gradientenverfahren etwas näher um das Minimum herum als das SGD. Andererseits kann es schwieriger sein, lokale Minima zu verlassen (im Fall von Aufgaben, bei denen lokale Minima eine Rolle spielen; lineare Regression gehört nicht dazu). Abbildung 4-11 zeigt die Pfade durch den Parameterraum beim Trainieren mit den drei Algorithmen. Alle erreichen das Minimum, aber das Batch-Gradientenverfahren hält dort auch an, während sich sowohl das stochastische als auch das Mini-Batch-Gradientenverfahren weiter um das Minimum herumbewegen.

Abbildung 4-11: Pfade von Gradientenverfahren im Parameterraum

Allerdings benötigt das Batch-Gradientenverfahren für jeden Schritt eine Menge Zeit, und auch das stochastische und das Mini-Batch-Gradientenverfahren würden mit einem guten Learning Schedule das Minimum erreichen.

Vergleichen wir die bisher besprochenen Algorithmen zur linearen Regression6 (dabei ist m die Anzahl der Trainingsdatenpunkte und n die Anzahl der Merkmale); siehe Tabelle 4-1.

Tabelle 4-1: Vergleich von Algorithmen zur linearen Regression


Nach dem Trainieren gibt es kaum noch einen Unterschied: Alle diese Algorithmen führen zu sehr ähnlichen Modellen und treffen Vorhersagen in der gleichen Art und Weise.
Praxiseinstieg Machine Learning mit Scikit-Learn, Keras und TensorFlow

Подняться наверх