Wyobraź sobie dużą rodzinną kolację, na której wszyscy zaczynają pytać o PCA. Najpierw wytłumacz to swojej prababce; tobie babciu; potem do twojej matki; następnie do twojego małżonka; wreszcie do twojej córki (która jest matematykiem). Za każdym razem kolejna osoba jest mniej laikiem. Oto jak może przebiegać rozmowa.
Prababcia: Słyszałem, że studiujesz „Pee-See-Ay”. Zastanawiam się, co to jest ...
Ty: Ach, to tylko metoda podsumowania niektórych danych. Słuchaj, mamy tu na stole kilka butelek wina. Każde wino możemy opisać jego kolorem, mocą, wiekiem itd. (Zobacz tę bardzo ładną wizualizację pobranych stąd właściwości wina ). Możemy skomponować całą listę różnych cech każdego wina w naszej piwnicy. Ale wiele z nich będzie mierzyć powiązane właściwości, a zatem będą zbędne. Jeśli tak, powinniśmy być w stanie podsumować każde wino o mniejszej liczbie cech! To właśnie robi PCA.
Babcia: To interesujące! Więc ta rzecz PCA sprawdza, jakie cechy są zbędne i odrzuca je?
Ty: Doskonałe pytanie, babciu! Nie, PCA nie wybiera niektórych cech i odrzuca pozostałe. Zamiast tego buduje kilka nowych cech, które okazują się dobrze podsumowywać naszą listę win. Oczywiście te nowe cechy są budowane przy użyciu starych; na przykład nową cechę można obliczyć jako wiek wina minus poziom kwasowości wina lub inną podobną kombinację (nazywamy to kombinacjami liniowymi ).
W rzeczywistości PCA znajduje najlepsze możliwe cechy, które podsumowują listę win, a także tylko możliwe (spośród wszystkich możliwych kombinacji liniowych). Dlatego jest tak przydatny.
Matka: Hmmm, to z pewnością brzmi dobrze, ale nie jestem pewien, czy rozumiem. Co właściwie masz na myśli mówiąc, że te nowe cechy PCA „podsumowują” listę win?
Ty: Chyba mogę udzielić dwóch różnych odpowiedzi na to pytanie. Pierwszą odpowiedzią jest to, że szukasz niektórych właściwości (cech) wina, które znacznie różnią się w zależności od wina. Rzeczywiście, wyobraź sobie, że wymyśliłeś taką samą właściwość dla większości win. To nie byłoby bardzo przydatne, prawda? Wina są bardzo różne, ale dzięki nowej nieruchomości wszystkie wyglądają tak samo! To z pewnością byłoby złe podsumowanie. Zamiast tego PCA szuka właściwości, które wykazują możliwie największą różnorodność win.
Drugą odpowiedzią jest to, że szukasz właściwości, które pozwoliłyby Ci przewidzieć lub „zrekonstruować” oryginalne właściwości wina. Ponownie, wyobraź sobie, że wymyśliłeś właściwość, która nie ma związku z pierwotnymi cechami; jeśli korzystasz tylko z tej nowej właściwości, nie ma możliwości odtworzenia oryginalnych! To znowu byłoby złe podsumowanie. Dlatego PCA szuka właściwości, które pozwolą jak najlepiej odtworzyć pierwotne cechy.
Niespodziewanie okazuje się, że te dwa cele są równoważne, więc PCA może zabić dwa ptaki jednym kamieniem.
Małżonek: Ale kochanie, te dwa „cele” PCA brzmią tak inaczej! Dlaczego mieliby być równoważni?
Ty: Hmmm. Może powinienem zrobić mały rysunek (bierze serwetkę i zaczyna pisać) . Wybierzmy dwie cechy wina, być może ciemność wina i zawartość alkoholu - nie wiem, czy są ze sobą skorelowane, ale wyobraźmy sobie, że są. Oto jak może wyglądać wykres rozrzutu różnych win:
Każda kropka w tej „chmurze wina” pokazuje jedno konkretne wino. Widać, że te dwie właściwości ( x i r na tym rysunku) są skorelowane. Nową właściwość można zbudować, rysując linię przez środek tej chmury wina i rzutując wszystkie punkty na tę linię. Tę nową właściwość otrzyma kombinacja liniowa w1x + w2)r , gdzie każda linia odpowiada niektórym konkretnym wartościom w1 i w2) .
Teraz spójrz tutaj bardzo uważnie - oto jak wyglądają te rzuty dla różnych linii (czerwone kropki są rzutami niebieskich kropek):
Jak powiedziałem wcześniej, PCA znajdzie „najlepszą” linię według dwóch różnych kryteriów tego, co jest „najlepsze”. Po pierwsze, zmienność wartości wzdłuż tej linii powinna być maksymalna. Zwróć uwagę na to, jak zmienia się „rozrzut” (nazywamy to „wariancją”) czerwonych kropek podczas obracania się linii; widzisz, kiedy osiągnie maksimum? Po drugie, jeśli zrekonstruujemy dwie pierwotne cechy (położenie niebieskiej kropki) z nowej (położenie czerwonej kropki), błąd rekonstrukcji zostanie podany na podstawie długości łączącej czerwonej linii. Obserwuj, jak zmienia się długość tych czerwonych linii, gdy linia się obraca; widzisz, kiedy całkowita długość osiągnie minimum?
Jeśli wpatrzysz się w tę animację przez jakiś czas, zauważysz, że „maksymalna wariancja” i „minimalny błąd” są osiągane w tym samym czasie, a mianowicie, gdy linia wskazuje magenta tyka, które zaznaczyłem po obu stronach chmury wina . Ta linia odpowiada nowej właściwości wina, która zostanie zbudowana przez PCA.
Nawiasem mówiąc, PCA oznacza „analizę głównego składnika”, a ta nowa właściwość nazywa się „pierwszym głównym składnikiem”. I zamiast mówić „właściwość” lub „charakterystyczny” zwykle mówimy „cecha” lub „zmienna”.
Córka: Bardzo miło, tato! Wydaje mi się, że rozumiem, dlaczego te dwa cele dają taki sam wynik: jest to zasadniczo spowodowane twierdzeniem Pitagorasa, prawda? W każdym razie słyszałem, że PCA jest w jakiś sposób związany z wektorami własnymi i wartościami własnymi; gdzie oni są na tym zdjęciu?
Ty: genialna obserwacja. Matematycznie rozproszenie czerwonych kropek mierzy się jako średnią kwadratową odległość od środka chmury wina do każdej czerwonej kropki; jak wiecie, nazywa się to wariancją . Z drugiej strony całkowity błąd rekonstrukcji mierzy się jako średnią kwadratową długość odpowiadających czerwonych linii. Ale ponieważ kąt między czerwonymi liniami a czarną linią wynosi zawsze 90∘, suma tych dwóch ilości jest równa średniej odległości do kwadratu między środkiem chmury wina a każdą niebieską kropką; to jest właśnie twierdzenie Pitagorasa. Oczywiście ta średnia odległość nie zależy od orientacji czarnej linii, więc im wyższa wariancja, tym mniejszy błąd (ponieważ ich suma jest stała). Ten falisty argument można sprecyzować ( patrz tutaj ).
Nawiasem mówiąc, możesz sobie wyobrazić, że czarna linia jest solidnym prętem, a każda czerwona linia jest sprężyną. Energia sprężyny jest proporcjonalna do jej kwadratowej długości (jest to znane w fizyce jako prawo Hooke'a), więc pręt zorientuje się tak, aby zminimalizować sumę tych kwadratowych odległości. Wykonałem symulację tego, jak to będzie wyglądać, w obecności jakiegoś lepkiego tarcia:
W odniesieniu do wektorów własnych i wartości własnych. Wiesz, czym jest macierz kowariancji ; w moim przykładzie jest to macierz 2 × 2 podana przez ( 1.070,630,630,64) .
Oznacza to, że wariancja zmiennej x wynosi 1,07 , wariancja zmiennej r wynosi 0,64 , a kowariancja między nimi wynosi 0,63 . Ponieważ jest to kwadratowa macierz symetryczna, można ją diagonalizować, wybierając nowy ortogonalny układ współrzędnych podany przez jego wektory własne (nawiasem mówiąc, nazywa się to twierdzeniem spektralnym); odpowiednie wartości własne zostaną wówczas umieszczone na przekątnej. W tym nowym układzie współrzędnych macierz kowariancji jest ukośna i wygląda następująco: ( 1,52000,19) ,
co oznacza, że korelacja między punktami wynosi teraz zero. Staje się jasne, że wariancję każdej projekcji da średnia ważona wartości własnych (tutaj szkicuję tylko intuicję). W rezultacie maksymalna możliwa wariancja ( 1,52 ) zostanie osiągnięta, jeśli po prostu weźmiemy rzut na pierwszą oś współrzędnych. Wynika z tego, że kierunek pierwszego głównego składnika jest podany przez pierwszy wektor własny macierzy kowariancji. ( Więcej informacji tutaj. )
Widać to również na obracającej się figurze: jest tam szara linia prostopadła do czarnej; razem tworzą obracającą się ramkę współrzędnych. Spróbuj zauważyć, kiedy niebieskie kropki stają się nieskorelowane w tej obracającej się ramce. Odpowiedź znowu jest taka, że dzieje się to dokładnie wtedy, gdy czarna linia wskazuje na magenta tyka. Teraz mogę powiedzieć, jak je znalazłem: zaznaczają kierunek pierwszego wektora własnego macierzy kowariancji, który w tym przypadku jest równy ( 0,81 ; 0,58 ) .
Na popularne życzenie udostępniłem kod Matlab, aby utworzyć powyższe animacje .