Strategi untuk menangani regresi logistik peristiwa langka


27

Saya ingin mempelajari peristiwa langka dalam populasi terbatas. Karena saya tidak yakin tentang strategi mana yang paling cocok, saya akan menghargai tips dan referensi yang berkaitan dengan masalah ini, meskipun saya sangat menyadari bahwa strategi ini telah banyak dibahas. Aku benar-benar tidak tahu harus mulai dari mana.

Masalah saya adalah ilmu politik dan saya memiliki populasi terbatas yang terdiri dari 515.843 catatan. Mereka terkait dengan variabel dependen biner dengan 513.334 "0" dan 2.509 "1". Saya dapat koin "1" saya sebagai peristiwa langka karena hanya menyumbang 0,49% dari populasi.

Saya memiliki satu set sekitar 10 variabel independen yang ingin saya bangun model dengan menjelaskan keberadaan "1". Seperti banyak dari kita, saya membaca artikel King & Zeng 2001 tentang koreksi peristiwa langka. Pendekatan mereka adalah menggunakan desain case-control untuk mengurangi jumlah "0", kemudian menerapkan koreksi pada intersep.

Namun, posting ini mengatakan bahwa argumen King & Zeng tidak diperlukan jika saya sudah mengumpulkan data saya di seluruh populasi, yang merupakan kasus saya. Oleh karena itu, saya harus menggunakan model logit klasik. Sayangnya bagi saya, meskipun saya mendapatkan koefisien signifikan yang baik, model saya sama sekali tidak berguna dalam hal prediksi (gagal memprediksi 99,48% dari "1" saya).

Setelah membaca artikel King & Zeng, saya ingin mencoba desain case-control dan hanya memilih 10% dari "0" dengan semua "1". Dengan koefisien yang hampir sama, model ini mampu memprediksi hampir sepertiga dari "1" ketika diterapkan pada populasi penuh. Tentu saja, ada banyak false-positive.

Jadi saya punya tiga pertanyaan yang ingin saya tanyakan:

1) Jika pendekatan King & Zeng berprasangka ketika Anda memiliki pengetahuan penuh tentang populasi, mengapa mereka menggunakan situasi di mana mereka tahu populasi dalam artikel mereka untuk membuktikan pendapat mereka?

2) Jika saya memiliki koefisien yang baik dan signifikan dalam regresi logit, tetapi daya prediksi yang sangat buruk, apakah itu berarti bahwa variasi yang dijelaskan oleh variabel ini tidak ada artinya?

3) Apa pendekatan terbaik untuk menghadapi peristiwa langka? Saya membaca tentang model relogit King, pendekatan Firth, logit yang tepat, dll. Saya harus akui bahwa saya tersesat di antara semua solusi ini.


Angka itu terdengar familier ... apakah ada kemungkinan dataset tentang konflik etnis? Jika Anda, itu adalah rangkaian waktu - Saya menggunakan model bertahan hidup untuk sukses besar dalam studi konflik etnis ...
Christian Sauer

Cukup dekat. Ini adalah dataset tentang lokasi peristiwa konflik di Afrika. Namun, saya mempelajari lokasi acara ini tanpa memperhitungkan waktu.
Damien

1
Ah, banyak kasus saya datang dari Afrika, karena konflik etnis merajalela di sana. Apakah Anda da studi geografis? Apakah akan menjadi masalah besar untuk memperhitungkan waktu? Saya menemukan itu sangat berguna, terutama karena fakta bahwa variabel-variabel tertentu berubah seiring waktu (sistem politik, perang dingin, dll.)
Christian Sauer

Saya menggunakan dataset GED UCDP yang mencakup periode 1989-2010. Saya tertarik pada faktor-faktor geografis yang dapat berperan dalam lokasi peristiwa konflik. Variasi waktu memang banyak yang harus dikatakan, tetapi pertanyaan yang dijawab berbeda. Juga, banyak variabel independen saya tidak tersedia untuk periode yang berbeda (tutupan lahan) atau tidak berubah sama sekali (topografi)
Damien

1
"(gagal memprediksi 99,48% dari" 1 "saya)." ini kedengarannya seperti Anda menggunakan beberapa aturan cutoff sewenang-wenang [misalnya 0,5!] untuk mengklasifikasikan, sedangkan seluruh gagasan regresi logistik adalah bahwa output adalah probabilitas - terserah Anda untuk memutuskan ambang batas untuk menyeimbangkan positif / negatif palsu
seanv507

Jawaban:


17

(1) Jika Anda memiliki "pengetahuan penuh tentang suatu populasi" mengapa Anda membutuhkan model untuk membuat prediksi? Saya menduga Anda secara implisit menganggap mereka sebagai sampel dari populasi super hipotetis — lihat di sini & di sini . Jadi, haruskah Anda membuang pengamatan dari sampel Anda? Tidak. King & Zeng tidak menganjurkan ini:

[...] di bidang-bidang seperti hubungan internasional, jumlah 1 yang dapat diamati (seperti perang) sangat terbatas, sehingga dalam sebagian besar aplikasi yang terbaik adalah mengumpulkan semua 1 yang tersedia atau sampel besar dari mereka. Satu-satunya keputusan nyata adalah berapa banyak 0 untuk dikumpulkan juga. Jika mengumpulkan 0 itu tidak ada biaya, kita harus mengumpulkan sebanyak yang kita bisa, karena lebih banyak data selalu lebih baik.

Y

(2) Masalah utama di sini adalah penggunaan aturan penilaian yang tidak tepat untuk menilai kinerja prediktif model Anda. Misalkan model Anda benar , sehingga untuk setiap individu yang Anda tahu kemungkinan peristiwa langka — katakanlah digigit ular pada bulan berikutnya. Apa lagi yang Anda pelajari dengan menetapkan cut-off probabilitas yang sewenang-wenang & memprediksi bahwa orang-orang di atasnya akan digigit & orang-orang di bawahnya tidak akan? Jika Anda membuat cut-off 50% Anda kemungkinan akan memprediksi tidak ada yang akan digigit. Jika Anda membuatnya cukup rendah, Anda dapat memprediksi semua orang akan digigit. Terus? Penerapan model yang masuk akal membutuhkan diskriminasi — siapa yang harus diberikan satu-satunya botol anti racun? —Atau kalibrasi — bagi siapa pantas membeli sepatu bot, mengingat biayanya relatif dibandingkan dengan gigitan ular ?.


Terima kasih atas jawabannya. Mengenai (1), apakah akan lebih tepat untuk berbicara tentang sampel pengamatan yang kita ketahui sejauh ini untuk memperhitungkan kemungkinan kejadian di masa depan? Mengenai (2), saya menghabiskan waktu mencoba untuk mencari tahu apa aturan pemberian skor. Jika saya memahami dengan benar artikel Wikipedia, saya harus memvariasikan fungsi penilaian di berbagai nilai probabilitas yang diharapkan terjadi, kemudian pilih sebagai nilai cutoff probabilitas yang memiliki skor tertinggi. Jika saya memilih aturan penilaian logaritmik, bagaimana saya harus mengimplementasikan nilai yang diharapkan?
Damien

1
R2

@ Scortchi; jadi apakah Anda menganjurkan menggunakan regresi logistik, atau tidak, untuk jumlah pengamatan / kasus seperti dalam op (katakanlah dengan ~ 10 prediktor berkelanjutan), jika probabilitas suatu kasus diperlukan, yang tampaknya diremehkan? terima kasih
user2957945

3

Pada satu tingkat, saya bertanya-tanya berapa banyak ketidaktepatan model Anda hanya karena proses Anda sulit untuk diprediksi, dan variabel Anda tidak cukup untuk melakukannya. Apakah ada variabel lain yang mungkin menjelaskan lebih banyak?

Di sisi lain, jika Anda dapat melemparkan variabel dependen Anda sebagai masalah hitungan / ordinal (seperti korban dari konflik, atau durasi konflik), Anda dapat mencoba regresi hitungan nol atau model rintangan. Ini mungkin memiliki masalah definisi buruk yang sama antara 0 dan 1, tetapi beberapa konflik yang berkorelasi dengan variabel Anda bisa menjauh dari nol.


4
(+1) Saran bagus. Saya ingin terus bermain, bahwa "ketidaktepatan" model ini hanyalah kegagalan untuk memprediksi banyak probabilitas lebih dari 50%. Jika "1" biasanya memperkirakan probabilitas 10% hingga 40%, dibandingkan dengan sedikit di bawah 0,5% untuk "0" - yang akan dianggap sebagai kinerja prediksi yang kuat dalam banyak aplikasi.
Scortchi

2

Selain mengurangi populasi mayoritas, Anda juga dapat melakukan oversample terhadap peristiwa langka, tetapi perlu diketahui bahwa melakukan oversampling pada kelas minoritas dapat menyebabkan overfitting, jadi periksalah dengan cermat.

Makalah ini dapat memberikan informasi lebih lanjut tentang itu: Yap, Bee Wah, et al. "Sebuah Aplikasi Oversampling, Undersampling, Bagging, dan Boosting dalam Menangani Data Ketidakseimbangan." pdf

Juga, saya ingin menghubungkan pertanyaan ini karena membahas masalah yang sama juga


0

Pertanyaan Anda bermuara pada bagaimana saya bisa membujuk regresi logit untuk menemukan solusi yang lebih baik. Tetapi apakah Anda bahkan yakin bahwa ada solusi yang lebih baik? Dengan hanya sepuluh parameter, apakah Anda dapat menemukan solusi yang lebih baik?

Saya akan mencoba model yang lebih rumit dengan misalnya menambahkan istilah produk pada input, atau menambahkan lapisan max-out di sisi target (sehingga Anda pada dasarnya memiliki beberapa regresi logistik untuk berbagai subset target 1s yang ditemukan secara adaptif).


Terima kasih atas jawaban anda. Saya pasti akan mencoba menggabungkan variabel saya dengan cara yang berbeda. Tapi sebelumnya, saya ingin tahu apakah penampilan buruk model saya berasal dari masalah teknis atau dari tempat lain
Damien

-1

Pertanyaan bagus

Menurut saya, masalahnya adalah apakah Anda mencoba melakukan inferensi (apakah Anda tertarik dengan apa yang dikatakan koefisien Anda?) Atau prediksi. Jika yang terakhir, maka Anda dapat meminjam model dari Machine Learning (BART, randomForest, bouncing tree, dll.) Yang hampir pasti akan melakukan pekerjaan yang lebih baik pada prediksi daripada logit. Jika Anda melakukan inferensi, dan Anda memiliki begitu banyak titik data, maka coba sertakan istilah interaksi yang masuk akal, istilah polinomial, dll. Atau, Anda dapat melakukan inferensi dari BART, seperti dalam makalah ini:

http://artsandsciences.sc.edu/people/kernh/publications/Green%20and%20Kern%20BART.pdf

Saya telah melakukan beberapa pekerjaan baru-baru ini pada peristiwa langka, dan tidak tahu sebelumnya berapa banyak kasus langka dapat mempengaruhi analisis. Pengambilan sampel 0 kasus merupakan keharusan. Salah satu strategi untuk menemukan proporsi sampel-down yang ideal adalah

  1. Ambil semua 1 Anda, katakanlah Anda memiliki n1 dari mereka.
  2. Tetapkan beberapa nilai z = kelipatan n1 yang akan Anda gambar; mungkin mulai dari 5 dan kurangi menjadi 1.
  3. menggambar z * n1 0 pengamatan
  4. Perkirakan model Anda pada sampel data subset Anda, pastikan Anda melakukan validasi silang pada seluruh dataset
  5. Simpan ukuran kecocokan relevan yang Anda minati: koefisien minat, AUC dari kurva ROC, nilai yang relevan dalam matriks kebingungan, dll.
  6. Ulangi langkah 2: 5 untuk z yang lebih kecil secara berturut-turut. Anda mungkin akan menemukan bahwa saat sampel turun, rasio false-negative ke false positive (dalam set tes Anda) akan berkurang. Artinya, Anda akan mulai memprediksi lebih banyak 1s, semoga saja itu benar-benar 1s, tetapi juga banyak yang sebenarnya 0s. Jika ada titik pelana dalam kesalahan klasifikasi ini, maka itu akan menjadi rasio sampel-turun yang baik.

Semoga ini membantu. JS


1
(-1) Tidak perlu sama sekali untuk sampel-turun untuk regresi logistik. Lihat di sini ; memilih pada respons hanya mengubah intersep yang diharapkan, sehingga pengambilan sampel hanya mengurangi ketepatan rasio odds yang diperkirakan. Regresi logistik memberi Anda probabilitas yang diprediksi, yang dapat Anda gunakan untuk mengklasifikasikan menggunakan cut-off yang dihitung untuk memperhitungkan biaya berbagai jenis kesalahan klasifikasi, atau digunakan untuk menentukan peringkat individu, atau tertarik pada hak mereka sendiri.
Scortchi

Anda akan melihat bahwa saya tidak menyebutkan menggunakan regresi logistik, dan sebagai gantinya menyarankan bahwa ada metode (seperti BART sampel bawah) yang mungkin lebih sesuai untuk kasus yang jarang terjadi.
Jim

Pertanyaannya adalah tentang regresi logistik, & apakah akan mengambil sampel ketika melakukannya, & Anda tampaknya sedang mendiskusikan regresi logistik ketika Anda menulis tentang "termasuk istilah interaksi yang masuk akal, istilah polinomial"; jadi tidak jelas bahwa saran Anda tentang down-sampling hanya dimaksudkan untuk digunakan dengan metode alternatif: mungkin Anda akan mempertimbangkan untuk mengedit jawaban Anda untuk membuatnya jelas.
Scortchi
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.