Quais são as principais diferenças entre realizar a análise de componentes principais (PCA) na matriz de correlação e na matriz de covariância? Eles dão os mesmos resultados?
Quais são as principais diferenças entre realizar a análise de componentes principais (PCA) na matriz de correlação e na matriz de covariância? Eles dão os mesmos resultados?
Respostas:
Você tende a usar a matriz de covariância quando as escalas de variáveis são semelhantes e a matriz de correlação quando as variáveis estão em escalas diferentes.
O uso da matriz de correlação equivale a padronizar cada uma das variáveis (média 0 e desvio padrão 1). Em geral, o PCA com e sem padronização fornecerá resultados diferentes. Especialmente quando as escalas são diferentes.
Como um exemplo, dê uma olhada neste heptathlon
conjunto de dados R. Algumas das variáveis têm um valor médio de cerca de 1,8 (salto em altura), enquanto outras (corridas 800m) são cerca de 120.
library(HSAUR)
heptathlon[,-8] # look at heptathlon data (excluding 'score' variable)
Isso gera:
hurdles highjump shot run200m longjump javelin run800m
Joyner-Kersee (USA) 12.69 1.86 15.80 22.56 7.27 45.66 128.51
John (GDR) 12.85 1.80 16.23 23.65 6.71 42.56 126.12
Behmer (GDR) 13.20 1.83 14.20 23.10 6.68 44.54 124.20
Sablovskaite (URS) 13.61 1.80 15.23 23.92 6.25 42.78 132.24
Choubenkova (URS) 13.51 1.74 14.76 23.93 6.32 47.46 127.90
...
Agora vamos fazer o PCA em covariância e correlação:
# scale=T bases the PCA on the correlation matrix
hep.PC.cor = prcomp(heptathlon[,-8], scale=TRUE)
hep.PC.cov = prcomp(heptathlon[,-8], scale=FALSE)
biplot(hep.PC.cov)
biplot(hep.PC.cor)
Observe que o PCA na covariância é dominado por run800m
e javelin
: PC1 é quase igual a run800m
(e explica da variação) e PC2 é quase igual a (juntos eles explicam ). O PCA na correlação é muito mais informativo e revela alguma estrutura nos dados e relacionamentos entre variáveis (mas observe que as variações explicadas caem para e ).javelin
64 % 71 %
Observe também que os indivíduos periféricos ( neste conjunto de dados) são discrepantes, independentemente de a matriz de covariância ou correlação ser usada.
Bernard Flury, em seu excelente livro que introduz a análise multivariada, descreveu isso como uma antipropriedade dos componentes principais. Na verdade, é pior do que escolher entre correlação ou covariância. Se você alterou as unidades (por exemplo, galões no estilo dos EUA, polegadas, etc. e litros no estilo da UE, centímetros), obterá projeções substancialmente diferentes dos dados.
O argumento contra o uso automático de matrizes de correlação é que é uma maneira bastante brutal de padronizar seus dados. O problema com o uso automático da matriz de covariância, que é muito aparente com os dados do heptathalon, é que as variáveis com a variação mais alta dominam o primeiro componente principal (a propriedade de maximização da variação).
Portanto, o "melhor" método a ser usado é baseado em uma escolha subjetiva, em um pensamento cuidadoso e em alguma experiência.
DADOS NÃO TRANSFORMADOS (RAW): se você tiver variáveis com escalas amplamente variadas para dados brutos não transformados, ou seja, ingestão calórica por dia, expressão gênica, ELISA / Luminex em unidades de ug / dl, ng / dl, com base em várias ordens de magnitude da expressão da proteína, use a correlação como uma entrada para o PCA. No entanto, se todos os seus dados forem baseados, por exemplo, na expressão de genes da mesma plataforma com escala e escala semelhantes, ou se você estiver trabalhando com retornos de ativos de patrimônio de log, o uso da correlação gerará uma quantidade enorme de informações.
Na verdade, você não precisa pensar na diferença de usar a matriz de correlação ou matriz de covariância como uma entrada para o PCA; em vez disso, observe os valores diagonais de e . Você pode observar uma variação de para uma variável e em outra - que estão na diagonal de . Porém, ao observar as correlações, a diagonal contém todas, portanto a variação de cada variável é essencialmente alterada para conforme você usa a matriz .
DADOS TRANSFORMADOS: se os dados tiverem sido transformados por normalização, percentis ou padronização média-zero (ou seja, escores), para que o intervalo e a escala de todas as variáveis contínuas sejam os mesmos, você poderá usar a matriz Covariance sem problemas. (a correlação significará zero variáveis padronizadas). Lembre-se, no entanto, de que essas transformações não removerão a assimetria (ou seja, caudas esquerda ou direita nos histogramas) em suas variáveis antes de executar o PCA . A análise típica do PCA não envolve a remoção da assimetria; no entanto, alguns leitores podem precisar remover a assimetria para atender a rígidas restrições de normalidade.
Em resumo, use a matriz de correlação quando o intervalo e a escala dentro da variável diferirem amplamente e use a matriz de covariância para preservar a variação se o intervalo e a escala das variáveis forem semelhantes ou nas mesmas unidades de a medida.
Variáveis distorcidas : se alguma das variáveis for distorcida com caudas esquerda ou direita em seus histogramas, ou seja, o teste de normalidade de Shapiro-Wilk ou Lilliefors for significativo , poderá haver alguns problemas se você precisar aplicar a normalidade suposição. Nesse caso, use as pontuações de van der Waerden (transformações) determinadas de cada variável. A pontuação de van der Waerden (VDW) para uma única observação é apenas o mapeamento normal cumulativo inverso (padrão) do valor percentual da observação. Por exemplo, digamos que você tenha observações para uma variável contínua, é possível determinar as pontuações do VDW usando:
Por exemplo, se você um valor 0,025, obterá . O mesmo vale para um valor de plug-in , você obterá .
O uso de pontuações VDW é muito popular na genética, onde muitas variáveis são transformadas em pontuações VDW e depois inseridas em análises. A vantagem de usar as pontuações do VDW é que a distorção e os efeitos externos são removidos dos dados e podem ser usados se o objetivo é realizar uma análise sob as restrições da normalidade - e todas as variáveis precisam ser puramente padrão normal distribuídas sem distorção ou outliers.
Uma resposta comum é sugerir que a covariância é usada quando as variáveis estão na mesma escala e a correlação quando as escalas são diferentes. No entanto, isso só é verdade quando a escala das variáveis não é um fator. Caso contrário, por que alguém faria covariância em PCA? Seria mais seguro sempre executar a correlação PCA.
Imagine que suas variáveis tenham unidades de medida diferentes, como metros e quilogramas. Não importa se você usa metros ou centímetros nesse caso, para poder argumentar que a matriz de correlação deve ser usada.
Considere agora a população de pessoas em diferentes estados. As unidades de medida são as mesmas - contagens (número) de pessoas. Agora, as escalas podem ser diferentes: a DC possui 600K e CA - 38M. Devemos usar a matriz de correlação aqui? Depende. Em algumas aplicações, queremos ajustar o tamanho do estado. O uso da matriz de covariância é uma maneira de criar fatores responsáveis pelo tamanho do estado.
Portanto, minha resposta é usar a matriz de covariância quando a variação da variável original é importante e usar a correlação quando não é.
Pessoalmente, acho muito valioso discutir essas opções à luz do modelo de análise de componentes principais de máxima verossimilhança (MLPCA) [1,2]. No MLPCA, aplica-se uma escala (ou mesmo uma rotação), de modo que os erros de medição nas variáveis medidas sejam independentes e distribuídos de acordo com a distribuição normal padrão. Esse escalonamento também é conhecido como escalonamento de máxima verossimilhança (MALS) [3]. Em alguns casos, o modelo PCA e o parâmetro que define a escala / rotação do MALS podem ser estimados em conjunto [4].
Para interpretar o PCA baseado em correlação e covariância, pode-se argumentar que:
Como já foi enfatizado acima, a escolha final depende das suposições que você está fazendo. Além disso, a utilidade de qualquer modelo específico depende também do contexto e da finalidade da sua análise. Para citar George EP Box: "Todos os modelos estão errados, mas alguns são úteis".
[1] Wentzell, PD, Andrews, DT, Hamilton, DC, Faber, K. e Kowalski, BR (1997). Análise do componente principal de máxima verossimilhança. Journal of Chemometrics, 11 (4), 339-366.
[2] Wentzell, PD, e Lohnes, MT (1999). Análise de componentes principais de máxima verossimilhança com erros de medição correlacionados: considerações teóricas e práticas. Chemometrics and Intelligent Laboratory Systems, 45 (1-2), 65-85.
[3] Hoefsloot, HC, Verouden, MP, Westerhuis, JA, e Smilde, AK (2006). Escala de máxima verossimilhança (MALS). Journal of Chemometrics, 20 (3‐4), 120-127.
[4] Narasimhan, S., e Shah, SL (2008). Identificação do modelo e estimativa da matriz de covariância de erros a partir de dados ruidosos usando PCA. Prática de Engenharia de Controle, 16 (1), 146-155.
[5] Tipping, ME, e Bishop, CM (1999). Análise probabilística de componentes principais. Jornal da Sociedade Estatística Real: Série B (Metodologia Estatística), 61 (3), 611-622.
Direto e simples: se as escalas forem semelhantes, use cov-PCA; se não, use corr-PCA; caso contrário, é melhor você ter uma defesa para não. Em caso de dúvida, use um teste F para a igualdade das variações (ANOVA). Se falhar no teste F, use corr; caso contrário, use cov.
Os argumentos baseados na escala (para variáveis expressas nas mesmas unidades físicas) parecem bastante fracos. Imagine um conjunto de variáveis (sem dimensão) cujos desvios padrão variam entre 0,001 e 0,1. Comparado a um valor padronizado de 1, ambos parecem ser 'pequenos' e níveis comparáveis de flutuações. No entanto, quando você os expressa em decibéis, isso gera um intervalo de -60 dB contra -10 e 0 dB, respectivamente. Então isso provavelmente seria classificado como uma 'grande variedade' - especialmente se você incluir um desvio padrão próximo a 0, ou seja, menos infinito dB.
Minha sugestão seria fazer AMB um PCA baseado em correlação e covariância. Se os dois fornecerem os mesmos PCs (ou muito semelhantes, o que isso possa significar), você pode ter certeza de que tem uma resposta significativa. Se eles fornecem PCs amplamente diferentes, não usam o PCA, porque duas respostas diferentes para um problema não são uma maneira sensata de resolver perguntas.