Menerapkan regresi logistik dengan tingkat kejadian yang rendah

15

Saya memiliki dataset di mana tingkat kejadiannya sangat rendah (40.000 dari ). Saya menerapkan regresi logistik untuk ini. Saya telah berdiskusi dengan seseorang di mana keluar bahwa regresi logistik tidak akan memberikan matriks kebingungan yang baik pada data tingkat kejadian yang rendah. Tetapi karena masalah bisnis dan cara mendefinisikannya, saya tidak dapat meningkatkan jumlah acara dari 40.000 ke jumlah yang lebih besar meskipun saya setuju bahwa saya dapat menghapus beberapa populasi yang tidak ada.12105

Tolong beritahu saya pandangan Anda tentang ini, khususnya:

  1. Apakah akurasi regresi logistik tergantung pada tingkat kejadian atau apakah ada tingkat kejadian minimum yang direkomendasikan?
  2. Apakah ada teknik khusus untuk data tingkat kejadian rendah?
  3. Apakah menghapus populasi non-saya akan baik untuk akurasi model saya?

Saya baru mengenal pemodelan statistik, jadi maafkan ketidaktahuan saya dan harap atasi masalah terkait yang dapat saya pikirkan.

Terima kasih,

ayush biyani
sumber
3
40000 / 12e5 = 3,3%, ini tidak terlihat tingkat yang sangat rendah bagi saya.
GaBorgulya
1
Terima kasih ga..jika orang membutuhkan lebih banyak konteks untuk menentukan tingkat kejadian rendah dan tinggi, data ini adalah dari sektor asuransi.
ayush biyani
3
Anda mungkin tertarik dengan Regresi Logistik dalam Data Peristiwa Langka .
Bernd Weiss

Jawaban:

11

Saya akan menjawab pertanyaan Anda yang rusak:

3 Apakah menghapus populasi non-saya akan baik untuk akurasi model saya?

Setiap pengamatan akan memberikan beberapa informasi tambahan tentang parameter (melalui fungsi kemungkinan). Karenanya tidak ada gunanya menghapus data, karena Anda hanya akan kehilangan informasi.

1 Apakah akurasi regresi logistik tergantung pada tingkat kejadian atau adakah tingkat kejadian minimum yang direkomendasikan?

Secara teknis, ya: pengamatan langka jauh lebih informatif (yaitu, fungsi kemungkinan akan lebih curam). Jika rasio acara Anda adalah 50:50, maka Anda akan mendapatkan band kepercayaan yang lebih ketat (atau interval yang kredibel jika Anda menjadi Bayesian) untuk jumlah data yang sama . Namun Anda tidak bisa memilih tingkat acara Anda (kecuali jika Anda melakukan studi kasus kontrol), jadi Anda harus puas dengan apa yang Anda miliki.

2 Apakah ada teknik khusus untuk data tingkat kejadian rendah?

Masalah terbesar yang mungkin timbul adalah pemisahan sempurna : ini terjadi ketika beberapa kombinasi variabel memberikan semua non-peristiwa (atau semua peristiwa): dalam hal ini, estimasi parameter kemungkinan maksimum (dan kesalahan standarnya), akan mendekati tak terhingga (walaupun biasanya Algoritma akan berhenti sebelumnya). Ada dua solusi yang mungkin:

a) menghapus prediktor dari model: meskipun ini akan membuat algoritma Anda bertemu, Anda akan menghapus variabel dengan kekuatan yang paling jelas, jadi ini hanya masuk akal jika model Anda terlalu cocok untuk memulai (seperti memasang terlalu banyak interaksi rumit) .

b) menggunakan semacam hukuman, seperti distribusi sebelumnya, yang akan mengecilkan estimasi kembali ke nilai yang lebih masuk akal.

Simon Byrne
sumber
+1 Saya baru saja menambahkan bahwa saya telah melihat konteks di mana orang telah mengubah data mereka menjadi 50:50. Pengorbanan tampaknya merupakan peningkatan dalam kemampuan model untuk mengklasifikasikan (dengan asumsi ambang yang baik dipilih) versus beberapa hilangnya informasi tentang prevalensi keseluruhan dan beberapa kesulitan tambahan dalam menafsirkan koefisien.
David J. Harris
1
@ David: Saya juga pernah mendengar tentang orang reweighting, dan menggunakan skema pseudo-bootstrap yang rumit di mana mereka hanya menguji ulang kelas frekuensi tinggi. Untuk semua teknik ini, Anda pada akhirnya membuang (atau mengarang) data. Saya berpendapat bahwa jika ini meningkatkan model Anda, maka Anda mungkin cocok dengan model yang salah. Lihat juga komentar saya di sini: stats.stackexchange.com/questions/10356/…
Simon Byrne
1) Maaf jika saya tidak jelas: saya sedang berbicara tentang mengubah pengaruh relatif dari peristiwa dan tidak ada, seperti dengan argumen "bobot" dalam glmfungsi R. Paling buruk, ini seperti membuang bagian dari setiap titik data yang turun berat badan, saya kira, tapi itu tidak benar-benar sama. 2) Seperti yang saya katakan, ada pengorbanan yang terkait dengan keputusan ini. Ini mungkin paling masuk akal dalam konteks di mana populasi sampel tidak didefinisikan dengan baik dan tingkat kejadian sebenarnya tidak bermakna untuk memulai. Saya pasti tidak akan merekomendasikan hal ini secara menyeluruh.
David J. Harris
2

Ada alternatif yang lebih baik untuk menghapus tidak ada data temporal atau spasial: Anda dapat menggabungkan data Anda lintas waktu / ruang, dan memodelkan penghitungan sebagai Poisson. Misalnya, jika acara Anda adalah "letusan gunung berapi terjadi pada hari X", maka tidak banyak hari akan terjadi letusan gunung berapi. Namun, jika Anda mengelompokkan hari menjadi beberapa minggu atau bulan, misalnya "jumlah letusan gunung berapi pada bulan X", maka Anda akan mengurangi jumlah kejadian, dan lebih banyak peristiwa akan memiliki nilai bukan nol.

charles.y.zheng
sumber
6
Saya harus mengatakan saran ini tidak menjawab pertanyaan sama sekali. 1) Mereka tidak ada dalam pertanyaan yang menunjukkan OP berurusan dengan data spasial atau temporal. 2) Bagaimana cara menjumlahkan data membantu mengidentifikasi hubungan yang bermakna (menggunakan informasi yang lebih sedikit daripada unit aslinya!)
Andy W
2
Juga sebagai catatan, untuk setiap hubungan yang diamati terjadi pada tingkat agregat harus ada di tingkat unit asli, meskipun hubungan di tingkat agregat tidak selalu mencerminkan apa hubungan antara kedua variabel pada saat dipilah. tingkat. Lihat qmrg.org.uk/files/2008/11/38-maup-openshaw.pdf
Andy W
setuju dengan andy.
ayush biyani