25차시 · 정의와 표기

관측벡터·평균·중심화

\(n\)개의 관측값을 \(x_1,\ldots,x_n\in\mathbb R^d\)로 쓴다. 각 성분은 같은 순서의 변수를 뜻한다. 평균벡터와 중심화한 관측값을 다음과 같이 정의한다.

\[\bar x=\frac1n\sum_{i=1}^{n}x_i,\qquad x_i^c=x_i-\bar x,\qquad \sum_i x_i^c=0\]

\(X_c\in\mathbb R^{n\times d}\)의 \(i\)번째 행은 \((x_i^c)^T\)이다. 중심화는 각 변수의 평균만 빼며 단위는 바꾸지 않는다.

25차시 · 공분산과 PCA

각 점에서 평균을 빼면 무엇이 남을까?

\[\mathbf{x}_i^{\rm c}=\mathbf{x}_i-\bar{\mathbf{x}},\qquad \bar{\mathbf{x}}=\frac1n\sum_{i=1}^n\mathbf{x}_i\]
원자료 평균 \((3,2)\)

25차시 · 정의와 표기

분산과 공분산행렬

이 차시는 주어진 \(n\)개 자료 자체의 분산과 공분산을 \(1/n\)으로 정의한다. 두 변수의 평균으로부터의 편차를 곱해 평균낸 값이 공분산이다.

\[\Sigma=\frac1nX_c^TX_c,\qquad \Sigma_{ab}=\frac1n\sum_{i=1}^n(x_{ia}-\bar x_a)(x_{ib}-\bar x_b)\]

\(\Sigma_{aa}\)는 변수 \(a\)의 분산, 즉 편차 제곱의 평균이다. \(\Sigma_{ab}>0\)이면 두 편차가 같은 부호로 나타나는 경향이 있다. 공분산이 0이어도 두 변수 사이에 비선형적인 관계가 있을 수 있다. 예를 들어 \(x=(-1,0,1)\)과 \(y=(1,0,1)\)은 공분산이 0이지만 \(y=x^2\)을 만족한다.

25차시 · 정의와 표기

표준편차와 표준화

분산의 음이 아닌 제곱근을 표준편차라 한다. 변수 \(a\)의 표준편차 \(s_a\)가 0보다 크면 평균을 빼고 표준편차로 나누는 표준화를 정의할 수 있다.

\[s_a=\sqrt{\Sigma_{aa}},\qquad z_{ia}=\frac{x_{ia}-\bar x_a}{s_a}\]

표준화한 변수의 평균은 0, 분산은 1이다. 중심화가 원점을 옮기는 과정이라면 표준화는 변수마다 눈금의 크기까지 바꾼다. 원래 단위를 유지할지, 각 변수의 분산을 같게 맞출지는 분석 목적에 따라 정한다.

\(s_a=0\)이면 모든 관측값이 같으므로 이 식으로 나눌 수 없다. 그런 변수는 따로 다루어야 한다.

25차시 · 계산과 논증

공분산의 각 원소를 직접 계산하기

\[X_c=\begin{bmatrix}2&1\\1&2\\-2&-1\\-1&-2\end{bmatrix}\]

① 두 분산과 공분산을 구하라. ② \(\Sigma\)가 대칭이고 음의 고윳값을 갖지 않는 이유를 \(X_c^TX_c\)에서 설명하라.

풀이와 판단 근거
\[\Sigma=\frac14\begin{bmatrix}10&8\\8&10\end{bmatrix}=\begin{bmatrix}2.5&2\\2&2.5\end{bmatrix}\]

예를 들어 공분산은 \((2+2+2+2)/4=2\)이다. 전치하면 원래 행렬과 같고, 임의의 \(w\)에 대해 \(w^T\Sigma w=\|X_cw\|^2/4\ge0\)이다. 따라서 대칭 양의 준정부호이다.

25차시 · 정의와 표기

주성분 방향·점수·설명분산

첫 주성분 방향은 자료를 투영했을 때 분산이 최대가 되는 단위벡터 \(q_1\)이다. 이후 방향은 앞 방향들과 직교하는 단위벡터 중 투영분산을 최대화하여 정한다.

\[z_i=q_1^Tx_i^c,\qquad \hat x_i^c=q_1z_i,\qquad \operatorname{Var}(z)=q_1^T\Sigma q_1\]

\(z_i\)를 주성분 점수, \(\hat x_i^c\)를 한 축으로 재구성한 자료라고 한다. 주성분분석(PCA)은 이렇게 선택한 축으로 자료의 차원을 줄이는 방법이다. 설명분산 비율은 보존한 분산을 전체 분산으로 나눈 값이다.

25차시 · 설명과 유도

투영분산이 고윳값과 연결되는 이유

중심화한 자료의 점수벡터는 \(X_cw\)이며 평균은 0이다. 단위벡터 \(w\)에 대해

\[\operatorname{Var}(X_cw)=\frac1n\|X_cw\|^2=w^T\Sigma w\]

\(\Sigma q_j=\lambda_jq_j\)인 정규직교기저에서 \(w=\sum_jc_jq_j\)로 쓰면 \(\sum_jc_j^2=1\)이다.

\[w^T\Sigma w=\sum_j\lambda_jc_j^2\le\lambda_{\max}\]

따라서 최대 고윳값에 대응하는 단위 고유벡터가 첫 주성분 방향이다. 최대 고윳값이 중복되면 방향은 유일하지 않을 수 있다.

단위벡터 방향에 투영

어느 축으로 투영할 때 가장 넓게 퍼질까?

\[\begin{aligned}\mathbf{w}&=(\cos\theta,\sin\theta)\\ \operatorname{Var}(X\mathbf{w})&=\mathbf{w}^\mathsf T\Sigma\mathbf{w}\end{aligned}\]
\[\mathbf{w}^\mathsf T\Sigma\mathbf{w}=2.5+2\sin2\theta\]

최대 \(4.5\)

\(\theta=45^\circ\)

최소 \(0.5\)

\(\theta=-45^\circ\)

이 식의 최댓값은 공분산행렬의 가장 큰 고윳값과 같습니다.

공분산의 고유분해

고윳값으로 확인하는 각 주성분의 분산

1. 특성다항식

\[\det(\Sigma-\lambda I)=\lambda^2-5\lambda+2.25\]

2. 고윳값·고유벡터

\[\lambda_1=4.5,\ \mathbf{q}_1=\frac1{\sqrt2}(1,1)\]
\[\lambda_2=0.5,\ \mathbf{q}_2=\frac1{\sqrt2}(1,-1)\]

3. 설명분산

\[\frac{\lambda_1}{\lambda_1+\lambda_2}=\frac{4.5}{5}=0.90\]

첫 축 하나에 남는 총분산의 90%

같은 뜻인 두 관점

분산을 크게 만들면 왜 재구성오차가 작아질까?

자료 \(\mathbf{x}=(2,1)\), 첫 축 \(\mathbf{q}_1=(1,1)/\sqrt2\)
점수 \(z=\mathbf{q}_1^\mathsf T\mathbf{x}=3/\sqrt2\)
재구성 \(\hat{\mathbf{x}}=\mathbf{q}_1z=(3/2,3/2)\)
오차 \(\lVert\mathbf{x}-\hat{\mathbf{x}}\rVert^2=1/2\)
\[\begin{aligned}E_{\rm rec}(\mathbf{q}_1)&=\frac1n\sum_i\lVert\mathbf{x}_i-\mathbf{q}_1\mathbf{q}_1^\mathsf T\mathbf{x}_i\rVert^2\\&=\operatorname{tr}(\Sigma)-\mathbf{q}_1^\mathsf T\Sigma\mathbf{q}_1\end{aligned}\]
\[=5-4.5=0.5\]

투영분산 최대화 \(\Longleftrightarrow\) 직교투영 재구성오차 최소화.

PCA 방향 탐색

축을 돌리며 투영분산과 재구성오차를 비교해 봅시다

2.50투영분산
2.50평균 제곱 재구성오차
\[\mathbf{w}=(1.00,0.00)\]

총분산은 5.00. 보존 비율은 50%.

25차시 · 정의와 표기

마할라노비스 거리

공분산행렬 \(\Sigma\)가 양의 정부호일 때, 평균 \(\bar x\)로부터의 마할라노비스 거리를 다음과 같이 정의한다.

\[d_M(x,\bar x)=\sqrt{(x-\bar x)^T\Sigma^{-1}(x-\bar x)}\]

\(\Sigma=Q\operatorname{diag}(\lambda_i)Q^T\), \(z=Q^T(x-\bar x)\)로 쓰면 \(d_M^2=\sum_i z_i^2/\lambda_i\)이다. 각 주성분 좌표를 그 방향의 표준편차 \(\sqrt{\lambda_i}\)로 나눈 거리이다.

분산이 0인 방향이 있으면 위 역행렬을 쓸 수 없다. 그 방향을 제외할지, 다른 모형을 쓸지 먼저 정해야 한다.

공분산을 반영한 거리

원점에서 똑같이 떨어진 두 점, 데이터 기준 거리도 같을까?

\[d_M(\mathbf{x},\mathbf{0})^2=\mathbf{x}^\mathsf T\Sigma^{-1}\mathbf{x}=\frac{z_1^2}{4.5}+\frac{z_2^2}{0.5},\quad z_i=\mathbf{q}_i^\mathsf T\mathbf{x}\]\(\Sigma^{-1}\)이 있을 때 쓸 수 있습니다.

\(\lVert\mathbf{p}\rVert=\lVert\mathbf{q}\rVert=\sqrt2\), 그러나 \(d_M(\mathbf{p})^2=4/9\), \(d_M(\mathbf{q})^2=4\).

25차시 · 계산과 논증

단위를 바꾸면 PCA 방향도 바뀔까?

평균 0인 두 변수의 공분산이 \(\Sigma=\operatorname{diag}(4,1)\)이다. 둘째 변수의 표시 단위를 바꿔 모든 값을 10배 하여 \(x'=Dx\), \(D=\operatorname{diag}(1,10)\)으로 기록한다.

① 새 공분산과 첫 주성분 방향을 구하라. ② 같은 관측점의 마할라노비스 거리는 바뀌는가? 식으로 설명하라.

풀이와 판단 근거
\[\Sigma'=D\Sigma D^T=\operatorname{diag}(4,100)\]

기존 첫 방향은 \(e_1\), 새 첫 방향은 \(e_2\)이다. 공분산 PCA는 변수의 단위에 영향을 받으므로 변수별 중요도와 단위를 보고 표준화 여부를 정해야 한다.

\[(Dx)^T(D\Sigma D^T)^{-1}(Dx)=x^T\Sigma^{-1}x\]

공분산도 함께 변환하면 마할라노비스 거리는 같다. 좌표만 바꾸고 예전 공분산을 그대로 쓰면 이 성질이 성립하지 않는다.