Çok sayıda özellik ile Lojistik Regresyon nasıl yapılır?


10

Lojistik Regresyon için bir ikili sınıf problemi ile her numune için 330 örnek ve 27 özelliğe sahip bir veri setim var.

"On ise kural" a göre her özelliğin dahil edilmesi için en az 10 olaya ihtiyacım var. Yine de dengesiz bir veri setim var,% 20 pozitif sınıf ve% 80 negatif sınıf.

Bu bana sadece 70 etkinlik veriyor ve Lojistik modeline yaklaşık olarak sadece 7/8 özellik eklenmesini sağlıyor.

Tüm özellikleri öngörücü olarak değerlendirmek istiyorum, herhangi bir özelliği el ile seçmek istemiyorum.

Peki ne önerirsiniz? Tüm 7 özellik kombinasyonunu yapmalı mıyım? Her bir özelliği tek başına bir ilişkilendirme modeliyle değerlendirmeli ve daha sonra son model için yalnızca en iyilerini seçmeli miyim?

Ayrıca kategorik ve sürekli özelliklerin işlenmesini merak ediyorum, bunları karıştırabilir miyim? Kategorik bir [0-1] ve sürekli bir [0-100] varsa, normalleştirmeli miyim?

Şu anda Python ile çalışıyorum.

Yardımın için çok teşekkürler!


"Ayrıca kategorik ve sürekli özelliklerin ele alınmasını da merak ediyorum " Bunun ayrı bir soru olacağını düşünüyorum. Aslında, burada zaten sorulmuştu .
E_net4 Rustacean

2
yeterli numuneye sahip olmamakla alakasız özelliklere sahip olmak arasında bir fark vardır. Basit bir kural nedeniyle tam olarak 7 özellik
seçmeye

1
Yine de ne yaparsanız yapın: Düzenlemeyi optimize etmek için çapraz doğrulamayı kullanın. Elastik ağ (L1 + L2) öneririm.
Emre

Yanıtlar:


6

Modelinizi 7 değişkene düşürmek için uygulayabileceğiniz birkaç yaklaşım vardır:

  1. PCA : Dolayısıyla, ilk 7 bileşen (27 üzerinden) verilerinizdeki varyasyonun iyi bir yüzdesini açıklayabilmelidir. Daha sonra bu yedi bileşeni lojistik regresyon denkleminize takabilirsiniz. Buradaki dezavantaj, bileşenler orijinal değişkenlerinizin kombinasyonları olduğu için, regresyon modelinizle yorumlanabilirliği kaybetmenizdir. Ancak çok iyi bir doğruluk sağlamalıdır. Aynı teknik diğer boyut küçültme yöntemlerine de uygulanmıştır.
  2. Regresyondaki diğer bir yaygın yöntem, bir değişkenle başladığınız ve her bir aşamaya eklediğiniz, bazı kriterlere göre (genellikle bir BIC veya AIC puanı) tutulan veya bırakılan adım adım ilerlemektir. Geriye doğru adım adım regresyon aynı şeydir, ancak tüm değişkenlerle başlar ve bazı kriterlere dayanarak her seferinde bir tane kaldırırsınız. Kısa bir aramaya dayanarak, python'un aşamalı bir gerilemeye sahip olduğu görülmemektedir, ancak bu Veri Bilimi yazısında açıklanan benzer bir özellik eleme algoritması yapıyorlar .
  3. Kement Regresyonu, bazılarını etkili bir şekilde ortadan kaldıran özellik katsayılarını normu kullanır. Bu normunu lojistik regresyon modelinize dahil edebilirsiniz. Görünüşe göre sklearn'ün LogisticRegression , bunu başarmak için istediğiniz cezayı atamanıza izin veriyor. Not: Kement, değişken katsayıları açıkça sıfıra ayarlamaz, ancak küçülterek en büyük 7 katsayıyı seçmenize olanak tanır.L1L1

@ E_net4'ün yorumladığı gibi, sürekli sorunuz başka bir yayında ele alınmıştır.


5

"10 Kuralı" nı çok ciddiye alıyorsunuz. Bu çok kaba bir kural. Kullandığınız gibi kullanılması amaçlanmamıştır.

Düşündüğünüz anlaşılıyor: "Yalnızca 70 olumlu örneğim var, bu yüzden 10 Kuralı ile sadece 7 özellik kullanma iznim var; Hangi 7 özelliği kullanacağımı nasıl seçerim?"

10'lu Kural bu demek değildir. Kaç özellik kullanmanıza izin verildiğini belirten bir kural değildir. 10 Kuralı açıklayıcıdır, kuralcı değildir ve yaklaşık bir kılavuzdur: örnek sayısı özellik sayısının 10 katından daha azsa, özellikle aşırı uyum sağlama riskiniz yüksektir ve kötü sonuçlar alabilirsiniz.

Peki ne yapmalısın? Yine de yaptıklarınızı yapmalısınız: Düzenlemeyi kullanın ve normalleştirme hiper parametrelerini seçmek için çapraz doğrulamayı kullanın. Ayrıca, aşırı sığdırma ve önyargılı doğruluk tahminlerinden kaçınmak için sınıflandırıcı hakkında her şeyi tamamlayana kadar dokunmamanız gereken bir tutma testi setine sahip olmak önemlidir.

Daha fazla veri alabiliyorsanız, bu gerçekten yardımcı olacaktır.

Son olarak, dengesiz sınıflara sahip olduğunuz için, sınıf dengesizliği ve onunla başa çıkma yöntemleri hakkında okumayı düşünebilirsiniz.

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.