수학:특이값_분해_singular_value_decomposition

This is an old revision of the document!


개요

특이값 분해는 정방행렬이 아닌 임의의 행렬을 특이값을 가진 행렬들로 분해하는 방법이다. 정방행렬의 고윳값 분해를 일반적인 행렬에 적용하는 것과 비슷하다. 이를테면 $m \times n$의 성분으로 이루어진 임의의 행렬 $X$에 대해

\begin{equation} X_{mn} = U_{mm} \Sigma_{mn} V^{\dagger}_{nn} \end{equation}

으로 분해하며, $U_{mm}$과 $V_{nn}$은 유니터리 행렬, $\Sigma_{mn}$는 특이값 $\sigma_n$들로 이루어진 행렬으로

\begin{equation} \Sigma_{mn}= \begin{pmatrix} \sigma_1 & 0 & \dots & & 0 \\ 0 & \sigma_2 & & & \\ \vdots & & \ddots & & \\ 0 & & & & \sigma_n & & \\ 0 & & \dots & & 0 \\ \vdots & & & & \vdots \\ 0 & & \dots & & 0 \end{pmatrix} \end{equation}

이 때 특이값 $\sigma_n \geq 0$ 이다. 주의할점은 지금의 상황에서는 $m > n$ 이다.

특징

특이값 분해는 정방행렬의 고윳값 분해와 비슷하다 보니 두 분해간 밀접한 관계를 가진다. 이를테면 행렬 $X_{mn}$의 전치행렬 $X_{mn}^T$간 곱은 \begin{align} X_{mn}^T X_{mn} &= (U_{mm} \Sigma_{mn} V^{\dagger}_{nn})^T (U_{mm} \Sigma_{mn} V^{\dagger}_{nn}) \\ &= (V^{\dagger T} \Sigma^T U^T) (U\Sigma V^{\dagger}) \\ &= V\Sigma^T\Sigma V^{\dagger} \end{align} 으로 정방행렬에 대한 고윳값 분해와 같은 꼴이 된다. 따라서 위의 식을 만족하는 고윳값을 $\lambda_i$라고 할 때,

\begin{equation} \lambda_i = \sigma_i^2 \end{equation}

앞의 행렬 X_{mn}에 대한 유사역행렬(pseudo-inverse matrix)을 $X^{+}$이라고 하면

\begin{equation} X^{+} = V \Sigma^{+} U^{\dagger} \end{equation}

이 때 $\Sigma^{+}$는 행렬 $\Sigma$를 전치후 0이 아닌 성분들에 대해 역수를 취한 행렬로, 앞의 $\Sigma_{mn}$의 경우

\begin{equation} \Sigma^{+}= \begin{pmatrix} \frac{1}{\sigma_1} & 0 & \dots & & 0 & 0 & \dots & 0 \\ 0 & \frac{1}{\sigma_2} & & & & \\ \vdots & & \ddots & & & \\ 0 & & & & \frac{1}{\sigma_n} & 0 & \dots & 0 \\ \end{pmatrix} \end{equation}

이 행렬과 X를 곱하면

\begin{equation} X^{+}X = V^{\dagger}\Sigma^{+}\Sigma V = I \end{equation}

를 만족하여 $X^{+}$는 X의 역행렬이 된다. 주의할 점은 유사역행렬이라는 이름답게 $XX^{+}\neq I$이라는 점이다.

참고문헌

  • K.Cahill, Physical Mathematics, 2nd ed, 1.32~1.33
  • 수학/특이값_분해_singular_value_decomposition.1650282495.txt.gz
  • Last modified: 2023/09/05 15:46
  • (external edit)