선형대수 note 16: Projection matrices and least squares

지난 강의에서 우리는 C(A) 로의 투영 행렬 P 를 안다.

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

    \[P\mathbf{b} = \mathbf{p}\]

만약 \mathbf{b}C(A) 에 존재한다면, P\mathbf{b} = \mathbf{b} 가 된다.

\mathbf{b}A 의 열공간에 존재하므로 A 의 열들의 선형결합이다. 즉, \mathbf{b} = A\mathbf{x} 로 나타낼 수 있고, A\mathbf{x}C(A) 에 투영하면 A \{(A^T A)^{-1} A^T A\} \mathbf{x} = A\mathbf{x} 가 되어 처음과 같게 된다.

만약 \mathbf{b} \perp C(A) 이라면, P\mathbf{b} = \mathbf{0} 가 된다.

\mathbf{b}A 의 열공간의 모든 벡터들이 수직이라면 \mathbf{b}N(A^T) 에 있다는 말이고,1 A^T \mathbf{b} = \mathbf{0} 이므로 \mathbf{b}C(A) 에 투영하면 \mathbf{0} 이 되는 것을 알 수 있다.

project-b-to-column-space

위의 그림을 보면 \mathbf{b}C(A) 로 투영되면 \mathbf{p} 가 되고, N(A^T) 로 투영되면 \mathbf{e} 가 된다. \mathbf{b}, \mathbf{p}, \mathbf{e} 의 관계는 다음과 같다.

    \[\begin{aligned} \mathbf{b} &= \mathbf{p} + \mathbf{e} \\ \mathbf{p} &= P\mathbf{b} \\ \mathbf{e} &= (I - P)\mathbf{b} \end{aligned}\]

여기까지가 투영 (projection) 에 대한 복습이고, 이제 최소자승법 (Least Square Method) 이 무엇인지 알아보자. 최소자승법은 조금 어렵게 말하면, 어떤 domain 에 대한 데이터들이 주어졌을 때 전체 error 를 최소화하는 함수2의 파라미터를 구하는 것이다.3 예를 들어 보자.

시간 t 에 대한 데이터 (t, y) = (1, 1), (2, 2), (3, 2) 이 있다고 할 때 세점을 모두 지나는 직선은 존재하지 않지만 최대한 가깝게 지나는 직선은 존재한다. 이 직선은 y = c + dt 의 선형함수로 나타낼 수 있다. 그러면,

best-fitting-line

    \[\begin{aligned} c + d &= 1 \\ c + 2d &= 2 \\ c + 3d &= 2 \end{aligned}\]

이것을 행렬로 나타내면,

    \[\begin{aligned} \begin{bmatrix} 1 & 1 \\ 1 & 2 \\ 1 & 3  \end{bmatrix} \begin{bmatrix} c \\ d \end{bmatrix} &= \begin{bmatrix} 1 \\ 2 \\ 2 \end{bmatrix} \\ A\mathbf{x} &= \mathbf{b} \end{aligned}\]

하지만 그림에서 보듯이 세개의 점을 모두 통과하는 직선은 존재하지 않는다. 다시 말해 A\mathbf{x} = \mathbf{b} 를 만족하는 해 \mathbf{x} 는 존재하지 않는다. \mathbf{b}C(A) 에 존재하지 않기 때문이다. 그렇다면 여기서 포기해야 할까? 물론 \mathbf{x} 는 존재하지 않으므로 포기해야 한다.

C(A) 에 존재하면서 \mathbf{b} 에 가장 근접한 벡터를 A\hat{\mathbf{x}} 라고 하자. A\hat{\mathbf{x}}\mathbf{b} 와의 차이를 나타내는 벡터를 \mathbf{e} 라고 한다면 \mathbf{e} 의 길이가 최소가 될 때 해 \hat{\mathbf{x}} 을 구할 수 있을 것이다.

(2)   \[||A\hat{\mathbf{x}} - \mathbf{b}||^2 = ||\mathbf{e}||^2 \]

이것이 최소자승 (Least Square) 의 의미이다.

A\hat{\mathbf{x}}C(A) 에 존재하고 \mathbf{b}C(A) 바깥에 존재한다. A\hat{\mathbf{x}} - \mathbf{b} 의 길이가 최소가 되려면 A\hat{\mathbf{x}}\mathbf{b}C(A) 에 투영한 (projected) 벡터 \mathbf{p} 가 되어야 한다. 그렇다! 결국 최소자승은 해가 존재하지 않는 A\mathbf{x} = \mathbf{b} 대신에 A\hat{\mathbf{x}} = \mathbf{p} 로 만들어 해를 구하는 문제가 된다.

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

양변에 A^T 를 곱하면,

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

식을 분석해보자. A\mathbf{x} = \mathbf{b} 는 해가 존재하지 않지만, 양변의 좌측에 A^T 를 곱하면 신기하게도 해를 구할 수 있게 된다. 어째서 일까? A 의 열 들이 선형 독립이라면 A^TA 는 가역 대칭 정방 행렬이다.4 역행렬을 갖기 때문에 해를 구할 수 있게 되는데, 그 해는 A\mathbf{x} = \mathbf{b} 가 아닌 A \hat{\mathbf{x}} = \mathbf{p} 에 대한 해가 된다.


선형대수 note 목록

  1. C(A) 에 수직인 부분 공간은 N(A^T) 라는 것을 이전에 배웠다.
  2. 여기서는 선형 함수를 사용한다. 지금 다루는 최소자승법은 정확히는 선형 최소자승법이다.
  3. 회귀분석 (Regression Analysis) 에서 사용하는 방법이다.
  4. 이것에 대한 증명은 생략

Leave a Reply

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