Temel bileşen puanları nelerdir?


71

Yanıtlar:


66

İlk önce bir skor tanımlayalım.

John, Mike ve Kate, Matematik, Fen, İngilizce ve Müzik alanındaki sınavlar için aşağıdaki yüzdeleri elde eder:

      Maths    Science    English    Music    
John  80        85          60       55  
Mike  90        85          70       45
Kate  95        80          40       50

Bu durumda toplam 12 puan var. Her puan , belirli bir konudaki her kişi için sınav sonuçlarını temsil eder. Yani bu durumda bir puan basitçe bir satır ve sütun kesiştiği bir temsilidir.

Şimdi gayri resmi bir Temel Bileşen tanımlayalım.

Yukarıdaki tabloda, verileri kolayca 2B grafikte çizebilir misiniz? Hayır, çünkü dört konu var (yani dört değişken: Matematik, Fen, İngilizce ve Müzik), yani:

  • İki konuyu ve y ile aynı şekilde çizebilirsinizxy koordinatlarıyla 2B grafikte çizebilirsiniz.
  • Üç konuyu, bir 3D grafiğe , y ve z'yi çizdiğiniz gibi çizebilirsiniz (bu genel olarak kötü bir uygulama olsa da, 3D verilerin 2B sunumunda bir miktar bozulma kaçınılmazdır).xyz

Fakat 4 konuyu nasıl çizersiniz?

Şu anda, her biri yalnızca bir konuyu temsil eden dört değişkenimiz var. Bu yüzden, bunun etrafındaki bir yöntem, konuları bir şekilde birleştirip belki de iki yeni değişkenle birleştirmektir. Bu, Çok Boyutlu Ölçeklendirme olarak bilinir .

Temel Bileşen analizi, çok boyutlu bir ölçeklendirme biçimidir. Değişkenler hakkında maksimum miktarda bilgi tutan değişkenlerin daha küçük boyutlu bir alana doğrusal bir dönüşümüdür. Örneğin, bu, her öğrencinin daha uygun olabileceği ders türlerine bakabileceğimiz anlamına gelir.

Bu nedenle, temel bileşen doğrusal bir dönüşümden sonra orijinal değişkenlerin bir birleşimidir. R'de bu:

DF<-data.frame(Maths=c(80, 90, 95), Science=c(85, 85, 80), English=c(60, 70, 40), Music=c(55, 45, 50))
prcomp(DF, scale = FALSE)

Size böyle bir şey verecek (sadece basitlik adına ilk iki Temel Bileşen):

                PC1         PC2
Maths    0.27795606  0.76772853 
Science -0.17428077 -0.08162874 
English -0.94200929  0.19632732 
Music    0.07060547 -0.60447104 

Buradaki ilk sütun, temel bileşen # 1'i tanımlayan doğrusal kombinasyon katsayılarını gösterir ve ikinci sütun, temel bileşen # 2 için katsayıları gösterir.

Peki, Temel Bileşen Puanı nedir?

Bu yazının sonundaki tablodan bir puan (aşağıya bakınız).

R'nin yukarıdaki çıktısı, artık her bireyin tüm konulardaki puanlarını 2B grafikte aşağıdaki gibi çizebileceğimiz anlamına geliyor. İlk önce, orjinal değişkenleri ortalamalıyız, çıkarma sütunum şu anlama gelir:

      Maths    Science    English    Music    
John  -8.33       1.66       3.33       5  
Mike   1.66       1.66      13.33      -5
Kate   6.66       -3.33    -16.66       0

Ve sonra PC1 ve PC2 puanlarını almak için doğrusal kombinasyonlar oluşturmak için :

      x                                                    y
John -0.28*8.33 + -0.17*1.66 + -0.94*3.33  + 0.07*5   -0.77*8.33 + -0.08*1.66 + 0.19*3.33   + -0.60*5 
Mike 0.28*1.66  + -0.17*1.66 + -0.94*13.33 + -0.07*5   0.77*1.66 + -0.08*1.66 + 0.19*13.33  + -0.60*5
Kate 0.28*6.66  + 0.17*3.33  + 0.94*16.66  + 0.07*0    0.77*6.66 +  0.08*3.33 + -0.19*16.66 + -0.60*0

Hangi basitleştirir:

        x       y
John   -5.39   -8.90
Mike  -12.74    6.78
Kate   18.13    2.12

Var altı temel skorlar yukarıdaki tabloda. Artık, her öğrencinin belki de daha uygun olduğu konu türünü anlamak için puanları 2B grafik olarak çizebilirsiniz.

Aynı çıktı R ile yazılarak da elde edilebilir. prcomp(DF, scale = FALSE)$x .

EDIT 1: Hmm, muhtemelen daha iyi bir örnek düşünebilirdim ve burada söylediklerimden daha fazlası var, ama umarım fikri anlarsın.

EDIT 2: Bu cevabı geliştirmedeki yorumu için @drpaulbrewer 'a tam kredi


10
Çaba övgüye değer - AMA - ne PC1 ne de PC2 size tüm konularda en iyisini yapanları söylemez. Bunu yapmak için PC konu katsayılarının hepsinin pozitif olması gerekir. PC1 Matematik ve Müzik için pozitif ağırlığa sahiptir, ancak Bilim ve İngilizce için olumsuzdur. PC2, Matematik ve İngilizce için pozitif ağırlığa sahiptir, ancak Bilim ve Müzik için olumsuzdur. PC'lerin size söylediği, veri setindeki en büyük varyansın nerede olduğu. Böylece, konuları PC1'deki katsayılara göre ağırlıklandırarak ve öğrencileri puanlamak için kullanarak, öğrenci davranışlarında en büyük varyansı ya da yayılımı elde edersiniz. Tipleri sınıflandırabilir, ancak performansı sınıflandırabilir.
Paul,

+1 iyi yorum, şerefe. Elbette haklısın, bunu daha iyi yazmalıydım ve şimdi rahatsız edici çizgiyi umarım netleştirmek için düzenlemeliydim.
Tony Breyal,

Varyansı standartlaştırabilir, dolayısıyla en iyisinin kim olduğunu görmek için toplamı hesaplayabilirsiniz, ya da tercih ederseniz, R:apply(dtf, 1, function(x) sum(scale(x)))
aL3xa

2
@JohnPrior Dört değişken (sütunlar) Matematik, Fen, İngilizce ve Müzik'tir ve satırlar bireyleri temsil eder. "Konu" terimi bazen belirsizleşiyor çünkü beş yıl önce cevap için korkunç bir örnek seçtim.
Tony Breyal

1
@Tony, devam ettim ve cevabınızı skorları hesaplamadan önce değişkenleri merkezlemek için düzenlemiştim. Şimdi hesaplanan puanlar prcompçıktılara uyar . Yapmadan önce.
amip,

23

Temel bileşen analizi (PCA), çok değişkenli verilerle uğraşırken varyans analizini yapan popüler bir yaklaşımdır. Rastgele değişkenleriniz X1, X2, ... Xn, hepsi farklı derecelerde (pozitif veya negatif) ilişkilendirilir ve neler olup bittiğini daha iyi anlamak istersiniz. PCA yardımcı olabilir.

PCA’nın size verdiği değişken, X’lerin doğrusal kombinasyonları olan Y1, Y2, ..., Yn’de (yani aynı sayıda değişken) değişmedir. Örneğin, Y1 = 2.1 X1 - 1.76 X2 + 0.2 X3 olabilir.

Ys, bunların her birinin birbirleriyle sıfır korelasyona sahip olduğu hoş özelliktir. Daha da iyisi, onları azalan sapma düzenine sokarsınız. Bu nedenle, Y1, orijinal değişkenlerin varyansının büyük bir kısmını "Y2" ve daha az açıklar. Genellikle ilk birkaç Y'den sonra, değişkenler bir şekilde anlamsız hale gelir. Xi'nin herhangi biri için PCA puanı, Ys'nin her birinde katsayısıdır. Daha önceki örneğimde, ilk ana bileşendeki (Y1) X2 puanı 1.76.

PCA'nın bu sihri gerçekleştirmesi, kovaryans matrisinin özvektörlerini hesaplamaktır.

Somut bir örnek vermek gerekirse, X1, ... X10'un 1 yıl, 2 yıl, ..., 10 yıllık Hazine bonosu gelirlerinin bir süre içinde değiştiğini hayal edin. PCA'yı hesapladığınızda, genellikle ilk bileşenin aynı işaretin ve aynı işaretin her bir bağı için puanları olduğunu görürsünüz. Bu size tahvil getirilerindeki varyansın çoğunun aynı şekilde hareket eden her şeyden geldiğini söyler: "paralel kaymalar" yukarı veya aşağı. İkinci bileşen tipik olarak eğrinin "dikleşmesini" ve "yaslanmasını" gösterir ve X1 ve X10 için zıt işaretlere sahiptir.


Daha yüksek bir Y değeri, varyansın daha büyük bir bölümünü nasıl “açıklar”? PCA nasıl hesaplanır? Öyleyse, göndereceğim başka bir sorum olduğunu düşünüyorum;)
vrish88 21:10

1
Bu doğru - eğer PC'nin varyansı 3.5 ise, o zaman PC, 3.5 değişkenlerin başlangıçtaki değişkenliğini "açıklar" demiştir. PC'ler ilave PC1 > PC2 > ... > PCnolduklarından ve varyanslarının toplamı, başlangıç ​​değişkeninin varyanslarının toplamına eşittir, çünkü PCA, kovaryans matrisi üzerinde hesaplanır, yani değişkenler standardize edilir (SD = 1, VAR = 1).
aL3xa 11

6

Diyelim ki 3B'de (100x3 dizide listelenebilen) bir N noktası bulutu var. Daha sonra, temel bileşenler analizi (PCA) verilere keyfi olarak yönlendirilen bir elipsoid uyuyor. Temel bileşen skoru, elipsoidin çaplarının uzunluğudur.

Çapın büyük olduğu doğrultuda, veriler çok değişkenlik gösterirken, çapın küçük olduğu zamanlarda veriler litre olarak değişir. Eğer Nd verilerini 2 boyutlu dağılım grafiğine yansıtmak istiyorsanız, bunları en büyük iki ana bileşen boyunca çizersiniz, çünkü bu yaklaşımla verilerdeki varyansın çoğunu görüntülersiniz.


Herhangi bir yararı olur mu ya da 3 boyutlu dağınık arsa üzerine koyar mısın?
vrish88

6

Temel bileşen puanlarını, onlara gerçekten bir anlam verinceye kadar "temelde anlamsız" olarak düşünmeyi seviyorum. PC puanlarını "gerçeklik" açısından yorumlamak zor bir iştir - ve bunu yapmanın benzersiz bir yolu olamaz. Bu, PCA’ya giren belirli değişkenler hakkında ne bildiğinize ve yorumlar açısından birbirleriyle nasıl ilişki kurduğuna bağlıdır.

Matematiğin ilerleyişinde, PC puanlarını her bir noktanın koordinatları olarak, ana bileşen eksenlerine göre yorumlamayı seviyorum. Yani ham değişkenlerdexben =(x1ben,x2ben,...,xpben)x1x1benzben =(z1ben,z2ben,...,zpben)=bir(xben-x¯)birpxpx¯

Böylece özvektörleri, PC'leri tanımlayan "düz çizgilerin" nerede olduğunu açıklayan olarak düşünebilirsiniz. Daha sonra ana bileşen puanları, her bir veri noktasının, verilerin "merkez" e göre her bir düz hatta nerede olduğunu açıklar. Ayrıca PC puanlarını, forma sahip orijinal veri noktalarının her biri için bir dizi sıra 1 tahmini olarak ağırlık / özvektörlerle birlikte düşünebilirsiniz:

x^jben(k)=x¯j+zkbenbirkj

x^jben(k)benjk


4

Bir veri matrisinin ana bileşenleri, varyans-kovaryans matrisinin özvektör-özdeğer çiftleridir. Temelde, bunlar varyansın dekorla ilişkilendirilmiş parçalarıdır. Her biri bir gözlem için değişkenlerin doğrusal bir birleşimidir - varsayalım ki her bir denek için w, x, y, z ölçün. İlk PC'niz, bunun gibi bir şey için işe yarayabilir

0.5w + 4x + 5y - 1.5z

Buradaki yükler (özvektörler) (0.5, 4, 5, -1.5). Her gözlem için puan (özdeğer), gözlemlenen (w, x, y, z) yerine koyup toplamı hesapladığınızda ortaya çıkan değerdir.

Bir şeyleri temel bileşenlerine (örneğin, dışlayıcı tespit için) yansıtırken bu kullanışlı olur çünkü puanları başka herhangi bir veride olduğu gibi çizersiniz. Bu, varyansın büyük bir kısmı ile ilişkiliyse verileriniz hakkında çok şey ortaya çıkarabilir (ilk birkaç PC’de ==).


Sadece açıklık getirmek gerekirse, "bir grup deneğin her birinde w, x, y, z ölçtüğünüzü varsayalım" deyince yukarıdaki @TonyBreyal'in cevabından "konular" a değinmiyor musunuz? "Düşünceler" / "records" / "Veri satırları" ile eşanlamlı olmak için "subject" kelimesini mi kullanıyorsunuz?
Ryan Chase

4

ben=1,...,N-j=1,...,M

Zben,1=cben,1Yben,1+cben,2Yben,2+...+cben,MYben,M

cY

Z1=(Z1,1,...,ZN-,1

PCA'daki R'nin (sahte bir örnek) çıktısı buna benziyor. PC1, PC2 ... 1, 2 ana bileşenleridir ... Aşağıdaki örnek sadece ilk 8 ana bileşeni göstermektedir (17 üzerinden). Ayrıca, yükleme ve puanlama gibi diğer öğeleri de PCA'dan ayıklayabilirsiniz.

Importance of components:
                          PC1    PC2    PC3    PC4    PC5    PC6    PC7    PC8
Standard deviation     1.0889 1.0642 1.0550 1.0475 1.0387 1.0277 1.0169 1.0105
Proportion of Variance 0.0697 0.0666 0.0655 0.0645 0.0635 0.0621 0.0608 0.0601
Cumulative Proportion  0.0697 0.1364 0.2018 0.2664 0.3298 0.3920 0.4528 0.5129

1
Üzgünüz, fakat yükler nelerdir (formülünüzde c) ve bunları nasıl belirlersiniz?
vrish88

@ vrish88 C'lerin özvektörlerin "yükleri" olduğuna inanıyorum. Anladığım kadarıyla, bunlar aslında sadece değişkenlerin her birine verdiğiniz ağırlıklardır. Tim bunu cevabında iyi açıklar.
Ryan Chase

3

Temel bileşen puanları, Bir Temel Bileşenler Analizi'ni (PCA) takiben alınan bir puan grubudur. PCA'da, bir grup skor arasındaki ilişkiler, eşit sayıda yeni "hayali" değişkenlerin (aka prensip bileşenleri) yaratıldığı şekilde analiz edilir. Bu yeni hayali değişkenlerden ilki, orijinal değişken grubunun tümü ile maksimum olarak ilişkilidir. Bir sonraki ilişki daha az ilişkilidir ve bu nedenle, tüm temel bileşenleri puanları ilk gruptan verilen herhangi bir değişkeni tahmin etmek için kullandıysanız, tüm varyansını açıklayabileceğinize kadar. PCA'nın ilerleyiş şekli karmaşıktır ve bazı kısıtlamaları vardır. Bunlar arasında, herhangi iki ana bileşen (yani hayali değişkenler) arasındaki korelasyonun sıfır olması; bu yüzden değil

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.