특이값 분해
위키백과 ― 우리 모두의 백과사전.
선형대수학에서 특이값 분해(Singular Value Decomposition, SVD)는 직사각행렬을 분해하는 중요한 방법 중 하나로 신호처리와 통계학 분야에서 많이 쓰인다.
특이값 분해는 행렬의 스펙트럼 이론을 임의의 직사각행렬에 대해 일반화한 것으로 볼 수 있다. 스펙트럼 이론을 이용하면 직교 정사각행렬을 고유값을 기저로 하여 대각행렬로 분해할 수 있다.
[편집] 정의
행렬 M을 실수 또는 복소수의 집합 K의 원소로 이루어진 m × n 행렬이라 가정하자. 이때, M은 다음과 같이 세 행렬의 곱으로 나타낼 수 있다.
여기서 U는 m × m 유니터리 행렬이고, m × n 행렬 Σ는 대각선에 음수가 아닌 수를 갖고 나머지는 모두 0인 행렬이며 V*은 V의 켤레행렬이라고도 하며, n × n 유니터리 행렬을 가리킨다. 이와 같은 세 행렬의 곱으로 나타내는 것을 M의 특이값 분해라고 한다.
일반적으로 Σi, i는 큰 값이 더 앞에 오도록 쓰며, 이렇게 쓸 경우 Σ는 M에 따라 유일하게 결정된다.
[편집] 특이값과 특이벡터
m × n 행렬 M에 대해 다음 두 조건을 만족하는 벡터 과 이 존재할 때, 음수가 아닌 실수 σ를 특이값이라 부른다.
또한 u와 v를 각각 좌측 특이벡터와 우측 특이벡터라 부른다.
특이값 분해 에서 Σ의 대각선 성분들은 M의 특이값이 되고 U와 V의 열들은 각각의 특이값에 해당하는 좌측 특이벡터와 우측 특이벡터가 된다. 또한 위 식으로부터 다음과 같은 사실도 알 수 있다.
- m × n 행렬 M은 최소한 한개, 최대 p = min(m, n)개의 서로 다른 특이값을 갖는다.
- M의 좌측 특이벡터들을 포함하는, Km의 유니터리 기저를 항상 찾을 수 있다.
- M의 우측 특이벡터들을 포함하는, Kn의 유니터리 기저를 항상 찾을 수 있다.
[편집] 고유값 분해와의 관계
특이값 분해는 직교 정사각행렬만을 분해할 수 있는 고유값 분해보다 훨씬 일반적인 행렬을 다룰 수 있지만, 두 분해는 서로 관련되어 있다.
M이 양의 정부호인 에르미트 행렬일 때 M의 모든 고유값은 음이 아닌 실수이다. 이때 M의 특이값과 특이벡터는 M의 고유값과 고유벡터와 같아진다.
더 일반적으로는, M의 특이값 분해가 주어졌을 때 다음과 같은 두 식이 성립한다.
두 식의 우변은 좌변의 고유값 분해를 나타낸다. 즉, M의 0이 아닌 특이값들의 제곱은 M*M 과 MM*의 고유값들과 같다. 또한 U는 MM*의 고유벡터이고 V는 M*M의 고유벡터이다.