MATH/차원 축소와 요인 분석(PCA,FA)

차원축소와 요인 분석-PCA(주성분 분석)

mjmjpp 2023. 11. 11. 19:56

출처: https://youtu.be/TesmO5Sq1YQ?si=WJ7kXEQYR746BJLF

 

차원축소( demension reduction)

 

#차원 축소-변수를 줄이는 것

#변수를 줄여야 하는 이유

-변수가 너무 많은 경우 이를 다 사용하는 것은 불가능 혹은 불필요

-가능성은 낮으나 변수의 개수가 관찰값의 개수보다 많으면 분석이 거의 불가능

-너무 많은 변수의 사용은 불필요하거나 효율적이지 않음

 

#차원 축소를 어떻게 할 것인가

-상관관계가 중요(=상관관계가 높은 변수들을 묶어보자)

-더 정확하게는 variance-covariance matrix(공분산행렬)을 이용

-covariance matrixcorrelation matrix(상관관계)와 유사

-말 그대로 “co”는 함께(together)의 의미로 두 변수의 공변(covariate)량과 관계가 있음

 

#차원 축소의 종류

-PCA(principal component analysis) : 주성분 분석

-FA(Factor Analysis): 요인 분석

- EFA(exploratory factor analysis): 탐색적 요인 분석

- CFA(confirmatory factor analysis): 확인적 요인 분석

 

#차원축소가 굳이 필요한 또 다른 이유

-차원축소는 심리 학과에서 많이 개발 사용됨-> 요인 분석을 매우 많이 사용

 

#심리학의 연구대상의 공통점

-눈에 보이지 않음(IQ, 성격, 행복, 만족 등)

-눈에 보이지 않는 것을 어떻게 측정할 것인가?

 -IQ,성격,행복,만족 등은 정말 존재하는가/ IQ테스트 문제지와 IQ의 관계

#원인은 unobserved

#차원 축소의 장점

-관측이 보이지 않는 (unobservable)대상을 측정하기 위해 관측이 가능한 보이는(observable)것을 이용해 심리학 등의 연구가 가능함

-너무 많은 변수를 줄여주어 보다 적은 변수로도 원하는 대상을 측정할 수 있도록 함

 

#차원 축소의 단점

-만능이 아님

-설명 불가능한 경우가 많고 연구자의 의도대로 결과를 조절 가능

-정보의 손실이 발생(분산을 버리는 경우 존재)

-직관적인 이해가 쉽지 않음

 

#여러개의변수(차원)이 데이터로 존재할 경우

-서로 간에 상관관계가 높은 변수들이 존재

-직관적으로 이 상관관계가 높은 변수들을 하나로 묶을 수 잇음

-변수들을 묶을 때 어떤 목적과 기준을 가지고 묶느냐

 

#변수들을 묶는다고 가정할때 중요한것

-원래 데이터의 분산을 최대한 유지하는 것이 중요

-분산이 말도 안되게 줄어들거나 날아갈 경우

-우리는 원데이터와 다른 새로운 데이터를 만든 것이됨

예시)

 

 

 

#차원축소와 분산

#두 분석의 가장 큰 차이점

-unique variance 가 있다 없다

#둘 중  어떤 것이 더 좋은 분석?

-분석의 목적에 따라 다름

#두 분석의 결과가 많이 다른가?

-근소한 차이가 있어 보이나 결과가 분명히 다름

 

#상관관계와 공분산

-차원축소에 사용되는 주요 방법이 공분산을 이용함

#공분산은?

-x와 y의 편차의 합을 나눈것

-분산 : 한변수의 평균값을 중심으로 퍼져 있는 평균적인 거리

-공분산 : 두변수의 평균값을 중심으로 퍼져 있는 평균적인 거리?->방향의 의미가 더 강함

-분산은 단순 퍼진 정도라면 공분산은 두 변수(차원)에서 어떤 모양으로 퍼져 있는지를 나타냄

-분산은 언제나 양수/ 공분산은 양수 or 음수

공분산이 음수 일 떄를 나타냄->공분산은 방향성을 나타내는 것을 증명

그림1: 분산이 비슷하므로 같은 정도로 퍼져 있음, 공분산이 양수이므로 양의 방향으로 퍼져 있음,양의 상관관계

그림2: 분산이 비슷하므로 같은 정도로 퍼져 있음, 공분산이 음수이므로 음의 방향으로 퍼져 있음,음의 상관관계

그림3: x의 분산이 확연히 크므로 x가 넓게 퍼져 있음, 공분산이 0이므로 x와 y는 관련성이 없다고 볼 수 있음

그림4: y의 분산이 확연히 크므로 y가 넓게 퍼져 있음. 공분산이 0이므로 x와 y는 관련성이 없다고 볼 수 있음

 

#상관관계에서 상관계수는 어떻게 계산되나?

-상관계수p

#공분산을 굳이 왜 x와 y의 분산으로 나누나?

-공분산은 측정 단위에 영향을 많이 받음

-분산과 똑같이 측정단위가 크면 공분산의 값도 커짐

-공분산의 값은 상관계수와 달리 방향은 알 수 있으나 힘을 알 수 없음

ㅍ준화되었기 떄문에!

 

 

#공분산으로 무엇을 하나?

-우리가 가진 데이터의 분산과 공분산이라는 중요한 정보를 간단하게 정리해서 볼 수 있음

-차원감소를 하고자 하는데 있어 중요한 정보인 분산과 관련된 정보를 잃지 않으면서 판단하는데 도움이됨

-> 통계는 분산의 마법, 분산을 중요시 여기면서 차원을 축소하기!!!!

 

#고유값과 고유벡터

고유값 구하기~
고유벡터 구하기~
고유벡터 구하기~

 

-매우 많은 데이터의 차원을 줄이고 싶은데 ,분산 정보를 최대한 유지하면서 가고자 함

-> 우리가가진 모든데이터를 이용해 분산을 구할 수 없기에 분산공분산 행렬에서 분산의 정보를 최대한 해치지 않으면서 우리의 분산의 정보를 이용해 차원을 축소하기 위해 고유값과 고유벡터를 찾고 이를 이용해 주성분 분석을 하고자함.

-분산의 정보를 가지고 충분히 잘 움직여야함!!

 

#주성분 분석의 특징

-unique variance 가 없다

-Total variance = common variance

 

#주성분 분석의 목적은 무엇인가?

-고차원의 데이터를 저차원으로 줄이는 것

-공통된(상관관계가 높은) 변수들을 줄여서 주성분을 찾는 것(사용된 변수의 개수> 주성분의 개수)

 

#주성분을 뽑아 낼때의 원칙

-분산이 가장 커지는 축을 첫 번쨰 주성분으로 하고 분산이 두번째로 커지는 축을 두번쨰 주성분으로 하며

-이런 방식으로 주성분을 뽑아냄

-각 주성분은 서로간 직교함

   ->공분산 행렬의 고유벡터이므로

-주성분 분석은 가장 큰 분산을 갖는 부분공간을 보존하는 최적의 선형변환으로 주성분 몇개로 전체분산을 설명하려는 시도

 

#표준화 ->z-score로 변환

-장점:

1)모든 변수의 평균, 분산이(0,1)로 동일 해짐

2) 변수의 스케일 차이로 분산의 왜곡 방지

3)모든 변수의 분산을 동일하게 맞춤

4)변수의 개수= 총분산

 

#주성분 분석을 위해서는 먼저 표준화를 통해 모든 변수의 분산을 1로 맞춘다

#이후에 분산-공분산 매트릭스를 구하는데 각각의 분산은 표준화를 통해 1이 나오게됨

분산 공분산 메트릭스 구하기
고유값을 구하게됨-> 고유값이 클수록 첫번째 eigen value가 됨
고유벡터 구하기

#first principal component-첫번째 고유값의 첫번째 고유벡터/ 첫번째 주성분

-> 아마 언어능력이라는 새로운 변수 혹은 차원이라고 할 수 있음

->그러면 얼마나 설명할 수 있나??

해석 : 분산의 합인 2중에서 전체 1.98을 차지하므로 전체의 99%를 설명한다고 볼 수 있음

해석: 주성분의 분산이 겨우 0.02이면 변수하나(분산이 1)만도 못하는 주성분이 된다.따라서 pc2를 버려도 되고

99%의 분산을 혼자 설명하는 pc1을 가져다 쓰고 국어 영어 대신 언어능력으로 설명을 하겠다.

#한개의 직선으로 가장많은 분산을 잘 설명할 수 있는 것을 찾는것!

-데이터의 퍼진정도를 가장 잘 나타낼수 있는 직선

 

 

pc1을 언어 능력이라 했을때 언어능력과 국어점수의 상관관계는 0.995,99.5%로 설명

pc2와 국어점수의 상관관계는 매우 낮음!!

#우리가 가진 아이젠 벨류는 분산. 첫번쨰 아이젠 벨류는 우리가 가진 데이터 변수들의 분산의 얼마만큼을 첫번쨰 주성분 혼자 설명했는지에 대한 분산 값이다.!! 따라서 상관관계를 제곱해서 더하면 첫번째 고유값이 나온다.

-> 우리가 가진 분산을 얼마나 잘 설명했는지에 따라 주성분을 뽑아냄.

#주성분을 뽑아내면 주성분과 우리가 가진 변수간의 관계를 파악함으로써 우리가 주성분을 선택하게 됨

#분산을 설명하는게 목적이고 차원을 축소하는것도 목적이기에 pc2를 버리는게 맞다

 

#주성분 분석에 적합한 데이터는 무엇일까??

#구형성 검증(barlett's test of sphericity

관계성이 없으므로 주성분 분석을 할 수 없을 것
직접적인 상관관계는 1이됨

#변수간의 상관관계가 전혀 없기때문에 주성분이 존재하지 않음

 

#편상관계수가 작다는 것은 변수간에 상관관계가 낮다는 것. 따라서 우리에게 더 좋음

#KMO가 1에 가까우면 편상관계수들의 합이 작은 것이므로 주성분 분석에 유의하다고 볼 수 있음

#KMO가 높을수록 좋음-> 우리가 가진 데이터가 주성분 분석에 유효하다

#사용 변수가 3개 이상이어야함 보이지 않는 것을 설명하기 위해서는 3개 이상필요

제거할 변수가 없으면 편상관계수가 존재하지 않음.더 많으면 좋음

 

#주성분 분석이란?

- 차원 감소 방법의 하나

- 총분산은 공통 분산이며 고유 분산은 없음

-가장 많은 분산을 설명할 수 있는 직선을 첫번째 주성분으로 한뒤-> 남은 분산 중 가장 많은 분산을 설명할 수 있는 직선을 두 번쨰 주성분으로 보고,,,

-주성분과 주성분은 서로 직교

#주성분 분석의 절차

1) 변수를 표준화함

2) 분산- 공분산 행렬을 구함

3) 고유값과 고유 벡터를 구함

 

#주성분분석의 결과표 해석

 

-두번째 주성분의 값은 분산값(0.020)이 1보다 작아서 버림.. 1이 기준인 이유는 실제 변수의 분산인 1보다 작으므로..버림!

->차원을 축소하기 위해 최소한 변수가ㅏ 가진 분산보다 더 커야하는데.. 작으면 그냥 변수 쓰고 말지~

#첫번째 주성분과 국어와 영어의 상관관계를 나타냄-0.995/0.995->제곱을 하면 0.99/0.99

 

 

'MATH > 차원 축소와 요인 분석(PCA,FA)' 카테고리의 다른 글

요인 분석 실습(1)  (0) 2023.11.15
요인 분석의 기초- PAF(요인분석)  (1) 2023.11.12