-
[Perception] 3-2 Singular Value DecompositionCV & ML 2022. 3. 19. 12:20
오늘은 특이값 분해(Singular Value Decompositon; SVD)에 대하여 알아보겠습니다.
Perception 강의로서 들었지만 추상적인 그림으로 가르쳐주는게 잘 이해가 되지 않아, 다른 블로그를 보고 이해한 부분들을 적어보겠습니다.
특이값 분해는 mxn의 행렬 A를 mxn의 U 행렬, nxn의 D 행렬, nxn의 Vt (V의 전치행렬)로 분해하는 과정을 말합니다.
이렇게 분해된 행렬들은 각각의 특징을 갖고 있는데요, U의 각각 column 벡터와 Vt의 각각 row 벡터를 '특이 벡터'라고 합니다. U의 특이벡터들끼리, 그리고 Vt의 특이벡터들끼리는 서로 직교하는 성질을 갖고 있습니다. 이 벡터들의 크기는 1로 일정하고, 서로 다른 벡터들끼리 곱했을 때는 0이라는 값이 나오게 됩니다.
그래서 UtU와 VtV 결과는 I 행렬이 나오게 됩니다.
그리고 D는 대각선 행렬이라해서, 빨간색으로 위치한 것처럼 대각선 위치의 값들 빼고는 모든 값이 0인 행렬입니다. 이 D 행렬의 대각성분은 AtA 혹은 AAt의 고유값들에 루트를 씌워준 값으로 구성되어 있고, 이 값을 행렬 A의 특이값이라고 합니다.
그리고 D에서는 위에서 아래쪽으로 값들이 내림차순으로 배열되어 있습니다.
행렬 A의 rank 값은 m과 n 중 더 작은 값을 의미합니다. 그리고 r 뒤에는 대각성분 값이 다 0이 되는 데, 그런 경우, Vt의 row= r~n 까지의 행렬은 nullspace가 됩니다.
마지막에는 수업 영상에 나온 예제에 대해 설명하고 마무리하겠습니다.
다른 관점에서 찍힌 사진의 관계를 나타내는 fundamental matrix F가 있다고 할 때, 특이값 분해를 통해 u, d, v 행렬로 나타낼 수 있습니다.
이 때 F의 rank = 1 라고 할 수 있다.
Least Square Problem
최소자승법 문제는 어떤 모델의 파라미터를 구하는 방법 중 하나이며, 추정치와 실제값의 차이 residual이 가장 작게끔 파라미터를 구하는 게 목적이다.
residual을 계산하는 데 2가지 방법이 소개되고 있다.
참고 블로그
https://darkpgmr.tistory.com/56
'CV & ML' 카테고리의 다른 글
Undefined Symbols (vlfeat 오류) (0) 2022.03.23 [Perception] 3-1. Visual Features (0) 2022.03.19 [Perception] 2-2. Compute Projective Transformations (0) 2021.12.14 [Perception] 1-3. 소실점(Vanishing Points) (0) 2021.12.14 [Perception] 1-2. Single View Geometry (0) 2021.12.09