본문 바로가기

ComputerScience/Pattern Recognition

패턴인식 - 12. Principle Component Analysis (PCA)

728x90

1. Principle component Analysis (PCA, 주성분 분석)

- 다차원 공간에 있는 데이터를 1차원 공간으로 Projection 시키는 것이다.

- 데이터의 원래 성질을 가장 잘 보존하는 공간으로 차원축소하는 것이 목표이다.

- 데이터의 차원을 낮추면 작업 수준(복잡도, 연산량)을 낮출 수 있다.

*참고로 차원 축소, projection의 반대가 kernel(차원을 높이는 것)이다.

- 가장 먼저 데이터들의 평균을 projection한 값을 찾는다. (= projection한 데이터들의 평균)

- s, sample 데이터를 말한다.

- 이번에는 project된 데이터들의 분산을 구해보자.

- PCA는 분산이 최대가 되는 sub space이다. 이제 분산을 최대로 만드는 projection matrix, u를 구해보자.

- 추가로 u가 단위 벡터라는 사실에 의해 uTu = 1인 조건이 있다.

2. 라그랑제 승수법

- 라그랑제 승수법은 제약함수 g(x,y) = 0의 조건이 있으면서 두 변수를 가지는 함수 f(x,y)에 대한 최대, 최소를 구할때 사용된다.

- f를 편미분한 식이 g를 편미분한 식에 라그랑제 승수를 곱한 것과 같다에서 출발한다.

- 결국 L을 편미분한 값이 0이 되는 지점을 찾으면 된다.

3. 라그랑제 예제 

- 조건: 직선위에 있어야 함

- f : 원점과의 거리

- x에 대해 미분했을때 x = -람다

- y에 대해 미분했을때 y = -람다/2

- contraints에 x,y 람다에 대한 식으로 치환하고 람다를 구한다.

4. PCA로 다시 돌아와서

- 라그랑제 승수법을 배웠으니 L(u)를 최대로 하는 u를 찾자.

 

- 즉 주성분을 찾는 문제는 알고보니 eigenvector, eigenvalue를 찾는 문제였다.

- eigen vector를 principle component라고 한다.

 

- D차원 공간에 있는 데이터들에 대해 D개의 고유 벡터중 d개를 선택하여 d차원의 subspace를 만들 수 있다.

728x90
반응형