31.2 SVD의 행렬 표현: A = UΣVᵀ의 구조적 분석

1. 전체 SVD의 행렬 구조

m \times n 행렬 A (\operatorname{rank}(A) = r, p = \min(m, n))의 전체 SVD A = U \Sigma V^T에서 각 인수의 구조를 상세히 분석한다.

1.1 좌특이벡터 행렬 U

U \in M_{m \times m}(\mathbb{R})는 직교 행렬이다:

U = \begin{pmatrix} u_1 & u_2 & \cdots & u_m \end{pmatrix}, \quad U^T U = U U^T = I_m

U의 열벡터 u_1, \ldots, u_m\mathbb{R}^m의 정규 직교 기저를 형성한다. 이들은 AA^T의 고유벡터이며, AA^T u_i = \sigma_i^2 u_i (i = 1, \ldots, p)를 만족한다.

  • u_1, \ldots, u_r: A열 공간(column space) \operatorname{col}(A)의 정규 직교 기저.
  • u_{r+1}, \ldots, u_m: A좌 영 공간(left null space) \ker(A^T)의 정규 직교 기저.

1.2 특이값 행렬 \Sigma

\Sigma \in M_{m \times n}(\mathbb{R})는 대각형 행렬이다:

\Sigma = \begin{pmatrix} \sigma_1 & & & 0 & \cdots & 0 \\ & \sigma_2 & & 0 & \cdots & 0 \\ & & \ddots & \vdots & & \vdots \\ & & & \sigma_p & \cdots & 0 \\ 0 & \cdots & & 0 & \cdots & 0 \\ \vdots & & & \vdots & & \vdots \\ 0 & \cdots & & 0 & \cdots & 0 \end{pmatrix}

m > n이면 \Sigma의 하단에 m - n개의 영행이 추가되고, m < n이면 우측에 n - m개의 영열이 추가된다. 특이값은 \sigma_1 \geq \sigma_2 \geq \cdots \geq \sigma_r > 0 = \sigma_{r+1} = \cdots = \sigma_p를 만족한다.

1.3 우특이벡터 행렬 V

V \in M_{n \times n}(\mathbb{R})는 직교 행렬이다:

V = \begin{pmatrix} v_1 & v_2 & \cdots & v_n \end{pmatrix}, \quad V^T V = V V^T = I_n

V의 열벡터는 A^T A의 고유벡터이며, A^T A v_i = \sigma_i^2 v_i를 만족한다.

  • v_1, \ldots, v_r: A행 공간(row space) \operatorname{row}(A)의 정규 직교 기저.
  • v_{r+1}, \ldots, v_n: A영 공간(null space) \ker(A)의 정규 직교 기저.

2. m > n, m = n, m < n 경우의 구조적 차이

2.1 m > n (과결정 시스템)

A_{m \times n} = U_{m \times m} \, \Sigma_{m \times n} \, V_{n \times n}^T

\Sigma는 상단에 n \times n 대각 블록, 하단에 (m-n) \times n 영 블록을 갖는다:

\Sigma = \begin{pmatrix} D \\ 0 \end{pmatrix}, \quad D = \operatorname{diag}(\sigma_1, \ldots, \sigma_n)

2.2 m = n (정방 행렬)

A_{n \times n} = U_{n \times n} \, \Sigma_{n \times n} \, V_{n \times n}^T

\Sigman \times n 대각 행렬이다. 이 경우 SVD는 고유값 분해와 유사한 형태를 갖으나, U \neq V일 수 있으며 특이값은 항상 음이 아닌 실수이다.

2.3 m < n (부족결정 시스템)

A_{m \times n} = U_{m \times m} \, \Sigma_{m \times n} \, V_{n \times n}^T

\Sigma는 좌측에 m \times m 대각 블록, 우측에 m \times (n-m) 영 블록을 갖는다:

\Sigma = \begin{pmatrix} D & 0 \end{pmatrix}, \quad D = \operatorname{diag}(\sigma_1, \ldots, \sigma_m)

3. 축소 SVD(Reduced/Thin SVD)

전체 SVD에서 영 특이값에 대응하는 성분을 제거한 축소 SVD

A = U_r \Sigma_r V_r^T

이다. 여기서 U_r \in M_{m \times r}, \Sigma_r \in M_{r \times r}, V_r \in M_{n \times r}이다. U_r의 열은 정규 직교이나 U_r는 정방 행렬이 아니므로 직교 행렬은 아니다: U_r^T U_r = I_r이나 U_r U_r^T \neq I_m (일반적으로).

축소 SVD는 저장 공간이 (m + n)r + r이므로, r \ll \min(m, n)이면 전체 SVD의 m^2 + mn + n^2보다 현저히 적다.

4. 외적 형태(Outer Product Form)의 SVD

SVD를 열 단위가 아닌 **외적(outer product)**의 합으로 전개하면

A = \sum_{i=1}^{r} \sigma_i \, u_i v_i^T

이다. 각 항 \sigma_i u_i v_i^Tm \times n 행렬이며 계수(rank)가 1이다. 따라서 SVD는 Ar개의 계수 1 행렬의 가중합으로 분해한다. 가중치는 특이값 \sigma_i이다.

이 분해의 의의:

  • 각 항 \sigma_i u_i v_i^T의 기여도는 \sigma_i에 비례한다.
  • \sigma_1 \geq \sigma_2 \geq \cdots이므로, 앞의 항이 더 중요하다.
  • 처음 k개 항의 합 A_k = \sum_{i=1}^{k} \sigma_i u_i v_i^TA의 최적 계수 k 근사이다.

5. 좌특이벡터, 우특이벡터, 특이값의 관계식

SVD A = U \Sigma V^T로부터 다음의 관계가 성립한다:

A v_i = \sigma_i u_i, \quad i = 1, \ldots, r

A^T u_i = \sigma_i v_i, \quad i = 1, \ldots, r

A v_i = 0, \quad i = r+1, \ldots, n

A^T u_i = 0, \quad i = r+1, \ldots, m

첫 번째 관계 Av_i = \sigma_i u_i는 “A가 우특이벡터 v_i를 좌특이벡터 u_i 방향으로 변환하되, 길이를 \sigma_i배로 스케일링한다“는 것을 의미한다. 이는 SVD의 기하학적 해석의 핵심이다.

6. A^T AAA^T의 고유값 분해와의 관계

A^T A = V \Sigma^T \Sigma V^T = V \operatorname{diag}(\sigma_1^2, \ldots, \sigma_n^2) V^T

AA^T = U \Sigma \Sigma^T U^T = U \operatorname{diag}(\sigma_1^2, \ldots, \sigma_m^2) U^T

따라서:

  • VA^T A의 직교 대각화에서의 고유벡터 행렬이다.
  • UAA^T의 직교 대각화에서의 고유벡터 행렬이다.
  • \sigma_i^2A^T A (또는 AA^T)의 고유값이다.
  • A^T AAA^T의 양의 고유값은 동일하다.

이 관계는 SVD의 존재 증명에서 핵심적으로 활용된다: A^T A는 대칭 양의 반정부호이므로 스펙트럼 정리에 의하여 직교 대각화가 가능하고, 고유값이 음이 아닌 실수이다. 이 고유값의 양의 제곱근이 특이값이 된다.

7. 수치 예시

A = \begin{pmatrix} 3 & 2 \\ 2 & 3 \\ 1 & 1 \end{pmatrix}

m = 3, n = 2이다.

A^T A 계산:

A^T A = \begin{pmatrix} 14 & 13 \\ 13 & 14 \end{pmatrix}

고유값: \lambda_1 = 27, \lambda_2 = 1이다. \sigma_1 = \sqrt{27} = 3\sqrt{3}, \sigma_2 = 1이다.

대응 고유벡터: v_1 = \frac{1}{\sqrt{2}}\begin{pmatrix} 1 \\ 1 \end{pmatrix}, v_2 = \frac{1}{\sqrt{2}}\begin{pmatrix} 1 \\ -1 \end{pmatrix}.

좌특이벡터 계산:

u_1 = \frac{Av_1}{\sigma_1} = \frac{1}{3\sqrt{3}} \cdot \frac{1}{\sqrt{2}} \begin{pmatrix} 5 \\ 5 \\ 2 \end{pmatrix} = \frac{1}{\sqrt{54}} \begin{pmatrix} 5 \\ 5 \\ 2 \end{pmatrix}

u_2 = \frac{Av_2}{\sigma_2} = \frac{1}{1} \cdot \frac{1}{\sqrt{2}} \begin{pmatrix} 1 \\ -1 \\ 0 \end{pmatrix} = \frac{1}{\sqrt{2}} \begin{pmatrix} 1 \\ -1 \\ 0 \end{pmatrix}

u_3u_1, u_2에 직교하는 단위 벡터로 구성한다.

\Sigma = \begin{pmatrix} 3\sqrt{3} & 0 \\ 0 & 1 \\ 0 & 0 \end{pmatrix}

검증: U \Sigma V^T = A를 확인한다.

외적 형태로 전개하면:

A = 3\sqrt{3} \cdot u_1 v_1^T + 1 \cdot u_2 v_2^T

\sigma_1 = 3\sqrt{3} \approx 5.196\sigma_2 = 1보다 현저히 크므로, 첫 번째 항이 A의 구조를 지배한다.

8. SVD 인수의 유일성

SVD A = U \Sigma V^T에서 특이값 \sigma_i는 유일하게 결정된다. 그러나 특이벡터에는 다음의 비유일성이 존재한다:

부호의 자유도. u_iv_i의 부호를 동시에 반전하여도 (u_i \to -u_i, v_i \to -v_i) \sigma_i u_i v_i^T는 변하지 않는다.

중복 특이값의 회전 자유도. \sigma_i = \sigma_j (i \neq j)이면, u_i, u_j가 이루는 부분 공간 내 임의의 정규 직교 기저와 v_i, v_j가 이루는 부분 공간 내 대응하는 정규 직교 기저를 선택할 수 있다.

영 특이값에 대응하는 특이벡터. 영 특이값에 대응하는 좌특이벡터(u_{r+1}, \ldots, u_m)와 우특이벡터(v_{r+1}, \ldots, v_n)는 각각 \ker(A^T)\ker(A)의 임의의 정규 직교 기저로 선택할 수 있다.

9. 복소 SVD

복소 행렬 A \in M_{m \times n}(\mathbb{C})에 대하여도 SVD가 존재한다:

A = U \Sigma V^*

여기서 UV는 유니터리 행렬(U^* U = I, V^* V = I), \Sigma는 음이 아닌 실수 대각 성분을 갖는 대각형 행렬, V^*는 켤레 전치(conjugate transpose)이다. 특이값은 여전히 음이 아닌 실수이다.