Korelasyon matrisi ve kovaryans matrisi üzerinde ana bileşen analizi (PCA) yapmak arasındaki temel farklar nelerdir? Aynı sonuçları veriyorlar mı?
Korelasyon matrisi ve kovaryans matrisi üzerinde ana bileşen analizi (PCA) yapmak arasındaki temel farklar nelerdir? Aynı sonuçları veriyorlar mı?
Yanıtlar:
Değişken ölçekler benzer olduğunda kovaryans matrisini ve değişkenler farklı ölçeklerde olduğunda korelasyon matrisini kullanma eğilimindesiniz.
Korelasyon matrisini kullanmak, değişkenlerin her birini standartlaştırmaya eşdeğerdir (ortalama 0 ve standart sapma 1). Genel olarak, standartlaştırılmış ve standartlaştırılmamış PCA farklı sonuçlar verecektir. Özellikle ölçekler farklı olduğunda.
Örnek olarak, bu R heptathlon
veri setine bir göz atın . Değişkenlerin bazıları, yaklaşık 1.8 (yüksek atlama) ortalama değerine sahipken, diğer değişkenler (çalışma 800m) 120 civarındadır.
library(HSAUR)
heptathlon[,-8] # look at heptathlon data (excluding 'score' variable)
Bu çıktılar:
hurdles highjump shot run200m longjump javelin run800m
Joyner-Kersee (USA) 12.69 1.86 15.80 22.56 7.27 45.66 128.51
John (GDR) 12.85 1.80 16.23 23.65 6.71 42.56 126.12
Behmer (GDR) 13.20 1.83 14.20 23.10 6.68 44.54 124.20
Sablovskaite (URS) 13.61 1.80 15.23 23.92 6.25 42.78 132.24
Choubenkova (URS) 13.51 1.74 14.76 23.93 6.32 47.46 127.90
...
Şimdi PCA'yı kovaryans ve korelasyon üzerine yapalım:
# scale=T bases the PCA on the correlation matrix
hep.PC.cor = prcomp(heptathlon[,-8], scale=TRUE)
hep.PC.cov = prcomp(heptathlon[,-8], scale=FALSE)
biplot(hep.PC.cov)
biplot(hep.PC.cor)
run800m
javelin
run800m
javelin
Ayrıca, dışardaki bireylerin ( bu veri setinde) kovaryans veya korelasyon matrisinin kullanılıp kullanılmadığına bakılmaksızın aykırı olduğuna dikkat edin.
Bernard Flury, çok değişkenli analizler sunan mükemmel kitabında, bunu ana bileşenlerin anti-özelliği olarak nitelendirdi. Aslında korelasyon veya kovaryans arasında seçim yapmaktan daha kötü. Birimleri değiştirirseniz (örneğin ABD tarzı galon, inç vb. Ve AB tarzı litre, santimetre) verinin büyük ölçüde farklı projeksiyonlarını elde edersiniz.
Korelasyon matrislerini otomatik olarak kullanmaya karşı argüman, verilerinizi standartlaştırmanın oldukça acımasız bir yol olduğudur. Bu heptathalon verilerinde çok belirgin olan kovaryans matrisinin otomatik olarak kullanılmasıyla ilgili problem, en yüksek varyansa sahip olan değişkenlerin birinci ana bileşene (varyans maksimizasyon özelliği) hükmedeceğidir.
Bu yüzden kullanılacak "en iyi" yöntem öznel bir seçime, dikkatli düşünceye ve bazı tecrübelere dayanmaktadır.
UNTRANSFORMED (RAW) VERİLERİ: Ham, dönüştürülmemiş veriler için geniş çapta değişen ölçeklere sahip değişkenleriniz varsa, yani günlük kalori alımı, gen ekspresyonu, ug / dl, ng / dl birimlerinde ELISA / Luminex, protein ekspresyonunun büyüklüğü, daha sonra PCA'ya bir girdi olarak korelasyon kullanın. Bununla birlikte, tüm verileriniz, örneğin, benzer aralık ve ölçeğe sahip aynı platformdan gen ifadesine dayanıyorsa veya günlük özkaynak varlık getirileriyle çalışıyorsanız, o zaman korelasyon kullanmak muazzam miktarda bilgi ortaya koyacaktır.
VDW puanlarının kullanımı, birçok değişkenin VDW puanlarına dönüştürüldüğü ve ardından analizlere girildiği genetikte çok popülerdir. VDW puanlarını kullanmanın avantajı, çarpıklık ve dışa vurma efektlerinin verilerden kaldırılmasıdır ve amaç, normallik kısıtlamaları altında bir analiz yapmaksa kullanılabilir - ve her değişkenin, çarpıklık olmadan tamamen standart normal olması gerekir. veya aykırı değerler.
Yaygın bir cevap, değişkenlerin aynı ölçekte olduğu durumlarda kovaryansın kullanıldığını ve ölçeklerinin farklı olduğu durumlarda korelasyonun kullanıldığını ortaya koymaktır. Ancak, bu yalnızca değişkenlerin ölçeği bir faktör olmadığında geçerlidir. Aksi halde, neden birisi PCA kovaryansı yapsın ki? PCA korelasyonunu her zaman yapmak daha güvenli olacaktır.
Değişkenlerinizin metre ve kilogram gibi farklı ölçü birimlerine sahip olduğunu hayal edin. Bu durumda metreler mi yoksa santimetre mi kullandığınız farketmemeli, bu nedenle korelasyon matrisinin kullanılması gerektiğini savunabilirsiniz.
Şimdi farklı eyaletlerdeki insan nüfusunu düşünün. Ölçü birimleri aynı - insan sayısı (sayısı). Şimdi, ölçekler farklı olabilir: DC'de 600K ve CA - 38M var. Burada korelasyon matrisini kullanmalı mıyız? Değişir. Bazı uygulamalarda durumun boyutunu ayarlamak istiyoruz. Kovaryans matrisini kullanmak, devletin boyutunu hesaba katan faktörleri oluşturmanın bir yoludur.
Bu nedenle cevabım, orijinal değişkenin varyansı önemli olduğunda kovaryans matrisini kullanmak ve değilken korelasyon kullanmaktır.
Bu seçenekleri tartışmak için şahsen çok değerli buluyorum, maksimum olasılık temel bileşen analiz modeli (MLPCA) ışığında [1,2]. MLPCA'da, ölçülen değişkenlerdeki ölçüm hatalarının bağımsız ve standart normal dağılıma göre dağıtıldığı şekilde bir ölçekleme (veya bir dönme) uygulanır. Bu ölçeklendirme, maksimum olasılık ölçeklendirmesi (MALS) olarak da bilinir [3]. Bazı durumlarda, PCA modeli ve MALS ölçeklendirmesini / dönüşünü tanımlayan parametre birlikte tahmin edilebilir [4].
Korelasyona dayalı ve kovaryansa dayalı PCA'yı yorumlamak için, kişi şu iddiada bulunabilir:
Yukarıda da vurgulandığı gibi, nihai seçim yaptığınız varsayımlara bağlıdır. Ek olarak, belirli bir modelin faydası, analizinizin bağlamına ve amacına da bağlıdır. George EP Box'tan alıntı yapmak: "Tüm modeller yanlış, ancak bazıları kullanışlı".
[1] Wentzell, PD, Andrews, DT, Hamilton, DC, Faber, K. ve Kowalski, BR (1997). Maksimum olabilirlik ana bileşen analizi. Chemometrics Dergisi, 11 (4), 339-366.
[2] Wentzell, PD ve Lohnes, MT (1999). İlişkili ölçüm hatalarıyla birlikte maksimum olabilirlik temel bileşen analizi: teorik ve pratik düşünceler. Kemometri ve Akıllı Laboratuvar Sistemleri, 45 (1-2), 65-85.
[3] Hoefsloot, HC, Verouden, MP, Westerhuis, JA ve Smilde, AK (2006). Maksimum olabilirlik ölçeklendirme (MALS). Chemometrics Dergisi, 20 (3‐4), 120-127.
[4] Narasimhan, S., & Shah, SL (2008). PCA kullanarak gürültülü verilerden model tanımlama ve hata kovaryansı matris kestirimi. Kontrol Mühendisliği Uygulaması, 16 (1), 146-155.
[5] Bahşiş, ME, & Bishop, CM (1999). Olasılık temel bileşen analizi. Kraliyet İstatistik Kurumu Dergisi: B Serisi (İstatistiksel Metodoloji), 61 (3), 611-622.
Düz ve basit: eğer ölçekler benzer ise, cov-PCA kullanın, değilse, corr-PCA kullanın; Aksi halde, savunmamanız iyi olur. Şüphe durumunda, varyansların eşitliği için bir F testi kullanın (ANOVA). F testi başarısız olursa, düzeltme kullanın; Aksi takdirde, cov kullanın.
Ölçeğe dayanan argümanlar (aynı fiziksel birimlerde ifade edilen değişkenler için) oldukça zayıf görünmektedir. Standart sapmaları 0,001 ile 0,1 arasında değişen bir dizi (boyutsuz) değişken düşünün. Standartlaştırılmış 1 değerine kıyasla, her ikisi de 'küçük' ve karşılaştırılabilir dalgalanma seviyeleri gibi görünmektedir. Ancak, bunları desibel cinsinden ifade ettiğinizde, bu sırasıyla -10 ve 0 dB'ye karşı -60 dB aralığı verir. O zaman bu muhtemelen 'geniş bir aralık' olarak sınıflandırılır - özellikle 0'a yakın bir standart sapma ekleyecekseniz, yani eksi sonsuzluk dB.
Benim önerim BOTH'e korelasyon ve kovaryansa dayalı bir PCA yapmak olacaktır. Eğer ikisi de aynı (veya çok benzer, ne demekse) PC'leri verirse, anlamlı bir cevap aldığınızdan emin olabilirsiniz. Çok farklı PC'ler veriyorlarsa PCA kullanmazlar, çünkü bir sorunun iki farklı cevabı soruları çözmek için mantıklı bir yol değildir.