seegongsik
공업수학

주성분은 가장 퍼진 방향이다

데이터 구름에서 가장 많이 퍼진 방향을 찾고, 주성분은 공분산 행렬의 고유벡터이며 그 방향만 남기면 차원이 준다

책상에 좁쌀 한 줌을 흩뿌렸다고 하자. 알갱이들이 둥글게 퍼지지 않고 한쪽으로 길쭉하게 누워 있다면, 누구나 한눈에 이 방향으로 가장 넓게 퍼졌다고 짚을 수 있다. 주성분 분석(PCA)이 묻는 것이 딱 이것이에요. 데이터 구름에서 가장 퍼진 방향은 어디인가. 그 방향이 제1주성분(PC1)이고, 거기에 직각인 두 번째로 퍼진 방향이 PC2다. 놀랍게도 이 두 방향은 데이터 공분산행렬의 고유벡터이고, 각 방향의 퍼진 정도인 분산이 바로 고유값이에요. 「고유벡터는 방향이 안 변하는 벡터다」에서 본 그 고유 개념이 이번에는 데이터의 퍼짐에 그대로 쓰인다.

손잡이를 끌어 점구름을 빙 돌리면 구름 전체가 손잡이를 따라 함께 기운다. 어느 각도로 돌리든, 점들을 감싸는 금색 타원(공분산을 1-시그마로 그린 것)이 구름을 따라 같이 돌아요. 그 타원 안에서 가장 긴 축(초록)이 PC1, 그에 직각인 짧은 축(주황)이 PC2다. 두 축의 길이는 각 방향 분산의 제곱근, 곧 표준편차이고, 아래에는 두 방향의 분산이 적힌다. 구름을 돌려도 PC1은 언제나 가장 길게 퍼진 쪽을 정확히 가리켜요. 이 축들이 바로 점들로 계산한 공분산행렬의 고유벡터다.

이번에는 슬라이더로 구름의 각도만 바꾼다. 축 두 개, PC1(초록)과 PC2(주황)가 늘 따라붙어요. PC1은 분산이 가장 큰 방향이고 PC2는 거기에 정확히 직각인 두 번째 방향이다. 슬라이더를 어디에 두든 두 축은 언제나 90도를 유지하는데, 대칭인 공분산행렬의 고유벡터는 언제나 서로 직교하기 때문이다. 그래서 주성분들은 겹치지 않는 방향들로 데이터를 깔끔하게 나눠 줘요. 한 축의 정보가 다른 축으로 새지 않는다는 뜻이다.

왜 PC1이 특별한지 직접 잴 수 있다. 슬라이더로 한 방향의 직선을 돌리면 모든 점을 그 직선 위로 수직 투영해 발자국을 찍는다. 그 발자국들이 직선 위에서 얼마나 퍼졌는지가 그 방향의 분산이고, 아래에 그 값이 막대와 숫자로 적혀요. 직선을 이리저리 돌리면 분산은 PC1과 나란할 때 최댓값으로 솟고, PC2와 나란할 때 최솟값으로 가라앉는다. 최댓값 근처에 오면 직선과 발자국, 막대가 초록으로 바뀐다. 그래서 PC1은 분산을 최대로 만드는 방향이라고도 정의한다. 가장 퍼진 방향이 곧 정보가 가장 많이 살아 있는 방향이에요.

이제 진짜 쓸모인 차원 축소로 간다. 토글로 PC1 또는 PC2 가운데 한 축만 남기면 점들이 그 축 위로 납작하게 눌리고, 버려진 직각 방향은 복원 오차인 빨간 점선 꼬리로 표시돼요. 읽기 값은 버린 축의 분산, 곧 잃어버린 정보의 양이다. PC1만 남기면 꼬리가 가장 짧은데, 가장 덜 퍼진 방향을 버렸으니 잃은 것이 가장 적기 때문이다. 2D를 1D로 줄이면서도 손실을 가장 적게 하는 것, 그것이 PCA로 데이터를 압축하는 방식이에요.

마지막으로 몇 차원이 정말 필요한지 묻는 도구다. 슬라이더로 구름을 둥근 모양에서 아주 길쭉한 모양까지 늘이면, 두 막대에 고유값의 비율이 나타나요. 위는 λ1/(λ1+λ2), 아래는 λ2/(λ1+λ2)다. 구름이 둥글면 두 막대가 거의 50대 50이라 한 축만 남기면 절반을 잃는다. 길쭉해질수록 PC1 막대가 100퍼센트에 다가가고 PC2는 거의 0이 된다. 그때는 한 축만 남겨도 정보를 거의 다 지켜요. 이 설명된 분산 비율이 데이터를 몇 차원으로 줄여도 괜찮은지를 가늠하는 잣대다.

빠른 적용PCA는 데이터 구름에서 가장 퍼진 방향을 찾는 일이다. 점들의 공분산행렬을 만들고 그 고유벡터를 구하면, PC1은 분산이 가장 큰 방향, PC2는 그에 직각인 다음 방향이고, 두 고유값이 각 방향의 분산이에요. 고유벡터 강의 고유 개념 그대로이지만, 이번에는 변환행렬이 아니라 데이터의 공분산행렬이고, 정답표 없이 구조를 찾는 무지도 학습이라는 점이 다르다. PC1에 투영하면 가장 적은 숫자로 가장 많은 정보를 지키니 차원 축소가 되고, 설명된 분산 비율로 몇 차원이면 충분한지를 가늠한다. 얼굴 인식의 고유얼굴, 유전자 데이터 요약, 잡음 제거가 모두 이 아이디어 하나 위에 서 있어요.
← 공업수학
이 페이지가 도움 됐다면 후원하기