Mit der logistischen Regression haben wir gelernt, wie man in zwei Klassen einteilt.
Was passiert nun, wenn es mehr als zwei Klassen gibt?
n ist einfach die Mehrklassenerweiterung dieser Idee. Und wir werden dieses Modell für meinen 14. Tag besprechen Maschinelles Lernen „Adventskalender“ (Folgen Sie diesem Hyperlink, um alle Informationen zum Ansatz und den von mir verwendeten Dateien zu erhalten.)
Statt einer Punktzahl erstellen wir jetzt eine Punktzahl professional Klasse. Anstelle einer Wahrscheinlichkeit wenden wir die Softmax-Funktion an, um Wahrscheinlichkeiten zu erzeugen, die sich auf 1 summieren.
Das Softmax-Modell verstehen
Bevor wir das Modell trainieren, wollen wir es zunächst verstehen um welches Modell es sich handelt.
Bei der Softmax-Regression geht es noch nicht um Optimierung.
Es geht zunächst um wie Vorhersagen berechnet werden.
Ein kleiner Datensatz mit 3 Klassen
Lassen Sie uns einen kleinen Datensatz mit einem Merkmal x und drei Klassen verwenden.
Wie bereits erwähnt, sollte die Zielvariable y sein nicht als numerisch behandelt werden.
Es repräsentiert Kategorien, keine Mengen.
Eine übliche Artwork, dies darzustellen, ist One-Sizzling-Kodierungwobei jede Klasse durch einen eigenen Indikator repräsentiert wird.
Unter diesem Gesichtspunkt kann die Softmax-Regression als angesehen werden drei parallel laufende logistische Regressioneneine professional Klasse.
Kleine Datensätze sind ideally suited zum Lernen.
Sie können jede Formel, jeden Wert sehen und sehen, wie jeder Teil des Modells zum Endergebnis beiträgt.

Beschreibung des Modells
Was genau ist das Modell?
Punkte professional Klasse
Bei der logistischen Regression ist der Modellwert ein einfacher linearer Ausdruck: Wert = a * x + b.
Softmax Regression macht genau das Gleiche, aber eine Bewertung professional Klasse:
Score_0 = a0 * x + b0
Score_1 = a1 * x + b1
Score_2 = a2 * x + b2
Zum jetzigen Zeitpunkt handelt es sich bei diesen Werten lediglich um reelle Zahlen.
Sie sind noch keine Wahrscheinlichkeiten.
Ergebnisse in Wahrscheinlichkeiten umwandeln: der Softmax-Schritt
Softmax wandelt die drei Ergebnisse in drei Wahrscheinlichkeiten um. Jede Wahrscheinlichkeit ist positiv und alle drei summieren sich zu 1.
Die Berechnung erfolgt direkt:
- Potenzieren Sie jede Punktzahl
- Berechnen Sie die Summe aller Exponentialfunktionen
- Teilen Sie jede Exponentialfunktion durch diese Summe
Dies ergibt p0, p1 und p2 für jede Zeile.
Diese Werte stellen die Modellkonfidenz für jede Klasse dar.
Zu diesem Zeitpunkt ist das Modell vollständig definiert.
Das Coaching des Modells besteht lediglich darin, die Koeffizienten ak und bk so anzupassen, dass diese Wahrscheinlichkeiten so intestine wie möglich mit den beobachteten Klassen übereinstimmen.

Visualisierung des Softmax-Modells
Zu diesem Zeitpunkt ist das Modell vollständig definiert.
Wir haben:
- eine lineare Bewertung professional Klasse
- ein Softmax-Schritt, der diese Ergebnisse in Wahrscheinlichkeiten umwandelt
Das Coaching des Modells besteht lediglich darin, die Koeffizienten aka_kak und bkb_kbk so anzupassen, dass diese Wahrscheinlichkeiten so intestine wie möglich mit den beobachteten Klassen übereinstimmen.
Sobald die Koeffizienten gefunden sind, können wir Visualisieren Sie das Modellverhalten.
Dazu nehmen wir einen Bereich von Eingabewerten, zum Beispiel x von 0 bis 7, und berechnen: Score0, Score1, Score2 und die entsprechenden Wahrscheinlichkeiten p0, p1, p2.
Die Darstellung dieser Wahrscheinlichkeiten ergibt drei glatte Kurven, eine professional Klasse.

Das Ergebnis ist sehr intuitiv.
Für kleine Werte von x ist die Wahrscheinlichkeit der Klasse 0 hoch.
Mit zunehmendem x nimmt diese Wahrscheinlichkeit ab, während die Wahrscheinlichkeit der Klasse 1 zunimmt.
Für größere Werte von x wird die Wahrscheinlichkeit der Klasse 2 dominant.
Bei jedem Wert von x summieren sich die drei Wahrscheinlichkeiten zu 1.
Das Modell trifft keine abrupten Entscheidungen; stattdessen drückt es aus wie zuversichtlich es ist in jeder Klasse.
Dieses Diagramm macht das Verhalten der Softmax-Regression leicht verständlich.
- Sie können sehen, wie das Modell reibungslos von einer Klasse zur anderen übergeht
- Entscheidungsgrenzen entsprechen Schnittpunkten zwischen Wahrscheinlichkeitskurven
- Die Modelllogik wird sichtbar, nicht abstrakt
Dies ist einer der Hauptvorteile der Modellerstellung in Excel:
Sie können nicht nur Vorhersagen berechnen, Sie können es auch Sehen Sie, wie das Modell denkt.
Nachdem das Modell nun definiert ist, brauchen wir einen Weg dazu Bewerten Sie, wie intestine es istund eine Methode dazu seine Koeffizienten verbessern.
In beiden Schritten werden Ideen wiederverwendet, die wir bereits bei der logistischen Regression gesehen haben.
Bewertung des Modells: Cross-Entropy Loss
Die Softmax-Regression verwendet die gleiche Verlustfunktion als logistische Regression.
Für jeden Datenpunkt betrachten wir die ihm zugewiesene Wahrscheinlichkeit richtige Klasseund wir nehmen den negativen Logarithmus:
Verlust = – log (p wahre Klasse)
Wenn das Modell der richtigen Klasse eine hohe Wahrscheinlichkeit zuweist, ist der Verlust gering.
Wenn eine geringe Wahrscheinlichkeit zugewiesen wird, wird der Verlust groß.
In Excel ist dies sehr einfach zu implementieren.
Wir wählen die richtige Wahrscheinlichkeit basierend auf dem Wert von y aus und wenden den Logarithmus an:
Verlust = -LN( CHOOSE(y + 1, p0, p1, p2) )
Abschließend berechnen wir die durchschnittlicher Verlust über alle Reihen.
Dieser durchschnittliche Verlust ist die Menge, die wir minimieren wollen.

Berechnen von Residuen
Um die Koeffizienten zu aktualisieren, beginnen wir mit der Berechnung Resteeine professional Klasse.
Für jede Zeile:
- Residual_0 = p0 minus 1, wenn y gleich 0 ist, andernfalls 0
- Residual_1 = p1 minus 1, wenn y gleich 1 ist, andernfalls 0
- Residual_2 = p2 minus 1, wenn y gleich 2 ist, andernfalls 0
Mit anderen Worten: Für die richtige Klasse subtrahieren wir 1.
Für die anderen Klassen subtrahieren wir 0.
Diese Residuen messen, wie weit die vorhergesagten Wahrscheinlichkeiten von unseren Erwartungen abweichen.
Berechnung der Steigungen
Die Gradienten werden durch Kombination der Residuen mit den Merkmalswerten erhalten.
Für jede Klasse ok:
- Der Gradient von ak ist der Durchschnitt von
residual_k * x - Der Gradient von bk ist der Durchschnitt von
residual_k
In Excel wird dies mit einfachen Formeln wie z.B. umgesetzt SUMPRODUCT Und AVERAGE.
An dieser Stelle ist alles klar:
Sie sehen die Residuen, die Verläufe und den Beitrag jedes Datenpunkts.

Aktualisierung der Koeffizienten
Sobald die Gradienten bekannt sind, aktualisieren wir die Koeffizienten mithilfe des Gradientenabstiegs.
Dieser Schritt ist identisch mit dem, den wir zuvor bei der logistischen Regression oder der linearen Regression gesehen haben.
Der einzige Unterschied besteht darin, dass wir jetzt aktualisieren sechs Koeffizienten statt zwei.
Um das Lernen zu visualisieren, erstellen wir ein zweites Blatt mit einer Zeile professional Iteration:
- die aktuelle Iterationsnummer
- die sechs Koeffizienten (a0, b0, a1, b1, a2, b2)
- der Verlust
- die Steigungen
Zeile 2 entspricht Iteration 0mit den Anfangskoeffizienten.
Zeile 3 berechnet die aktualisierten Koeffizienten anhand der Farbverläufe aus Zeile 2.
Indem wir die Formeln für Hunderte von Zeilen nach unten ziehen, simulieren wir einen Gradientenabfall über viele Iterationen.
Dann sieht man deutlich:
- Die Koeffizienten stabilisieren sich allmählich
- Der Verlust verringert sich von Iteration zu Iteration
Dadurch wird der Lernprozess greifbar.
Anstatt sich einen Optimierer vorzustellen, können Sie dies tun Beobachten Sie, wie das Modell lernt.

Logistische Regression als Sonderfall der Softmax-Regression
Logistische Regression und Softmax-Regression werden oft als unterschiedliche Modelle dargestellt.
In Wirklichkeit handelt es sich um dieselbe Idee in unterschiedlichen Maßstäben.
Softmax Regression berechnet einen linearen Rating professional Klasse und wandelt diese Scores durch Vergleich in Wahrscheinlichkeiten um.
Wenn nur zwei Klassen vorhanden sind, hängt dieser Vergleich nur von der ab Unterschied zwischen den beiden Werten.
Dieser Unterschied ist eine lineare Funktion der Eingabe, und die Anwendung von Softmax erzeugt in diesem Fall genau die logistische (Sigmoid-)Funktion.
Mit anderen Worten: Logistische Regression ist einfach eine Softmax-Regression, die auf zwei Klassen angewendet wird, wobei redundante Parameter entfernt werden.
Sobald dies verstanden ist, wird der Übergang von der binären zur Mehrklassenklassifizierung zu einer natürlichen Erweiterung und nicht zu einem konzeptionellen Sprung.

Die Softmax-Regression führt keine neue Denkweise ein.
Das zeigt es einfach Logistic Regression enthielt bereits alles, was wir brauchten.
Indem wir die lineare Bewertung einmal professional Klasse duplizieren und sie mit Softmax normalisieren, gelangen wir von binären Entscheidungen zu Mehrklassenwahrscheinlichkeiten, ohne die zugrunde liegende Logik zu ändern.
Der Verlust ist die gleiche Idee.
Die Farbverläufe sind gleich aufgebaut.
Die Optimierung ist der gleiche Gradientenabstieg, den wir bereits kennen.
Was sich ändert, ist nur die Anzahl paralleler Partituren.
Eine andere Möglichkeit, mit der Klassifizierung mehrerer Klassen umzugehen?
Softmax ist nicht die einzige Möglichkeit, Mehrklassenprobleme in gewichtsbasierten Modellen zu lösen.
Es gibt einen anderen Ansatz, der konzeptionell weniger elegant, aber in der Praxis sehr verbreitet ist:
Eins gegen Relaxation oder eins gegen eins Einstufung.
Anstatt ein einzelnes Mehrklassenmodell zu erstellen, trainieren wir mehrere binäre Modelle und kombinieren ihre Ergebnisse.
Diese Strategie wird häufig verwendet Unterstützen Sie Vektormaschinen.
Morgen schauen wir uns SVM an.
Und Sie werden sehen, dass es sich auf eine eher ungewöhnliche Artwork und Weise erklären lässt … und das wie gewohnt direkt in Excel.
