Compreensão geométrica do PCA no espaço sujeito (duplo)


19

Estou tentando obter uma compreensão intuitiva de como a análise de componentes principais (PCA) funciona no espaço sujeito (duplo) .

Considere o conjunto de dados 2D com duas variáveis, x1 e x2 , e n pontos de dados (a matriz de dados X é n×2 e assume-se centralizada). A apresentação usual da PCA é que nós consideramos n pontos em R2 , anote a 2×2 matriz de covariância, e encontrar seus autovetores e autovalores; o primeiro PC corresponde à direção da variação máxima, etc. Aqui está um exemplo com a matriz de covariância C=(4222). Linhas vermelhas mostram autovetores escalados pelas raízes quadradas dos respectivos autovalores.

PCA no espaço de amostra

Agora considere o que acontece no espaço de assunto (eu aprendi esse termo com @ttnphns), também conhecido como espaço duplo (o termo usado no aprendizado de máquina). Este é um espaço dimensional onde as amostras de nossas duas variáveis ​​(duas colunas de X ) formam dois vetores x 1 e x 2 . O comprimento ao quadrado de cada vetor variável é igual à sua variância, o cosseno do ângulo entre os dois vetores é igual à correlação entre eles. Essa representação, a propósito, é muito padrão em tratamentos de regressão múltipla. No meu exemplo, o espaço do assunto se parece com isso (apenas mostro o plano 2D estendido pelos dois vetores variáveis):nXx1x2

PCA no espaço de assunto 1

Os componentes principais, sendo linear combinações das duas variáveis, irá formar dois vectores e p 2 no mesmo plano. Minha pergunta é: qual é a compreensão / intuição geométrica de como formar vetores variáveis ​​de componentes principais usando os vetores variáveis ​​originais nesse gráfico? Dado x 1 e x 2 , que procedimento geométrico produziria p 1 ?p1p2x1x2p1


Abaixo está o meu entendimento parcial atual.

Antes de tudo, eu posso calcular os principais componentes / eixos através do método padrão e plotá-los na mesma figura:

PCA no espaço sujeito 2

Além disso, podemos observar que é escolhido de tal forma que a soma das distâncias ao quadrado entre x i (vetores azuis) e suas projeções em p 1 é mínima; essas distâncias são erros de reconstrução e são mostradas com linhas tracejadas pretas. Equivalentemente, p 1 maximiza a soma dos comprimentos ao quadrado de ambas as projeções. Isso especifica totalmente p 1 e, é claro, é completamente análogo à descrição semelhante no espaço primário (veja a animação na minha resposta para Compreender a análise de componentes principais, vetores próprios e valores próprios ). Veja também a primeira parte da resposta @ ttnphns'es aqui .p1xip1p1p1

No entanto, isso não é geométrico o suficiente! Ele não me diz como encontrar esse e não especifica seu comprimento.p1

Meu suposição é de que , X 2 , p 1 e p 2 todos encontram-se em uma elipse centrado em 0 com p 1 e p 2 sendo os seus eixos principais. Aqui está como fica no meu exemplo:x1x2p1p20p1p2

insira a descrição da imagem aqui

Q1: como provar isso? A demonstração algébrica direta parece ser muito entediante; como ver que esse deve ser o caso?

Mas existem muitas elipses diferentes centradas em e passando por x 1 e x 2 :0x1x2

insira a descrição da imagem aqui

P2: O que especifica a elipse "correta"? Meu primeiro palpite foi que é a elipse com o maior eixo principal possível; mas parece estar errado (existem elipses com o eixo principal de qualquer comprimento).

Se houver respostas para Q1 e Q2, também gostaria de saber se elas generalizam para o caso de mais de duas variáveis.


É verdade que existem muitas elipses possíveis centralizadas na origem (onde x1 e x2 se cruzam) e fazem contato com as extremidades de x1 e x2? Eu teria pensado que haveria apenas um. Certamente pode haver muitos se você relaxar 1 desses 3 critérios (centro e 2 extremidades).
gung - Restabelece Monica

Existem muitas elipses centradas na origem que passam por dois vetores. Mas para vetores não colineares e ( c , d ), existe apenas um que é o círculo unitário na base dupla. É o locus de x ( a , b ) + y ( c , d ) onde | ( a c b d ) - 1 ( x y ) | 2 = 1.(a,b)(c,d)x(a,b)+y(c,d)
|(acbd)1(xy)|2=1.
Muito pode ser aprendido com seus eixos principais.
whuber

3
variable space (I borrowed this term from ttnphns)- @amoeba, você deve estar enganado. As variáveis ​​como vetores no espaço n-dimensional (originalmente) são chamadas de espaço sujeito (n sujeitos como eixos "definiram" o espaço enquanto as variáveis ​​p o "estendem"). O espaço variável é, pelo contrário, o inverso - ou seja, o gráfico de dispersão usual. É assim que a terminologia é estabelecida nas estatísticas multivariadas. (Em caso de aprendizagem de máquina é diferente - eu não sei que - em seguida, muito pior é para os alunos.)
ttnphns

Observe que ambos são espaços vetoriais: vetores (= pontos) é o que se estende, eixos é o que define as direções e ostenta entalhes de medição. Observe também a dialética: ambos os "espaços" são na verdade o mesmo espaço (apenas formulados de maneira diferente para a finalidade atual). É visto, por exemplo, na última foto nesta resposta . Quando você sobrepõe as duas formulações, obtém o biplot, ou espaço duplo.
ttnphns

My guess is that x1, x2, p1, p2 all lie on one ellipseQual poderia ser o auxílio heurístico da elipse aqui? Eu duvido.
ttnphns

Respostas:


5

Todos os resumos de exibidos na pergunta dependem apenas de seus segundos momentos; ou, de modo equivalente, na matriz X ' X . Porque estamos pensando em X como um ponto de nuvem ponto --cada é uma linha de X --nós pode perguntar o que simples operações sobre esses pontos preservar as propriedades de X ' X .XXXXXXX

Um é para a esquerda-multiplicam por um n × n matriz de L , o qual iria produzir uma outra n × 2 matriz U X . Para que isso funcione, é essencial queXn×nUn×2UX

XX=(UX)UX=X(UU)X.

A igualdade é garantida quando é o n × n matriz identidade: isto é, quando U é ortogonal .UUn×nU

É bem conhecido (e fácil demonstrar) que as matrizes ortogonais são produtos de reflexões Euclidiana e rotações (eles formam um grupo de reflexão em ). Ao escolher rotações com sabedoria, podemos simplificar dramaticamente X . Uma idéia é focar em rotações que afetam apenas dois pontos na nuvem por vez. Estes são particularmente simples, porque podemos visualizá-los.RnX

Especificamente, deixe e ( X j , y j ) ser dois pontos diferentes de zero distintas na nuvem, que constituem linhas de i e j de X . Uma rotação do espaço coluna R n afectando apenas estes dois pontos converte-os em(xi,yi)(xj,yj)ijXRn

{(xi,yi)=(cos(θ)xi+sin(θ)xj,cos(θ)yi+sin(θ)yj)(xj,yj)=(sin(θ)xi+cos(θ)xj,sin(θ)yi+cos(θ)yj).

O que isso significa é desenhar os vetores e ( y i , y j ) no plano e girá-los pelo ângulo θ . (Observe como as coordenadas são misturadas aqui! Os x combinam e os y combinam. Assim, o efeito dessa rotação em R n geralmente não se parece com uma rotação dos vetores ( x i , y i ) e ( x j , y j )(xi,xj)(yi,yj)θxyRn(xi,yi)(xj,yj) como desenhado em R2 ).

Ao escolher o ângulo certo, podemos zerar qualquer um desses novos componentes. Para ser concreto, vamos escolher para queθ

{cos(θ)=±xixi2+xj2sin(θ)=±xjxi2+xj2.

Isso faz . Escolha o sinal para fazer y j0 . Vamos chamar esta operação, que muda pontos i e j na nuvem representado por X , γ ( i , j ) .xj=0yj0ijXγ(i,j)

A aplicação recursiva de a X fará com que a primeira coluna de X seja diferente de zero somente na primeira linha. Geometricamente, teremos movido todos, exceto um ponto na nuvem, para o eixo y . Agora podemos aplicar uma única rotação, potencialmente envolvendo as coordenadas 2 , 3 , , n em R n , para comprimir essas nγ(1,2),γ(1,3),,γ(1,n)XXy2,3,,nRn ponto até um único ponto. Equivalentemente, X foi reduzido para uma forma de blocon1X

X=(x1y10z),

com e z ambos os vetores de coluna com coordenadas n - 1 , de tal maneira que0zn1

XX=((x1)2x1y1x1y1(y1)2+||z||2).

Essa rotação final reduz ainda mais à sua forma triangular superiorX

X=(x1y10||z||0000).

Com efeito, podemos agora compreender em termos de muito mais simples 2 × 2 da matriz ( x ' 1 y ' 1 0 | | z | | ) criado pelos dois últimos pontos diferentes de zero de pé esquerdo.X2×2(x1y10||z||)

Para ilustrar, tirei quatro pontos de iid de uma distribuição normal bivariada e arredondei seus valores para

X=(0.090.120.310.630.740.231.80.39)

Essa nuvem de pontos inicial é mostrada à esquerda da próxima figura usando pontos pretos sólidos, com setas coloridas apontando da origem para cada ponto (para nos ajudar a visualizá-los como vetores ).

Figure

γ(1,2),γ(1,3), and γ(1,4) results in the clouds shown in the middle. At the very right, the three points lying along the y axis have been coalesced into a single point, leaving a representation of the reduced form of X. The length of the vertical red vector is ||z||; the other (blue) vector is (x1,y1).

Notice the faint dotted shape drawn for reference in all five panels. It represents the last remaining flexibility in representing X: as we rotate the first two rows, the last two vectors trace out this ellipse. Thus, the first vector traces out the path

(1)θ  (cos(θ)x1,cos(θ)y1+sin(θ)||z||)

while the second vector traces out the same path according to

(2)θ  (sin(θ)x1,sin(θ)y1+cos(θ)||z||).

We may avoid tedious algebra by noting that because this curve is the image of the set of points {(cos(θ),sin(θ)):0θ<2π} under the linear transformation determined by

(1,0)  (x1,0);(0,1)  (y1,||z||),

it must be an ellipse. (Question 2 has now been fully answered.) Thus there will be four critical values of θ in the parameterization (1), of which two correspond to the ends of the major axis and two correspond to the ends of the minor axis; and it immediately follows that simultaneously (2) gives the ends of the minor axis and major axis, respectively. If we choose such a θ, the corresponding points in the point cloud will be located at the ends of the principal axes, like this:

Figure 2

Because these are orthogonal and are directed along the axes of the ellipse, they correctly depict the principal axes: the PCA solution. That answers Question 1.


The analysis given here complements that of my answer at Bottom to top explanation of the Mahalanobis distance. There, by examining rotations and rescalings in R2, I explained how any point cloud in p=2 dimensions geometrically determines a natural coordinate system for R2. Here, I have shown how it geometrically determines an ellipse which is the image of a circle under a linear transformation. This ellipse is, of course, an isocontour of constant Mahalanobis distance.

Another thing accomplished by this analysis is to display an intimate connection between QR decomposition (of a rectangular matrix) and the Singular Value Decomposition, or SVD. The γ(i,j) are known as Givens rotations. Their composition constitutes the orthogonal, or "Q", part of the QR decomposition. What remained--the reduced form of X--is the upper triangular, or "R" part of the QR decomposition. At the same time, the rotation and rescalings (described as relabelings of the coordinates in the other post) constitute the DV part of the SVD, X=UDV. The rows of U, incidentally, form the point cloud displayed in the last figure of that post.

Finally, the analysis presented here generalizes in obvious ways to the cases p2: that is, when there are just one or more than two principal components.


Though your answer may be exemplary on it own it is unclear - to me - how it relates to the question. You are speaking throughout about the data cloud X (and vectors you rotate are data points, rows of X). But the question was about the reduced subject space. In other words, we don't have any data X, we have only 2x2 covariance or scatter matrix X'X.
ttnphns

(cont.) We represent the 2 variables summarized by it as 2 vectors with lengths = sqrt(diagonal elements) and angle = their correlation. Then the OP askes how can we purely geometrically solve for the principal components. In other words, OP wants to explain geometrically eigendecomposition (eigenvalues & eigenvectors or, better, loadings) of 2x2 symmetric covariance matrix.
ttnphns

(cont.) Please look on the second picture there. What the OP of the current question seeks for is to find geometric (trigonometric etc) tools or tricks to draw the vectors P1 and P2 on that pic, having only vectors X and Y as given.
ttnphns

1
@ttnphns. It doesn't matter what the starting point is: the first half of this answer shows that you can reduce any point cloud X to a pair of points which contain all the information about XX. The second half demonstrates that pair of points is not unique, but nevertheless each lies on the same ellipse. It gives an explicit construction of that ellipse beginning with any two-point representation of XX (such as the pair of blue vectors shown in the question). Its major and minor axes yield the PCA solution (the red vectors).
whuber

1
Thanks, I'm beginning to understand your thought. (I wish you added subtitles / synopsis right in your answer about the two "halves" of it, just to structure it for a reader.)
ttnphns
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.