¿Cuándo es apropiado usar PCA como paso de preprocesamiento?

8

Entiendo que PCA se usa para la reducción de dimensionalidad para poder trazar conjuntos de datos en 2D o 3D. Pero también he visto personas que aplican PCA como un paso de preprocesamiento en escenarios de clasificación donde aplican PCA para reducir el número de características, luego usan algunos Componentes Principales (los vectores propios de la matriz de covarianza) como las nuevas características.

Mis preguntas:

  • ¿Qué efectos tiene eso en el desempeño de la clasificación?

  • ¿Cuándo aplicar tal paso de preprocesamiento?

  • Tengo un conjunto de datos con 10 características como números reales y 600 características binarias que representan características categóricas, utilizando codificación de uno a muchos para representarlas. ¿Tendría sentido aplicar PCA aquí y obtener mejores resultados?

PD: si la pregunta es demasiado amplia, le agradecería que proporcione un documento o tutoriales que expliquen mejor los detalles del uso de PCA de esa manera.

ps después de leer un poco, descubrí que podría ser mejor usar el análisis semántico latente para reducir el número de características binarias para los atributos categóricos. Por lo tanto, no toco las características de valor real, sino que solo preproceso las características binarias y luego combino las características de valor real con las nuevas características y entreno mi clasificador. ¿Qué piensas?

Jack Twain
fuente

Respuestas:

5

Usar PCA para la selección de funciones (eliminar funciones no predictivas) es una forma extremadamente costosa de hacerlo. Los algos PCA son a menudo O (n ^ 3). Más bien, un enfoque mucho mejor y más eficiente sería utilizar una medida de interdependencia entre la característica y la clase, ya que esta información mutua tiende a funcionar muy bien, además, es la única medida de dependencia que a) generaliza completamente yb) en realidad tiene una buena base filosófica basada en la divergencia Kullback-Leibler.

Por ejemplo, calculamos (usando la probabilidad de probabilidad máxima aproximadamente con algo de suavizado)

MI-superior-esperado = MI (F, C) - E_ {X, N} [MI (X, C)]

donde el segundo término es la "información mutua esperada dada N ejemplos". Luego tomamos las principales características M después de ordenarlas por MI-arriba de lo esperado.

La razón por la que uno desearía usar PCA es si uno espera que muchas de las características sean de hecho dependientes. Esto sería particularmente útil para Naive Bayes, donde se asume la independencia. Ahora los conjuntos de datos con los que he trabajado siempre han sido demasiado grandes para usar PCA, por lo que no uso PCA y tenemos que usar métodos más sofisticados. Pero si su conjunto de datos es pequeño y no tiene el tiempo para investigar métodos más sofisticados, entonces siga adelante y aplique un PCA listo para usar.

samthebest
fuente