Summe oder Durchschnitt der Gradienten in (Mini) Batch-Gradienten anständig?


15

Als ich Mini Batch Gradient Decent implementiert habe, habe ich nur die Gradienten aller Beispiele im Trainingsbatch gemittelt. Allerdings ist mir aufgefallen, dass jetzt die optimale Lernrate deutlich höher ist als bei anständigen Online-Gefällen. Meiner Intuition nach ist dies so, weil der gemittelte Gradient weniger verrauscht ist und somit schneller verfolgt werden könnte. Vielleicht ist es also auch sinnvoll, nur die Gradienten einer Charge zusammenzufassen. Die Werte können ohnehin positiv und negativ sein.

Ich weiß, dass dies nur ein konstanter Faktor ist, der anhand der Lernrate ausgeglichen werden kann. Ich frage mich jedoch, auf welche Definition sich die Wissenschaftler geeinigt haben, damit ich Ergebnisse aus neuronalen Netzwerkpapieren reproduzieren kann.

Dividiert man typischerweise die summierten Gradienten einer Charge durch die Chargengröße?

Antworten:


21

Durchschnittlich.

Beispiele: Anmerkungen zu Andrew Ngs Maschinellem Lernkurs über Coursera, zusammengestellt von Alex Holehouse.

Wenn Sie die Farbverläufe anhand einzelner Stichproben summieren, erhalten Sie einen viel gleichmäßigeren Farbverlauf. Je größer die Charge ist, desto glatter ist der resultierende Gradient, der bei der Aktualisierung des Gewichts verwendet wird.

Die Division der Summe durch die Chargengröße und die Ermittlung des durchschnittlichen Gradienten hat folgende Auswirkungen:

  1. Die Größe des Gewichts wächst nicht überproportional. Durch Hinzufügen der L2-Regularisierung zur Gewichtsaktualisierung werden große Gewichtswerte bestraft. Dies führt häufig zu einer verbesserten Generalisierungsleistung. Achten Sie darauf, dass die Gewichte nicht zu groß werden, insbesondere wenn die Steigungen in dieselbe Richtung weisen.
  2. Die Größe des Gradienten ist unabhängig von der Chargengröße. Dies ermöglicht den Vergleich von Gewichten aus anderen Experimenten unter Verwendung unterschiedlicher Chargengrößen.
  3. Das Gegensteuern des Effekts der Stapelgröße mit der Lernrate kann numerisch äquivalent sein, Sie erhalten jedoch eine implementierungsspezifische Lernrate. Es macht es schwierig, Ihre Ergebnisse und Ihren Versuchsaufbau mitzuteilen, wenn Personen sich nicht auf die Skala der von Ihnen verwendeten Parameter beziehen können und Probleme bei der Reproduktion Ihres Versuchs haben.

Die Mittelwertbildung ermöglicht eine klarere Vergleichbarkeit und die Beibehaltung von Gradientengrößen unabhängig von der Chargengröße. Die Auswahl einer Stapelgröße hängt manchmal von den verfügbaren Rechenressourcen ab, und Sie möchten die Auswirkungen bei der Bewertung Ihres Modells abschwächen.


Der Link ist jetzt tot
cdeterman

1
Aktualisierter Link, kann nicht mehr mit den Originalfolien verlinken. Daher haben wir uns für gut zusammengestellte Notizen von Alex Holehouse entschieden .
ypx

Dieses Tutorial scheint eher eine Summierung als eine durchschnittliche zu sein. Deeplearning.net/tutorial/gettingstarted.html#regularization
AD
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.