주성분 분석(Principal component analysis)
데이터가 가장 넓게 퍼진 방향을 찾는 방법. 그 방향들은 공분산 행렬(covariance matrix)의 고유벡터(eigenvector)이고, 퍼진 정도(분산, variance)는 고유값(eigenvalue)이다.
두 값이 함께 움직이는 데이터(키와 몸무게, 두 과목 점수)를 점으로 찍으면 비스듬한 타원(ellipse) 모양 구름이 됩니다. 상관계수(correlation coefficient)
어떤 방향
이 방향을 계산으로 찾는 방법은 이렇습니다. 먼저 공분산 행렬
길이 1인 방향
점들의 평균을 지나는 제1 주성분 직선은, 점에서 직선에 수직으로 잰 거리의 제곱 합이 최소인 직선이기도 합니다. 투영된 값의 분산과 수직 거리의 제곱 합을 더하면 늘 전체 분산으로 일정하니(피타고라스 정리, Pythagorean theorem), 한쪽을 최대로 하는 것이 다른 쪽을 최소로 하는 것입니다. 세로 거리를 줄이는 최소제곱 회귀(least-squares regression) 직선과는 다릅니다. 회귀 직선의 기울기(slope)는 크기가 늘 주성분 직선의 기울기보다 작거나 같아서 더 누워 있고, 모든 점이 한 직선 위에 있으면(|ρ| = 1) 두 직선이 일치합니다.
이 방법의 쓸모는 차원 줄이기입니다. 변수가 수백 개인 데이터라도 퍼짐의 대부분이 몇 방향에 몰려 있는 경우가 많고, 그러면 분산이 큰 주성분 몇 개만 남겨도 전체 분산의 대부분을 지키면서 변수의 수를 크게 줄일 수 있습니다. 다만 분산은 단위에 따라 달라집니다. 키를 센티미터에서 밀리미터로 바꾸기만 해도 키 방향의 분산이 100배가 되어 주성분이 바뀌므로, 단위가 다른 변수를 섞을 때는 보통 각 변수를 표준편차(standard deviation)로 나누어 맞춘 다음 주성분을 구합니다.
사진은 이웃한 화소끼리 밝기가 비슷해서(상관이 강해서) 주성분 축이 코사인(cosine) 물결 모양에 가깝게 나옵니다. 그래서 JPEG은 사진마다 주성분을 새로 구하는 대신, 미리 정해 둔 코사인 물결을 축으로 쓰는 이산 코사인 변환(discrete cosine transform)으로 거의 같은 효과를 얻습니다. 입력을 좁은 병목으로 압축했다가 되살리도록 학습하는 신경망(neural network)인 오토인코더(autoencoder)는, 선형이고 제곱 오차를 쓰면 주성분들이 펼치는 것과 같은 부분공간(subspace)을 찾습니다. 비선형으로 바꾸면 휘어진 구름도 줄일 수 있습니다.
주성분 좌표에서 각 축을 그 축의 표준편차로 나누면 타원 구름이 둥근 구름이 됩니다. 그 좌표에서 잰 보통의 거리가 마할라노비스 거리(Mahalanobis distance)입니다.
단어마다 수백 개의 수로 된 벡터(vector)를 붙여 뜻이 비슷한 단어끼리 가깝게 놓은 것을 단어 임베딩(word embedding)이라 합니다. 이런 수백 차원의 점들을 평면에 그려 볼 때 흔히 주성분 두 개를 가로축과 세로축으로 씁니다.
주성분 분석은 1901년 영국의 칼 피어슨이 점들에 가장 가까운 직선과 평면을 찾는 문제로 처음 내놓았고, 1933년 미국의 통계학자 해럴드 호텔링이 공분산 행렬의 고유벡터로 정리하며 '주성분'이라는 이름을 붙였습니다.
이 개념이 나오는 긴 글
이 개념 위에 세워진 것
이 개념을 언급하는 페이지
- 최적화
… 최적화는 수학 곳곳에 숨어 있습니다. 최소제곱 회귀는 오차 제곱의 합이 가장 작은 직선을 찾습니다.주성분 분석은 데이터 점들을 평균을 지나는 한 직선 위로 그림자처럼 내렸을 때, 그림자들이 가장 넓게 퍼지는(분산이 …
- 고유벡터와 고유값
… 공분산 행렬은 각 변수의 분산과, 두 변수가 함께 커지고 작아지는 정도를 모은 표입니다(주성분 분석). 함수에도 고유벡터가 있습니다. \sin kx 를 두 번 미분하면 -k^2 \sin kx , 곧 자기 …
- 내적
… 각의 코사인은 상관계수입니다. 같은 방향이면 1, 수직이면 0, 반대 방향이면 −1입니다(분산,주성분 분석). 함수도 벡터처럼 내적할 수 있습니다. 성분끼리 곱해 더하는 대신 두 함수의 값을 곱해 적분합니다( …
- 정사영
… 다른 곳에도 나옵니다. 푸리에 계수는 함수를 서로 수직인 사인파들 각각의 방향으로 정사영해 구합니다.주성분 분석은 데이터를 어느 직선에 정사영했을 때 그림자들이 가장 넓게 퍼지는지 찾습니다. 삼각형에서도 쓰입니다. 변 …
- 분산과 표준편차
… 때문입니다(무작위 행보). 분산은 정규분포의 폭을 정합니다. 회귀가 줄이려는 오차 제곱합도,주성분 분석이 최대로 만드는 퍼짐도 모두 같은 제곱의 평균으로 잽니다. 모형이 새 자료에서 내는 제곱 오차의 기댓값도 …
- 최소제곱 회귀
… 대신 직선에 수직으로 잰 거리(점에서 직선까지의 가장 짧은 거리)를 줄이면 다른 직선이 나옵니다. 그것이주성분 분석의 첫 번째 축입니다. x와 y의 역할이 대칭인지, x로 y를 예측하려는지에 따라 고르면 됩니다. 관측값과 …
- 열공간
… 계수가 푸리에 급수의 계수가 되고, 데이터가 가장 넓게 퍼진 몇 방향이 펼치는 공간을 찾는 것이주성분 분석입니다. 정사각행렬 A 의 고유값 \lambda 는 A - \lambda I 의 열공간이 …
- 상관관계
… 합니다. 이어지는 곳. 변수가 여럿이면 짝마다의 공분산을 모은 공분산 행렬이 생기고, 그 고유벡터가주성분 분석의 축입니다. 두 값이 함께 정규분포를 따르면 산점도는 타원 모양이 되고, r은 두 표준편차와 함께 …
- 페이지랭크
… 사이를 오갈 수 있다는 관찰입니다. 가장 큰 고유값의 고유벡터를 곱셈의 반복으로 찾는 거듭제곱법은주성분 분석에서도 쓸 수 있습니다. 데이터가 가장 넓게 퍼진 방향이 바로 공분산 행렬의 가장 큰 고유값에 대한 …
- 마할라노비스 거리
… 돌리고, 축마다 고유값의 제곱근으로 나눈 뒤, 다시 돌려놓는 행렬입니다(대각화). 그 축은주성분 분석의 축과 같습니다. 특별한 경우를 보면 익숙합니다. \Sigma 가 단위행렬이면 보통의 유클리드 거리이고, …
- k-평균 군집
… 점 k개짜리 분포로 가장 싸게 옮기는 최적 수송 문제로 보아도 같은 답이 나옵니다. 차원이 높은 자료는주성분 분석으로 먼저 줄인 뒤 군집을 찾기도 합니다. 점들의 최소 신장 트리에서 가장 긴 변 k − 1개를 끊어 …
- 차원의 저주
… 점점 얇아집니다. 다행히 실제 데이터는 고차원 공간 속 낮은 차원의 곡면 근처에 놓인 경우가 많아서,주성분 분석이나 그것을 비선형으로 넓힌 오토인코더 같은 차원 축소가 저주를 누그러뜨립니다. ⟦마할라노비스 …
- Lp 노름
… x\cdot\mathbf x ). 그래서 각도, 직교, 정사영, 최소제곱의 선형 회귀,주성분 분석은 모두 L2의 세계에 삽니다. p = 1의 마름모는 꼭짓점이 축 위에 뾰족하게 나와 있습니다. 회귀에서 …
- 단어 임베딩
… 수 있습니다. 차원이 높을수록 이런 어긋남은 피할 수 없고(차원의 저주), 실제 임베딩을 볼 때도주성분 분석같은 방법으로 차원을 줄여 그림을 그립니다. 유추가 되는 이유는 '남자 → 여자'의 차이와 '왕 → …
- 이산 코사인 변환
… 1에 가까운 단순한 모형(한 칸 떨어진 값끼리만 직접 닮는 1차 마르코프 모형)에서는, 데이터에 맞춰 구한주성분 분석의 축이 DCT의 기저에 다가간다는 것이 알려져 있습니다. 차이는 DCT가 데이터를 보지 않고 미리 정해 …
- 상호 정보량
… 이론⟧은 반대로 상호 정보량을 가장 작게 하는 문제입니다. 상관계수가 놓치는 포물선·원 같은 의존성은주성분 분석처럼 분산과 공분산(곧 상관계수의 재료)만 보는 방법도 놓칩니다. 측정이 계에 대해 얻은 상호 정보량은 …
- 율–왜곡 이론
… 이렇게 양자화합니다. 정규분포를 따르는 상관된 성분을 먼저 서로 독립인 축으로 돌리는 최선의 변환은주성분 분석이고, 이웃끼리 강하게 닮은 신호에서 DCT는 그 빠른 근사입니다. 큰 언어 모델의 가중치를 8비트나 …
- 통계학
… 수의 법칙⟧과 중심극한정리가 말합니다. 요약: 중앙값과 상관관계. 변수가 여럿일 때의 요약은주성분 분석과 마할라노비스 거리가 이어받습니다. 추정: 최대가능도법, 최소제곱 회귀, 베이즈 정리. …
- 기계 학습
… 것은 비지도 학습 입니다. 비슷한 것끼리 무리 짓는 k-평균 군집, 자료가 가장 넓게 퍼진 방향을 찾는주성분 분석, 함께 나오는 낱말들로 낱말의 뜻을 벡터로 적는 단어 임베딩, 입력을 좁은 병목으로 압축했다가 …
- 정규화: 릿지와 라소
… μ인 고유벡터 방향의 성분은 \mu/(\mu+\lambda) 배로 줄어드니, 자료가 적게 퍼진 방향(주성분 분석의 작은 주성분)일수록 많이 줄어듭니다. 셋째, 베이즈 정리로 읽을 수 있습니다. 잡음이 분산 …
- 서포트 벡터 머신과 커널
… 코사인 유사도 같은 유사도와 같은 줄기에 있고, 자료를 커널로 옮긴 뒤 퍼진 방향을 찾으면 커널주성분 분석이 됩니다. 커널을 고르는 것은 점들을 옮겨 놓을 특성 공간을 사람이 미리 정하는 셈인데, 신경망은 그 …
- 특잇값 분해
… T}X = V\Sigma^{\mathsf T}\Sigma V^{\mathsf T} 이므로,주성분 분석의 축은 V의 열이고 각 축의 분산은 \sigma_i^2/(n-1) 입니다. 실제 계산에서는 공분산 …
- 라그랑주 승수법
… 방향 u 가운데 그 방향의 분산 \vec u^{\mathsf T}\Sigma\vec u 를 가장 크게 하는주성분 분석에 이 방법을 쓰면 2\Sigma\vec u = \lambda\cdot 2\vec u , 곧 …
- 인공지능
… 따르는 최근접 이웃 분류, 비슷한 점끼리 묶는 k-평균 군집, 자료가 가장 많이 퍼진 방향을 찾는주성분 분석, 숨은 값을 추측과 갱신을 되풀이해 찾는 EM 알고리즘. 그 방법들을 받치는 이론. 골짜기가 하나뿐인 …
- 오토인코더와 잠재 공간
… 곧 z의 분산입니다. 자료가 가장 넓게 퍼진 방향, 곧 공분산 행렬의 첫 고유벡터가 답이고, 이것이주성분 분석의 첫 주성분입니다. 오른쪽 그래프에서 오차는 w의 각도를 따라 오르내리고 180°마다 되풀이됩니다(w와 …
- 검색 증강 생성
… 높은 차원의 어려움은 차원의 저주에서 이어집니다. 벡터가 뜻을 담는 방식은 단어 임베딩과주성분 분석에, 인코더를 학습시키는 손실은 소프트맥스와 교차 엔트로피에 있습니다. 문서를 보이지 않는 변수로 두고 …