Überanpassung: L2-Regularisierung

Die L2-Regularisierung ist eine beliebte Regularisierungsmetrik, die mit der folgenden Formel berechnet wird:

$$L_2\text{ regularization } = {w_1^2 + w_2^2 + ... + w_n^2}$$

Die folgende Tabelle zeigt die Berechnung der L2 Regularisierung für ein Modell mit sechs Gewichtungen:

Wert Quadratwert
w1 0,2 0,04
w2 –0,5 0,25
w3 5 25
w4 –1,2 1,44
w5 0,3 0,09
w6 –0,1 0,01
    26,83 = Summe

Gewichtungen, die nahe bei null liegen, haben nur geringe Auswirkungen auf die L2-Regularisierung . Große Gewichtungen können jedoch einen erheblichen Einfluss haben. Beispiel: In der vorherigen Berechnung:

  • Eine einzelne Gewichtung (w3) trägt etwa 93% zur Gesamtkomplexität bei.
  • Die anderen fünf Gewichtungen tragen zusammen nur etwa 7% zur Gesamtkomplexität bei.

Die L2-Regularisierung bewirkt, dass sich die Gewichtungen in Richtung 0 bewegen, aber sie werden nie ganz auf null gesetzt.

Übungen: Verständnis prüfen

Was passiert in der Regel mit der Gesamtkomplexität eines Modells, wenn Sie bei seinem Training die L2-Regularisierung verwenden?
Die Gesamtkomplexität des Systems sinkt wahrscheinlich.
Da die L2-Regularisierung die Gewichtungen in Richtung 0 bewegt, sinkt die Gesamtkomplexität wahrscheinlich.
Die Gesamtkomplexität des Modells bleibt wahrscheinlich konstant.
Das ist sehr unwahrscheinlich.
Die Gesamtkomplexität des Modells steigt wahrscheinlich.
Das ist unwahrscheinlich. Denken Sie daran, dass die L2-Regularisierung die Gewichtungen in Richtung 0 bewegt.
Wenn Sie beim Trainieren eines Modells die L2-Regularisierung verwenden, werden einige Features aus dem Modell entfernt.
Richtig
Durch die L2-Regularisierung können einige Gewichtungen zwar sehr klein werden, aber sie werden nie ganz auf null gesetzt. Daher tragen alle Features weiterhin zu dem Modell bei.
Falsch
Die L2-Regularisierung setzt die Gewichtungen nie ganz auf null.

Regularisierungsrate (Lambda)

Wie bereits erwähnt, wird beim Training versucht, eine Kombination aus Verlust und Komplexität zu minimieren:

$$\text{minimize(loss} + \text{ complexity)}$$

Modellentwickler passen die Gesamtauswirkungen der Komplexität auf das Modelltraining an , indem sie den Wert mit einem Skalar multiplizieren, der als Regularisierungsrate bezeichnet wird. Das griechische Zeichen Lambda (λ) steht in der Regel für die Regularisierungsrate.

Modellentwickler versuchen also, Folgendes zu erreichen:

$$\text{minimize(loss} + \lambda \text{ complexity)}$$

Eine hohe Regularisierungsrate:

  • Verstärkt den Einfluss der Regularisierung und verringert so die Wahrscheinlichkeit einer Überanpassung.
  • Führt in der Regel zu einem Histogramm der Modellgewichtungen mit den folgenden Merkmalen:
    • Normalverteilung
    • Durchschnittsgewicht von 0

Eine niedrige Regularisierungsrate:

  • Verringert den Einfluss der Regularisierung und erhöht so die Wahrscheinlichkeit einer Überanpassung.
  • Führt in der Regel zu einem Histogramm der Modellgewichtungen mit einer flachen Verteilung.

Das Histogramm der Modellgewichtungen für eine hohe Regularisierungsrate könnte beispielsweise so aussehen wie in Abbildung 18.

Abbildung 18: Histogramm der Gewichte eines Modells mit einem Mittelwert von null und einer Normalverteilung.
Abbildung 18 Histogramm der Gewichtungen für eine hohe Regularisierungsrate. Der Mittelwert ist null. Normalverteilung.

 

Im Gegensatz dazu führt eine niedrige Regularisierungsrate in der Regel zu einem flacheren Histogramm, wie in Abbildung 19 zu sehen.

Abbildung 19: Histogramm der Gewichte eines Modells mit einem Mittelwert von null, das irgendwo zwischen einer flachen und einer Normalverteilung liegt.
Abbildung 19 Histogramm der Gewichtungen für eine niedrige Regularisierungsrate. Der Mittelwert kann null sein oder nicht.

 

Regularisierungsrate auswählen

Die ideale Regularisierungsrate führt zu einem Modell, das sich gut auf neue, bisher unbekannte Daten verallgemeinern lässt. Leider ist dieser ideale Wert datenabhängig, daher müssen Sie einige Anpassung.

Vorzeitiges Beenden: eine Alternative zur komplexitätsbasierten Regularisierung

Vorzeitiges Beenden ist eine Regularisierungsmethode, bei der keine Komplexitätsberechnung erforderlich ist. Stattdessen wird das Training einfach beendet, bevor das Modell vollständig konvergiert. Sie beenden das Training beispielsweise, wenn die Verlustkurve für das Validierungs-Dataset zu steigen beginnt (die Steigung wird positiv).

Obwohl das vorzeitige Beenden in der Regel den Trainingsverlust erhöht, kann es den Testverlust verringern.

Das vorzeitige Beenden ist eine schnelle, aber selten optimale Form der Regularisierung. Das resultierende Modell ist sehr wahrscheinlich nicht so gut wie ein Modell, das gründlich mit der idealen Regularisierungsrate trainiert wurde.

Gleichgewicht zwischen Lernrate und Regularisierungsrate finden

Lernrate und Regularisierungsrate bewegen die Gewichtungen in der Regel in entgegengesetzte Richtungen. Eine hohe Lernrate zieht die Gewichtungen oft von null weg, während eine hohe Regularisierungsrate die Gewichtungen in Richtung null bewegt.

Wenn die Regularisierungsrate im Verhältnis zur Lernrate hoch ist, führen die schwachen Gewichtungen in der Regel zu einem Modell, das schlechte Vorhersagen trifft. Wenn die Lernrate im Verhältnis zur Regularisierungsrate hoch ist, führen die starken Gewichtungen dagegen in der Regel zu einem überangepassten Modell.

Ihr Ziel ist es, das Gleichgewicht zwischen Lernrate und Regularisierungsrate zu finden. Das kann eine Herausforderung sein. Und wenn Sie dieses schwer zu erreichende Gleichgewicht gefunden haben, müssen Sie möglicherweise die Lernrate ändern. Wenn Sie die Lernrate ändern, müssen Sie wieder die ideale Regularisierungsrate finden.