Ich weiß, dass der stochastische Gradientenabstieg ein zufälliges Verhalten hat, aber ich weiß nicht warum.
Gibt es eine Erklärung dafür?
machine-learning
random-variable
gradient-descent
SunshineAtNoon
quelle
quelle
Antworten:
Der Algorithmus für den stochastischen Gradienten (SG) verhält sich wie ein Algorithmus für das simulierte Tempern (SA), bei dem die Lernrate des SG mit der Temperatur des SA zusammenhängt. Die Zufälligkeit oder das Rauschen, das durch SG eingeführt wird, ermöglicht es, lokalen Minima zu entkommen, um ein besseres Minimum zu erreichen. Natürlich hängt es davon ab, wie schnell Sie die Lernrate senken. Lesen Sie Abschnitt 4.2 des Stochastischen Gradientenlernens in neuronalen Netzen (pdf) , in dem es ausführlicher erläutert wird.
quelle
Beim stochastischen Gradientenabstieg werden die Parameter für jede Beobachtung geschätzt, im Gegensatz zur gesamten Stichprobe beim regulären Gradientenabstieg (Batch-Gradientenabstieg). Das gibt ihm eine Menge Zufälligkeit. Der Pfad des stochastischen Gefälleabstiegs verläuft über mehrere Orte und "springt" daher eher aus einem lokalen Minimum heraus und findet ein globales Minimum (Anmerkung *). Der stochastische Gradientenabstieg kann jedoch im lokalen Minimum stecken bleiben.
Hinweis: Es ist üblich, die Lernrate konstant zu halten. In diesem Fall konvergiert der stochastische Gradientenabstieg nicht. es wandert nur um den gleichen Punkt. Wenn jedoch die Lernrate mit der Zeit abnimmt, beispielsweise in umgekehrter Beziehung zur Anzahl der Iterationen, würde der stochastische Gradientenabstieg konvergieren.
quelle
Wie bereits in den vorherigen Antworten erwähnt, weist der stochastische Gradientenabstieg eine viel rauschintensivere Fehleroberfläche auf, da Sie jede Stichprobe iterativ auswerten. Während Sie in jeder Epoche einen Schritt in Richtung des globalen Minimums beim Batch-Gradientenabstieg machen (über das Trainingsset gehen), müssen die einzelnen Schritte Ihres stochastischen Gradientenabstiegsgradienten je nach ausgewerteter Stichprobe nicht immer auf das globale Minimum zeigen.
Um dies anhand eines zweidimensionalen Beispiels zu veranschaulichen, finden Sie hier einige Abbildungen und Zeichnungen aus Andrew Ngs Maschinellem Lernkurs.
Erster Gefälleabstieg:
Zweitens stochastischer Gefälleabstieg:
Der rote Kreis in der unteren Abbildung soll veranschaulichen, dass der stochastische Gradientenabstieg im Bereich um das globale Minimum "ständig aktualisiert" wird, wenn Sie eine konstante Lernrate verwenden.
Im Folgenden finden Sie einige praktische Tipps für den Fall, dass Sie eine stochastische Gradientenabnahme verwenden:
1) Mische das Trainingsset vor jeder Epoche (oder Iteration in der "Standard" -Variante)
2) Verwenden Sie eine adaptive Lernrate, um näher am globalen Minimum zu "glühen"
quelle
for
mische ich normalerweise das Trainingsset vor jeder Epoche und gehe dann einfach das gemischte Set durch