Jakie są główne różnice między przeprowadzaniem analizy składowych głównych (PCA) na macierzy korelacji a macierzą kowariancji? Czy dają takie same wyniki?
Jakie są główne różnice między przeprowadzaniem analizy składowych głównych (PCA) na macierzy korelacji a macierzą kowariancji? Czy dają takie same wyniki?
Odpowiedzi:
Zwykle używasz macierzy kowariancji, gdy skale zmiennych są podobne, i macierzy korelacji, gdy zmienne są w różnych skalach.
Użycie macierzy korelacji jest równoznaczne ze standaryzacją każdej ze zmiennych (średnio 0 i odchylenie standardowe 1). Zasadniczo PCA ze standaryzacją i bez zapewnia różne wyniki. Zwłaszcza, gdy skale są różne.
Jako przykład spójrz na ten heptathlon
zestaw danych R. Niektóre zmienne mają średnią wartość około 1,8 (skok wzwyż), podczas gdy inne zmienne (przebieg 800m) wynoszą około 120.
library(HSAUR)
heptathlon[,-8] # look at heptathlon data (excluding 'score' variable)
To daje:
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
...
Teraz zróbmy PCA na kowariancji i korelacji:
# 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)
Zauważ, że PCA na kowariancji jest zdominowany przez run800m
i javelin
: PC1 jest prawie równe run800m
(i wyjaśnia wariancji) i PC2 jest prawie równa (razem wyjaśniają one ). PCA na temat korelacji jest znacznie bardziej pouczająca i ujawnia pewną strukturę danych i zależności między zmiennymi (ale zauważ, że wyjaśnione wariancje spadają do i 71 % ).javelin
64 %
Należy również zauważyć, że osoby odległe (w tym zbiorze danych) są wartościami odstającymi, niezależnie od tego, czy użyto macierzy kowariancji czy korelacji.
Bernard Flury w swojej doskonałej książce wprowadzającej analizę wielowymiarową opisał to jako anty-własność głównych składników. Jest to w rzeczywistości gorsze niż wybór między korelacją lub kowariancją. Jeśli zmieniłeś jednostki (np. Galony w stylu amerykańskim, cale itp. Oraz litry, centymetry w stylu UE), otrzymasz zasadniczo różne prognozy danych.
Argumentem przeciwko automatycznemu stosowaniu macierzy korelacji jest to, że jest to dość brutalny sposób standaryzacji danych. Problem z automatycznym użyciem macierzy kowariancji, co jest bardzo widoczne w przypadku danych heptathalon, polega na tym, że zmienne o największej wariancji zdominują pierwszy główny składnik (właściwość maksymalizująca wariancję).
Zatem „najlepsza” metoda opiera się na subiektywnym wyborze, starannej przemyśleniu i pewnym doświadczeniu.
NIEFORMANSOWANE (RAW) DANE: Jeśli masz zmienne o bardzo różnych skalach dla surowych, nietransformowanych danych, tj. Dzienne spożycie kalorii, ekspresję genów, ELISA / Luminex w jednostkach ug / dl, ng / dl, w oparciu o kilka rzędów wielkość ekspresji białka, a następnie użyj korelacji jako danych wejściowych do PCA. Jeśli jednak wszystkie Twoje dane są oparte na np. Ekspresji genów z tej samej platformy o podobnym zakresie i skali lub pracujesz z zyskami z zasobów logarytmicznych, wówczas użycie korelacji spowoduje powstanie ogromnej ilości informacji.
Stosowanie wyników VDW jest bardzo popularne w genetyce, gdzie wiele zmiennych jest przekształcanych w wyniki VDW, a następnie wprowadzanych do analiz. Zaletą stosowania wyników VDW jest to, że efekty skośności i wartości odstające są usuwane z danych, i można ich użyć, jeśli celem jest przeprowadzenie analizy pod ograniczeniami normalności - a każda zmienna musi mieć czysto standardowy rozkład normalny bez skośności lub wartości odstające.
Powszechną odpowiedzią jest sugerowanie, że kowariancja jest stosowana, gdy zmienne są w tej samej skali, i korelacja, gdy ich skale są różne. Jest to jednak prawdą tylko wtedy, gdy skala zmiennych nie jest czynnikiem. W przeciwnym razie, dlaczego ktokolwiek miałby kiedykolwiek robić kowariancję PCA? Bezpieczniej byłoby zawsze wykonać korelację PCA.
Wyobraź sobie, że twoje zmienne mają różne jednostki miary, takie jak metry i kilogramy. Nie powinno mieć znaczenia, czy w tym przypadku używasz metrów, czy centymetrów, więc możesz argumentować, że należy zastosować macierz korelacji.
Rozważ teraz populację ludzi w różnych stanach. Jednostki miary są takie same - liczba (liczba) osób. Teraz skale mogą być inne: DC ma 600 tys., A CA - 38 mln osób. Czy powinniśmy tutaj zastosować macierz korelacji? To zależy. W niektórych aplikacjach chcemy dopasować do wielkości stanu. Wykorzystanie macierzy kowariancji jest jednym ze sposobów budowania czynników, które uwzględniają wielkość państwa.
Dlatego moją odpowiedzią jest użycie macierzy kowariancji, gdy ważna jest wariancja oryginalnej zmiennej, i korelacja, gdy nie jest.
Osobiście uważam za bardzo cenne omawianie tych opcji w świetle modelu analizy głównych składowych o najwyższym prawdopodobieństwie (MLPCA) [1,2]. W MLPCA stosuje się skalowanie (lub nawet obrót), dzięki czemu błędy pomiarowe mierzonych zmiennych są niezależne i rozkładane zgodnie ze standardowym rozkładem normalnym. To skalowanie jest również znane jako skalowanie maksymalnego prawdopodobieństwa (MALS) [3]. W niektórych przypadkach model PCA i parametr określający skalowanie / obrót MALS można oszacować razem [4].
Aby zinterpretować PCA oparte na korelacji i kowariancji, można następnie argumentować, że:
Jak już podkreślono powyżej, ostateczny wybór zależy od przyjętych założeń. Ponadto użyteczność dowolnego konkretnego modelu zależy również od kontekstu i celu analizy. Cytując George'a EP Boxa: „Wszystkie modele są złe, ale niektóre są przydatne”.
[1] Wentzell, PD, Andrews, DT, Hamilton, DC, Faber, K., i Kowalski, BR (1997). Analiza głównego składnika największej wiarygodności. Journal of Chemometrics, 11 (4), 339–366.
[2] Wentzell, PD i Lohnes, MT (1999). Analiza głównego składnika maksymalnego prawdopodobieństwa z korelowanymi błędami pomiaru: rozważania teoretyczne i praktyczne. Chemometrics and Intelligent Laboratory Systems, 45 (1-2), 65-85.
[3] Hoefsloot, HC, Verouden, MP, Westerhuis, JA i Smilde, AK (2006). Skalowanie maksymalnego prawdopodobieństwa (MALS). Journal of Chemometrics, 20 (3‐4), 120-127.
[4] Narasimhan, S. i Shah, SL (2008). Identyfikacja modelu i oszacowanie macierzy kowariancji błędów na podstawie zaszumionych danych przy użyciu PCA. Control Engineering Practice, 16 (1), 146-155.
[5] Tipping, ME i Bishop, CM (1999). Probabilistyczna analiza głównego składnika. Journal of Royal Statistics Society: Series B (Statistics Methodology), 61 (3), 611-622.
Prosto i prosto: jeśli skale są podobne, użyj cov-PCA, jeśli nie, użyj corr-PCA; w przeciwnym razie lepiej obronić się za nie. W razie wątpliwości należy zastosować test F dla równości wariancji (ANOVA). Jeśli test F nie powiedzie się, użyj corr; w przeciwnym razie użyj cov.
Argumenty oparte na skali (dla zmiennych wyrażonych w tych samych jednostkach fizycznych) wydają się raczej słabe. Wyobraź sobie zestaw (bezwymiarowych) zmiennych, których odchylenia standardowe wynoszą od 0,001 do 0,1. W porównaniu ze znormalizowaną wartością 1, oba wydają się być „małymi” i porównywalnymi poziomami wahań. Kiedy jednak wyrażasz je w decybelach, daje to zakres -60 dB odpowiednio do -10 i 0 dB. Wtedy prawdopodobnie zostałoby to zaklasyfikowane jako „duży zakres” - szczególnie, gdybyś uwzględnił standardowe odchylenie zbliżone do 0, tj. Minus nieskończoność dB.
Moją sugestią byłoby ZROBIĆ PCA opartą na korelacji i kowariancji. Jeśli oba dają te same (lub bardzo podobne, cokolwiek to może znaczyć) komputery PC, możesz być pewny, że masz sensowną odpowiedź. Jeśli dają bardzo różne komputery, nie używaj PCA, ponieważ dwie różne odpowiedzi na jeden problem nie są rozsądnym sposobem rozwiązywania pytań.