Konditionierung & Zickzack

Wie Modelle wirklich lernen, vom einfachen Gradientenabstieg bis zu Adam

Der Gradientenabstieg verhält sich auf einer runden Verlustoberfläche ganz anders als auf einer gestreckten. Die Konditionierung misst genau diese Streckung. Schlechte Konditionierung lässt den Optimierer im Zickzack laufen: eine Richtung ist steil, eine andere flach.

Bei einem quadratischen Verlust wird die Konditionierung von den Eigenwerten der Hesse-Matrix bestimmt. Die Konditionszahl κ ist das Verhältnis von größter zu kleinster Krümmung.

Bei einem Flipperautomaten mit engen Seitenpuffern und einer langen, schmalen Auslaufbahn lässt ein harter Treffer den Ball seitlich hin- und herprallen, während er nur langsam vorwärtskommt. Schlechte Konditionierung tut dem Gradientenabstieg dasselbe an: Er prallt in der steilen Richtung hin und her und kriecht in der flachen Richtung voran. Das Bild unten ist genau dieser Automat. Verschiebe κ, um die Schale zu strecken, starte den Abstieg und beobachte, wie der Pfad quer zur schmalen Richtung abprallt, während er sich entlang der langen Richtung nur zentimeterweise vorwärtsschiebt. (Lass β vorerst bei 0; es hat seinen großen Auftritt in der Momentum-Lektion.)

Wo das im ML vorkommtKonditionierung ist einer der Gründe, warum die Architektur eines neuronalen Netzes eine Rolle spielt. Residual-Verbindungen, Normalisierungsschichten, Initialisierungsschemata und adaptive Optimierer machen den Verlust allesamt leichter navigierbar, indem sie die effektive Geometrie verändern, die das gradientenbasierte Training sieht.
▶ Konditionierung & Zickzack
← Zeitpläne & WarmupMomentum →