Was ist "Multinomial Deviance" im glmnet-Paket?

7

Ich passe eine multinomiale logistische Regression mit dem glmnet-Paket in R an:

library(glmnet)
data(MultinomialExample)
cvfit=cv.glmnet(x, y, family="multinomial", type.multinomial = "grouped")
plot(cvfit)

rplot

Was ist "Multinomial Deviance" und in welcher Beziehung steht es zu " Multinomial Logloss "?

Zach
quelle

Antworten:

8

Abweichung ist eine spezifische Transformation eines Wahrscheinlichkeitsverhältnisses. Insbesondere betrachten wir die modellbasierte Wahrscheinlichkeit, nachdem eine Anpassung durchgeführt wurde, und vergleichen diese mit der Wahrscheinlichkeit des sogenannten gesättigten Modells. Letzteres ist ein Modell, das so viele Parameter wie Datenpunkte hat und eine perfekte Anpassung erzielt. Wenn wir also das Wahrscheinlichkeitsverhältnis betrachten, messen wir in gewissem Sinne, wie weit unser angepasstes Modell von einem "perfekten" Modell entfernt ist.

Im Fall der multinomialen Regression haben wir Daten der Form wobei ein Vektor ist, der angibt, zu welcher Klassenbeobachtung gehört (genau ein Eintrag) enthält eine Eins und der Rest ist Null). Wenn wir nun ein Modell anpassen, das einen Wahrscheinlichkeitsvektor schätzt dann kann die modellbasierte Wahrscheinlichkeit geschrieben werden(x1,y1),(x2,y2),,(xn,yn)yikip^(x)=(p^1(x),p^2(x),,p^k(x))

i=1ni=jkp^j(xi)yij.

Das gesättigte Modell weist andererseits jedem aufgetretenen Ereignis die Wahrscheinlichkeit eins zu, was bedeutet, dass der Vektor der Wahrscheinlichkeiten für jedes genau gleich und wir das Verhältnis dieser Wahrscheinlichkeiten als schreiben könnenp^iyii

i=1nj=1k(p^j(xi)yij)yij.

Um die Abweichung zu finden, nehmen wir das minus zweifache Protokoll dieser Größe (diese Transformation ist in der mathematischen Statistik aufgrund eines Zusammenhangs mit der Verteilung von Bedeutung), um zu erhaltenχ2

2i=1nj=1kyijlog(p^j(xi)yij).

(Es ist auch erwähnenswert, dass wir in dieser Situation das Null-fache des Protokolls von irgendetwas als Null behandeln. Der Grund dafür ist, dass es mit der Idee übereinstimmt, dass die gesättigte Wahrscheinlichkeit gleich Eins sein sollte.)

Der einzige Teil davon, der eigenartig ist, glmnetist die Art und Weise, wie die Funktion geschätzt wird. Es wird eine eingeschränkte Maximierung der Wahrscheinlichkeit durchgeführt und die Abweichung als Obergrenze für berechnet wird variiert, wobei das Modell, das die geringste Abweichung bei den Testdaten erzielt, als "bestes" Modell angesehen wird.p^(x)β1

In Bezug auf die Frage zum Protokollverlust können wir die obige multinomiale Abweichung vereinfachen, indem wir nur die Nicht-Null-Terme beibehalten und sie als schreiben , wobei der Index der beobachteten Klasse für die Beobachtung , der nur der empirische logarithmische Verlust multipliziert mit einer Konstanten ist. Das Minimieren der Abweichung entspricht also dem Minimieren des Protokollverlusts.2i=1nlog[p^ji(xi)]jii

dsaxton
quelle
Vielen Dank für die hervorragende, detaillierte Antwort. Eine letzte Frage: Wie hängt diese Abweichungsfunktion (die meiner Meinung nach von glmnet als "prädiktive" Abweichung von Daten außerhalb der Stichprobe berechnet wird) mit dem Protokollverlust "mehrerer Klassen" zusammen?
Zach
1
@ Zach Sicher, ich habe ein bisschen über Protokollverlust hinzugefügt.
Dsaxton
Vielen Dank für diese hervorragende Antwort! Wenn Sie sagen "Was ist nur der empirische Log-Verlust multipliziert mit einer Konstante", was ist die Konstante? Ist es immer das gleiche oder variiert es Problem für Problem? Geistig versuche ich, einen einfachen Weg zu finden, um die Skala "Multinomial Deviance" in "Multiclass Logloss" umzuwandeln, über die ich ein viel besseres intuitives Verständnis habe.
Zach
1
@Zach Der empirische Protokollverlust ist (es ist eine Schätzung der Kreuzentropie zwischen dem wahren und dem geschätzten Modell: en.wikipedia.org/wiki/Cross_entropy ), was nur die Abweichungszeiten . Dies sollte für alle Klassifizierungsprobleme gleich sein, bei denen Sie Wahrscheinlichkeiten geschätzt haben. n1i=1nlog[p^ji(xi)]1/2n
Dsaxton
Ich danke dir sehr. Ich habe jetzt ein viel besseres Verständnis für dieses Thema.
Zach