A análise de componentes principais elimina o ruído nos dados

11

A Análise de Componente Principal (PCA) elimina o ruído no conjunto de dados? Se o PCA não eliminar o ruído no conjunto de dados, o que realmente o PCA faz no conjunto de dados? Alguém pode me ajudar sobre esse assunto.

bbadyalina
fonte
1
Não, não elimina o "ruído" (no sentido de que os dados ruidosos permanecerão ruidosos). PCA é apenas uma transformação de dados. Cada componente PCA representa uma combinação linear de preditores. E os PCAs podem ser ordenados pelo seu valor próprio: em um sentido mais amplo, quanto maior o valor próprio, maior a variação. Portanto, a transformação sem perdas seria quando você tem tantos PCs quanto dimensões. Agora, quando você considera apenas alguns PCs com grandes Ev, negligencia componentes que pouco acrescentam à variação dos dados (mas isso não é "ruído").
Drey
2
Como o @Drey já observou, os componentes de baixa variação não precisam ser ruídos. Você também pode ter ruído como componente de alta variação.
Richard Hardy
Obrigado. Na verdade, fiz o que o @Drey mencionou em seu comentário, que elimino PCs com pequenos Ev que eu pensava anteriormente que eram ruídos dentro do conjunto de dados. Então, se eu quiser continuar a eliminar os PCs com Ev pequeno, e usá-lo como entrada para o modelo de regressão e melhorar o desempenho do modelo de regressão. Posso dizer que o PCA facilitou a interpretação dos dados e tornou a previsão mais precisa.
Bbadyalina 22/11
@ Richard Hardy, se o PCA não remover o ruído dos dados, como a transformação linear melhora o conjunto de dados? De alguma forma, confundo isso, porque muitos pesquisadores usaram o híbrido PCA com modelo de série temporal que melhora o desempenho da previsão em comparação com o modelo convencional de série temporal. Obrigado por sua resposta.
Bbadyalina 22/11
Nem os dados são "fáceis" (é uma combinação linear de recursos) nem serão fáceis de interpretar (interpretação dos coeficientes no modelo de regressão). Mas suas previsões podem se tornar mais precisas. Ainda mais, seu modelo pode generalizar bem.
Drey

Respostas:

15

A Análise de Componentes Principais (PCA) é usada para a) denoise eb) para reduzir a dimensionalidade.

Não elimina o ruído, mas pode reduzir o ruído.

Basicamente, uma transformação linear ortogonal é usada para encontrar uma projeção de todos os dados em k dimensões, enquanto essas k dimensões são as de maior variação. Os vetores próprios da matriz de covariância (do conjunto de dados) são as dimensões de destino e podem ser classificados de acordo com seus valores próprios. Um valor próprio alto significa alta variação explicada pela dimensão do vetor próprio associado.

Vamos dar uma olhada no conjunto de dados usps , obtido pela digitalização de dígitos manuscritos de envelopes pelo Serviço Postal dos EUA.

Primeiro, calculamos os autovetores e autovalores da matriz de covariância e plotamos todos os autovalores descendentes. Podemos ver que existem alguns autovalores que podem ser chamados de componentes principais, pois seus autovalores são muito mais altos que os demais.

Superior: todos os autovalores da matriz de covariância do conjunto de dados usps, classificados em ordem decrescente - para baixo: top25 autovalores

Cada vetor próprio é uma combinação linear de dimensões originais . Portanto, o vetor próprio (neste caso) é uma imagem em si, que pode ser plotada.

Autovetor com os 5 autovalores mais altos plotados

Para b) redução da dimensionalidade, agora poderíamos usar os cinco principais vetores próprios e projetar todos os dados (originalmente uma imagem de 16 * 16 pixels) em um espaço de 5 dimensões com a menor perda possível de variação.

(Observe aqui: Em alguns casos, a redução não dimensional da dimensionalidade (como LLE) pode ser melhor que a PCA, consulte a Wikipedia para exemplos)

Finalmente, podemos usar o PCA para denoising. Portanto, podemos adicionar ruído extra ao conjunto de dados original em três níveis (baixo, alto, outlier) para poder comparar o desempenho. Para este caso, usei ruído gaussiano com média de zero e variância como um múltiplo da variância original (Fator 1 (baixo), Fator 2 (alto), Fator 20 (outlier)). Um resultado possível é semelhante a este. No entanto, em cada caso, o parâmetro k deve ser ajustado para encontrar um bom resultado. insira a descrição da imagem aqui

Finalmente, outra perspectiva é comparar os valores próprios dos dados altamente ruidosos com os dados originais (compare com a primeira figura desta resposta). Você pode ver que o ruído afeta todos os autovalores, portanto, usando apenas os 25 autovalores superiores para denoising, a influência do ruído é reduzida.

insira a descrição da imagem aqui

Nikolas Rieble
fonte
estes apenas números são você tentou encontrar SNR para eles
Boris
Não, apenas usei essas figuras para ilustrar a conexão entre redução de ruído e PCA para um conjunto de dados de exemplo. Você pode escrever uma resposta que adicione uma nova perspectiva.
Nikolas Rieble
Olá Nikolas, sua resposta é incrível, +1. Acabei de postar uma pergunta sobre troca de pilhas matemáticas. Fiquei me perguntando se você poderia ajudar na resposta. Principalmente, estou confuso sobre POR QUE os vetores próprios da matriz de covariância do conjunto de dados original acabam sendo as direções de maior variação e, portanto, queremos projetá-los ... aqui, estou ligando a pergunta: matemática. stackexchange.com/questions/3213775/… Obrigado!
Zlatan943