Dlaczego dla

22

W PCA, gdy liczba wymiarów jest większa (lub nawet równa) liczbie próbek N , dlaczego jest tak, że będziesz mieć co najwyżej N - 1 niezerowe wektory własne? Innymi słowy, pozycja macierzy kowariancji wśród wymiarów d N wynosi N - 1 .dNN1dNN1

Przykład: Twoje próbki to wektoryzowane obrazy o wymiarach , ale masz tylko N = 10 zdjęć.d=640×480=307200N=10

GrokingPCA
źródło
5
Wyobraź sobie punkty w 2D lub w 3D. Jaka jest wymiarowość rozmaitości zajmowanej przez te punkty? Odpowiedź brzmi N - 1 = 1 : dwa punkty zawsze leżą na linii (a linia jest jednowymiarowa). Dokładna wymiarowość przestrzeni nie ma znaczenia (o ile jest większa niż N ), twoje punkty zajmują tylko 1-wymiarową podprzestrzeń. Zatem wariancja „rozprzestrzenia się” tylko w tej podprzestrzeni, tzn. Wzdłuż 1 wymiaru. To pozostaje prawdziwe dla dowolnego N . N=2N1=1NN
ameba mówi Przywróć Monikę
1
Dodam tylko dodatkową precyzję do komentarza @ amoeba. Liczy się także punkt początkowy. Tak więc, jeśli masz N = 2 + początek, liczba wymiarów wynosi maksymalnie 2 (nie 1). Jednak w PCA zwykle centrujemy dane, co oznacza, że ​​umieszczamy źródło w przestrzeni chmury danych - wtedy jeden wymiar zostaje pochłonięty, a odpowiedź będzie brzmiała „N-1”, jak pokazuje ameba.
ttnphns
To mnie dezorientuje. To nie samo centrowanie niszczy wymiar, prawda? Jeśli masz dokładnie N próbek i N wymiarów, to nawet po centrowaniu nadal masz N wektorów własnych ..?
GrokingPCA
2
Czemu? To centrowanie niszczy jeden wymiar. Centrowanie (za pomocą średniej arytmetycznej) „przenosi” początek z „z zewnątrz” do przestrzeni „rozpiętej” przez dane. Na przykładzie N = 2. 2 punkty + niektóre pochodzenie ogólnie obejmuje płaszczyznę. Kiedy wyśrodkowujesz te dane, umieszczasz początek w linii prostej w połowie odległości między 2 punktami. Dane obejmują teraz tylko linię.
ttnphns
3
Euclid wiedział to już 2300 lat temu: dwa punkty wyznaczają linię, trzy punkty określają płaszczyznę. Uogólniając, punktów określa N - 1 wymiarową przestrzeń euklidesową . NN1
whuber

Odpowiedzi:

20

Zastanów się, co robi PCA. Mówiąc najprościej, PCA (jak zwykle działa) tworzy nowy układ współrzędnych poprzez:

  1. przesunięcie źródła do środka ciężkości danych,
  2. ściska i / lub rozciąga osie, aby uzyskać ich równą długość, oraz
  3. obraca osie w nowej orientacji.

(Aby uzyskać więcej informacji, zapoznaj się z tym doskonałym wątkiem CV: Zrozumienie analizy głównych składników, wektorów własnych i wartości własnych .) Jednak nie tylko obraca się osiami w jakikolwiek stary sposób. Twój nowy (pierwszy główny składnik) jest zorientowany na maksymalne zróżnicowanie danych. Drugi główny składnik jest zorientowany w kierunku następnej największej zmiany, która jest prostopadła do pierwszego głównego składnikaX1 . Pozostałe główne elementy są również tworzone.

Mając to na uwadze, przeanalizujmy przykład @ amoeba . Oto macierz danych z dwoma punktami w trójwymiarowej przestrzeni:
Zobaczmy te punkty w (pseudo) trójwymiarowym wykresie rozrzutu:

X=[111222]

wprowadź opis zdjęcia tutaj

(1.5,1.5,1.5)(0,0,0)(3,3,3)(0,0,3)(3,3,0)(0,3,0)(3,0,3)

N.=2) dane, które możemy zmieścić (co najwyżej) N.-1=1 główne składniki.

gung - Przywróć Monikę
źródło