Logistische Regression für mehrere Klassen

10

Ich habe das Modell für die logistische Regression für mehrere Klassen erhalten, das von gegeben ist

P(Y=j|X(i))=exp(θjTX(i))1+m=1kexp(θmTX(i))

Dabei ist k die Anzahl der Klassen. Theta ist der zu schätzende Parameter. j ist die j-te Klasse. Xi sind die Trainingsdaten

Eine Sache, die ich nicht verstanden habe, ist, der Nenner Teil das Modell normalisiert hat. Ich meine, dadurch bleibt die Wahrscheinlichkeit zwischen 0 und 1.

1+m=1kexp(θmTX(i))

Ich bin an logistische Regression gewöhnt

P(Y=1|X(i))=1/(1+exp(θTX(i)))

Eigentlich bin ich mit der Nomalisierungssache verwechselt. In diesem Fall, da es sich um eine Sigmoid-Funktion handelt, darf der Wert niemals kleiner als 0 oder größer als 1 sein. Aber ich bin im Fall mehrerer Klassen verwirrt. Wieso ist es so?

Dies ist meine Referenz https://list.scms.waikato.ac.nz/pipermail/wekalist/2005-February/029738.html . Ich denke, es hätte sein sollen, zu normalisieren

P(Y=j|X(i))=exp(θjTX(i))m=1kexp(θmTX(i))
user34790
quelle
2
Hinweis: Bei der logistischen Regression müssen implizit zwei Wahrscheinlichkeiten behandelt werden: die Wahrscheinlichkeit und die Wahrscheinlichkeit . Diese Wahrscheinlichkeiten müssen . Y=1Y=01
whuber
1
Basierend auf einigen Ihrer anderen Beiträge wissen Sie, wie Sie Gleichungen markieren. Die Textgleichungen hier sind schwer zu lesen und die (Indizes?) Sind verwirrend - können Sie sie mit markieren ? LATEX
Makro
2
Da Sie hier so viele Fragen stellen, halten Sie bitte inne und lesen Sie unsere FAQ, wie Sie gute Fragen stellen können. Lesen Sie die Hilfe zum Markup, damit Sie Ihre Gleichungen lesbar machen können. TEX
whuber
Ich habe die Gleichung bearbeitet. @ Whuber Eigentlich bin ich verwirrt in Bezug auf die logistische Regression mehrerer Klassen, nicht die binäre. Ich bin besorgt, wie kommt es, wenn ich alle Elemente im Donominator hinzufüge, die Wahrscheinlichkeit normalisiert
user34790
@ user34790, wenn Sie jeden Term durch die Summe teilen, summieren sich die einzelnen Klassenwahrscheinlichkeiten zu 1. Was ist übrigens ? X(i)
Makro

Antworten:

13

Ihre Formel ist falsch (die Obergrenze der Summe). Bei der logistischen Regression mit Klassen ( ) erstellen Sie grundsätzlich binäre logistische Regressionsmodelle, bei denen Sie eine Klasse als Referenz oder Drehpunkt auswählen. Normalerweise wird die letzte Klasse als Referenz ausgewählt. Somit kann die Wahrscheinlichkeit der Referenzklasse berechnet werden durchDie allgemeine Form der Wahrscheinlichkeit istAls Klasse gilt Ihre Referenz und damitKK>2K1K

P(yi=K|xi)=1k=1K1P(yi=k|xi).
P(yi=k|xi)=exp(θiTxi)i=1Kexp(θiTxi).
KθK=(0,,0)Tk < K P ( y i = k | x i ) = exp ( & thgr ; T i x i )
i=1Kexp(θiTxi)=exp(0)+i=1K1exp(θiTxi)=1+i=1K1exp(θiTxi).
Am Ende erhalten Sie die folgende Formel für alle : k<K
P(yi=k|xi)=exp(θiTxi)1+i=1K1exp(θiTxi)
sebp
quelle
4
Beachten Sie, dass die Auswahl der Referenzklasse nicht wichtig ist, wenn Sie die maximale Wahrscheinlichkeit verwenden. Wenn Sie jedoch eine bestrafte maximale Wahrscheinlichkeit oder eine Bayes'sche Folgerung durchführen, kann es oft nützlicher sein, die Wahrscheinlichkeiten überparametrisiert zu lassen und die Strafe einen Weg zur Behandlung der Überparametrisierung wählen zu lassen. Dies liegt daran, dass die meisten Straffunktionen / Prioritäten in Bezug auf die Wahl der Referenzklasse nicht unveränderlich sind
Wahrscheinlichkeitslogik
@sebp, es scheint, dass ein bisschen verwirrend bin ; Es wäre besser, für die Beobachtung und einen anderen Buchstaben für die Iteration der Kategorie . i kiik
Garej
4

Ich denke, Sie werden durch einen Tippfehler verwirrt: Ihr sollte in der ersten Gleichung . Die Einsen, die Sie im logistischen Fall sehen, sind tatsächlich s, z. B. wenn es ein th . k - 1 exp ( 0 ) k & thgr ; = 0kk1exp(0)kθ=0

Angenommen, . Beachten Sie nun, dass Sie von der letzten Formulierung zur logistischen Regressionsversion wie Ersetzen Sie für mehrere Klassen einfach den Nenner in den ersten beiden Größen durch eine Summe über potenzierten linearen Prädiktoren. exp ( b )θ1X=b

exp(b)exp(0)+exp(b)=exp(0)exp(0)+exp(b)=11+exp(b)
Konjugatprior
quelle