Nadir olaylar lojistik regresyon ile başa çıkmak için strateji


27

Sonlu bir popülasyondaki nadir olayları incelemek istiyorum. Hangi stratejinin en uygun olduğu konusunda emin olamadığım için, bu konuyla ilgili ipuçlarını ve referansları takdir ediyorum, ancak bunun büyük ölçüde kapsandığının farkındayım. Sadece nereden başlayacağımı bilemiyorum.

Benim sorunum siyasal bilimlerden biri ve ben 515,843 kayıttan oluşan sınırlı bir nüfusa sahibim. Bunlar 513,334 "0" s ve 2,509 "1" s ile ikili bağımlı bir değişkenle ilişkilidir. Nüfusun sadece% 0,49'unu oluşturduğu için "1" lerimi nadir görülen olaylar olarak atabilirim.

"1" lerin varlığını açıklamak için bir model oluşturmak istediğim yaklaşık 10 bağımsız değişken setim var. Birçoğumuz gibi, King & Zeng'in 2001'deki ender olayların düzeltilmesiyle ilgili makalesini okudum . Yaklaşımları "0" s sayısını azaltmak için bir vaka kontrol tasarımı kullanmak ve ardından müdahaleye düzeltme uygulamaktı.

Ancak, bu yazı King & Zeng'in argümanının, verilerimi zaten popülasyonun tamamına topladığımda gerekli olmadığını söylüyor . Bu nedenle klasik logit modelini kullanmak zorundayım. Maalesef benim için, önemli katsayılar elde etmeme rağmen, modelim tahmin açısından tamamen işe yaramaz (benim "1" lerimin% 99.48'ini tahmin edemem).

King & Zeng'in makalesini okuduktan sonra, bir kasa kontrol tasarımını denemek istedim ve tüm "1" lerde "0" ın sadece% 10'unu seçtim. Neredeyse aynı katsayılarla, model tam popülasyona uygulandığında "1" lerin neredeyse üçte birini tahmin edebildi. Tabii ki, birçok yanlış pozitif var.

Size sormak istediğim üç sorum var:

1) Eğer King ve Zeng'in yaklaşımı, nüfus hakkında tam bir bilgiye sahip olduğunuzda önyargılıysa, neden konusunu ispatlamak için yazılarındaki popülasyonu bildikleri bir durumu kullanıyorlar?

2) Bir logit regresyonunda iyi ve belirgin katsayılara sahipsem, ancak çok zayıf prediktif gücüm varsa, bu değişken tarafından açıklanan varyasyonun anlamsız olduğu anlamına mı geliyor?

3) Nadir olaylarla başa çıkmak için en iyi yaklaşım nedir? King'in relogit modeli, Firth'ın yaklaşımı, tam logit vb. Hakkında okudum. Tüm bu çözümler arasında kaybolduğumu itiraf etmeliyim.


Sayı tanıdık geliyor ... herhangi bir ihtimalde etnik çatışmalarla ilgili veri seti? Eğer öyleyse, bu bir zaman dizisi - Etnik bir çatışma çalışmasında büyük bir başarı için hayatta kalma modelini kullandım ...
Christian Sauer

Yeterince yakın. Afrika'daki çatışma olaylarının yeri hakkında bir veri kümesi. Ancak, bu olayların yerini zaman hesaplaması olmadan inceliyorum.
Damien

1
Ah, birçok dava Afrika'dan geldi, çünkü etnik çatışmalar çok yaygın. Coğrafi çalışma yapar mısın? Süreyi hesaba katmak büyük bir sorun olur mu? Özellikle bazı değişkenlerin zamanla değiştiğinden (siyasi sistem, soğuk savaş vb.) Gerçekten faydalı buldum
Christian Sauer

UCDP'nin 1989-2010 dönemini kapsayan GED veri setini kullanıyorum. Çatışma olaylarının bulunduğu yerde rol oynayabilecek coğrafi faktörlerle ilgileniyorum. Zaman değişimlerinin kesinlikle söyleyecek çok şeyi var, ancak cevaplanan sorular farklı. Ayrıca, bağımsız değişkenlerimin birçoğu farklı dönemler için kullanılamıyor (arazi örtüsü) veya hiç değişmemiş (topografya)
Damien

1
"(" 1 "lerimin% 99.48’ini tahmin edememektedir) sınıflandırmak için bazı keyfi kesme kuralları [örneğin 0,5!] kullanıyor gibi görünüyorsunuz, oysa lojistik regresyon fikri, çıktının bir olasılık
olduğudur

Yanıtlar:


17

(1) “Nüfus hakkında tam bir bilgiye sahipseniz” neden tahmin yapmak için bir modele ihtiyacınız var? Sana dolaylı varsayımsal bir örnek olarak onları düşünüyorsanız şüpheli süper nüfus görülmesi buraya & buraya . Öyleyse, örneklerinden gözlemler atmalısın? Hayır. King & Zeng bunu savunmaz:

[...] uluslararası ilişkiler gibi alanlarda, gözlemlenebilir 1'lerin sayısı (savaşlar gibi) kesinlikle sınırlıdır, bu nedenle çoğu uygulamada mevcut tüm 1'leri veya bunlardan büyük bir örneklerini toplamak en iyisidir. O zaman tek gerçek karar ne kadar 0 toplayacağımızdır. Eğer 0'ları toplamak masrafsızsa, daha fazla veri her zaman daha iyi olduğundan, alabildiğimiz kadar toplamalıyız.

Y

(2) Buradaki ana sorun , modelinizin öngörücü performansını değerlendirmek için uygun olmayan bir puanlama kuralının kullanılmasıdır . Modelinizin doğru olduğunu varsayalım , böylece herhangi bir birey için nadir bir olayın olasılığını biliyorsunuzdur - gelecek ay bir yılan tarafından ısırıldığını söyleyin. Keyfi bir olasılık kesintisini belirleyerek ve üstündekilerin ısırılacağını ve altındakilerin olmayacağını tahmin ederek daha ne öğrenirsiniz? % 50'lik bir indirim yaparsanız, kimsenin ısırılmayacağını tahmin edersiniz. Yeterince düşük yaparsanız herkesin ısırılacağını tahmin edebilirsiniz. Ne olmuş yani? Bir modelin mantıklı bir şekilde uygulanması ayrımcılığa ihtiyaç duyar - kim bir zehirlenme karşıtı tek şişe? - veya kalibrasyon - kimin için yılan ısırmasına göre maliyeti göz önüne alındığında, bot satın almaya değer?


Cevabınız için teşekkür ederim. (1) ile ilgili olarak, gelecekteki olayların olasılığını hesaba katmak için şu ana kadar bildiğimiz gözlemlerden bir örnek hakkında konuşmak daha uygun olur mu? (2) ile ilgili olarak, bir puanlama kuralının ne olduğunu bulmaya çalışırken bir an harcadım. Wikipedia makalesini doğru anlarsam, puanlama işlevini, etkinliğin gerçekleşmesi beklenen farklı olasılık değerleri arasında değiştirmeliyim, sonra en yüksek puana sahip olan olasılığı kesme değeri olarak seçmeliyim. Logaritmik puanlama kuralını seçersem, beklenen değeri nasıl uygularım?
Damien

1
R2

@Scortchi; öyleyse, bir dava olasılığı gerekliyse, tahmin edildiği gibi göz ardı ediliyorsa, gözlemcilerin / davaların sayısı için (örneğin, ~ 10 sürekli tahminciyle), lojistik regresyon kullanarak savunuculuğunu yapar mısın? teşekkürler
user2957945 12:16

3

Bir düzeyde, modelinizin yanlışlığının ne kadarının sadece sürecinizin tahmin edilmesi zor olduğunu ve değişkenlerinizin bunu yapması için yeterli olmadığını merak ediyorum. Daha fazla açıklayabilecek başka değişkenler var mı?

Öte yandan, bağımlı değişkeninizi sayım / sıralı bir sorun olarak kullanabiliyorsanız (çatışmadan kaynaklanan kayıplar veya çatışma süresi gibi), sıfır şişirilmiş sayım regresyonu veya engel modelleri deneyebilirsiniz. Bunlar 0 ile 1 arasında aynı kötü tanım sorununa sahip olabilir, ancak değişkenlerinizle ilişkilendirilen bazı çatışmalar sıfırdan uzaklaşabilir.


4
(+1) İyi öneriler. Ancak, modelin "yanlışlığının" yalnızca% 50'nin üzerindeki birçok olasılığı tahmin etmede başarısız olduğunun üzerinde durmak istiyorum. "1" ler tipik olarak "% 0" ın% 0'ından biraz daha az olmasına karşın% 10 ile% 40 arasında bir olasılık öngörmüşse, bu çoğu uygulamada güçlü öngörü performansı olarak kabul edilir.
Scortchi

2

Çoğunluk nüfusun alt örneklemesine ek olarak, nadir olayların da üstesinden gelebilirsiniz, ancak azınlık sınıfının aşırı örneklemesinin aşırı yüklenmeye yol açabileceğinin farkında olun, bu yüzden işleri dikkatlice kontrol edin.

Bu makale bu konuda daha fazla bilgi verebilir: Yap, Bee Wah, et al. "Dengesiz Veri Kümelerinin Kullanılmasında Bir Örnekleme, Örnekleme, Paketleme ve Yükseltme Uygulaması". pdf

Ayrıca, ben bağlamak istiyorum bu soruyu o yanı aynı sorunu anlatılır beri


0

Sorunuz daha iyi bir çözüm bulmak için logit regresyonunu nasıl koaksiye edebilirim? Ama daha iyi bir çözüm olduğuna emin misin? Sadece on parametre ile daha iyi bir çözüm bulabildiniz mi?

Örneğin girişte ürün terimleri ekleyerek veya hedef tarafa bir maks-out katmanı ekleyerek daha karmaşık bir model deneyeceğim (böylece hedef 1'lerin uyarlanabilir şekilde keşfedilmiş çeşitli alt kümeleri için temelde çoklu lojistik regülatörleriniz olacaktır).


Cevabınız için teşekkürler. Değişkenlerimi farklı şekillerde birleştirmeyi kesinlikle deneyeceğim. Ama daha önce, modelimin zayıf performansının teknik sorunlardan mı yoksa başka bir yerden mi geldiğini bilmek istiyorum
Damien

-1

Harika soru

Aklıma göre, sorun çıkarım yapmaya çalışıp çalışmayacağınız (katsayılarınızın size ne söylediğiyle ilgileniyor musunuz?) Ya da tahmin. İkincisi ise, o zaman tahminden kesin olarak logit'ten daha iyi bir iş çıkaracak olan Machine Learning'den (BART, randomForest, artırılmış ağaçlar vb.) Ödünç alabilirsiniz. Çıkarım yapıyorsanız ve çok fazla veri noktanız varsa, daha sonra hassas etkileşim terimleri, polinom terimleri vb. Dahil etmeyi deneyin. Alternatif olarak, bu yazıda olduğu gibi BART'dan çıkarım yapabilirsiniz:

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

Son zamanlarda nadir olaylar hakkında bazı çalışmalar yapıyorum ve daha önce nadir görülen vakaların analizi nasıl etkileyebileceği hakkında hiçbir fikrim yoktu. 0 vakalarını aşağı örnekleme bir zorunluluktur. İdeal aşağı örnekleme oranını bulmak için bir strateji

  1. Tüm 1'lerini al, diyelim ki n1 tane var.
  2. Bazı değerleri ayarlayın z = çizeceğiniz n1'in katı; belki 5'den başlar ve 1'e düşer.
  3. z * n1 0 gözlemi çiz
  4. Veri kümenizin tümünde çapraz doğrulama yaptığınızdan emin olarak, modelinizi alt küme verilerinizin bir örneğinde tahmin edin
  5. İlgilendiğiniz ilgili uygun önlemleri kaydedin: ilgilenilen katsayılar, bir ROC eğrisinin AUC'si, bir karışıklık matrisindeki ilgili değerler, vb.
  6. Art arda daha küçük z'ler için 2: 5 adımlarını tekrarlayın. Büyük olasılıkla, aşağı örneklemede, yanlış-negatif / yanlış pozitif oranının (test setinizde) azalacağını göreceksiniz. Yani, daha çok 1s tahmin etmeye başlayacaksınız, umarım gerçekten 1s, ama aynı zamanda aslında 0s'dır. Bu yanlış sınıflandırmada bir eyer noktası varsa, bu iyi bir aşağı örnekleme oranı olacaktır.

Bu yardımcı olur umarım. JS


1
(-1) Lojistik regresyon için aşağı örneklemeye gerek yok. Buraya bakınız ; cevabın seçilmesi yalnızca beklenen müdahaleyi değiştirir, bu nedenle aşağı örnekleme sadece tahmin edilen oran oranlarının kesinliğini azaltır. Lojistik regresyon, farklı türdeki yanlış sınıflandırmaların maliyetlerini hesaba katmak için hesaplanan kesintileri kullanarak sınıflandırmak veya bireyleri sıralamak veya kendi haklarıyla ilgilenmek için kullanmak üzere hesaplanan kesilen olasılıkları size sunar.
Scortchi - Eski Monica

Lojistik regresyon kullanmaktan bahsetmediğimi fark edeceksiniz ve bunun yerine, nadiren durumlar için muhtemelen daha uygun olan yöntemler (aşağı örneklenmiş BART gibi) olduğunu öne süreceksiniz.
Jim

Soru, lojistik regresyon ile ilgilidir ve bunu yaparken aşağı örneklemenin olup olmayacağı ve "mantıklı etkileşim terimleri, polinom terimleri de dahil olmak üzere" yazarken lojistik regresyondan bahsetmiş gibi görünüyorsunuz; bu nedenle aşağı örnekleme konusundaki tavsiyenizin yalnızca alternatif yöntemlerle kullanılması amaçlanmamıştır: belki de cevabınızı netleştirmek için düzenlemeyi düşünebilirsiniz.
Scortchi
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.