본문 바로가기

ML & DM/Dimension Reduction

Loading vs eigenvectors in PCA

http://stats.stackexchange.com/questions/143905/loadings-vs-eigenvectors-in-pca-when-to-use-one-or-another


PCA에서, 당신은 공분산( 또는 상관관계) 행렬을 공분산(상관관계)의 크기 부분(고유값들)과 공분산의 방향부분(고유벡터들)로 나눈다. 그 다음 당신은 아마 고유 벡터가 고유값을 지니고 있을거라 생각한다. 그래서 loadings는 변수들간에 관찰된 공분산/상관관계를 가진 크기로 비교가 가능해진다. 왜냐하면 변수들의 공분산으로부터 도출된것이 변수들과 주성분들사이의 공분산 형태로 반환되기 때문이다. 사실상 Loadings들은 원래 변수들과 단위척도화된 주성분간의 공분산/상관관계들 이다.


Loadings:


  1. 주성분 혹은 요인들을 당신이 해석할수 있게 돕습니다. 왜냐하면 Loadings는 단위척도화된 주성분 혹은 요인들이 한 변수를 정의 혹은"적재(load)"하는 선형결합된 가중치(계수)들 이기 때문입니다.
  2.  Loadings는 때때로 후에 설명력을 이용하기 편하게 변환?( "rotated")됨. (see also) (varimax rotation에 대해선 나중에 따로 포스팅..)
  3. 원래 공분산/상관 행렬을 "반환"한 것이 loadings이다. (see also this thread discussing nuances of PCA and FA in that respect);
  4.  PCA에서, 고유벡터와 Loadings 둘다로부터 성분들의 값들을 계산할수 있는 반면,  요인 분석에서는 Loadings로 부터 요인값들을 계산 할수 있다.
  5. 그리고 무엇보다도, Loading 행렬은 유용하다. 제곱수직합들이 고유값들, 요인의 분산들이고 이것의 제곱 수평합은 요인들에 의해 설명된 변수들의 분산비(결정계수라고 봐도 무방)들이기 때문이다.

PCA와 FA에서 계산된 예제는 여기를 보면 된다. see.


고유벡터들은 단위척도화된 Loadings이다. 그리고 그들은 주성분 혹은 back?에서 변수의 직교변환(rotation)의 계수(the cosines)들이다.

( they are the coefficients (the cosines) of orthogonal transformation (rotation) of variables into principal components or back.)

그러므로 주성분들의 값(표준화 되지 않은)을 고유벡터들과 계산하기 쉽습니다. 그것 외에는 고유벡터들의 사용은 제한됩니다.


비록은 고유 벡터와 loadings는  biplot 상의 데이터의 열(변수)들을 나타내는 같은 포인트의 좌표를 일반화하는 두가지 다른 방법일 뿐일지라도, 두개를 섞어 사용하는것은 좋지 않다. 이 답은 여기를 보면 자세히  알수 있다. See also.

고유벡터는 코사인의 방향을 나타내줌. 여기서 코사인은 PCA가 도달할 직교 변환(rotation)한 각도를 나타냄... (뭔말?) 무튼 변환한 어떤 방향을 나타낸다.

그러나 Loading은 변환된 데이터의 변동성 혹은 규모에 대한 정보를 가진 고유벡터이다. 

loadings는 성분들과 변수들간의 연합계수들이다. loadings들은 변수들 간의 연합계수들과 직접적으로 비교가능하다. 

고유벡터와 Loadings가 성분들로 변수들을 예측하는 것에서 회귀계수를 제공한다는 측면에서는 유사하다( 거꾸로는 아님!).

고유벡터는 일반화하지 않은 raw한 성분값으로 변수들을 예측하는 계수들 이다. 그러나 Loadings는 척도화된(일반화된) 요인값들로 변수들을 예측하는 계수들이다. (의심할 여지 없이, loadings는 계속적으로 변동성에 대한 정보를 촉진시키고, 성분들은 변동성을 잃는다.)

고유 벡터와 loadings를 섞어 쓰지 말아야 하는 또 하나의 이유는 PCA를 제외한 다른 차원축소 기법들 (요인분석의 몇몇 형태들 같은)이 고유벡터들을 구하지 않고 바로 loadings를 직접적으로 계산하기 때문이다. 고유벡터들은 고유값 분해 또는 단일값(singular-value)?분해의 산물이다. 다시말해 몇몇 요인 분석의 형태들은 이러한 분해들을 쓰지 않고, 다른 방법으로 loading을 구한다.

마지막으로 당신이 요소들 또는 요인들을 해석하는 것은 loading으로 하는 것이다.(만약 당신이 그것들을 해석할 필요가 있을때). Loadings는 한 변수에 대한 성분의 영향도에 대한 것이다. PCA(또는 요인분석)에서 요소/요인은 그 자신을 변수에 적재(load)시킨다. 그러나 반대로는 아니다. (변수 자체가 요소 요인에 적재를 시키진 않음.)


Factor / component Loading에 대한 설명은 여기에 있는 댓글에도 잘 되있으니 참고하기 바란다.

'ML & DM > Dimension Reduction' 카테고리의 다른 글

Clustering 과 Dimensionality Reduction의 차이  (0) 2016.01.28
Dimension Reduction  (0) 2016.01.27