Verändert das Downsampling die logistischen Regressionskoeffizienten?

34

Wenn ich über einen Datensatz mit einer sehr seltenen positiven Klasse verfüge und die negative Klasse heruntersuche, muss ich dann eine logistische Regression durchführen, um die Regressionskoeffizienten anzupassen, um die Tatsache widerzuspiegeln, dass ich die Prävalenz der positiven Klasse geändert habe?

Angenommen, ich habe einen Datensatz mit 4 Variablen: Y, A, B und C. Y, A und B sind binär, C ist stetig. Für 11.100 Beobachtungen ist Y = 0 und für 900 Y = 1:

set.seed(42)
n <- 12000
r <- 1/12
A <- sample(0:1, n, replace=TRUE)
B <- sample(0:1, n, replace=TRUE)
C <- rnorm(n)
Y <- ifelse(10 * A + 0.5 * B + 5 * C + rnorm(n)/10 > -5, 0, 1)

Ich passe eine logistische Regression an, um Y vorauszusagen, wenn A, B und C gegeben sind.

dat1 <- data.frame(Y, A, B, C)
mod1 <- glm(Y~., dat1, family=binomial)

Um Zeit zu sparen, konnte ich jedoch 10.200 Nicht-Y-Beobachtungen entfernen, was 900 Y = 0 und 900 Y = 1 ergab:

require('caret')
dat2 <- downSample(data.frame(A, B, C), factor(Y), list=FALSE)
mod2 <- glm(Class~., dat2, family=binomial)

Die Regressionskoeffizienten der beiden Modelle sehen sehr ähnlich aus:

> coef(summary(mod1))
              Estimate Std. Error   z value     Pr(>|z|)
(Intercept) -127.67782  20.619858 -6.191983 5.941186e-10
A           -257.20668  41.650386 -6.175373 6.600728e-10
B            -13.20966   2.231606 -5.919353 3.232109e-09
C           -127.73597  20.630541 -6.191596 5.955818e-10
> coef(summary(mod2))
              Estimate  Std. Error     z value    Pr(>|z|)
(Intercept) -167.90178   59.126511 -2.83970391 0.004515542
A           -246.59975 4059.733845 -0.06074284 0.951564016
B            -16.93093    5.861286 -2.88860377 0.003869563
C           -170.18735   59.516021 -2.85952165 0.004242805

Was mich zu der Annahme veranlasst, dass das Downsampling die Koeffizienten nicht beeinflusst hat. Dies ist jedoch ein einziges Beispiel, und ich möchte es lieber mit Sicherheit wissen.

Zach
quelle
8
Abgesehen vom Achsenabschnitt schätzen Sie die gleichen Populationsparameter, wenn Sie die Stichprobe herunterfahren, jedoch mit geringerer Genauigkeit - mit Ausnahme des Achsenabschnitts, den Sie schätzen können, wenn Sie die Populationsprävalenz der Antwort kennen. Siehe Hosmer & Lemeshow (2000), Applied Logistic Regression , Kap. 6.3 für einen Beweis. Manchmal können Sie, wenn auch nicht häufig, eine Trennung einführen, wenn Sie die Mehrheitsantwort herunterrechnen.
Scortchi - Wiedereinsetzung von Monica
@Scortchi Poste deinen Kommentar als Antwort - dies scheint für meine Frage ausreichend zu sein. Danke für den Hinweis.
Zach
@Scortchi und Zach: Laut dem heruntergerechneten Modell ( mod2) ist Pr(>|z|)for Afast 1. Wir können die Nullhypothese, dass der Koeffizient A0 ist, nicht zurückweisen, also haben wir eine Kovariate verloren, die in verwendet wird mod1. Ist das nicht ein wesentlicher Unterschied?
Zhubarb
@ Zhubarb: Wie ich bereits erwähnt habe, könnten Sie eine Trennung einführen, wodurch die Wald-Standardfehlerschätzungen völlig unzuverlässig werden.
Scortchi
Siehe auch Scott 2006
StasK

Antworten:

28

Downsampling entspricht dem Fall-Kontroll-Design in der medizinischen Statistik - Sie bestimmen die Anzahl der Antworten und beobachten die kovariaten Muster (Prädiktoren). Vielleicht ist die Schlüsselreferenz Prentice & Pyke (1979), "Logistic Disease Incidence Models and Case-Control Studies", Biometrika , 66 , 3.

Sie verwendeten den Satz von Bayes, um jeden Term in der Wahrscheinlichkeit für die Wahrscheinlichkeit eines gegebenen kovariaten Musters umzuschreiben, das davon abhängig ist, dass es sich um einen Fall oder eine Kontrolle handelt, und zwar als zwei Faktoren. Eine repräsentiert eine gewöhnliche logistische Regression (Wahrscheinlichkeit, ein Fall oder eine Kontrolle zu sein, die von einem kovariaten Muster abhängig ist), und die andere repräsentiert die marginale Wahrscheinlichkeit des kovariaten Musters. Sie zeigten, dass die Maximierung der Gesamtwahrscheinlichkeit unter der Bedingung, dass die Grenzwahrscheinlichkeiten für einen Fall oder eine Kontrolle durch das Stichprobenschema festgelegt werden, die gleichen Quotenquotientenschätzungen ergibt wie die Maximierung des ersten Faktors ohne Einschränkung (dh Durchführung einer normalen logistischen Regression). .

Der Intercept für die Population kann aus dem Fall-Kontroll-Intercept geschätzt werden, wenn die Populationsprävalenz bekannt ist:β0β^0π

β^0=β^0-Log(1-ππn1n0)

Dabei ist & die Anzahl der untersuchten Kontrollen und Fälle.n0n1

Wenn Sie Daten wegwerfen, haben Sie sich natürlich die Mühe gemacht, Daten zu sammeln, obwohl dies der am wenigsten nützliche Teil ist, und Sie verringern die Genauigkeit Ihrer Schätzungen. Einschränkungen bei den Rechenressourcen sind der einzige gute Grund, den ich dafür kenne, aber ich erwähne ihn, weil einige Leute denken, dass "ein ausgeglichener Datensatz" wichtig ist, aus einem anderen Grund, den ich nie feststellen konnte.

Scortchi - Wiedereinsetzung von Monica
quelle
Danke für die ausführliche Antwort. Und ja, der Grund, warum ich dies mit dem vollständigen Modell (ohne Downsampling) tue, ist rechenintensiv.
Zach
Lieber @ Scortchi, danke für die Erklärung, aber in einem Fall, in dem ich logistische Regression verwenden möchte, scheint der ausgeglichene Datensatz unabhängig von den Rechenressourcen erforderlich zu sein. Ich habe erfolglos versucht, "Firths voreingenommenes Protokoll mit reduzierter Bestrafungswahrscheinlichkeit" zu verwenden. Anscheinend ist das Downsampling die einzige Alternative für mich, oder?
Shahin
@ Shahin Nun, (1) warum bist du unzufrieden mit einer logistischen Regression, die durch maximale Wahrscheinlichkeit angepasst ist? & (2) Was genau läuft mit Firths Methode schief?
Scortchi
@Scortchi, Das Problem ist, dass das Modell bei der Erkennung von successInstanzen sehr schlecht ist . Mit anderen Worten, sehr niedriger TPR. Durch Ändern des Schwellenwerts wird der TPR erhöht, aber die Genauigkeit ist sehr schlecht, was bedeutet, dass über 70% der als positiv gekennzeichneten Instanzen tatsächlich negativ sind. Ich habe gelesen, dass logistische Regression in seltenen Fällen nicht gut funktioniert. Hier spielt Firths Methode eine Rolle, oder zumindest eine der Rollen, die sie einnehmen kann. Die Ergebnisse der Firth-Methode waren jedoch der üblichen logit-Methode sehr ähnlich. Ich dachte, ich könnte mich bei Firths irren, aber anscheinend ist alles in Ordnung
Shahin
3
@ Shahin: Sie scheinen dort den falschen Baum zu bellen: Downsampling wird die Unterscheidung Ihres Modells nicht verbessern. Vorspannungskorrekturen oder Regularisierungen könnten (bei neuen Daten - beurteilen Sie die Leistung eines Testsets?) Hilfreich sein, aber eine komplexere Spezifikation könnte hilfreich sein, oder Sie benötigen einfach informativere Prädiktoren. Sie sollten wahrscheinlich eine neue Frage stellen und dabei Details zu den Daten, dem Sachkontext, dem Modell, der Diagnose und Ihren Zielen angeben.
Scortchi