행렬, 역행렬, 유사역행렬의 기하학적 해석

행렬은 행렬의 열공간(span of column vectors, or column space)으로의 선형변환으로 해석할 수 있다.

주어진 벡터 x = \begin{bmatrix} x_1 & x_2 \end{bmatrix}^T를 행렬을 통해 선형변환할 때, 벡터 \vec{x}의 단위기저(\vec{e_1}, \vec{e_2})는 행렬의 열벡터(\vec{u}, \vec{v})로 변환된다.

\vec{x} = \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} = x_1 \begin{bmatrix} 1 \\ 0 \end{bmatrix} + x_2 \begin{bmatrix} 0 \\ 1 \end{bmatrix} = x_1 \vec{e_1} + x_2 \vec{e_2}

A\vec{x} = \begin{bmatrix} a & b \\ c & d \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} = \begin{bmatrix} \vec{u} & \vec{v} \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} = x_1 \vec{u} + x_2 \vec{v}

반대로 역행렬은 행렬의 열공간으로부터 원래공간(단위기저가 \vec{e_1}, \vec{e_2}인)으로의 선형변환을 의미한다.
이 과정에서 단일 기저와 선형변환에 의해 변환된 기저 간 scaler가 determinant가 된다.
이 블로그에서 이에 대해 좋은 시각화자료를 안내한다.

A^{-1} = det(A)^{-1} adj(A)

역행렬이 존재하지 않는다는 건 무엇을 의미할까?
이는 기존 공간에서 행렬의 열공간으로 사상할 때 열공간의 기저가 이루는 단위 넓이(det(A))가 0이라는 것을 의미한다.
다시 말해, A\vec{x} = \vec{b}에서 \vec{b}가 행렬의 열공간 내에 위치하지 않는다는 것을 말한다.
표현이 다소 어려울 수 있지만 우린 어떤 물건(3차원)을 손실없이 그림(2차원)으로 표현하는 게 불가능하다는 것을 이미 알고있다.

그렇다면 유사역행렬은 어떻게 해석할 수 있을까?
유사역행렬은 행렬의 열공간에 나타내지 못하는 벡터를 어떻게든 행렬의 열공간에 표현하려는 시도의 결과이다.
가장 단순한 시도로는 벡터를 행렬의 열공간에 사영(projection)하여 나타내는 것을 생각해볼 수 있는데, 이것이 바로 유사역행렬의 실체이다.
이에 따라 유사역행렬이 모든 행렬에 대해 유일하게 존재하고, 역행렬이 존재하는 경우 역행렬과 유사역행렬이 동치라는 것이 자명해진다.

이를 수식으로 확인해보자.
우선 본래의 문제, 주어진 벡터 \vec{x}\vec{b}로 사영하는 행렬 A에 대해 행렬 A의 역행렬은 다음과 같이 구할 수 있다.

A\vec{x} = \vec{b}

\vec{x} = A^{-1} \vec{b}

그러나 A의 역행렬이 존재하지 않는 경우 해가 존재하지 않거나 유일하지 않다.
이에 위에서 언급했듯 유사역행렬을 계산하여 해를 계산(근사)한다.
\vec{b}에 대한 A의 열공간으로의 사영을 \vec{b}'라 하자.
그 경우 \vec{b}'는 A의 열공간에 속하게 되고 다음과 같이 A의 열벡터의 선형결합(A\vec{x})으로 표현된다.

A\vec{x} = \vec{b}'

\vec{x} = A^{-1} \vec{b}'

이 때, A의 열공간과 \vec{h} = \vec{b} - \vec{b}'는 직교이다.
그러므로 A의 열공간과 \vec{b}의 관계는 다음과 같이 표현된다.

A^{T} \vec{h} = A^{T} (\vec{b} - \vec{b}') = A^{T} (\vec{b} - A\vec{x}) = 0

\therefore{A^{T}A\vec{x} = A^{T}\vec{b}}

\vec{x} = (A^{T}A)^{-1}A^{T}\vec{b} = A^{\dagger}\vec{b}

참고로 행렬 A가 선형독립이 아니라면 위의 과정 중 Gram Matrix A^{T}A 또한 선형독립이 아니게되어 역행렬이 존재하지 않는다.
이 점을 생각하면 모든 행렬에 대해 유사역행렬은 반드시 하나 존재한다는 명제는 거짓이다.
그럼에도 불구하고 다들 이 명제를 사용하는 것은 선형독립이 아닌 행렬 A의 영벡터행(Zero-row)을 제거해 선형독립으로 만들 수 있기 때문인 것으로 보인다.
썩 마음에 들진 않는다.

어쨋든 이처럼 유사역행렬 A^{\dagger}=(A^{T}A)^{-1}A^{T}A의 열공간에 \vec{b}를 사영했을 때의 벡터 \vec{b}'에 대해 A\vec{x}=\vec{b}'를 풀어내어 도출된다.

이에 대해서는 이 블로그에서 시각화 자료와 함께 매우 잘 설명되어있다.

댓글 남기기