Wie löse ich logistische Regression mit gewöhnlichen kleinsten Quadraten?

9

Ich habe selbst maschinell gelernt. Ich bin auf diesen Abschnitt der Wikipedia-Seite über logistische Regression gestoßen , in dem behauptet wird

Weil das Modell als verallgemeinertes lineares Modell (siehe unten) für 0 ausgedrückt werden kann

Es scheint mir, dass ich ein logistisches Regressions-Setup in ein lineares Regressions-Setup umwandeln kann. Aber ich kann nicht sehen, wie das geht. Ich verstehe nicht, was bedeutet. Vielleicht ist das der Trick?0<p<1

Kirakun
quelle
4
Haben Sie sich unsere Themen zu logistischer Regression und GLM angesehen? Sie werden Ihnen helfen zu erkennen, dass nicht direkt beobachtet werden kann. Was Sie also vorschlagen, ist eine Sackgasse. p
whuber
Das habe ich auch gedacht, weshalb ich über den Kommentar der Wikipedia verwirrt war.
Kirakun
1
Verallgemeinerte lineare Modelle sind auf viele verschiedene Arten der Regression anwendbar (linear, binomial / logistisch, Poisson usw.) und sind kein exklusives Merkmal der linearen Regression. Alles "linear" bedeutet hier, dass die Anpassungsfunktion die Formy=ein+bf1(x)+cf2(x)+df3(x)+
jwimberley
1
Für die im Titel formulierte Frage gibt es natürlich eine bekannte Lösung , dh die logistische Regression könnte nur mit einer OLS-Subroutine (+ einer einfachen Matrixalgebra) gelöst werden.
GeoMatt22
Siehe auch stats.stackexchange.com/questions/326350/…
kjetil b halvorsen

Antworten:

7

Die Sigmoidfunktion im logistischen Regressionsmodell schließt die Verwendung der engen algebraischen Parameterschätzung wie bei gewöhnlichen kleinsten Quadraten (OLS) aus. Stattdessen werden nichtlineare Analysemethoden wie Gradientenabstieg oder Newtonsche Methode verwendet, um die Kostenfunktion des Formulars zu minimieren :

Kosten(σ(Θx),y)=- -yLog(σ(Θx))- -(1- -y)Log(1- -σ(Θx)) , wobei

σ(z)=11+e- -Θx , dh die Sigmoidfunktion. Beachten Sie, dass bei die vorhergesagte Wahrscheinlichkeit hoch sein soll und das Minuszeichen im blauen Teil der Kostenfunktion die Kosten minimiert. Wenn dagegen , kommt nur der rote Teil der Gleichung zustande, und je kleiner , desto näher sind die Kosten an Null.y=1σ(Θx)y=0σ(Θx)

Entsprechend können wir die Wahrscheinlichkeitsfunktion maximieren als:

p(y|x,θ)=(σ(Θx))y(1- -σ(Θx))1- -y .


Der Satz, den Sie zitieren, bezieht sich jedoch meines Erachtens auf den relativ linearen Teil der Sigmoidfunktion:

Da das Modell als verallgemeinertes lineares Modell ausgedrückt werden kann ( siehe unten ), können für gewöhnliche kleinste Quadrate ausreichen, wobei das R-Quadrat das Maß für die Anpassungsgüte im Anpassungsraum ist. Wenn oder , sind komplexere Methoden erforderlich.0<p<1p=01

Das logistische Regressionsmodell lautet:

Gewinnchancen (Y = 1)=p(Y.=1)1- -p(Y.=1)=eθ0+θ1x1++θpxp

oder,

(*)Log(Gewinnchancen (Y = 1))=Log(p(Y.=1)1- -p(Y.=1))=θ0+θ1x1++θpxp=ΘX.

Daher ist dies "nah genug" an einem OLS-Modell ( ), um als solches geeignet zu sein und die Parameter in geschlossener Form zu schätzen, vorausgesetzt, die Wahrscheinlichkeit von (denken Sie an die Bernoulli-Modellierung der Antwortvariablen in der logistischen Regression) liegt nicht nahe bei oder . Mit anderen Worten, während in Gl. * hält sich von den asymptotischen Regionen fern.y=ΘX.+ϵy=101Log(p(Y.=1)1- -p(Y.=1))


Siehe zum Beispiel diesen interessanten Eintrag in Statistical Horizons , den ich mit dem mtcarsDatensatz in R testen wollte . Die Variable für das Automatikgetriebe amist binär, sodass wir sie über Meilen pro Gallone zurückführen können mpg. Können wir vorhersagen, dass ein Automodell aufgrund seines Gasverbrauchs ein Automatikgetriebe hat?

Wenn ich weitermache und nur das Problem mit OLS-Schätzungen durchpflüge, erhalte ich eine Vorhersagegenauigkeit von nur auf diesem einzelnen Prädiktor basiert. Und rate was? Ich erhalte genau die gleiche Verwirrungsmatrix und Genauigkeitsrate, wenn ich eine logistische Regression anpasse.75%.

Die Sache ist, dass die Ausgabe von OLS nicht binär, sondern kontinuierlich ist und versucht, die realen binären Werte zu schätzen. Sie liegen typischerweise zwischen und , ähnlich wie Wahrscheinlichkeitswerte, obwohl sie nicht wie bei der logistischen Regression streng begrenzt sind ( Sigmoidfunktion).y01

Hier ist der Code:

> d = mtcars
> summary(as.factor(d$am))
 0  1 
19 13 
> fit_LR = glm(as.factor(am) ~ mpg, family = binomial, d)
> pr_LR = predict(fit, type="response")
> 
> # all.equal(pr_LR, 1 / (1 + exp( - predict(fit_LR) ) ) ) - predict() is log odds P(Y =1)
> 
> d$predict_LR = ifelse(pr_LR > 0.5, 1, 0)
> t_LR = table(d$am,d$predict_LR)
> (accuracy = (t_LR[1,1] + t_LR[2,2]) / sum(t))
[1] 0.75
> 
> fit_OLS = lm(am ~ mpg, d)
> pr_OLS = predict(fitOLS)
> d$predict_OLS = ifelse(pr_OLS > 0.5, 1, 0)
> (t_OLS = table(d$am, d$predict_OLS))

     0  1
  0 17  2
  1  6  7
> (accuracy = (t[1,1] + t[2,2]) / sum(t_OLS))
[1] 0.75

Die Frequenz von automatischen v manuellen Autos ist ziemlich ausgewogen, und das OLS-Modell ist als Perzeptron gut genug:

Geben Sie hier die Bildbeschreibung ein

Antoni Parellada
quelle
2

Sie interpretieren die von Ihnen zitierte Aussage falsch. Ein verallgemeinertes lineares Modell (normalerweise durch maximale Wahrscheinlichkeit geschätzt) ist kein Problem der kleinsten Quadrate *.

Siehe zum Beispiel die Wikipedia-Seite Verallgemeinertes lineares Modell .

Die Wahrscheinlichkeit wird jedoch häufig als Folge linearer Approximationen der kleinsten Quadrate gelöst - iterativ neu gewichtete kleinste Quadrate (ähnlich einem üblichen Ansatz für nichtlineare Probleme der kleinsten Quadrate).

In der Praxis wird daher häufig eine Folge von Problemen mit gewichteten kleinsten Quadraten gelöst, um die Parameterschätzungen zu erhalten. Diese werden erhalten, indem mit einer ungefähren Schätzung begonnen wird (es gibt einige Standardmethoden, um diese zu erhalten) und dann Arbeitsantwortwerte und Gewichte für eine lineare Annäherung an das Modell konstruiert werden, das durch gewichtete kleinste Quadrate angepasst wird, wodurch neue Schätzungen erhalten werden, die wiederum verwendet werden die Arbeitsantwortwerte und -gewichte zu aktualisieren; Dieser Zyklus wird mehrmals wiederholt.

Dies ist nicht die einzige Möglichkeit, diese Modelle anzupassen, sondern eine, die von einer Reihe von Statistikpaketen verwendet wird.

* (NB nicht zu verwechseln mit einem allgemeinen linearen Modell , dessen Schätzung als Form der kleinsten Quadrate oder mit verallgemeinerten kleinsten Quadraten gegossen werden kann)

Glen_b -State Monica
quelle