Destek vektörlerinin sayısı ile özellik sayısı arasındaki ilişki


12

Belirli bir veri kümesine karşı bir SVM çalıştırdım ve aşağıdaki gözlemi yaptım: Sınıflandırıcıyı oluşturmak için özellik sayısını değiştirirsem, ortaya çıkan destek vektörlerinin sayısı da değiştirilecektir.

Bu tür bir senaryoyu nasıl açıklayacağımı bilmek istiyorum.


Bu ekstra özelliklerin türü ve stili neydi? Genişletici özelliklerin benzer varyantları veya ekstra çözümleme gücüne sahip olabileceğini düşündüğünüz bazı yeni özellikler nerede?
Philip Oakley

Bu bir belge sınıflandırma problemidir ve ekstra özellikler sadece kelimelerdir. Özellik alanı oluşturmak için unigram kullandım.
user3269

@ Marc'ın değişikliği yapan cevabı göz önüne alındığında, vektör sayısı özellik sayısı veya tersi ile arttı.
Philip Oakley

@Phillip, orijinal yanıtım yanlıştı. Bence düzenlenen cevap şimdi doğru.
Marc Shivers

Yanıtlar:


13

SVM'nin çözdüğü optimizasyon sorununa bakarsanız:

minw,ξ,b{12w2+Ci=1nξi}

st tümyi(wxib)1ξi,    ξi0,i=1,n

Destek vektörleri olanlardır gelen . Başka bir deyişle, yanlış sınıflandırılmış veya sınıra yakın veri noktalarıdır.xiξi>0

Şimdi, bir dizi özelliğe sahip olduğunuzda, bu özelliği bazı özellikleri attığınız durumla karşılaştıralım. Bir özelliği atmak işlevsel olarak özelliği saklamakla eşdeğerdir, ancak atmak istediğimiz özelliği için . wj=0j

Bu iki optimizasyon problemini karşılaştırdığınızda ve matematikte çalıştığınızda, özelliklerin sayısı ile destek vektörlerinin sayısı arasında zor bir ilişki olmadığı ortaya çıkıyor. Her iki şekilde de gidebilir.

Basit bir durum hakkında düşünmek faydalıdır. Negatif ve pozitif özelliklerinizin sırasıyla (-1, -1) ve (1,1) etrafında kümelendiği ve 3 destek vektörü olan çapraz ayırıcı bir hiper düzlemle ayrılabildiği 2-dim bir durum düşünün. Şimdi y ekseni özelliğini düşürdüğünüzü hayal edin, böylece verileriniz şimdi x eksenine yansıtılıyor. Veriler hala ayrılabilirlerse, örneğin x = 0'da, muhtemelen her iki tarafta birer tane olmak üzere yalnızca 2 destek vektörü kalırsınız, bu nedenle y özelliğinin eklenmesi destek vektörlerinin sayısını artırır. Ancak, veriler artık ayrılamazsa, x = 0'ın yanlış tarafında bulunan her nokta için en az bir destek vektörü alırsınız; bu durumda y özelliğinin eklenmesi destek vektörlerinin sayısını azaltır.

Bu nedenle, bu sezgi doğruysa, çok yüksek boyutlu özellik alanlarında çalışıyorsanız veya yüksek boyutlu özellik alanıyla eşleşen bir çekirdek kullanıyorsanız, verilerinizin ayrılabilir olma olasılığı daha yüksektir, bu nedenle bir özellik ekleme eğilimi olacaktır başka bir destek vektörü eklemek için. Verileriniz şu anda ayrılamıyorsa ve ayrılabilirliği önemli ölçüde artıran bir özellik eklerseniz, destek vektörlerinin sayısında bir azalma görmeniz daha olasıdır.

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.