AI/Machine Learning

[Machine Learning] 선형대수 - 특이값 분해

byunghyun23 2022. 8. 9. 16:50

고윳값 분해는 정방행렬(nxn)에만 적용됩니다.

이와 달리, 특이값 분해(Singular Value Decomposition, SVD)는 정방행렬이 아니더라도(mxn) 분해가 가능합니다.

특이값 분해는 고윳값 분해와 유사하게 아래와 같이 정의됩니다.

U는 AA^T의 특이벡터 행렬이고, V는 A^TA의 특이벡터 행렬입니다.

Σ는 특이값 대각 행렬입니다.

A가 mxn 행렬일 때, U는 mxm, Σ는 mxn, V는 nxn으로 구성됩니다.

 

또한 U와 V는 A와 A^T의 곱으로 이루어져있기 때문에 대칭 행렬입니다.(A와 A의 전치행렬을 곱하면 대칭 행렬이 됩니다.)

 

대칭 행렬의 고유 벡터는 서로 직교인 특징이 있습니다.또한, U와 V는 AA^T와 A^TA의 특이벡터 행렬이고 정규 직교 행렬입니다.

 

특이값 분해를 그림으로 표현하면 다음과 같습니다.

SVD

 

Σ의 대각 성분인 특이값은 AA^T 또는 A^TA의 고윳값의 루트입니다.

U, V는 정규 직교 행렬이기 때문에 AA^T, A^TA의 고유벡터를 계산한 후 벡터의 크기만큼 나눠줘야 합니다.

즉, 특이값 분해는 고윳값 분해를 기반으로 계산할 수 있습니다.