Eigenvalue Decomposition은 정사각행렬에만 정의되고 diagonalizable하지 않은 행렬에는 바로 적용할 수 없다. Singular Value Decomposition은 모든 실수 또는 복소수 행렬에 존재한다.

에 대해

로 분해할 수 있다.

  • : Orthogonal Matrix
  • : Orthogonal Matrix
  • : diagonal-like matrix

복소수 행렬에서는 대신 를 사용한다.

AᵀA와 Singular Value

는 항상 Symmetric Positive Semidefinite이다.

따라서 Eigenvalue는 모두 0 이상이다.

라고 하면 Singular Value는

로 정의한다.

Singular Value는 큰 순서로 정렬한다.

여기서 이다.

Right와 Left Singular Vector

의 Orthonormal Eigenvector 를 Right Singular Vector라고 한다.

일 때

로 정의하면

이다. 를 Left Singular Vector라고 한다.

또한

이므로 Left Singular Vector는 의 Eigenvector이다.

U의 column들이 Orthonormal한 이유

에 대해

이고 이면 norm이 1이다. 따라서 nonzero singular value에 대응하는 들은 Orthonormal하다.

SVD의 기하학적 의미

는 세 단계의 변환이다.

  1. : 입력 공간을 rotation 또는 reflection한다.
  2. : 서로 orthogonal한 축을 각각 배 한다.
  3. : 출력 공간을 rotation 또는 reflection한다.

단위구는 에 의해 주축 길이가 인 ellipsoid로 변한다. 가장 큰 Singular Value 는 최대 stretching factor이다.

이다.

예제

이다.

의 Eigenvalue는 이다. 따라서 Singular Value는

이다.

Right Singular Vector를

로 선택한다.

이다.

따라서

이고 는 위의 Right Singular Vector들을 column으로 가진다.

Reduced SVD

Rank가 이면 nonzero Singular Value에 해당하는 부분만 사용하여

로 쓸 수 있다.

이다. 저장 공간과 계산량을 줄일 수 있다.

Fundamental Subspace

SVD는 네 Fundamental Subspace를 직접 보여 준다.

Rank-1 Decomposition

SVD를 column별로 전개하면

이다. 각 항은 Rank 1 Matrix이다.

앞의 개 항만 남기면

이다. Eckart-Young Theorem에 따라 의 가장 좋은 Rank approximation이다.

이다. 이미지 압축, noise reduction, PCA와 연결된다.

Moore-Penrose Pseudoinverse

정사각행렬이 아니거나 singular한 행렬에는 일반 inverse가 없다. SVD를 이용해 Pseudoinverse를 정의한다.

는 0이 아닌 Singular Value를 역수로 바꾸고 matrix shape을 transpose한 것이다.

Pseudoinverse는 다음 Moore-Penrose conditions를 만족한다.

에 대한 Orthogonal Projection이고, 에 대한 Orthogonal Projection이다.

정리

  • 모든 행렬은 SVD를 가진다.
  • Singular Value는 Eigenvalue의 square root이다.
  • 이다.
  • SVD는 rotation/reflection, axis scaling, rotation/reflection으로 해석된다.
  • 이다.
  • Pseudoinverse는 이다.

확인 문제

의 Singular Value와 Rank를 구한다.

풀이

의 Eigenvalue는 이다. 따라서 Singular Value는 이고 Rank는 nonzero Singular Value의 수인 이다.