Quando é apropriado usar o PCA como uma etapa de pré-processamento?

8

Entendo que o PCA é usado para redução de dimensionalidade para poder plotar conjuntos de dados em 2D ou 3D. Mas também vi pessoas aplicando o PCA como uma etapa de pré-processamento nos cenários de classificação em que eles aplicam o PCA para reduzir o número de recursos, depois usam alguns Componentes Principais (os autovetores da matriz de covariância) como novos recursos.

Minhas perguntas:

  • Que efeitos isso causa no desempenho da classificação?

  • Quando aplicar uma etapa de pré-processamento?

  • Eu tenho um conjunto de dados com 10 recursos como números reais e 600 recursos binários que representam recursos categóricos, usando a codificação um-para-muitos para representá-los. A aplicação do PCA aqui faria sentido e obteria melhores resultados?

ps se a pergunta for muito ampla, ficaria muito grato se você fornecer um documento ou tutoriais que explique melhor os detalhes do uso do PCA dessa maneira.

ps Depois de ler um pouco, descobri que seria melhor usar a Análise Semântica Latente para reduzir o número de recursos binários para os atributos categóricos? Portanto, não toco nos recursos com valor real, mas apenas pré-processo os recursos binários e depois os combinei com os novos recursos e treine meu classificador. O que você acha?

Jack Twain
fonte

Respostas:

5

Usar o PCA para seleção de recursos (remover recursos não preditivos) é uma maneira extremamente cara de fazer isso. Os algos de PCA são frequentemente O (n ^ 3). Em vez disso, uma abordagem muito melhor e mais eficiente seria usar uma medida de interdependência entre o recurso e a classe - pois essas informações mútuas tendem a ter um desempenho muito bom, além disso, é a única medida de dependência que a) generaliza completamente eb) na verdade, tem uma boa base filosófica baseada na divergência de Kullback-Leibler.

Por exemplo, calculamos (usando a probabilidade máxima de verossimilhança aproximadamente com alguma suavização)

IM acima do esperado = IM (F, C) - E_ {X, N} [IM (X, C)]

onde o segundo termo é a 'informação mútua esperada, dado N exemplos'. Depois, classificamos os principais recursos M após classificar por MI acima do esperado.

A razão pela qual alguém gostaria de usar o PCA é se espera que muitos dos recursos sejam de fato dependentes. Isso seria particularmente útil para Naive Bayes, onde a independência é assumida. Agora, os conjuntos de dados com os quais trabalhei sempre foram grandes demais para usar o PCA; portanto, não o uso e precisamos usar métodos mais sofisticados. Mas se o seu conjunto de dados for pequeno e você não tiver tempo para investigar métodos mais sofisticados, siga em frente e aplique um PCA pronto para uso.

samthebest
fonte