Utilizar ciegamente el PCA es una receta para el desastre. (Por otra parte, aplicar automáticamente cualquier método no es una buena idea, porque lo que funciona en un contexto no está garantizado que funcione en otro. Podemos formalizar esta idea intuitiva con el teorema No Free Lunch).
Es bastante fácil construir un ejemplo en el que los vectores propios a los valores propios más pequeños son los más informativos. Si descartas estos datos, estás descartando la información más útil para tu problema de clasificación o regresión, y tu modelo mejoraría si los hubieras conservado.
Más concretamente, supongamos que $A$ es nuestra matriz de diseño, y cada columna está centrada en la media. Entonces podemos utilizar la SVD para calcular el PCA de $A$ . (ver: Relación entre SVD y PCA. Cómo utilizar la SVD para realizar el PCA? )
Para un ejemplo en el caso de un modelo lineal, esto nos da una factorización $$ AV = US $$
y deseamos predecir algún resultado $y$ como una combinación lineal de los PC: $AV\beta = y+\epsilon$ donde $\epsilon$ es un poco de ruido. Además, vamos a suponer que este modelo lineal es el modelo correcto.
En general, el vector $\beta$ puede ser cualquier cosa, al igual que en una configuración de regresión OLS ordinaria; pero en cualquier problema particular, es posible que los únicos elementos no nulos de $\beta$ son los correspondientes a los valores singulares positivos más pequeños. Cuando este es el caso, el uso de PCA para reducir la dimensión de $AV$ descartando los valores singulares más pequeños se también descartar los únicos predictores relevantes de $y$ . En otras palabras, aunque empezamos con el modelo correcto, el modelo truncado no es correcto porque omite las variables clave.
En otras palabras, PCA tiene una debilidad en un escenario de aprendizaje supervisado porque no es " $y$ -conciencia". Por supuesto, en los casos en que PCA es un paso útil, entonces $\beta$ tendrá entradas no nulas correspondientes a los valores singulares más grandes.
Creo que este ejemplo es instructivo porque muestra que incluso en el caso especial de que el modelo sea lineal, truncar $AV$ se arriesga a descartar la información.
Otras objeciones comunes son:
-
El PCA es un modelo lineal, pero las relaciones entre las características pueden no tener la forma de una factorización lineal. Esto implica que el PCA será una distorsión.
-
El PCA puede ser difícil de interpretar, porque tiende a producir factorizaciones "densas", donde todas las características en $A$ tienen un efecto no nulo en cada PC.
-
He aquí otro ejemplo: El primer componente principal no separa las clases, pero otros PC sí; ¿cómo es posible?
Se pueden encontrar algunos ejemplos más en este hilo estrechamente relacionado (¡gracias, @gung!): Ejemplos de PCA en los que las PC con baja varianza son "útiles"
14 votos
¿Dónde has oído exactamente que hay que aplicar siempre el PCA? No recuerdo que nadie lo haga ni siquiera "comúnmente", por no decir "siempre".
3 votos
Como anécdota, en mi línea de trabajo estamos muy limitados en la cantidad de datos que podemos recoger debido a las limitaciones prácticas. Reducir las dimensiones a posteriori no nos ayuda. Necesitamos algún método de selección de características para determinar qué datos debemos recoger. Edición: Este comentario era para una versión anterior en la que se preguntaba si se debía aplicar siempre el PCA.
0 votos
@Tim Como dije en el post original, me preguntaba si se puede aplicar. No lo he oído en ningún sitio.
0 votos
@Brandon Si tienes una matriz de covarianza, puedes diagonalizarla. Que eso sea útil o no es otra historia.
1 votos
Yo preguntaría lo contrario: ¿es el PCA siempre ¿recomendado? :)
1 votos
Supongamos que está haciendo una clasificación de imágenes. Entonces, si haces PCA, estás tirando la información sobre qué píxeles están cerca unos de otros. Esto será horrible.
0 votos
Puede que quieras mirar en supervisado PCA: sciencedirect.com/science/article/abs/pii/S0031320310005819 .