Sıralanmamış kategorik öngörücü değişkenin düzeylerinin azaltılması


11

Bir sınıflandırıcı, SVM veya rastgele orman veya başka bir sınıflandırıcı eğitmek istiyorum. Veri kümesindeki özelliklerden biri 1000 seviyeli kategorik bir değişkendir. Bu değişkenteki seviye sayısını azaltmanın en iyi yolu nedir? R'de combine.levels(), Hmisc paketinde nadir seviyeleri birleştiren bir fonksiyon var , ancak başka öneriler arıyordum.


Kategorik değişken sıralanmamış mı? Yaklaşık kaç vakanız var? Kategorik değişken boyunca frekans dağılımı nedir?
Jeromy Anglim

Seviyeler sıralanmaz. 10.000 kadar gözlemim var. Frekans dağılımı aşağıdaki gibidir: Seviye A, gözlemlerin yaklaşık% 11'inde görülür. B seviyesi% 8 olarak görünür. C seviyesi% 5 olarak görünür. Bu seviyelerin yaklaşık 15'i veri kümesindeki gözlemlerin% 50'sini kapsamaktadır.
sabunime

Yanıtlar:


9

Bunu yapmanın en iyi yolu , gerçekleştirdiğiniz göreve göre büyük ölçüde değişecektir , bu nedenle görevden bağımsız olarak en iyi neyin olacağını söylemek imkansızdır.

Seviyeleriniz sıralıysa denemek için iki kolay şey vardır:

  1. Çöp kutusu. Örneğin, 0 = (0 250), 1 = (251 500), vb. Her bölmenin eşit sayıda öğeye sahip olması için sınırları seçmek isteyebilirsiniz.
  2. Ayrıca seviyelerin bir günlük dönüşümü de alabilirsiniz. Bu menzili düşürecektir.

Düzeyler sıralı değilse, düzeyleri veri kümenizdeki diğer özelliklere / değişkenlere göre kümeleyebilir ve önceki düzeyler için küme kimliklerini kullanabilirsiniz. Kümeleme algoritmaları olduğu için bunu yapmanın birçok yolu vardır, bu nedenle alan tamamen açıktır. Okuduğumda, işte combine.levels()olan bu . Benzer şekilde kmeans()veya öğesini kullanarak da yapabilirsiniz prcomp(). (Daha sonra yeni veri noktaları için kümeleri tahmin etmek üzere bir sınıflandırıcıyı eğitebilir / eğitebilirsiniz.)


3
Kategorik değişkeni rastgele bir etki olarak ele almak dışında, bununla başa çıkmanın gerçekten iyi bir yolunu bilmiyorum. Değişken üzerinde ikinci dereceden (sırt) bir cezalandırma işlemi kullanarak bunu taklit edebilirsiniz. Benim Regresyon Modelleme Strateji kitap ve ders notları bu gider.
Frank Harrell

1
@FrankHarrell İki yaklaşım akla geliyor: Poletom değişken değişken Gizli Sınıf Analizi bir (cran.r-project.org/web/packages/poLCA/poLCA.pdf), başka bir yazışma analizi (örn. Statmethods.net/advstats/ca) olacaktır. html).
Mike Hunter
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.