2.2 Herleitung der PCA
Idee der Hauptkomponentenanalyse
📄 03_dimred.pdf, Folie 15Die Hauptkomponentenanalyse (Principal Component Analysis, PCA) sucht Richtungen in den Daten, entlang derer die Daten extremale Varianz haben, also maximale oder minimale. Im Bild der Folie ist die lange Achse der Punktwolke (größte Varianz), die dazu senkrechte kurze Achse.
Anwendung: Dimensionsreduktion durch Weglassen der Richtungen mit der kleinsten Varianz. Dort passiert wenig, man verliert beim Weglassen kaum Information.
Annahme: Die Daten sind zentriert, d.h. ihr Schwerpunkt
liegt im Ursprung. Das ist keine Einschränkung: Man zieht vorher einfach den Mittelwert von allen Datenpunkten ab. Ab hier gilt also und .
Das Zentrieren vergisst man leicht. Ohne Zentrierung zeigt die „erste Hauptkomponente“ meist einfach vom Ursprung zum Schwerpunkt der Daten, statt entlang der Streurichtung. Bei neuen Daten (z.B. Testbildern) muss man den Mittelwert der Trainingsdaten abziehen, nicht einen neu berechneten.
PCA als Rotation
📄 03_dimred.pdf, Folie 16Man kann die PCA auch als Drehung des Koordinatensystems sehen: Es wird so rotiert, dass die Daten
- entlang der ersten Koordinatenachse die größte Varianz haben,
- entlang der zweiten Achse die zweithöchste Varianz,
- usw.
Im Beispiel der Folie (vier Punkte in 2D) ist die Varianz maximal bei einer Rotation um ca. . In 2D legt diese eine Achse die ganze Drehung fest, denn die zweite Achse muss senkrecht dazu stehen. In höheren Dimensionen wählt man nacheinander: erst die Richtung maximaler Varianz, dann unter allen dazu senkrechten Richtungen wieder die mit maximaler Varianz, und so weiter.
PCA als Optimierungsproblem
📄 03_dimred.pdf, Folie 17Aus 2.1 wissen wir: Die Varianz entlang der Richtung ist . Die PCA ist damit ein Optimierungsproblem:
Jedes Maximierungsproblem lässt sich durch Umkehren des Vorzeichens in ein Minimierungsproblem verwandeln, :
Begriffe:
- ist die Zielfunktion (objective function).
- ist der zulässige Bereich (feasible set): die Menge, die man bei der Optimierung durchsuchen muss. Hier: die Menge aller Raumrichtungen.
Man schreibt in der Optimierung üblicherweise alles als Minimierung. Deshalb das Minuszeichen.
Optimierung unter Nebenbedingungen
📄 03_dimred.pdf, Folie 18Oft ist der zulässige Bereich nicht direkt gegeben, sondern implizit durch Gleichungen oder Ungleichungen beschrieben. Dann spricht man von einem Optimierungsproblem unter Nebenbedingungen (constrained optimization):
Die Funktionen und schränken die Wahl von auf den Teil von ein, in dem alle Bedingungen erfüllt sind.
Ergänzung: Ungleichheitsbedingungen brauchen wir für die PCA nicht. Sie tauchen später bei den Support-Vektor-Maschinen wieder auf (Karush-Kuhn-Tucker-Bedingungen), siehe Kapitel 6.
Der zulässige Bereich der PCA
📄 03_dimred.pdf, Folie 19Lässt man für
den ganzen Raum zu, gibt es keine endliche Lösung. Grund: Für wird . Man kann die „Varianz“ also durch einfaches Verlängern von beliebig groß machen, ohne die Richtung zu ändern.
Schon vorher wurde festgelegt, dass eine Raumrichtung durch einen Einheitsvektor dargestellt wird: , oder einfacher . Das ist genau die Gleichheitsbedingung, die eine endliche Lösung erst ermöglicht.
unter der Nebenbedingung
Geometrisch: Man sucht auf der Einheitskugel den Punkt, an dem am größten ist.
Minima finden: Fermat und Lagrange
Ohne Nebenbedingungen: Satz von Fermat
📄 03_dimred.pdf, Folie 20Sei differenzierbar. Eine notwendige Bedingung für ein Minimum an der Stelle ist
Man findet Minimumkandidaten also durch Lösen von . „Notwendig“ heißt: Jedes Minimum erfüllt die Bedingung, aber auch Maxima und Sattelpunkte tun es.
Diese Methode funktioniert nicht unter Nebenbedingungen. Die Grafik auf der Folie zeigt warum: Das Minimum auf einer Gleichheitsbedingung (einer Kurve im zulässigen Bereich) liegt im Allgemeinen nicht dort, wo der Gradient verschwindet. Der Gradient zeigt dort zwar nicht entlang der Kurve, aber er ist nicht null. Bei der PCA hat ohne Nebenbedingung nur den stationären Punkt , und der liegt nicht auf der Einheitskugel.
Mit Gleichheitsbedingungen: Satz von Lagrange
📄 03_dimred.pdf, Folie 21Man definiert die Lagrangefunktion (Lagrangian) mit den Lagrange-Multiplikatoren (Lagrange multipliers) :
Notwendige Bedingung für ein Minimum unter den Nebenbedingungen :
- (das ist gleichbedeutend mit ),
- .
Die Optimierung von unter Nebenbedingungen wird also durch eine Optimierung von ohne Nebenbedingungen ersetzt. Der Preis: zusätzliche Unbekannte .
Warum ist Bedingung 1 dasselbe wie ? . Die Ableitung nach dem Multiplikator null zu setzen, erzwingt also genau die Nebenbedingung.
Ergänzung zur Intuition von Bedingung 2: heißt: Der Gradient der Zielfunktion ist eine Linearkombination der Gradienten der Nebenbedingungen. Bei einer Nebenbedingung: steht senkrecht auf der Fläche . Hätte eine Komponente entlang der Fläche, könnte man sich in diese Richtung bewegen, die Nebenbedingung einhalten und trotzdem verkleinern. Dann wäre man nicht im Minimum.
Anwendung auf die PCA: die Eigenwertgleichung
📄 03_dimred.pdf, Folie 22Lagrangefunktion der PCA (eine Nebenbedingung, ein Multiplikator ):
Ableitung nach :
Ergänzung, die beiden benutzten Ableitungsregeln: Für symmetrisches gilt (allgemein ), und . Analog zur skalaren Regel .
Nach dem Satz von Lagrange muss am Minimum gelten (durch 2 geteilt)
also die Eigenwertgleichung (eigenvalue equation)
Die Eigenvektoren der Kovarianzmatrix sind die Richtungen extremaler Varianz. Der Lagrange-Multiplikator ist der zugehörige Eigenwert.
Welcher Eigenvektor ist das Maximum? Setzt man in die Zielfunktion ein: . Die Varianz in Eigenrichtung ist also der Eigenwert. Das Maximum liegt beim größten, das Minimum beim kleinsten Eigenwert. Alle anderen Eigenvektoren sind Sattelpunkte (Ergänzung).
Hauptkomponenten
📄 03_dimred.pdf, Folie 23Aus der linearen Algebra (Spektralsatz) weiß man über die symmetrische Matrix :
- Die Eigenwertgleichung hat immer eine Lösung: reelle Eigenwerte.
- Die Eigenvektoren lassen sich zueinander orthogonal wählen.
- ist orthogonal diagonalisierbar: Es gibt eine orthogonale Matrix (also ), so dass
Die Spalten von sind die auf Länge 1 normierten Eigenvektoren . Sie bilden eine neue Orthonormalbasis des , in der die Kovarianzmatrix diagonal ist. Diese neuen normierten Basisvektoren heißen Hauptkomponenten (principal components). ist (bis auf eventuelle Spiegelung) eine Rotationsmatrix, also genau die vorhin gesuchte PCA-Rotation.
Auf der Folie steht . Das passt zur Konvention, dass die Eigenvektoren in den Zeilen von stehen. Mit Eigenvektoren in den Spalten (wie im Text der Folie) lautet die Zerlegung , gleichwertig . Das kann man direkt nachrechnen: .
Konvention: Man sortiert die Hauptkomponenten nach absteigendem Eigenwert, . Die erste Hauptkomponente ist dann die Richtung größter Varianz.
Neue Variablen: Principal Component Scores
📄 03_dimred.pdf, Folie 24Nach der Rotation sind die Koordinatenachsen entlang der Richtungen extremaler Varianz ausgerichtet. Die Projektionen eines Datenpunkts auf die ,
sind die neuen Variablenwerte in der Hauptkomponentenbasis. Man nennt sie Scores (principal component scores). Für alle Komponenten auf einmal: .
Weil orthogonal ist, lässt sich das umkehren: . Es geht keine Information verloren, solange man alle Komponenten behält. Die Scores sind nur die Koordinaten desselben Punkts in einem gedrehten System.
Kovarianzstruktur der neuen Variablen
📄 03_dimred.pdf, Folie 25Varianz der Scores. Für den -ten Score gilt
(Die Folie schreibt im vorletzten Schritt , gemeint ist die ursprüngliche Kovarianzmatrix , denn ist in der Originalbasis ausgedrückt.)
Die Eigenwerte von sind also die Varianzen der Scores . Da Varianzen nie negativ sind, gilt : ist positiv semidefinit.
Kovarianz zwischen den Scores. Die transformierte Kovarianzmatrix ist diagonal. Damit gilt
Explizit (Ergänzung): wegen der Orthogonalität.
Die PCA dekorreliert die Daten: Die neuen Variablen (Scores) sind untereinander unkorreliert, und ihre Varianzen sind die Eigenwerte. Das ist der Übergang von Fall 3 zu Fall 2 auf 📄 03_dimred.pdf, Folie 12.
Durchgerechnetes Beispiel
Ergänzung, nicht auf den Folien. Wir setzen das Beispiel aus 2.1 fort: vier zentrierte Punkte , , , mit
Schritt 1: Eigenwerte. Charakteristisches Polynom:
Schritt 2: Eigenvektoren.
- : , normiert .
- : , normiert .
Probe: ✔ orthogonal.
Schritt 3: Scores , :
| Punkt | ||
|---|---|---|
Schritt 4: Kontrolle.
- ✔
- ✔
- ✔ unkorreliert
Die Drehung geht hier um : Die erste Hauptkomponente liegt auf der Diagonalen. Die Gesamtvarianz ist vor und nach der Drehung gleich, wird aber umverteilt auf . Wie man das für die Dimensionsreduktion nutzt, zeigt 2.3.