Lektion
Die Theorie — Gradientenabstieg und die Lernrate
Gradientenabstieg besteht aus einer einzigen, immer wiederholten Anweisung: Stell dich irgendwo hin, miss die Steigung und mach einen proportionalen Schritt bergab. x ← x − η f′(x). Die Schrittweite η gehört nicht zur Aufgabenstellung. Die Verlustkurve ist vorgegeben, der Gradient wird berechnet, und η ist die einzige Zahl, die du wählst. Bei einer quadratischen Funktion mit der Krümmung a ist die Rechnung exakt lösbar. Deshalb verwendet diese Seite eine solche Funktion: Jede spätere Aussage über Lernraten ist im Grunde eine Aussage über 1 − ηa.
Was die einzelnen Symbole bedeuten
η- die Lernrate, das Einzige, was du wählst
a- die Krümmung der Verlustfunktion, die das Problem für dich vorgibt
- Setzt voraus
- Eine Variable, eine feste Schrittweite und ein exakt bekannter Gradient. Reales Training bricht mit allen drei Bedingungen auf einmal. Du arbeitest mit Millionen Parametern, einer Schrittweite nach Plan und einem Gradienten, der aus einem kleinen Batch geschätzt wird. Das Einzige, was intakt bleibt, ist die Grenze bei 2/a. Sie stammt von der Krümmung in einer einzigen Richtung, und eine reale Verlustfläche besitzt genau eine davon pro Eigenvektor.
Aufgabe vollständig gelöst
-
Deine Lernrate von 0,4 funktioniert. Finde die exakte Krümmung, bei der sie aufhört zu funktionieren, und beschreibe, wie das Scheitern auf beiden Seiten dieses Punktes aussieht. Starte im Tool bei η = 0,4, a = 1, x₀ = 8, wo die Zeile Schrittmultiplikator 0,6000 anzeigt und der Weg ruhig an einer Wand hinabläuft.
-
Jede Frage auf dieser Seite ist eine Frage über |r| < 1, wobei r = 1 − aη gilt. Die Rate ist auf 0,4 fixiert und die Krümmung ist das, was du verändern darfst. Schreib die Bedingung also in Abhängigkeit von a statt von η.
-
|1 − 0,4a| < 1 entfaltet sich zu −1 < 1 − 0,4a < 1, dann zu 0 < 0,4a < 2, also a < 5. Die Rate übersteht jede Krümmung unter 5 und keine darüber. Das ist das vertraute η < 2/a andersherum gelesen, als a < 2/η. Dieselbe Ungleichung, und die zweite Umstellung ist diejenige, die beantwortet, was gefragt war.
-
Setz a exakt auf 5 und lies die Tabelle. r = −1,0000, und Position nach 20 Schritten gibt 8,000 aus, die Zahl, bei der es anfing. Der Anteil des Startverlusts beträgt 1,000. Das ist die Grenze selbst: Jeder Schritt landet genauso weit vom Minimum entfernt wie der letzte, auf der gegenüberliegenden Seite. Der Weg springt also zwischen 8 und −8 hin und her, solange du ihn laufen lässt.
-
Nun schieb a auf 5,1. r = −1,0400, und nach zwanzig Schritten liegt x bei 17,529 statt bei 8. Das ist echte Divergenz, und es lohnt sich zu sehen, wie mild sie aussieht: Zwanzig Schritte haben die Distanz grob verdoppelt. Ein Durchlauf knapp auf dieser Seite der Grenze kann lange Zeit als bloßes Rauschen durchgehen, bevor die Zahlen offensichtlich absurd werden.
-
In die andere Richtung konvergiert a = 4,9 noch. r = −0,9600, |r| liegt unter 1, und die Tabelle sagt Schießt über, konvergiert. Aber Schritte, um |x| unter 10⁻⁶ zu bringen zeigt nun 390, im Gegensatz zu 32 bei a = 4. Fast-stabil ist beinahe nutzlos.
Antwort
a = 5, was 2/η entspricht. Darunter konvergiert die Rate, genau dort ändert sich der Verlust nie, darüber wächst der Verlust grenzenlos. Der teure Teil ist die Annäherung. Nahe der Grenze ist |r| gleich 1 − a·g, wenn du g für die Lücke 2/a − η schreibst. Daher gilt log|r| ≈ −a·g, und die Schrittzahl ist ungefähr log(|x₀|/Toleranz) geteilt durch a·g. Sie verhält sich wie eins geteilt durch den Abstand zur Grenze: Halbiere die Lücke, und du verdoppelst die Arbeit. Bei a = 5 von x₀ = 8 benötigen Lücken von 0,05, 0,025 und 0,0125 exakt 56, 120 und 247 Schritte. Multiplizierst du jede Anzahl mit ihrer eigenen Lücke, erhältst du 2,8, 3,0 und 3,1, was sich log(8 × 10⁶)/5 = 3,18 nähert. Das ist der Grund, warum eine gut abgestimmte Lernrate nie am Rand der Stabilität liegt. Der letzte sichere Streifen vor der Grenze gehört gleichzeitig zum langsamsten Terrain auf der gesamten Achse, und die schnellste Rate von allen ist die in der Mitte bei 1/a.
-
Lernpfad
Eine Gerade an Daten anpassen
Quellen (3)
- Where the method comes from. Two pages, and the idea is already complete: follow the gradient downhill in steps. A.-L. Cauchy, “Méthode générale pour la résolution des systèmes d’équations simultanées.” Comptes Rendus de l’Académie des Sciences 25, 536–538, 1847.
- The tool's central claim, in the form it takes for a real network: with a as the largest eigenvalue of the Hessian, the fastest single learning rate is 1/a and anything past 2/a diverges. This is the source for insight block 3. Y. LeCun, L. Bottou, G. B. Orr and K.-R. Müller, “Efficient BackProp.” In Neural Networks: Tricks of the Trade, Lecture Notes in Computer Science, 9–50. Springer, 1998.
- The convergence analysis behind the step count: why the work needed grows with the ratio of the largest curvature to the smallest, which is the condition number named in insight block 3. S. Boyd and L. Vandenberghe, Convex Optimization. Cambridge University Press, 2004.