Eigenfaces (1991, visión clásica)
El primer éxito de PCA sobre imágenes. Proyecta una cara a sus k PCs principales y compara coordenadas. Reconocimiento facial pre-deep-learning.
Nombra las cosas pensando en quien lee, no en quien escribe.
Nombra las cosas pensando en quien lee, no en quien escribe.
Análisis de Componentes Principales
El análisis de componentes principales (PCA) es la técnica de reducción de dimensionalidad más usada y es el pago perfecto a todo lo aprendido en álgebra lineal. Dados datos mathbf{x}_1, ldots, mathbf{x}_N in mathbb{R}^D, PCA busca una base ortonormal de direcciones (las componentes principales) tal
PCA encuentra direcciones ortogonales de máxima varianza — autovectores de la matriz de covarianza, en orden decreciente de autovalor.
Sin PCA no hay eigenfaces, ni modelo de tópicos LSA, ni preprocesamiento tabular rápido, ni forma intuitiva de decidir 'qué direcciones de mis datos realmente importan'.
El análisis de componentes principales (PCA) es la técnica de reducción de dimensionalidad más usada y es el pago perfecto a todo lo aprendido en álgebra lineal. Dados datos , PCA busca una base ortonormal de direcciones (las componentes principales) tal que al proyectar sobre las primeras se capture la mayor varianza posible. El resultado: una representación compacta y descorrelacionada de datos en alta dimensión.
Formalmente, asume que los datos están centrados () y forma la matriz de covarianza . La primera componente principal es el vector unitario que maximiza la varianza de la proyección: Por el cociente de Rayleigh, el máximo es (el mayor autovalor de ), alcanzado en el autovector correspondiente. Las siguientes componentes son los autovectores restantes en orden decreciente de autovalor, cada uno ortogonal al anterior.
La belleza está en que los autovectores de la matriz de covarianza son exactamente las componentes principales, y los autovalores son justamente las varianzas capturadas. Calcular PCA se reduce a una eigendescomposición de — o equivalentemente, una SVD de , que suele ser más estable numéricamente. La conexión: si , entonces las columnas de son las componentes principales y los valores singulares al cuadrado divididos por son las varianzas.
Los datos proyectados (donde apila los primeros autovectores) se llaman scores. Reconstruir da — otra proyección ortogonal, esta vez sobre el subespacio principal de orden . El error de reconstrucción se minimiza; equivalentemente, PCA es la aproximación de rango de con menor norma de Frobenius (teorema de Eckart-Young).
PCA tiene dos derivaciones equivalentes — máxima varianza (la que acabamos de hacer) y mínimo error de reconstrucción. Son duales: maximizar la varianza retenida equivale a minimizar la varianza descartada. En la práctica, PCA se usa para visualización (primeras 2-3 componentes), compresión (retener 95% de la varianza), denoising (descartar componentes de autovalor pequeño), y como paso de preprocesamiento antes de clustering o regresión. Sus limitaciones — lineal, gaussiano, una sola escala — motivan kernel PCA, t-SNE, UMAP y autoencoders.
Ejemplo trabajado — primera PC de 4 puntos: Datos tienen media . Desviaciones centradas: . La matriz de covarianza (dividiendo por ) es aproximadamente — casi rango-1 con ambas filas iguales a . El autovector principal es , la dirección diagonal, y , — la primera PC captura de la varianza.
Python (in browser)
Esperado: Components match up to sign; explained variances match
Python runs entirely in your browser via Pyodide (~6 MB on first Run, cached after).
El primer éxito de PCA sobre imágenes. Proyecta una cara a sus k PCs principales y compara coordenadas. Reconocimiento facial pre-deep-learning.
PCA sobre la matriz término-documento produce temas — el precursor de todos los embeddings modernos.
Primera herramienta para ver estructura de clusters en un embedding de mil dimensiones. Suele usarse para inicializar t-SNE/UMAP.
from sklearn.decomposition import PCA
proj = PCA(n_components=2).fit_transform(X)
plt.scatter(proj[:,0], proj[:,1])Proyecta sobre PCs, divide entre los valores singulares — las características resultantes tienen media cero, varianza unitaria y correlación cero. Mejora la convergencia de muchos aprendices.
Pon a prueba tu comprensión. Puntos por acierto + racha + velocidad.
3 preguntas rápidas. Acertá 2 para marcar esta lección como completada.