Bei der Modellierung kontinuierlicher Proportionen (z. B. proportionale Vegetationsbedeckung bei Erhebungsquadraten oder Anteil der Zeit, die an einer Aktivität beteiligt ist) wird die logistische Regression als unangemessen angesehen (z. B. Warton & Hui (2011). Der Arkussinus ist asinin: die Analyse der Proportionen in der Ökologie ). Vielmehr ist eine OLS-Regression nach logit-transformierender Proportionen oder möglicherweise eine Beta-Regression besser geeignet.
Unter welchen Bedingungen unterscheiden sich die Koeffizientenschätzungen der logitlinearen Regression und der logistischen Regression bei Verwendung von R lm
und glm
?
Nehmen Sie die folgenden simulierten Daten - Set, wo wir davon ausgehen können , dass p
unsere Rohdaten (dh kontinuierliche Proportionen, anstatt darstellt ):
set.seed(1)
x <- rnorm(1000)
a <- runif(1)
b <- runif(1)
logit.p <- a + b*x + rnorm(1000, 0, 0.2)
p <- plogis(logit.p)
plot(p ~ x, ylim=c(0, 1))
Wenn wir ein logit-lineares Modell anpassen, erhalten wir:
summary(lm(logit.p ~ x))
##
## Call:
## lm(formula = logit.p ~ x)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.64702 -0.13747 -0.00345 0.15077 0.73148
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.868148 0.006579 131.9 <2e-16 ***
## x 0.967129 0.006360 152.1 <2e-16 ***
## ---
## Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
##
## Residual standard error: 0.208 on 998 degrees of freedom
## Multiple R-squared: 0.9586, Adjusted R-squared: 0.9586
## F-statistic: 2.312e+04 on 1 and 998 DF, p-value: < 2.2e-16
Logistische Regression ergibt:
summary(glm(p ~ x, family=binomial))
##
## Call:
## glm(formula = p ~ x, family = binomial)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -0.32099 -0.05475 0.00066 0.05948 0.36307
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 0.86242 0.07684 11.22 <2e-16 ***
## x 0.96128 0.08395 11.45 <2e-16 ***
## ---
## Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 176.1082 on 999 degrees of freedom
## Residual deviance: 7.9899 on 998 degrees of freedom
## AIC: 701.71
##
## Number of Fisher Scoring iterations: 5
##
## Warning message:
## In eval(expr, envir, enclos) : non-integer #successes in a binomial glm!
Werden die Schätzungen des logistischen Regressionskoeffizienten in Bezug auf die Schätzungen des logit-linearen Modells immer unvoreingenommen sein?
quelle
0.1
, dh hinter dem Anteil "gab" beispielsweise 10 unabhängige Versuche, die einen Erfolg erbrachten. Für ein lineares Modell0.1
ist es einfach ein Wert, ein beliebiges Maß.family=binomial
impliziert schließlich, dass die abhängige Variable Binomialzahlen darstellt - keine Proportionen. Und wie würde manglm
wissen, dass0.1
das wie "eins von zehn" und nicht "zehn von hundert" ist? Der Anteil selbst unterscheidet sich zwar nicht, hat jedoch erhebliche Auswirkungen auf die Berechnung des Standardfehlers.weights
(obwohl dies nicht das ist, was ich in meinem Beitrag versucht habe, in dem ich die Daten absichtlich falsch analysiert habe).Antworten:
Vielleicht kann dies auf die "umgekehrte" Weise beantwortet werden - dh wann sind sie gleich?
Der in der logistischen Regression verwendete IRLS-Algorithmus bietet hier einige Einblicke. Bei der Konvergenz können Sie die Modellkoeffizienten wie folgt ausdrücken:
lm ()
quelle
Bitte zögern Sie nicht, darauf hinzuweisen, wenn ich falsch liege.
Erstens habe ich so gesagt, in der zweiten Passform rufen Sie
glm
falsch an! Um eine logistische Regression durch anzupassenglm
, sollte die Antwort eine (binäre) kategoriale Variable sein, aber Sie verwendenp
eine numerische Variable! Ich muss sagen, eswarning
ist einfach zu sanft, um Benutzer über ihre Fehler zu informieren ...Und wie zu erwarten, erhalten Sie ähnliche Schätzungen der Koeffizienten durch die beiden Anpassungen nur durch Zufall. Wenn Sie ersetzen
logit.p <- a + b*x + rnorm(1000, 0, 0.2)
mitlogit.p <- a + b*x + rnorm(1000, 0, 0.7)
, dh die Varianz der Fehlerterm von Wechsel werden, dann werden die Ergebnisse der beiden Anfälle stark unterschiedlich, obwohl der zweite Sitz ( ) überhaupt sinnlos ist ...0.2
0.7
glm
Die logistische Regression wird für die (binäre) Klassifizierung verwendet, daher sollten Sie wie oben angegeben eine kategoriale Antwort erhalten. Zum Beispiel sollten die Beobachtungen der Antwort eine Reihe von "Erfolg" oder "Misserfolg" sein und nicht eine Reihe von "Wahrscheinlichkeit (Häufigkeit)" wie in Ihren Daten. Für einen bestimmten kategorialen Datensatz können Sie nur eine Gesamthäufigkeit für "Antwort = Erfolg" oder "Antwort = Fehler" anstelle einer Reihe berechnen. In den von Ihnen generierten Daten gibt es überhaupt keine kategoriale Variable, sodass keine logistische Regression angewendet werden kann. Jetzt können Sie sehen, dass die logit-lineare Regression (wie Sie sie nennen), obwohl sie ein ähnliches Erscheinungsbild hat, nur ein gewöhnliches lineares REGRESSION-Problem ist (dh die Antwort ist eine numerische Variable), das die transformierte Antwort verwendet (genau wie die sqr- oder sqrt-Transformation).
Typischerweise wird die lineare Regression durch gewöhnliche kleinste Quadrate (OLS) angepasst, wodurch der Quadratverlust für das Regressionsproblem minimiert wird. Die logistische Regression wird durch die Maximum Likelihood Estimation (MLE) angepasst, wodurch der Log-Verlust für Klassifizierungsprobleme minimiert wird. Hier ist eine Referenz zu Verlustfunktionen Verlustfunktion, Deva Ramanan. Im ersten Beispiel betrachten Sie
p
als Antwort und passen ein gewöhnliches lineares Regressionsmodell über OLS an. Im zweiten Beispiel geben Sie an,R
dass Sie ein logistisches Regressionsmodell von anpassen. Passen Siefamily=binomial
alsoR
das Modell von MLE an. Wie Sie sehen können, erhalten Sie im ersten Modell den T-Test und den F-Test, die klassische Ausgaben von OLS sind, die für die lineare Regression geeignet sind. Im zweiten Modell basiert der Signifikanztest des Koeffizienten aufz
stattt
Dies ist die klassische Ausgabe der MLE-Anpassung der logistischen Regression.quelle
logistic regression is a CLASSIFICATION problem
kann jedoch in dem Sinne falsch interpretiert werden, dass es nur so lange wert ist, wie es gut klassifiziert werden kann. Was falsch zu denken wäre, weil ein Modell theoretisch "optimal" ist und anhand dessen, wie es Wahrscheinlichkeiten modelliert, manchmal schlechter klassifiziert werden kann als ein nicht so gutes Modell.