Apakah down-sampling mengubah koefisien regresi logistik?

34

Jika saya memiliki dataset dengan kelas positif yang sangat langka, dan saya mengambil sampel kelas negatif, kemudian melakukan regresi logistik, apakah saya perlu menyesuaikan koefisien regresi untuk mencerminkan fakta bahwa saya mengubah prevalensi kelas positif?

Sebagai contoh, katakanlah saya memiliki dataset dengan 4 variabel: Y, A, B dan C. Y, A, dan B adalah biner, C kontinu. Untuk 11.100 pengamatan Y = 0, dan untuk 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)

Saya cocok dengan regresi logistik untuk memprediksi Y, mengingat A, B dan C.

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

Namun, untuk menghemat waktu saya bisa menghapus 10.200 pengamatan non-Y, memberikan 900 Y = 0, dan 900 Y = 1:

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

Koefisien regresi dari 2 model terlihat sangat mirip:

> 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

Yang membuat saya percaya bahwa down-sampling tidak mempengaruhi koefisien. Namun, ini adalah contoh tunggal, buat-buat, dan saya lebih suka tahu pasti.

Zach
sumber
8
Selain intersep, Anda memperkirakan parameter populasi yang sama saat Anda mengambil sampel tetapi dengan kurang presisi - kecuali intersep, yang dapat Anda perkirakan saat mengetahui prevalensi populasi dari respons. Lihat Hosmer & Lemeshow (2000), Regresi Logistik Terapan , Bab 6.3 untuk bukti. Kadang-kadang Anda dapat memperkenalkan pemisahan, meskipun tidak umum, saat Anda mengambil sampel sebagian besar respons.
Scortchi
@Scortchi Posting komentar Anda sebagai jawaban - ini sepertinya cukup untuk pertanyaan saya. Terima kasih untuk referensi.
Zach
@Scortchi dan Zach: Menurut model downsampled ( mod2), Pr(>|z|)untuk Ahampir 1. Kami tidak dapat menolak hipotesis nol bahwa koefisiennya Aadalah 0 sehingga kami telah kehilangan kovariat yang digunakan dalam mod1. Bukankah ini perbedaan yang substansial?
Zhubarb
@ Zhubarb: Seperti yang saya catat, Anda mungkin memperkenalkan pemisahan, membuat estimasi kesalahan standar Wald benar-benar tidak dapat diandalkan.
Scortchi
Lihat juga Scott 2006
Tugas

Jawaban:

29

Pengambilan sampel sama dengan desain kontrol kasus dalam statistik medis — Anda memperbaiki jumlah respons & mengamati pola kovariat (prediktor). Mungkin referensi utama adalah Prentice & Pyke (1979), "Model Insiden Penyakit Logistik dan Studi Kasus-Kontrol", Biometrika , 66 , 3.

Mereka menggunakan Bayes 'Theorem untuk menulis ulang setiap istilah dalam kemungkinan untuk kemungkinan pola kovariat tertentu yang bersyarat menjadi kasus atau kontrol sebagai dua faktor; satu mewakili regresi logistik biasa (probabilitas menjadi kasus atau kontrol bersyarat pada pola kovariat), & yang lainnya mewakili probabilitas marginal dari pola kovariat. Mereka menunjukkan bahwa memaksimalkan kemungkinan keseluruhan tunduk pada kendala bahwa probabilitas marjinal menjadi kasus atau kontrol ditetapkan oleh skema pengambilan sampel memberikan perkiraan rasio odds yang sama seperti memaksimalkan faktor pertama tanpa kendala (yaitu melakukan regresi logistik biasa) .

β0β^0π

β^0=β^0log(1ππn1n0)

n0n1

Tentu saja dengan membuang data yang Anda miliki ke masalah pengumpulan, meskipun bagian yang paling tidak berguna, Anda mengurangi ketepatan perkiraan Anda. Kendala pada sumber daya komputasi adalah satu-satunya alasan bagus yang saya tahu untuk melakukan ini, tetapi saya menyebutkannya karena beberapa orang tampaknya berpikir bahwa "kumpulan data yang seimbang" penting untuk beberapa alasan lain yang saya tidak pernah bisa memastikannya.

Scortchi - Reinstate Monica
sumber
Terima kasih atas jawaban terinci. Dan ya, alasan saya melakukan ini menjalankan model penuh (tanpa down-sampling) adalah penghitungan secara komputasi.
Zach
Dear @Scortchi, terima kasih atas penjelasannya tetapi jika saya ingin menggunakan regresi logistik, dataset seimbang tampaknya diperlukan terlepas dari sumber daya komputasinya. Saya mencoba menggunakan "Firth's bias mengurangi kemungkinan hukuman logit" tanpa hasil. Jadi tampaknya down-sampling adalah satu-satunya alternatif bagi saya, bukan?
Shahin
@Shahin Baiklah, (1) mengapa Anda tidak puas dengan regresi logistik yang sesuai dengan kemungkinan maksimum? & (2) apa yang salah dengan menggunakan metode Firth?
Scortchi
@Scortchi, Masalahnya adalah modelnya sangat buruk dalam mendeteksi successinstance. Dengan kata lain, TPR sangat rendah. Dengan mengubah ambang batas, TPR meningkat tetapi ketepatannya sangat buruk, yang berarti lebih dari 70% contoh yang diberi label positif, memang negatif. Saya membaca bahwa dalam peristiwa langka, regresi logistik tidak berjalan dengan baik, di sinilah metode Firth bermain, atau setidaknya salah satu peran yang dapat diambilnya. Tetapi hasil dari metode Firth ternyata sangat mirip dengan logit biasa. Saya pikir saya mungkin salah dalam melakukan Firth, tetapi tampaknya semuanya baik
Shahin
4
@ Shahin: Anda tampaknya menggonggong pohon yang salah di sana: down-sampling tidak akan meningkatkan diskriminasi model Anda. Koreksi atau regularisasi bias mungkin (pada data baru - apakah Anda menilai kinerjanya pada set uji?), Tetapi spesifikasi yang lebih kompleks mungkin dapat membantu, atau mungkin saja Anda memerlukan prediktor yang lebih informatif. Anda mungkin harus mengajukan pertanyaan baru, memberikan perincian data, konteks perihal materi, model, diagnostik, dan tujuan Anda.
Scortchi