Mathematics/Linear Algebra

[Linear Algebra] 무어-펜로즈 유사역행렬(Moore-Penrose pseudoinverse)

언킴 2022. 3. 5. 16:51
반응형

정방행렬이고, 특이행렬이 아닐 경우 즉, full rank인 정방행렬(square matrix)에서만 역행렬을 정의할 수 있다. 정방 행렬이 아닌 행렬에서는 역행렬을 정의하는 것 대신에 무어-펜로즈 유사역행렬을 다음과 같이 정의할 수 있다. 

 

\[ A^{+}= \lim_{a \rightarrow 0}(A^T A + \alpha I)^{-1} A^T \]

 

$A^{+}$는 행렬 $A$의 무어-펜로즈 유사역행렬이다. 또한, 다음과 같은 조건을 만족해야지만 유사역행렬이라고 부를 수 있다. 

 

  • $ A A^+ A = A $

 

  • $ A^+AA^+ = A^+ $

 

  • $ (AA^+)^T  = AA^+ $

 

  • $ (A^+A)^T = A^+A $

 

이전 글에서 다룬 SVD로 유사역행렬을 쉽게 구할 수 있다. 우리는 SVD를 다음과 같이 정의한다. 

 

$ A = UDV^T $

 

SVD에서 $U$와 $V$는 직교행렬(orthogonal matrix)라고 했다. 직교 행렬은 $U^{-1} = U^T$를 만족하기 때문에 다음과 같이 값을 구할 수 있다. 

 

$ AA^+ = UDV^T A^+ $

 

$ (V^T)^{-1}D^+U^{-1} = A^+ $

 

$ A^+ = VD^+U^T$

 

이로써 행렬 $A$의 무어-펜로즈 유사역행렬인 $A^+$를 쉽게 구할 수 있다. 위에서 유사역행렬을 만족하기 위해선 4가지의 조건을 만족해야된다고 언급했다. 한번 확인해보자.

 

 

  • $ A A^+ A = UDD^+V^T = UDV^T = A $

 

  • $ A^+AA^+ = VD^+DD^+U^T = VD^+U^T = A^+ $

 

  • $ (AA^+)^T  = (UDD^+U^T)^T = (U \begin{bmatrix} I_r & 0 \\ 0 & 0 \end{bmatrix} U^T)^T = AA^+ $

 

  • $ (A^+A)^T = (VD^+DV^T)^T = (V \begin{bmatrix} I_r & 0 \\ 0 & 0 \end{bmatrix} V^T)^T = A^+A $ 

 

이로써 정방행렬이 아닌 행렬에 대해서 무어-펜로즈 유사역행렬을 구해보았다.