İlk temel bileşen sınıfları ayırmaz, ancak diğer bilgisayarlar yapar; bu nasıl mümkün olabilir?


11

PCA'yı, örnekleri iki sınıfa ayırmak için denetimli makine öğreniminde kullanılacak daha küçük değişkenler kümesi, yani temel bileşenler olarak çalıştırmak için çalıştırdım. PCA'dan sonra PC1 verilerdeki varyansın% 31'ini, PC2% 17'sini, PC3% 10'unu, PC4% 8'ini, PC5% 7'sini ve PC6% 6'sını oluşturur.

Ancak, iki sınıf arasındaki PC'ler arasındaki ortalama farklılıklara baktığımda, şaşırtıcı bir şekilde, PC1 iki sınıf arasında iyi bir ayrımcı değildir. Kalan PC'ler iyi bir ayrımcıdır. Ek olarak, PC1 bir karar ağacında kullanıldığında ilgisiz hale gelir, bu da ağaç budamadan sonra ağaçta bile bulunmadığı anlamına gelir. Ağaç PC2-PC6'dan oluşur.

Bu fenomen için herhangi bir açıklama var mı? Türetilmiş değişkenlerle ilgili bir sorun olabilir mi?


5
Bu son soru istatistiklerini okuyun ve daha fazla bağlantı içeren static.stackexchange.com/q/79968/3277 . PCA gelmez yana değil o gelmez sınıfların varlığı hakkında bilmek garanti PC'ler herhangi gerçekten iyi Diskriminatörleri olacağını; PC1 daha iyi bir ayrımcı olacak. Ayrıca burada örnek olarak iki resme bakın .
ttnphns

2
Ayrıca bkz . PCA'nın bir sınıflandırıcının sonuçlarını kötüleştirmesine ne neden olabilir? , özellikle @vqv tarafından verilen cevaptaki rakamlar.
amip

Yanıtlar:


14

y0.51x33

resim açıklamasını buraya girin

xy


Merhaba, Cevabınız için teşekkürler! Ölçeklendirme nasıl yapılmalıdır? (x ortalama) / SD?
Frida

Evet, RI'da kullanılan prcomp(x, center=T, scale=T)(x-mean) / sd ile aynıdır. Bu örnekte, her iki temel bileşenin de sınıflar arasında iyi bir ayrımcı olmadığını; sadece ikisi birlikte kullanılırsa çalışır.
Flounderer

PC'lerin tamamlayıcı olduğunu anlıyorum, ancak bunun arkasında herhangi bir açıklama var mı? Dürüst olmak gerekirse, bu benim için ilk kez diğerlerine göre daha zayıf bir PC1 elde etmem.
Frida

@Frida: ttnphns'ın yorumu hedefte. Bkz. En.wikipedia.org/wiki/Linear_discriminant_analysis üçüncü paragrafı. Bir anlamda PCA'nın bu kadar sık ​​faydalı olduğu şansı var.
Wayne

6

@Flounderer tarafından verilen cevap ve örneğin bunu ima ettiğini varsayıyorum , ancak bence bunu dile getirmeye değer. Temel bileşen analizi (PCA) etiket (sınıflandırma) kayıtsızdır. Tüm yaptığı bazı yüksek boyutlu verileri başka bir boyutsal alana dönüştürmektir. Bu olabilir belirli bir yöntem ile daha kolay ayrılabilir olması veri seti oluşturmak, örneğin, sınıflandırma girişimlerinde yardım eder. Bununla birlikte, bu sadece PCA'nın bir yan ürünüdür (veya bir yan etkidir).


1

Ana Bileşen analizi yaptığımızda, ana bileşenler maksimum değişkenlik yönergelerine karşılık gelir, bunlar sınıflar arasında maksimum ayrımcılık veya ayrımı garanti etmez.

Böylece 2. bileşen iyi bir sınıflandırma sağlar, bu yöndeki verilerin sınıflar arasında daha iyi ayrımcılık sağladığı anlamına gelir. Doğrusal Diskriminant Analizi (LDA) yaptığınızda, sınıflar arası mesafeyi en üst düzeye çıkaran ve sınıf içi mesafeyi en aza indiren en iyi dikey yön bileşenleri sunar.

PCA yerine veriler üzerinde LDA yaparsanız, muhtemelen ilk bileşenlerden biri PC6'ya PC1'den daha yakın olacaktır. Bu yardımcı olur umarım.

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.