An eigenvector is a direction a matrix only stretches — never turns. PCA puts that to work: the eigenvectors of your data's covariance matrix are the axes along which it varies most, and keeping the biggest ones is how you compress high-dimensional data.
Where you meet it
- Dimensionality reduction — squeeze hundreds of features down to a handful before training a model.
- Visualizing high-dimensional data by projecting it onto its first two principal components.
- De-correlating and whitening features; eigenfaces and image compression.
- Anywhere a transformation has a "natural axis": vibration modes, PageRank, Markov chains.
What it does
For a matrix A, most vectors get rotated and rescaled when you apply it. An eigenvector is special: it comes out pointing the same way, only longer or shorter. The scale factor is its eigenvalue. PCA finds these special directions for the matrix that encodes how your data spreads — the covariance matrix — and ranks them by how much variance each one carries.
PCA is just eigenvectors of the covariance matrix — each eigenvalue is the variance along its axis, so keep the biggest and drop the rest.
How it works
The defining equation is
A v = λ v
Here v (the eigenvector) is a direction that A leaves on its own line, scaled by λ (the eigenvalue). You find them by solving det(A − λI) = 0 for the λs, then back-substituting to get each v.
PCA applies this to the covariance matrix C of centered data:
C = (1 / (n − 1)) X⊤ X # X is mean-centered
λ, V = eig(C) # eigenvalues + eigenvectors
Because C is symmetric, its eigenvectors are orthogonal — they form a clean new set of axes. Each eigenvalue λᵢ is exactly the variance along eigenvector vᵢ, so the share λᵢ / Σλ is the explained variance. Sort by λ, keep the top k eigenvectors, and project your data onto them: that is dimensionality reduction with the least possible loss of variance.
Watch out
- Standardize first. Eigenvalues track raw variance, so a feature measured in large units (e.g. salary) will dominate one in small units (e.g. age). Scale to unit variance before running PCA.
- Principal axes are usually not interpretable. A component is a blend of all your original features; it rarely maps onto a single real-world quantity.
- PCA only finds linear structure. Data curved on a manifold won't unfold — reach for kernel PCA, t-SNE, or UMAP instead.
- Eigenvector signs are arbitrary.
vand−vare both valid, so a plot may flip between runs or libraries — that carries no meaning.
Go deeper
Ein Eigenvektor ist eine Richtung, die eine Matrix nur streckt — nie dreht. Genau das nutzt PCA: Die Eigenvektoren der Kovarianzmatrix deiner Daten sind die Achsen größter Varianz, und die größten davon zu behalten ist der Weg, hochdimensionale Daten zu komprimieren.
Wo es vorkommt
- Dimensionsreduktion — hunderte Features auf eine Handvoll eindampfen, bevor ein Modell trainiert wird.
- Hochdimensionale Daten sichtbar machen, indem man sie auf die ersten beiden Hauptkomponenten projiziert.
- Features dekorrelieren und whitenen; Eigenfaces und Bildkompression.
- Überall, wo eine Transformation eine „natürliche Achse" hat: Schwingungsmoden, PageRank, Markow-Ketten.
Was es tut
Bei einer Matrix A werden die meisten Vektoren gedreht und skaliert. Ein Eigenvektor ist besonders: Er kommt in dieselbe Richtung zeigend wieder heraus, nur länger oder kürzer. Der Skalierungsfaktor ist sein Eigenwert. PCA findet diese besonderen Richtungen für die Matrix, die beschreibt, wie die Daten streuen — die Kovarianzmatrix — und ordnet sie danach, wie viel Varianz jede trägt.
PCA sind nur die Eigenvektoren der Kovarianzmatrix — jeder Eigenwert ist die Varianz entlang seiner Achse, also behältst du die größten und wirfst den Rest weg.
Wie es funktioniert
Die definierende Gleichung lautet
A v = λ v
Dabei ist v (der Eigenvektor) eine Richtung, die A auf ihrer eigenen Geraden lässt, gestreckt um λ (den Eigenwert). Man findet sie, indem man det(A − λI) = 0 nach den λ löst und durch Rückeinsetzen jedes v bestimmt.
PCA wendet das auf die Kovarianzmatrix C der zentrierten Daten an:
C = (1 / (n − 1)) X⊤ X # X ist mittelwertzentriert
λ, V = eig(C) # Eigenwerte + Eigenvektoren
Weil C symmetrisch ist, stehen ihre Eigenvektoren orthogonal aufeinander — sie bilden ein sauberes neues Achsensystem. Jeder Eigenwert λᵢ ist genau die Varianz entlang des Eigenvektors vᵢ, also ist der Anteil λᵢ / Σλ die erklärte Varianz. Sortiere nach λ, behalte die obersten k Eigenvektoren und projiziere die Daten darauf: Das ist Dimensionsreduktion mit dem kleinstmöglichen Varianzverlust.
Worauf achten
- Zuerst standardisieren. Eigenwerte folgen der rohen Varianz, also dominiert ein Feature mit großen Einheiten (z. B. Gehalt) eines mit kleinen (z. B. Alter). Vor der PCA auf Einheitsvarianz skalieren.
- Hauptachsen sind meist nicht interpretierbar. Eine Komponente ist eine Mischung aller ursprünglichen Features und entspricht selten einer einzelnen realen Größe.
- PCA findet nur lineare Struktur. Auf einer gekrümmten Mannigfaltigkeit liegende Daten entfaltet sie nicht — dafür Kernel-PCA, t-SNE oder UMAP nehmen.
- Das Vorzeichen der Eigenvektoren ist beliebig.
vund−vsind beide gültig, ein Plot kann also zwischen Läufen oder Bibliotheken kippen — das hat keine Bedeutung.