선형대수 note 15: Projections onto subspaces

2차원 벡터공간에서 부분공간 (선) 으로의 투영 (Projection) 을 알아보자.

projection-2d

\mathbf{p} = x\mathbf{a} 이고, \mathbf{a}\mathbf{e} 와 수직을 이룬다는 사실로부터,

    \[\begin{aligned} \mathbf{a}^T \mathbf{e} &= 0 \\ \mathbf{a}^T (\mathbf{b} - x\mathbf{a}) &= 0 \\ x \mathbf{a}^T \mathbf{a} &= \mathbf{a}^T \mathbf{b} \\ x &= \frac{\mathbf{a}^T \mathbf{b}}{\mathbf{a}^T \mathbf{a}} \end{aligned}\]

    \[\mathbf{p} = x\mathbf{a} = \mathbf{a} \frac{\mathbf{a}^T \mathbf{b}}{\mathbf{a}^T \mathbf{a}}\]

위 식에서 \mathbf{b}\mathbf{p} 로 projection 하는 행렬 P 를 구할 수 있다.

(1)   \[P = \frac{\mathbf{a} \mathbf{a}^T}{\mathbf{a}^T \mathbf{a}} \]

행렬 P 는 아래와 같은 특징이 있다.

P^T = P : 식 (1) 의 분모는 scalar 상수이고, 분자는 \mathbf{a} \mathbf{a}^T 이므로 대칭행렬이다.
P^2 = P : 두 번 projection 한 결과는 처음과 같다.

왜 투영(projection) 을 하는 걸까?

A\mathbf{x} = \mathbf{b} 의 해가 존재하지 않을 수 있기 때문이다. A\mathbf{x} 는 열공간에 존재해야 하지만 \mathbf{b} 가 실제로 A 의 열공간에 존재한다는 보장은 없다. 그래서 \mathbf{b} 와 가장 가까운 \mathbf{p} 를 구해서 A\hat{\mathbf{x}} = \mathbf{p} 를 구하는 것이다.

이번에는 3차원 벡터공간에서 부분공간 (평면) 으로의 투영을 알아보자.

projection-3d

행렬 A 는 각 열들이 벡터 \mathbf{a}_1, \mathbf{a}_2 로 이루어져 있다고 하자. 그러므로 A 는 세로로 긴 행렬이다. \mathbf{p}A 의 열공간에 있으므로 \mathbf{p} = A\mathbf{x} 이고, \mathbf{e}A 의 열공간과 수직이라는 사실로부터,

    \[\begin{aligned} A^T \mathbf{e} &= 0 \\ A^T (\mathbf{b} - A\mathbf{x}) &= 0 \\ A^T A \mathbf{x} &= A^T \mathbf{b} \\ \mathbf{x} &= (A^T A)^{-1} A^T \mathbf{b} \end{aligned}\]

    \[\mathbf{p} = A\mathbf{x} = A (A^T A)^{-1} A^T \mathbf{b}\]

투영 행렬 P 는,

(2)   \[P = A (A^T A)^{-1} A^T \]

위에서 투영을 하는 이유는 A\mathbf{x} = \mathbf{b} 에서 해가 존재하지 않는 경우 최적 근사해를 구하기 위해서라고 설명했다. 이런 경우에 A 는 아래로 긴 직사각 행렬이다. 만약 A 의 열이 선형독립인 정방 행렬이라고 하면 A 의 역행렬이 존재하므로 식 (2) 는 A A^{-1} (A^T)^{-1} A^T 이 되어 단위 행렬이 되어버린다.


선형대수 note 목록

Leave a Reply

Your email address will not be published. Required fields are marked *