¿Cuántas dimensiones hay que reducir al hacer PCA?

12

¿Cómo elegir K para PCA? K es el número de dimensiones para proyectar hacia abajo. El único requisito es no perder demasiada información. Entiendo que depende de los datos, pero estoy buscando más una descripción general simple sobre qué características considerar al elegir K.

pr338
fuente
Depende de la pérdida de datos tolerable y también de la declaración del problema.
Dawny33
Estoy de acuerdo con las dos respuestas a continuación. Sin embargo, ¿sabe que hay una manera simple de cuantificar la pérdida de información, es decir, usando la diagonal de SVD de la matriz de covarianza?
yuqian

Respuestas:

13

Después de realizar el algoritmo PCA, obtiene los componentes principales, ordenados por la cantidad de información que contienen. Si mantiene todo el conjunto, no se pierde información. Al eliminarlos uno por uno y proyectarlos nuevamente en el espacio original, puede calcular la pérdida de información. Puede trazar esta pérdida de información contra el número de componentes principales eliminados y ver si tiene un "codo" donde tiene sentido. Sin embargo, mucho de esto depende de su caso de uso.

Jan van der Vegt
fuente
(+1) Sí, tan simple como eso :)
Dawny33
3

Normalmente verifico el porcentaje de la información contenida en el valor K. Digamos que de 8 campos, 2 de ellos contienen el 90% de la información. Entonces no tiene sentido incluir los otros 6 o 5 campos. Si conoce datos de mnist, de 768 entradas, solo usé 250, lo que aumentó mi precisión del 83 al 96%. El hecho es que más dimensionalidad trae más problemas. Así que córtalos. Por lo general, solo tomo a K, que solo posee el 90% de la información, y funciona para mí.

Amanuel Negash
fuente
Hola ... Tengo un problema similar en el que me gustaría usar x% de información y no estoy seguro de cómo hacerlo. Tengo la intención de utilizar el IPCA para hacer esto. Puedo dejar n_components = Ninguno, pero ¿cómo decido cuáles son las características que tienen x% de los datos?
Arsenal Fanatic