주성분분석
여러 특성(feature) 가운데 대표 특성을 찾아 분석하는 방식으로, 대표 특성의 선별은 자료의 차원을 고차원에서 하위 차원으로 축소하는(차원축소) 기법을 활용한다. 차원축소기법에 대한 이해가 주성분 분석의 시작이자 끝이며 여기서는 2차원을 1차원으로 축소하는 범위로 한정해 설명하고자 한다.
분산, 차원축소를 위한 주성분의 선택 기준
위 그림과 같이 차원축소를 위한 정사영의 시작은 무엇을 기준으로 선택되는 것일까? 선택에 따라 데이터의 실제 특성을 보존할 수도 있고 반대로 잃을 수도 있다. C1을 참고하면 우린 자연스럽게 데이터 간 거리가 가장 큰 쪽이 가장 강력한 데이터 변화 방향이란 사실을 직관적으로 이해할 수 있다. 결국 주성분 선택에 있어 최초로 고려되는 요소는 분산이 가장 큰 하나의 데이터 선(2차원으로 축소시는 면)이 된다.
직교(Orthogonality), 그 다음 주성분을 찾는 기준
그렇다면 다음 주성분은 어떻게 찾는 것일까? 두 번째 주성분은 첫 번째 주성분과 '직교'하는 또 하나의 선(또는 면)이다. 다음 주성분은 첫 번째로 분산이 큰 쪽이 선택된다. 두 선이 직교하고 있다면 하나의 선과 다른 하나의 선은 서로 가장 독립적인 상태라고 말할 수 있는 상태다. 이를 내적(Inner Product)이 0인 상태라고 하는데, 좌표상에 두 선이 수직(90도)을 이루며 교차함을 뜻한다.
A라는 선형이 180도 회전하게 되더라도 그 방향벡터의 크기와 방향은 동일하기 때문에, 서로 가장 닮지 않는 다른 하나의 선형은 A선형과의 관계가 수직(90도)이다. 가령 xi의 값이 증가함에 따라 yi값이 증가한다면 우리는 그 관계가 양의 상관관계로 '우상향'하는 방향임을 알 수 있다. 반대로 xi값은 증가하는데 yi값이 감소하면 '우하향'한다는 사실도 함께 확인 가능하다. 즉, xi가 고정일 때 yi값이 완전 반대의 방향을 갖는 경우의 선형의 결과는 결과적으로 90도가 되는 것이다.
차원축소의 3가지 순기능
우리가 주성분 분석을 사용하는 이유는 데이터가 가진 특성의 수가 지나치게 많을 때, 그 수를 적절하게 줄임으로써 얻는 이점이 있기 때문이다. 특성의 수를 줄일 때 우리는 크게 3가지 순기능을 기대해 볼 수 있다.
먼저 차원이 낮아지면 대상에 대한 이해가 보다 쉬워지게 된다. 공간보다는 면, 면보다는 선, 선보다는 점을 이해하는 것이 보다 용이한 것과 같은 맥락이다. 다음으로 얻을 수 있는 장점은 연산속도가 개선된다는 점이다. 분산값을 유지하면서 정보의 크기 자체를 줄이기 때문에, 데이터의 특성을 훼손시키지 않고도 보다 빠른 연산을 기대할 수 있게 된다.
마지막으로 차원축소는 '차원의 저주'를 해결하는 열쇠가 된다. 선보다는 면, 면보다는 육면체에 데이터가 위치할 공간이 훨씬 크다는 사실은 누구나 쉽게 이해할 수 있을 것이다. 만약 데이터의 양이 동일한 경우에 보다 상위 차원 속에 데이터를 위치시키면 어떨까. 그 결과는 아래 그림처럼 서로 간의 거리가 더욱 멀어진 모습으로 보여질 것이다.
이런 경우에 발생하는 문제를 차원의 저주라고 한다. 차원 증가에 따라 요구되는 데이터의 양이 기하급수적으로 늘어나기 때문에 우리는 차원축소를 통해 이와 같은 문제를 해결할 수 있다. 높아진 차원을 고려한 데이터 증량이 없다면 우리는 고차원의 데이터를 학습시키는 과정에서 '과적합(overfitting)'의 문제를 겪을 것이다. 차원축소는 이처럼 데이터가 부족한 상태에서 과적합을 예방하는 전처리 기법으로 가능하게 된다.
'Data Science > Basic study' 카테고리의 다른 글
공분산과 상관계수 쉽게 이해하기 - 수식 없이 (1) | 2025.04.07 |
---|---|
시계열 분석 개요 및 기초 (0) | 2023.09.21 |
손실함수(Loss function)과 경사하강법(Gradient Descent) θ 업데이트 풀이 (0) | 2023.08.24 |
데이터분석 기초 정리 (0) | 2023.03.04 |
Coefficient of Variation (0) | 2022.12.22 |