4.2. Projection

1. 프로젝션의 핵심 개념

프로젝션이란 어떤 벡터 bb를 어떤 부분공간 위로 가장 가깝게 내리는 것이라고 볼 수 있다.
가장 먼저 1차원 부분공간, 즉 a\mathbf{a}가 만드는 직선 위로 b\mathbf{b}를 내리는 경우를 생각할 수 있다.

이때 목표는 bb와 가장 가까운 직선 위의 점 pp를 찾는 것이다.
ppbbaa 위로의 프로젝션이라고 한다.

핵심은 오차 벡터가 수직이라는 점이다.

왜냐하면 부분공간 WW 위의 벡터 pp를 잡으면 원래 벡터 bbb=p+eb=p+e로 나타낼 수 있고, 이때 e=bpe=b-ppp에서 bb로 가는 오차벡터이며 프로젝션에서는 이 ee가 벡터 pp 자체가 아니라 부분공간 WW 전체에 수직이기 때문이다.

e=bpe = b - p

이때 최적의 점 pp에서는 오차 ee가 직선 방향 벡터 aa에 수직이어야 한다.
즉,

ae=0a^\top e = 0

이어야 한다.

이것이 프로젝션 문제 전체의 출발점이다.


2. 직선 위로의 프로젝션

직선은 aa가 생성하므로, 직선 위의 모든 점은 aa의 스칼라배로 표현된다.
따라서 프로젝션 pp는 어떤 스칼라 xx에 대해

p=axp = ax

의 형태이다.

그러면 오차는

e=baxe = b - ax

가 된다.

최적 조건은 eeaa에 수직이라는 것이므로,

a(bax)=0a^\top(b-ax)=0

이다.

이를 정리하면,

abaax=0a^\top b - a^\top a \, x = 0

즉,

(aa)x=ab(a^\top a)x = a^\top b

가 되고, 따라서

x=abaax = \frac{a^\top b}{a^\top a}

이다.

그러므로 프로젝션 벡터는

p=ax=aabaap = ax = a\frac{a^\top b}{a^\top a}

이다.


3. 직선 프로젝션의 해석

이 식은 삼각함수 없이도 아주 깔끔하게 프로젝션을 구하게 해준다.
기하적으로는 각도 θ\theta, cosθ\cos\theta 등을 생각할 수 있지만, 선형대수에서는 내적 조건 하나로 끝난다.

즉, 프로젝션의 본질은 다음 한 문장으로 요약된다.

가장 가까운 점을 찾는 문제는 오차가 부분공간에 수직이라는 조건으로 바뀌는 것이다.


4. 직선 프로젝션에서의 성질

4.1 bb를 두 배 하면 프로젝션도 두 배가 된다

프로젝션 공식이

p=aabaap = a\frac{a^\top b}{a^\top a}

이므로, bb2b2b로 바꾸면

p=aa(2b)aa=2aabaap = a\frac{a^\top(2b)}{a^\top a} = 2a\frac{a^\top b}{a^\top a}

가 된다.

따라서 프로젝션도 정확히 두 배가 된다.
즉, 입력 벡터 bb에 대해 선형적으로 반응하는 것이다.


4.2 aa를 두 배 해도 프로젝션은 바뀌지 않는다

프로젝션은 벡터 aa 자체가 아니라, aa가 만드는 직선에 대한 것이기 때문이다.

실제로 aa2a2a로 바꾸면

p=(2a)(2a)b(2a)(2a)p = (2a)\frac{(2a)^\top b}{(2a)^\top(2a)}

가 된다.

분자를 보면 2가 한 번 더 붙어 총 4배가 되고, 분모도 4배가 되므로 서로 약분된다.
따라서 결과는 변하지 않는다.

즉, 프로젝션은 방향이 같은 벡터의 크기 변화에는 영향을 받지 않는 것이다.


5. 프로젝션 행렬

프로젝션은 벡터 bb를 입력받아 그 프로젝션 pp를 출력하는 선형변환으로 볼 수 있다.
따라서 어떤 행렬 PP가 존재하여

p=Pbp = Pb

라고 쓸 수 있다.

직선 위로의 프로젝션 공식

p=aabaap = a\frac{a^\top b}{a^\top a}

를 보면, bb에 곱해지는 부분은

P=aaaaP = \frac{aa^\top}{a^\top a}

이다.

P=aaaaP = \frac{aa^\top}{a^\top a}프로젝션 행렬이라고 한다.


6. 프로젝션 행렬의 성질

6.1 열공간(column space)

P=aaaaP = \frac{aa^\top}{a^\top a}

의 열공간은 항상 aa가 만드는 직선이다.
왜냐하면 임의의 벡터 bb에 대해 PbPb는 언제나 그 직선 위에 놓이기 때문이다.

따라서 이 행렬의 열공간은 span(a)\text{span}(a)이다.


6.2 랭크(rank)

열공간의 차원이 1이므로,

rank(P)=1\operatorname{rank}(P)=1

이다.

즉, 직선 위로의 프로젝션 행렬은 랭크 1 행렬이다.


6.3 대칭성(symmetric)

프로젝션 행렬은 대칭이다.

P=PP^\top = P

이다.

왜냐하면 aaTaa^T는 전치해도 그대로이고, 분모 aTaa^T a는 스칼라이기 때문이다.


6.4 멱등성(idempotent)

프로젝션을 한 번 한 뒤 다시 해도 결과는 변하지 않는다.

즉,

P2=PP^2 = P

이다.

기하적으로는 이미 직선 위에 있는 점을 다시 직선 위로 내리면 그대로라는 뜻이다.
이 성질은 프로젝션 행렬의 가장 중요한 특징 중 하나이다.


7. 더 높은 차원으로의 일반화

이제 직선이 아니라 평면 또는 일반적인 부분공간으로 프로젝션하는 경우를 생각한다.

예를 들어 평면이 두 벡터 a1,a2a_1, a_2에 의해 생성된다고 하자.
그러면 평면 위의 모든 벡터는 이 둘의 선형결합이다.

즉 프로젝션 pp

p=x1a1+x2a2p = x_1 a_1 + x_2 a_2

와 같이 쓸 수 있다.

이를 행렬로 쓰면 훨씬 간단하다.
행렬 AA

A=[a1a2]A = \begin{bmatrix} a_1 & a_2 \end{bmatrix}

라고 두면,

p=Ax^p = A\hat{x}

이다.

여기서 x^\hat{x}프로젝션을 만드는 최적의 계수 벡터 이다.


8. 일반 부분공간에서의 핵심 조건

오차 벡터를

e=bAx^e = b - A\hat{x}

라고 하자.

최적의 프로젝션에서는 이 오차가 부분공간 전체에 수직이어야 한다.
즉, 부분공간을 생성하는 모든 벡터에 수직이어야 한다.

평면의 경우라면 eea1a_1a2a_2 모두에 수직이다.
따라서

a1(bAx^)=0a_1^\top(b-A\hat{x})=0 a2(bAx^)=0a_2^\top(b-A\hat{x})=0

가 된다.

이를 한꺼번에 쓰면

A(bAx^)=0A^\top(b-A\hat{x})=0

이다.

이 식이 일반 프로젝션 문제의 핵심 방정식이다.


9. 정규방정식(normal equations)

위 식을 정리하면

AAx^=ATbA^\top A \hat{x} = A^T b

를 얻는다.

이 식을 정규방정식이라고 한다.

여기서 ATAA^T A가 가역이라면,

x^=(AA)1Ab\hat{x} = (A^\top A)^{-1}A^\top b

이다.

그러므로 프로젝션 벡터는 p=Ax^p = A\hat{x}이므로,

p=A(AA)1Abp = A(A^\top A)^{-1}A^\top b

이다.

따라서 일반 부분공간으로의 프로젝션 행렬은

P=A(AA)1AP = A(A^\top A)^{-1}A^\top

이다.


10. 일반 프로젝션 행렬의 성질

직선의 경우와 마찬가지로 일반 프로젝션 행렬도 다음 성질을 가진다.

10.1 대칭성

P=PP^\top = P

이다.

10.2 멱등성

P2=PP^2 = P

이다.

즉, 한 번 프로젝션한 뒤 다시 프로젝션해도 결과는 같다.


11. 오차 벡터와 네 개의 기본 부분공간

오차 벡터 ee

e=bAx^e = b - A\hat{x}

이고, 정규방정식에서

Ae=0A^\top e = 0

를 만족한다.

따라서 eeN(A)N(A^\top) 에 속한다.

즉,

eN(A)e \in N(A^\top)

이다.

한편 선형대수의 네 개의 기본 부분공간 이론에 따르면 C(A)C(A)N(A)N(A^\top)는 서로 직교한다.
따라서 eN(A)e \in N(A^\top)라는 것은 eeAA의 열공간에 수직이라는 뜻이다.

즉, 프로젝션의 기하학과 네 개의 기본 부분공간의 구조가 정확히 맞아떨어지는 것이다.


12. 왜 프로젝션이 중요한가

프로젝션이 중요한 이유는 방정식 Ax=bAx=b가 정확히 풀리지 않는 경우가 많기 때문이다.

특히 식의 개수가 미지수보다 많으면 보통 해가 존재하지 않는다.
즉, bbAA의 열공간에 없는 경우이다.

이때 정확한 해는 없지만, 가장 가까운 해는 구할 수 있다.
즉, bb를 열공간 위로 프로젝션한 벡터 pp를 써서

Ax^=pA\hat{x}=p

를 푸는 것이다.

여기서 x^\hat{x}는 정확한 해는 아니지만 최선의 해(best possible solution) 이다.

즉, 프로젝션은 해가 없는 문제를 가장 잘 푸는 방법과 연결된다.


13. 예시: 세 점에 가장 잘 맞는 직선 찾기

강의에서 제시된 대표 예시는 다음 세 점에 가장 잘 맞는 직선을 찾는 문제이다.

점들은

(1,1), (2,2), (3,2)(1,1),\ (2,2),\ (3,2)

이다.

이 점들을 정확히 모두 지나는 직선은 존재하지 않는다.
따라서 가장 잘 맞는 직선, 즉 best fit line을 구해야 한다.

직선의 식을 b=C+Dtb = C + Dt라고 두자.
그러면 각 점을 지나야 한다는 조건은 다음 세 식이 된다.

첫 번째 점 (1,1)(1,1)에 대해

C+D=1C + D = 1

두 번째 점 (2,2)(2,2)에 대해

C+2D=2C + 2D = 2

세 번째 점 (3,2)(3,2)에 대해

C+3D=2C + 3D = 2

이다.

이를 행렬식으로 쓰면

A=[111213],x=[CD],b=[122]A= \begin{bmatrix} 1 & 1 \\ 1 & 2 \\ 1 & 3 \end{bmatrix}, \qquad x= \begin{bmatrix} C\\ D \end{bmatrix}, \qquad b= \begin{bmatrix} 1\\ 2\\ 2 \end{bmatrix}

이고,

Ax=bAx=b

의 형태가 된다.

즉,

[111213][CD]=[122]\begin{bmatrix} 1 & 1 \\ 1 & 2 \\ 1 & 3 \end{bmatrix} \begin{bmatrix} C\\ D \end{bmatrix} = \begin{bmatrix} 1\\ 2\\ 2 \end{bmatrix}

이다.

이 문제는 방정식 3개, 미지수 2개이므로 보통 정확히 풀 수 없다.
그래서 정규방정식

AAx^=AbA^\top A \hat{x} = A^\top b

를 풀어서 x^\hat{x}를 구해야 한다.

즉, 이 예시는 최소제곱법(least squares) 의 가장 전형적인 예시이다.


14. 최종 요약

프로젝션의 핵심은 다음과 같다.

14.1 직선 위로의 프로젝션

프로젝션 벡터는

p=axp = ax

이고, 최적 조건은

a(bax)=0a^\top(b-ax)=0

이다.

따라서

x=abaax = \frac{a^\top b}{a^\top a}

이며,

p=aabaap = a\frac{a^\top b}{a^\top a}

이다.

프로젝션 행렬은

P=aaaaP = \frac{aa^\top}{a^\top a}

이다.


14.2 일반 부분공간으로의 프로젝션

프로젝션 벡터는

p=Ax^p = A\hat{x}

이고, 오차는

e=bAx^e = b - A\hat{x}

이다.

최적 조건은

A(bAx^)=0A^\top(b-A\hat{x})=0

이며, 이것은

AAx^=ATbA^\top A \hat{x} = A^T b

가 된다.

따라서

x^=(AA)1Ab\hat{x} = (A^\top A)^{-1}A^\top b

이고,

p=A(AA)1Abp = A(A^\top A)^{-1}A^\top b

이다.

프로젝션 행렬은

P=A(AA)1AP = A(A^\top A)^{-1}A^\top

이다.


14.3 프로젝션 행렬의 두 핵심 성질

프로젝션 행렬 PP는 항상

P=PP^\top = P

를 만족하는 대칭행렬이며,

P2=PP^2 = P

를 만족하는 멱등행렬이다.


14.4 프로젝션의 의미

프로젝션은 해가 없는 연립방정식 Ax=bAx=b를 가장 잘 푸는 방법의 핵심이다.

즉, bbAA의 열공간 위로 가장 가깝게 내린 뒤, 그 프로젝션 벡터에 대해 해를 구하는 것이 최소제곱법의 본질이다.