El algoritmo PCA se puede formular en términos de la matriz de correlación (suponga que los datos ya se han normalizado y solo estamos considerando la proyección en la primera PC). La función objetivo se puede escribir como:
Esto está bien, y usamos multiplicadores lagrangianos para resolverlo, es decir, reescribirlo como:
que es equivalente a
y por lo tanto ( ver aquí en Mathworld ) parece ser igual a
Pero esto es para maximizar la distancia entre el punto y la línea, y por lo que he leído aquí , esto es incorrecto: debería ser , no . ¿Dónde está mi error?
O, ¿alguien puede mostrarme el vínculo entre maximizar la varianza en el espacio proyectado y minimizar la distancia entre el punto y la línea?
pca
optimization
Cam.Davidson.Pilon
fuente
fuente
Respuestas:
Sea una matriz de datos centrada con observaciones en filas. Sea ser su matriz de covarianza. Sea ser un vector unitario que especifica un eje en el espacio variable. Queremos que sea el primer eje principal.X Σ = X ⊤ X / ( n - 1 )n Σ=X⊤X/(n−1) w w
Según el primer enfoque, el primer eje principal maximiza la varianza de la proyección (varianza del primer componente principal). Esta variación viene dada porV a r ( X w ) = w ⊤ X ⊤ X w / ( n - 1 ) = w ⊤ Σ w .Xw
Según el segundo enfoque, el primer eje principal minimiza el error de reconstrucción entre y su reconstrucción , es decir, la suma de las distancias al cuadrado entre los puntos originales y sus proyecciones sobre . El cuadrado del error de reconstrucción viene dado por X w w ⊤ w ‖ X - X w w ⊤ ‖ 2X Xww⊤ w
Observe el signo menos antes del término principal. Debido a eso, minimizar el error de reconstrucción equivale a maximizar , que es la varianza. Por lo tanto, minimizar el error de reconstrucción es equivalente a maximizar la varianza; ambas formulaciones producen el mismo .w⊤Σw w
fuente