PCA 의 의미

Min·2021년 10월 24일

인공지능 수학

목록 보기
3/4

4가지 변수에 대한 dataset이 주어져있을때,

각각의 변수는 data의 갖가지 특성을 반영한다

이때 4가지 변수가 2가지로 줄어든다면

정확도는 떨어지겠지만 계산 속도가 빨라진다.

줄어드는 변수 2가지는 가장 main이 되는 변수 두가지로 선택해야만

정확도가 그나마 덜 떨어지겠다.

그것을 위한것이 바로 PCA이다.

헷갈렸던건, PCA가 원래의 4가지 변수 중 2가지를 뽑는게 아니라,

data들을 흩뿌려놓았을때 분산이 큰 부분을 하나의 축으로 잡아서

변수 2가지를 찾아내는 것이다.

분산이 큰 부분이 데이터들을 잘 포용하기 때문이다.

즉 4가지 변수가 4개의 linearly independent한 벡터선 이었다면

2가지 변수 또한 2개의 linearly independent한 벡터선이고
(아마 위 변수 4개의 선형 조합일 것이다.)

이 벡터선은 주어진 data들을 분산이 크도록 잘 관통하는 벡터선일 것이다.

이 주요한 벡터선을 찾는 과정은 두가지 방법이있는데

(1) covariance matrix를 구한 뒤 그것을 eigendecomposition 하는 과정이다.
그 후 나오는 두가지 벡터선으로 dataset을 재분류 한다.

또는 (2) from sklearn.decomposition import PCA로 부터

pca 시키는 과정이다.

# pca 설정 : 주요 변수를 2가지로 하도록 설정
pca=PCA(n_component=2)

#X를 PCA 하여 X_new 저장
X_new=pca.fit_transform(X)

즉 covariance matrix로 부터 두가지 벡터선을 구하는 위의방법은
pca.fit_transform 안에 내장된 하나의 과정이라고 볼 수 있다.

0개의 댓글