출처

PCA (Principle Component Analysis) : 주성분 분석 이란?

PCA (Principle Component Analysis) : 주성분 분석 이란?

1. PCA (주성분 분석)

PCA는 대표적인 dimensionality reduction (차원 축소)에 쓰이는 기법으로, 머신러닝, 데이터마이닝, 통계 분석, 노이즈 제거 등 다양한 분야에서 널리 쓰이는 녀석이다.

쉽게 말해 PCA를 이용하면 고차원의 데이터를 낮은 차원의 데이터로 바꿔줄 수 있다는 것인데, 중요한 것은 "어떻게 차원을 잘 낮추느냐" 이다.

예를 들어 아래 [그림 1] 에서 왼쪽에 있는 2차원 데이터를 오른쪽에 있는 1차원 데이터로 바꾼다고 생각해보자.

[그림 1] 2차원 데이터와 1차원 데이터

아무리 잘 바꾼다고 하더라도, 2차원의 데이터의 특징을 모두 살리면서 1차원의 데이터로 바꿔줄수는 없을 것이다.

그렇다면 차선책으로, 모든 특징을 살릴 수는 없을지라도 최대한 특징을 살리며 차원을 낮춰주는 방법을 고안하기 시작했고, 그 중 하나가 바로 PCA 이다.

지금부터 PCA 알고리즘에 대한 직관적인 해석과 수학적인 해석을 알아보도록 하자.

2. PCA 알고리즘의 직관적인 해석

이번 장에서는 PCA 알고리즘이 어떻게 차원을 "잘" 낮춰주는지 직관적인 해석을 통해 알아볼 것이다.

설명에 사용되는 예시는 2차원 데이터를 1차원으로 낮춰주는 상황으로 가정한다.

아래 [그림 2]의 표와 같은 데이터가 있다고 생각해보자. 각 cloumn 은 사람들의 키와 몸무게에 대한 정보를 의미하며, 각 row는 여러 사람들의 샘플을 의미한다.

해당 표의 데이터를 2차원 평면상에 나타내보면 오른쪽 그래프와 같이 될 것이다.

[그림 2] 예시 데이터와 2차원 시각화