Christopher Bishop schreibt in seinem Buch Pattern Recognition and Machine Learning einen Beweis dafür, dass jede aufeinanderfolgende Hauptkomponente die Varianz der Projektion auf eine Dimension maximiert, nachdem die Daten in den orthogonalen Raum zu den zuvor ausgewählten Komponenten projiziert wurden. Andere zeigen ähnliche Beweise.
Dies beweist jedoch nur, dass jede aufeinanderfolgende Komponente die beste Projektion auf eine Dimension ist, um die Varianz zu maximieren. Warum bedeutet dies, dass die Varianz einer Projektion auf 5 Dimensionen maximiert wird, indem zuerst solche Komponenten ausgewählt werden?
Antworten:
Was unter Varianz in mehreren Dimensionen ("Gesamtvarianz") verstanden wird, ist einfach eine Summe von Varianzen in jeder Dimension. Mathematisch ist es eine Spur der Kovarianzmatrix: Spur ist einfach eine Summe aller diagonalen Elemente. Diese Definition hat verschiedene nette Eigenschaften, z. B. ist die Spur bei orthogonalen linearen Transformationen unveränderlich. Wenn Sie also Ihre Koordinatenachsen drehen, bleibt die Gesamtvarianz gleich.
In Bishops Buch (Abschnitt 12.1.1) wird bewiesen, dass der führende Eigenvektor der Kovarianzmatrix die Richtung der maximalen Varianz angibt. Der zweite Eigenvektor gibt die Richtung der maximalen Varianz unter der zusätzlichen Bedingung an, dass sie orthogonal zum ersten Eigenvektor usw. sein sollte (ich glaube, dies ist die Aufgabe 12.1). Wenn das Ziel darin besteht, die Gesamtvarianz im 2D-Unterraum zu maximieren, ist dieses Verfahren eine gierige Maximierung: Wählen Sie zuerst eine Achse, die die Varianz maximiert, und dann eine andere.
Ihre Frage ist: Warum erhält dieses gierige Verfahren ein globales Maximum?
Hier ist ein nettes Argument, das @whuber in den Kommentaren vorgeschlagen hat. Richten wir zuerst das Koordinatensystem an den PCA-Achsen aus. Die Kovarianzmatrix wird diagonal: . Der Einfachheit halber betrachten wir denselben 2D-Fall, dh was ist die Ebene mit maximaler Gesamtvarianz? Wir wollen beweisen, dass es die Ebene ist, die durch die ersten beiden Basisvektoren gegeben ist (mit Gesamtvarianz ).Σ=diag(λi) λ1+λ2
Stellen Sie sich eine Ebene vor, die von zwei orthogonalen Vektoren und überspannt wird . Die Gesamtvarianz in dieser Ebene istEs handelt sich also um eine lineare Kombination von Eigenwerten mit Koeffizienten, die alle positiv sind, nicht überschreiten (siehe unten) und zu summieren . Wenn ja, dann ist es fast offensichtlich, dass das Maximum bei .u v
Es bleibt nur zu zeigen, dass die Koeffizienten nicht überschreiten dürfen . Beachten Sie, dass , wobei ist der te Basisvektor. Diese Größe ist eine quadratische Länge einer Projektion von auf die Ebene, die von und überspannt wird . Daher muss es kleiner sein als die quadratische Länge von die gleich , QED ist.1 u2k+v2k=(u⋅k)2+(v⋅k)2 k k k u v k |k|2=1
Siehe auch die Antwort von @ cardinal auf Was ist die Zielfunktion von PCA? (Es folgt der gleichen Logik).
quelle
Wenn Sie unkorrelierte Zufallsvariablen in absteigender Reihenfolge ihrer Varianz sortiert haben und aufgefordert wurden, davon so zu wählen, dass die Varianz ihrer Summe maximiert wird, würden Sie zustimmen, dass der gierige Ansatz, das erste auszuwählen , dies erreichen würde?N k k
Die auf die Eigenvektoren ihrer Kovarianzmatrix projizierten Daten sind im Wesentlichen unkorrelierte Datenspalten, deren Varianz den jeweiligen Eigenwerten entspricht.N
Damit die Intuition klarer wird, müssen wir die Varianzmaximierung mit der Berechnung des Eigenvektors der Kovarianzmatrix mit dem größten Eigenwert in Beziehung setzen und die orthogonale Projektion mit dem Entfernen von Korrelationen in Beziehung setzen.
Die zweite Beziehung ist mir klar, weil der Korrelationskoeffizient zwischen zwei (Mittelwert Null) Vektoren proportional zu ihrem inneren Produkt ist.
Die Beziehung zwischen der Maximierung der Varianz und der Eigenzerlegung der Kovarianzmatrix ist wie folgt.
Angenommen, ist die Datenmatrix nach dem Zentrieren der Spalten. Wir müssen die Richtung der maximalen Varianz finden. Für jeden Einheitsvektor , die Varianz nach Projizieren entlang istD v v
Dies wird maximiert, wenn der Eigenvektor von , der dem größten Eigenwert entspricht.v Cov(D)
quelle