Was sind einige Gründe, warum iterativ neu gewichtete kleinste Quadrate nicht konvergieren würden, wenn sie für die logistische Regression verwendet werden?


8

Ich habe die Funktion glm.fit in R verwendet, um Parameter an ein logistisches Regressionsmodell anzupassen. Standardmäßig verwendet glm.fit iterativ neu gewichtete kleinste Quadrate, um die Parameter anzupassen. Was sind einige Gründe, warum dieser Algorithmus bei Verwendung für die logistische Regression nicht konvergieren würde?


2
Ich weiß nicht, wie ich "am häufigsten" beurteilen soll, da das, was für Menschen in einem Bereich üblich ist, für einen anderen ungewöhnlich sein kann. [Ein Grund (von vielen möglichen) könnte die vollständige Trennung sein - wobei entlang einer linearen Kombination von Prädiktoren alle Nullen entweder über oder unter allen Einsen liegen. Sie können manchmal sehen, wann es passiert, weil mindestens ein Parameter dazu neigt, in Richtung unendlich zu gehen.]
Glen_b - Monica am

@Glen_b: Danke für deinen Kommentar, ich werde ihn in "einige Gründe" ändern.
Jessica

Antworten:


14

Falls die beiden Klassen trennbar sind, würden iterativ neu gewichtete kleinste Quadrate (IRLS) brechen. In einem solchen Szenario ist jede Hyperebene, die die beiden Klassen trennt, eine Lösung, und es gibt unendlich viele davon. IRLS soll eine Maximum-Likelihood-Lösung finden. Maximum Likelihood hat keinen Mechanismus, um eine dieser Lösungen der anderen vorzuziehen (z. B. kein Konzept der maximalen Marge). Abhängig von der Initialisierung sollte IRLS zu einer dieser Lösungen gehen und aufgrund numerischer Probleme brechen (die Details von IRLS sind nicht bekannt; eine fundierte Vermutung).

Ein weiteres Problem ergibt sich bei linearer Trennbarkeit der Trainingsdaten. Jede der Hyperebenenlösungen entspricht einer Heaviside-Funktion. Daher sind alle Wahrscheinlichkeiten entweder 0 oder 1. Die lineare Regressionslösung wäre eher ein harter Klassifikator als ein probabilistischer Klassifikator.

σ ( w , b ) wlim|w|σ(wT.x+b)σ(w,b)w


7

Zusätzlich zur linearen Trennung (bei der sich der MLE an der Grenze des Parameterraums befindet) ist das Fisher-Scoring-Verfahren in R nicht vollständig numerisch stabil. Es sind Schritte fester Größe erforderlich, die in bestimmten pathologischen Fällen zu einer Nichtkonvergenz führen können (wenn der wahre MLE tatsächlich ein innerer Punkt ist).

Zum Beispiel,

y <- c(1,1,1,0)
x <- rep(1,4)
fit1 <- glm.fit(x,y, family=binomial(link="logit"),start=-1.81)

ergibt einen Koeffizienten von anstelle des erwarteten Logits . ( 3 / 4 ) 1,09862×10fünfzehn(3/.4)1,0986

Das CRAN-Paket glm2 bietet einen Ersatz für glm.fitdie Anpassung der Schrittgröße, um eine monotone Konvergenz sicherzustellen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.