PCA 바이 플롯에서 화살표 배치


18

JavaScript에서 주성분 분석 (PCA)을위한 이중 플롯을 구현하려고합니다. 내 질문은 데이터 행렬의 단일 벡터 분해 (SVD)의 출력 에서 화살표의 좌표를 어떻게 결정 합니까?U,V,D

다음은 R이 생산 한 Biplot의 예입니다.

biplot(prcomp(iris[,1:4]))

홍채 데이터 세트의 Biplot

BiplotWikipedia 기사에서 찾아 보았지만별로 유용하지는 않습니다. 또는 맞습니다. 확실하지 않습니다.


3
Biplot은 U 값과 V 값을 모두 표시하는 오버레이 산점도입니다. 또는 UD와 V. 또는 U와 VD '. 또는 UD와 VD '. PCA의 관점에서 UD는 원시 주성분 점수라고하고 VD '는 가변 성분 적재라고합니다.
ttnphns

2
좌표의 스케일은 처음에 데이터를 정규화하는 방법에 따라 다릅니다. 예를 들어, PCA에서 하나의 정규화는 데이터를 sqrt (r) 또는 sqrt (r-1)로 나눕니다 [r은 행 수]. 그러나 단어의 좁은 의미에서 진정한 "biplot"에서는 일반적으로 데이터를 sqrt (rc) [c는 열 수]로
나눈

왜 의해 데이터를 확장해야 합니까? 1n1
ktdrv

1
@ttnphns : 위의 의견에 따라 PCA biplot normalizations의 개요와 같은 것을 제공하기 위해이 질문에 대한 답변을 썼습니다. 그러나이 주제에 대한 나의 지식은 순전히 이론적이며 나는 당신이 나보다 이중 자에 대한 실제 경험이 훨씬 많다고 생각합니다. 그래서 의견에 감사드립니다.
amoeba는

1
@Aleksandr을 구현하는 한 가지 이유는 수행중인 작업을 정확히 알고 있기 때문입니다. 보시다시피, 하나가 실행될 때 정확히 어떤 일이 발생하는지 알아내는 것은 쉽지 않습니다 biplot(). 또한 단지 몇 줄의 코드 만 필요한 R-JS 통합을 방해하는 이유도 있습니다.
amoeba는 Reinstate Monica라고

답변:


40

PCA biplot을 생성하는 방법은 여러 가지가 있으므로 질문에 대한 고유 한 답변이 없습니다. 다음은 간단한 개요입니다.

데이터 행렬 는 행으로 데이터 포인트를 가지며 중심에 있다고 가정합니다 (즉, 열 평균은 모두 0 임). 현재로서는 표준화되었다고 가정 하지 않습니다 . 즉, 상관 행렬이 아닌 공분산 행렬에 대한 PCA를 고려합니다. PCA는 단일 값 분해 합니다 . SVD와 PCA의 관계에 대한 자세한 내용은 여기 확인할 수 있습니다 . SVD를 사용하여 PCA를 수행하는 방법?Xn

X=USV,

PCA biplot에서 두 개의 첫 번째 주요 구성 요소는 산점도로 표시됩니다. 즉, 의 첫 번째 열은 두 번째 열에 대해 표시됩니다. 그러나 정규화는 다를 수 있습니다. 예를 들어 다음을 사용할 수 있습니다.U

  1. 열 : 이것들은 단위 제곱의 합으로 스케일링 된 주성분입니다.U
  2. 의 열 이러한 표준화 주성분 (단위 변화);n1U
  3. 열 : "원시"주성분 (주 방향 투영)입니다.US

또한 원래 변수는 화살표로 표시됩니다. 즉 , 번째 화살표 끝점 의 좌표 는 의 첫 번째 및 두 번째 열의 번째 값으로 제공됩니다 . 그러나 다시 한 번 다른 정규화를 선택할 수 있습니다.(x,y)iiV

  1. 열 : 여기에 어떤 해석이 있는지 모르겠습니다.VS
  2. 의 열VS/n1
  3. V

Fisher Iris 데이터 세트의 모든 모습은 다음과 같습니다.

Fisher Iris biplots, 공분산에 대한 PCA

9XUSαβVS(1α)/β9 "적절한 이중 도표": 즉 위의 하위 그림과 아래의 하위 그림의 조합입니다.

[어떤 조합을 사용하든, 화살표와 데이터 포인트가 대략 같은 스케일로 나타나도록 임의의 일정한 계수로 화살표를 스케일링해야 할 수도 있습니다.]

VS/n1Un1

이 [특별한 선택]은 물론 다변량 관측 값의 해석을 해석하는 데 가장 유용한 그래픽 지원을 제공 할 것입니다.

USV

US

biplotUVSbiplot0.8biplotn/(n1)1R의 PCA biplot에서 기본 변수의 화살표 .)

상관 행렬의 PCA

X1

Fisher Iris biplots, PCA 상관 관계

1R=1


더 읽을 거리 :


1
+6, 이것은 3 개 이상의 공표를받을 자격이 있습니다.
gung-복직 모니카

3
? ca :: plot.ca는 다른 가능한 정규화에 대한 훌륭한 개요를 가지고 있습니다. 행 주체 (형식 biplot = 주 좌표의 행, 표준 좌표의 열), col 주체 (공분산 biplot = 주 좌표의 열, 행) 표준 좌표에서), 대칭 이중도 (단일 값 (고유 값의 제곱근)와 동일한 분산을 갖도록 크기가 조정 된 행 및 열), rowgab 및 colgab (표준 좌표의 주 좌표 및 열에 해당 점의 질량을 곱한 값 또는 그 반대) 및 rowgreen 및 colgreen) (rowgab 및 colgab 그러나 SQRT (대중과)
톰 Wenseleers

2
이 마지막 것들은 "기여 비표"라고도합니다. M. Greenacre "Biplots in practise"의 저서도이 모든 것에 대한 훌륭한 개요를 제공합니다. 이러한 스케일링 방법은 SVD에 기초한 모든 방법에 적용된다 (즉, CA 이중도, PCA 이중도, LDA 이중도 등). 작동 방식의 예는 소스 코드 ca ::: plot.ca 및 "map"인수를 참조하십시오.
Tom Wenseleers

1
n1

1
@AntoniParellada 편집하고 몇 개의 링크를 삽입했습니다.
amoeba는 Reinstate Monica가
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.