Logistische Regression: Verlust und Normalisierung

Verlustfunktion für logistische Regression

Die Verlustfunktion für lineare Regression ist der Quadratverlust. Die Verlustfunktion für logistische Regression ist Log Loss (Logverlust), der so definiert ist:

$$\text{Log Loss} = \sum_{(x,y)\in D} -y\log(y') - (1 - y)\log(1 - y')$$

wobei

  • \((x,y)\in D\) ist das Dataset mit vielen gekennzeichneten Beispielen, bei denen es sich um \((x,y)\) Paare handelt.
  • \(y\) ist das Label in einem Beispiel mit Label. Da dies eine logistische Regression ist, muss jeder Wert von \(y\) entweder 0 oder 1 sein.
  • \(y'\) ist der vorhergesagte Wert (etwa zwischen 0 und 1) angesichts der Funktionen in \(x\).

Normalisierung in der logistischen Regression

Die Normalisierung ist für die logistische Regressionsmodellierung äußerst wichtig. Ohne Normalisierung würde der asymptotische Charakter der logistischen Regression in großen Dimensionen den Verlust auf 0 erhöhen. Daher verwenden die meisten logistischen Regressionsmodelle eine der folgenden zwei Strategien, um die Modellkomplexität zu dämpfen:

  • L2-Standardisierung.
  • Frühes Beenden, d. h. Begrenzung der Anzahl der Trainingsschritte oder der Lernrate.

(Wir besprechen eine dritte Strategie – L1Standardisierung – in einemspäteren Modul.

Stellen Sie sich vor, Sie weisen jedem Beispiel eine eindeutige ID zu und ordnen jede ID ihrer eigenen Funktion zu. Wenn Sie keine Normalisierungsfunktion angeben, ist das Modell vollständig überfähig. Das liegt daran, dass das Modell versuchen würde, bei allen Beispielen den Verlust auf null zu verlieren, und niemals dorthin gelangt, wodurch die Gewichtungen für jedes Indikatormerkmal zu +unendlich oder unendlich führen. Dies kann bei hochdimensionalen Daten mit Feature-Kreuzen passieren, wenn es nur eine große Menge seltener Kreuze gibt, die nur jeweils an einem Beispiel auftreten.

Dieses Problem lässt sich glücklicherweise durch die Verwendung von L2 oder das vorzeitige Beenden beheben.