Jaka jest funkcja celu PCA?


42

Analiza głównych składników może wykorzystywać rozkład macierzy, ale to tylko narzędzie, aby się tam dostać.

Jak znalazłbyś główne składniki bez użycia algebry macierzowej?

Jaka jest funkcja celu (cel) i jakie są ograniczenia?


1
Być może coś mi brakuje, więc popraw mnie, jeśli się mylę, ale powinno być możliwe (przynajmniej w zasadzie) skonstruowanie tego, co dzieje się w PCA przy użyciu macierzy jako (skomplikowanego) problemu programowania liniowego, ale nie wiedzieć, jak określić wszystkie wymagane ograniczenia. Nie jestem też pewien, czy byłoby to bardzo proste w porównaniu do zwykłego korzystania z PCA. Dlaczego starasz się unikać matryc?
Chris Simokat

@Chris Nie rozumiem, jak można dostać się do problemu programowania liniowego. Nie rozumiałem też, że w obliczeniach należy unikać macierzy . Pytanie dotyczyło tego, jaki problem rozwiązuje PCA, a nie sposób, w jaki jest on wykonywany (na przykład przez obliczenie SVD). Rozwiązanie kardynała mówi, że znajdujesz kolejne ortogonalne kierunki maksymalnej wariancji . Rozwiązanie, które przedstawiłem, mówi, że znajdujesz hiperpłaszczyzny z minimalnym błędem rekonstrukcji.
NRH

@chris Mam nadzieję znaleźć inny sposób, aby zobaczyć PCA, bez algebry macierzy, aby zwiększyć moje rozumienie tego.
Neil McGuigan

1
@Chris masz funkcji kwadratowej obiektywnej oraz 2 równości normą ograniczenie. Alternatywnie, na podstawie sformułowania w odpowiedzi @ NRH, masz ograniczenie macierzy rangi. To nie doprowadzi do problemu programowania liniowego. @NRH daje dobrą intuicję, a w rzeczywistości istnieje bardzo ścisły związek między dwiema przedstawionymi perspektywami PCA. Być może we współpracy z @NRH możemy dodać to do jego postu, aby pełny zestaw odpowiedzi był bardziej kompletny.
kardynał

1
@NRH, Właściwie bardzo lubię ESL , ale myślę, że traktowanie tego tematu jest dość powierzchowne, tak jak w przypadku wielu tematów w książce. W szczególności nie dowodzą (ani nawet nie przypisują jako ćwiczenia) ważnej części rozwiązania problemu optymalizacji, który dajesz.
kardynał

Odpowiedzi:


41

Bez próby uzyskania pełnego startera na PCA, z punktu widzenia optymalizacji, podstawową funkcją celu jest iloraz Rayleigha . Macierz, która zawiera iloraz, to (pewna wielokrotność) przykładowa macierz kowariancji w którym każdy jest wektorem funkcji i jest taki, że matryca ty rząd jest .xipXix T i

S=1ni=1nxixiT=XTX/n
xipXixiT

PCA dąży do rozwiązania sekwencji problemów optymalizacyjnych. Pierwszym w sekwencji jest nieograniczony problem

maximizeuTSuuTu,uRp.

Ponieważ, powyższy nieograniczony problem jest równoważny ograniczonemu problemowi uTu=u22=uu

maximizeuTSusubject touTu=1.

Tutaj pojawia się algebra macierzy. Ponieważ jest symetryczną dodatnią macierzą półfinałową (z konstrukcji!), Ma rozkład wartości własnej postaci gdzie jest macierz ortogonalna (więc ) i jest macierzą diagonalną z nieujemnymi wpisami przykład .S

S=QΛQT,
QQQT=IΛλiλ1λ2λp0

Stąd, . Ponieważ jest ograniczony w tym problemie, aby mieć normę jeden, tak też jest ponieważ , ponieważ jest ortogonalny.uTSu=uTQΛQTu=wTΛw=i=1pλiwi2uww2=QTu2=u2=1Q

Ale jeśli chcemy zmaksymalizować ilość pod ograniczeniami, że , to co możemy zrobić, to: ustaw , to znaczy i dla .i=1pλiwi2i=1pwi2=1w=e1w1=1wi=0i>1

Teraz, wycofując odpowiednie , czego właśnie szukaliśmy, otrzymujemy, że gdzie oznacza pierwszą kolumnę , czyli wektor własny odpowiadający największej wartości własnej . Wartość funkcji celu można wtedy łatwo rozpoznać jako .u

u=Qe1=q1
q1QSλ1

Pozostałe główne wektory składowe można następnie znaleźć, rozwiązując sekwencję (indeksowaną przez ) problemów optymalizacyjnych Problem jest taki sam, z tym wyjątkiem, że dodajemy dodatkowe ograniczenie, że rozwiązanie musi być ortogonalne dla wszystkich poprzednich rozwiązań w sekwencji. Nie jest trudny do rozszerzenia argumentu powyżej indukcyjnie pokazują, że roztwór th problemem jest to, w rzeczywistości, , tym p wektor własny .i

maximizeuiTSuisubject touiTui=1uiTuj=01j<i.
iqiiS

Roztwór PKD ulega także często ekspresji w odniesieniu do pojedynczej wartości rozkładu z . Zrozumieć, dlaczego pozwolić . Następnie i tak (ściśle mówiąc, do znaku flips) i .XX=UDVTnS=XTX=VD2VTV=QΛ=D2/n

Główne komponenty można znaleźć, rzutując na wektory głównych komponentów. Z właśnie podanego sformułowania SVD łatwo zauważyć, że X

XQ=XV=UDVTV=UD.

Prostota reprezentacji zarówno wektorów głównych składników, jak i samych głównych składników w odniesieniu do SVD macierzy cech, jest jednym z powodów, dla których SVD wyróżnia się tak wyraźnie w niektórych zabiegach PCA.


Jeśli potrzebnych jest tylko kilka pierwszych pojedynczych wartości / wektorów, Nash i Shlien podają algorytm przypominający zwykłą metodę mocy do obliczania dominujących wartości własnych. Może to być interesujące dla PO.
JM nie jest statystykiem

@NRH, Dziękujemy za wyłapanie (i poprawienie) moich literówek, zanim udało mi się je zobaczyć!
kardynał

1
Cześć @cardinal, dziękuję za odpowiedź. Wygląda jednak na to, że nie udało ci się udowodnić, dlaczego sekwencyjna optymalizacja prowadzi do globalnego optimum. Czy mógłbyś rozwinąć tę kwestię? Dzięki!
Lifu Huang

21

Rozwiązanie przedstawione przez kardynała skupia się na macierzy kowariancji próbki. Kolejnym punktem wyjścia jest błąd rekonstrukcji danych przez q- wymiarową hiperpłaszczyznę. Jeśli p- wymiarowe punkty danych to celem jest rozwiązaniex1,,xn

minμ,λ1,,λn,Vqi=1n||xiμVqλi||2

dla macierzy z kolumnami ortonormalnymi i . To daje najlepszą rangę rekonstrukcji q mierzoną przez normę euklidesową, a kolumny rozwiązania są pierwszymi q głównymi wektorami składowymi.p×qVqλiRqVq

Dla naprawionego rozwiązaniem dla i (jest to regresja) są Vqμλi

μ=x¯=1ni=1nxiλi=VqT(xix¯)

Dla ułatwienia notacji załóżmy, że zostały wyśrodkowane w następujących obliczeniach. Następnie musimy zminimalizować xi

i=1n||xiVqVqTxi||2

over z kolumnami ortonormalnymi. Zauważ, że to rzut na q- wymiarową przestrzeń kolumny. Dlatego problem jest równoważny z minimalizowaniem na rang q występy . Oznacza to, że musimy zmaksymalizować stosunku do rzutów q q , gdzie to przykładowa macierz kowariancji. TerazVqP=VqVqT

i=1n||xiPxi||2=i=1n||xi||2i=1n||Pxi||2
P
i=1n||Pxi||2=i=1nxiTPxi=tr(Pi=1nxixiT)=ntr(PS)
PS
tr(PS)=tr(VqTSVq)=i=1quiTSui
gdzie są (ortonormalnymi) w , a argumenty przedstawione w odpowiedzi @ kardynała pokazują, że maksimum uzyskuje się przyjmując ' s będzie wektorami własnymi dla z największymi wartościami własnymi.u1,,uqqVquiqSq

Błąd rekonstrukcji sugeruje szereg użytecznych uogólnień, na przykład rzadkie główne elementy lub rekonstrukcje za pomocą niskowymiarowych rozmaitości zamiast hiperplanów. Aby uzyskać szczegółowe informacje, patrz sekcja 14.5 w Elementy uczenia statystycznego .


(+1) Dobre punkty. Kilka sugestii: Dobrze byłoby zdefiniować i naprawdę miło byłoby podać krótki dowód wyniku. Lub, alternatywnie, może być związany z problemem optymalizacji związanym z ilorazami Rayleighta. Myślę, że dzięki temu odpowiedzi na to pytanie byłyby bardzo kompletne! λi
kardynał

@ kardynał, uważam, że wykonałem brakujące kroki w przejściu od formuły odbudowy do rozwiązania problemu.
NRH

Dobra robota. Uważam, że jedyną pozostałą luką jest twoje ostatnie oświadczenie. Nie jest od razu oczywiste, że optymalizacja sumy jest tym samym, co wykonanie sekwencji optymalizacji w mojej odpowiedzi. W zasadzie nie sądzę, że wynika to bezpośrednio. Ale tutaj też nie trzeba się tym zajmować.
kardynał

@ kardynał, następuje indukcja. początek indukcji, a na etapie indukcji wybierasz wektory ortonormalne które maksymalizują sumę i je tak, aby był wektorem jednostkowym prostopadłym do . Następnie według twoich wyników i przez założenie indukcyjne . Oczywiście podstawa nie jest unikalną podstawą przestrzeni wymiarowej. Możesz także uogólnić „argument kombinacji wypukłej”, którego używasz do bezpośredniego udowodnienia. w1,,wqwqu1,,uq1wqTSwquqTSuqi=1q1wiTSwii=1q1uiTSuiq
NRH

1
@ cardinal, nie zmuszam do zagnieżdżenia, wykorzystuję jedynie rozważanie wymiarów. Jeśli mamy podprzestrzeń wymiarową, zawsze możesz wybrać w tej przestrzeni, tak aby była ona ortogonalna do podprzestrzeni . Następnie należy wypełnić ten -basis w jakikolwiek sposób chcesz. qwq(q1)w
NRH

4

Zobacz NIPALS ( wiki ) dla jednego algorytmu, który nie używa jawnie rozkładu macierzy. Myślę, że właśnie to masz na myśli mówiąc, że chcesz uniknąć algebry macierzowej, ponieważ tak naprawdę nie możesz tutaj uniknąć algebry macierzowej :)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.