Quais são as pontuações dos componentes principais?


71

Quais são as pontuações dos componentes principais (pontuações PC, pontuações PCA)?


O chef tem uma resposta resumida aqui -> stats.stackexchange.com/questions/146/… . HTH
Roman Luštrik



Respostas:


66

Primeiro, vamos definir uma pontuação.

John, Mike e Kate obtêm as seguintes porcentagens para os exames de Matemática, Ciências, Inglês e Música da seguinte maneira:

      Maths    Science    English    Music    
John  80        85          60       55  
Mike  90        85          70       45
Kate  95        80          40       50

Nesse caso, existem 12 pontuações no total. Cada pontuação representa os resultados do exame para cada pessoa em um determinado assunto. Portanto, uma pontuação neste caso é simplesmente uma representação de onde uma linha e coluna se cruzam.

Agora vamos definir informalmente um componente principal.

Na tabela acima, você pode plotar facilmente os dados em um gráfico 2D? Não, porque existem quatro assuntos (o que significa quatro variáveis: matemática, ciências, inglês e música), ou seja:

  • Você poderia traçar dois assuntos em exatamente da mesma forma que você faria com e coordenadas em um gráfico 2D.yxy
  • Você poderia até mesmo traçar três indivíduos na mesma maneira que você traçar , e em um gráfico 3D (embora isso geralmente é uma prática ruim, porque alguma distorção é inevitável na representação 2D de dados 3D).y zxyz

Mas como você traçaria 4 assuntos?

No momento, temos quatro variáveis, cada uma representando apenas um assunto. Portanto, um método para contornar isso pode ser, de alguma forma, combinar os sujeitos em talvez apenas duas novas variáveis ​​que podemos traçar. Isso é conhecido como dimensionamento multidimensional .

A análise de componentes principais é uma forma de dimensionamento multidimensional. É uma transformação linear das variáveis ​​em um espaço dimensional inferior que retém a quantidade máxima de informações sobre as variáveis. Por exemplo, isso significaria que poderíamos examinar os tipos de assuntos em que cada aluno talvez seja mais adequado.

Um componente principal é, portanto, uma combinação das variáveis ​​originais após uma transformação linear. Em R, é o seguinte:

DF<-data.frame(Maths=c(80, 90, 95), Science=c(85, 85, 80), English=c(60, 70, 40), Music=c(55, 45, 50))
prcomp(DF, scale = FALSE)

O que lhe dará algo parecido com isto (dois primeiros componentes principais apenas por uma questão de simplicidade):

                PC1         PC2
Maths    0.27795606  0.76772853 
Science -0.17428077 -0.08162874 
English -0.94200929  0.19632732 
Music    0.07060547 -0.60447104 

A primeira coluna aqui mostra coeficientes de combinação linear que define o componente principal # 1 e a segunda coluna mostra coeficientes para o componente principal # 2.

Então, o que é uma pontuação de componente principal?

É uma pontuação da tabela no final deste post (veja abaixo).

A saída acima de R significa que agora podemos plotar a pontuação de cada pessoa em todos os assuntos em um gráfico 2D da seguinte maneira. Primeiro, precisamos centralizar as variáveis ​​originais que minha coluna subtraindo significa:

      Maths    Science    English    Music    
John  -8.33       1.66       3.33       5  
Mike   1.66       1.66      13.33      -5
Kate   6.66       -3.33    -16.66       0

E então, para formar combinações lineares para obter as pontuações PC1 e PC2 :

      x                                                    y
John -0.28*8.33 + -0.17*1.66 + -0.94*3.33  + 0.07*5   -0.77*8.33 + -0.08*1.66 + 0.19*3.33   + -0.60*5 
Mike 0.28*1.66  + -0.17*1.66 + -0.94*13.33 + -0.07*5   0.77*1.66 + -0.08*1.66 + 0.19*13.33  + -0.60*5
Kate 0.28*6.66  + 0.17*3.33  + 0.94*16.66  + 0.07*0    0.77*6.66 +  0.08*3.33 + -0.19*16.66 + -0.60*0

O que simplifica para:

        x       y
John   -5.39   -8.90
Mike  -12.74    6.78
Kate   18.13    2.12

Existem seis pontuações dos componentes principais na tabela acima. Agora você pode plotar as pontuações em um gráfico 2D para ter uma idéia do tipo de assuntos em que cada aluno talvez seja mais adequado.

A mesma saída pode ser obtida em R digitando prcomp(DF, scale = FALSE)$x.

EDIT 1: Hmm, eu provavelmente poderia ter pensado em um exemplo melhor, e há mais do que o que eu coloquei aqui, mas espero que você entenda.

EDIT 2: crédito total para @drpaulbrewer por seu comentário ao melhorar esta resposta.


10
O esforço é louvável - MAS - nem o PC1 nem o PC2 informam quem foi o melhor em todos os assuntos. Para isso, todos os coeficientes dos sujeitos do PC teriam que ser positivos. O PC1 possui pesos positivos para matemática e música, mas negativos para ciências e inglês. O PC2 possui pesos positivos para matemática e inglês, mas negativos para ciência e música. O que os PCs dizem é onde está a maior variação do conjunto de dados. Então, ponderando os assuntos pelos coeficientes no PC1 e usando isso para pontuar os alunos, você obtém a maior variação ou difusão nos comportamentos dos alunos. Ele pode classificar tipos, mas não desempenho.
Paulo

+1 bom comentário, felicidades. É claro que você está correto, eu deveria ter escrito isso melhor e agora editado a linha ofensiva para deixar claro que espero.
Tony Breyal

Você poderia padronizar os vars, portanto, calcular a soma, a fim de ver quem é o melhor, ou se preferir, em R:apply(dtf, 1, function(x) sum(scale(x)))
aL3xa

2
@JohnPrior As quatro variáveis ​​(colunas) são Matemática, Ciências, Inglês e Música, e as linhas representam indivíduos. O termo "sujeito" às vezes se torna ambíguo porque, há cinco anos, escolhi um exemplo terrível para uma resposta.
Tony Breyal 25/09

11
@ Tony, fui adiante e editei sua resposta para centralizar as variáveis ​​antes de calcular as pontuações. Agora, as pontuações computadas se ajustam aos prcompresultados. Antes disso não.
Ameba diz Reinstate Monica

23

A análise de componentes principais (PCA) é uma abordagem popular que analisa a variação quando se lida com dados multivariados. Você tem variáveis ​​aleatórias X1, X2, ... Xn, todas correlacionadas (positiva ou negativamente) em graus variados, e deseja entender melhor o que está acontecendo. O PCA pode ajudar.

O que o PCA fornece é uma mudança de variável em Y1, Y2, ..., Yn (ou seja, o mesmo número de variáveis), que são combinações lineares dos Xs. Por exemplo, você pode ter Y1 = 2,1 X1 - 1,76 X2 + 0,2 X3 ...

O Ys é a propriedade legal de que cada um deles tem correlação zero entre si. Melhor ainda, você os obtém em ordem decrescente de variação. Portanto, Y1 "explica" uma grande parte da variação das variáveis ​​originais, Y2 um pouco menos e assim por diante. Geralmente após os primeiros Ys, as variáveis ​​tornam-se um tanto sem sentido. A pontuação PCA para qualquer um dos Xi é apenas o coeficiente em cada um dos Ys. No meu exemplo anterior, a pontuação para X2 no primeiro componente principal (Y1) é 1,76.

A maneira como o PCA faz essa mágica é computando autovetores da matriz de covariância.

Para dar um exemplo concreto, imagine X1, ... X10 são alterações nos rendimentos de títulos do Tesouro de 1 ano, 2 anos, ..., 10 anos durante um período de tempo. Quando você calcula o PCA, geralmente descobre que o primeiro componente possui pontuações para cada ligação do mesmo sinal e aproximadamente o mesmo sinal. Isso indica que a maior parte da variação no rendimento dos títulos vem de tudo que se move da mesma maneira: "mudanças paralelas" para cima ou para baixo. O segundo componente normalmente mostra "inclinação" e "achatamento" da curva e possui sinais opostos para X1 e X10.


Como um valor Y mais alto "explica" um pedaço maior da variação? É assim que o PCA é calculado? Se então eu acho que eu tenho uma outra pergunta para postar;)
vrish88

11
Isso mesmo - se a variação do PC for, digamos, 3.5, então o PC "explica" a variabilidade de 3,5 variáveis ​​do conjunto inicial. Como os PCs são aditivos,, PC1 > PC2 > ... > PCne a soma de suas variações é igual à soma das variações do conjunto de variáveis ​​inicial, uma vez que o PCA é computado na matriz de covariância, ou seja, as variáveis ​​são padronizadas (SD = 1, VAR = 1).
aL3xa

6

Digamos que você tenha uma nuvem de N pontos em, digamos, 3D (que pode ser listado em uma matriz 100x3). Em seguida, a análise de componentes principais (PCA) ajusta um elipsóide de orientação arbitrária nos dados. A pontuação do componente principal é o comprimento dos diâmetros do elipsóide.

Na direção em que o diâmetro é grande, os dados variam muito, enquanto na direção em que o diâmetro é pequeno, os dados variam muito. Se você deseja projetar dados Nd em um gráfico de dispersão em 2-d, plote-os ao longo dos dois maiores componentes principais, porque com essa abordagem você exibe a maior parte da variação nos dados.


Haveria algum benefício ou você poderia plotá-los em um gráfico de dispersão em 3-d?
vrish88

6

Eu gosto de pensar nas pontuações dos componentes principais como "basicamente sem sentido" até você dar algum significado a elas. Interpretar as pontuações dos PCs em termos de "realidade" é um negócio complicado - e realmente não pode haver uma maneira única de fazê-lo. Depende do que você sabe sobre as variáveis ​​específicas que estão entrando no PCA e como elas se relacionam entre si em termos de interpretações.

No que diz respeito à matemática, eu gosto de interpretar as pontuações do PC como as coordenadas de cada ponto, com relação aos eixos componentes principais. Então, nas variáveis ​​brutas você temxi =(x1i,x2i,,xpi)x1x1izi =(z1i,z2i,,zpi)=A(xix¯)Ap×px¯

Então você pode pensar nos autovetores como descrevendo onde estão as "linhas retas" que descrevem os PCs. Em seguida, as pontuações dos componentes principais descrevem onde cada ponto de dados se encontra em cada linha reta, em relação ao "centríodo" dos dados. Você também pode pensar nas pontuações do PC em combinação com os pesos / autovetores como uma série de previsões de classificação 1 para cada um dos pontos de dados originais, que têm a forma:

x^ji(k)=x¯j+zkiAkj

x^ji(k)ijk


4

Os principais componentes de uma matriz de dados são os pares autovetor-autovalor de sua matriz de variância-covariância. Em essência, eles são as peças correlacionadas da variação. Cada uma é uma combinação linear das variáveis ​​para uma observação - suponha que você avalie w, x, y, z em cada grupo de assuntos. Seu primeiro PC pode parecer algo como

0,5w + 4x + 5y - 1,5z

As cargas (vetores próprios) aqui são (0,5, 4, 5, -1,5). A pontuação (autovalor) de cada observação é o valor resultante quando você substitui o observado (w, x, y, z) e calcula o total.

Isso é útil quando você projeta coisas nos componentes principais (para, por exemplo, detecção de outlier), porque você apenas plota as pontuações em cada uma delas, como faria com outros dados. Isso pode revelar muito sobre seus dados se grande parte da variação estiver correlacionada (== nos primeiros PCs).


Para maior clareza, quando você diz "suponha que você mede w, x, y, z em cada um dos vários assuntos", você não está se referindo aos "assuntos" da resposta de @TonyBreyal acima, está? Você está usando a palavra "assuntos" para ser sinônimo de "observações" / "registros" / "linhas de dados"?
Ryan Chase

4

i=1,,Nj=1,,M

Zi,1=ci,1Yi,1+ci,2Yi,2+...+ci,MYi,M

cY

Z1=(Z1,1,...,ZN,1

Uma saída do R no PCA (um exemplo falso) se parece com isso. PC1, PC2 ... são componentes principais 1, 2 ... O exemplo abaixo está mostrando apenas os 8 primeiros componentes principais (em 17). Você também pode extrair outros elementos do PCA, como carregamentos e pontuações.

Importance of components:
                          PC1    PC2    PC3    PC4    PC5    PC6    PC7    PC8
Standard deviation     1.0889 1.0642 1.0550 1.0475 1.0387 1.0277 1.0169 1.0105
Proportion of Variance 0.0697 0.0666 0.0655 0.0645 0.0635 0.0621 0.0608 0.0601
Cumulative Proportion  0.0697 0.1364 0.2018 0.2664 0.3298 0.3920 0.4528 0.5129

11
Desculpe, mas o que são carregamentos (c na sua fórmula) e como você os determina?
precisa saber é o seguinte

@ vrish88 Eu acredito que os c são os "carregamentos" dos autovetores. Meu entendimento é que esses são essencialmente apenas os pesos que você está atribuindo a cada uma das variáveis. Tim explica isso bem em sua resposta.
Ryan Chase

3

As pontuações dos componentes principais são um grupo de pontuações obtidas após uma Análise de Componentes Principais (PCA). No PCA, as relações entre um grupo de pontuações são analisadas de modo que um número igual de novas variáveis ​​"imaginárias" (aka componentes principais) seja criado. A primeira dessas novas variáveis ​​imaginárias está maximamente correlacionada com todo o grupo original de variáveis. O próximo é um pouco menos correlacionado, e assim por diante até o ponto em que se você usasse todos os principais componentes pontuando para prever qualquer variável do grupo inicial, seria capaz de explicar toda a sua variação. A maneira pela qual o PCA prossegue é complexa e possui certas restrições. Entre eles, está a restrição de que a correlação entre dois componentes principais (variáveis ​​imaginárias) seja zero; assim não

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.