본문 바로가기

decomposition3

특이값 분해(SVD)의 응용: 이미지 압축 특이값 분해는 다음과 같이 어떤 \( m \times n \) 실수 행렬(real matrix) \( A \)를 3개의 행렬의 곱으로 분해한 것이다. \[ A = U \Sigma V^T \tag{1} \] 이 식을 풀어 쓰면 다음과 같다. \[ A = \sigma _1 \mathbf{u}_1 \mathbf{v}_1^T + \sigma _2 \mathbf{u}_2 \mathbf{v}_2^T + \cdots + \sigma _r \mathbf{u}_r \mathbf{v}_r^T \tag{2} \] 여기서 \( \sigma _i \)는 특이값으로서 그 숫자는 행렬 \( A \)의 랭크(rank)와 같다. 특이값은 큰 값에서 작은 값의 순서로 정렬시킨 것이다. \[ \sigma _1 \ge \sigma _2 \.. 2020. 7. 25.
특이값 분해(SVD)의 증명 어떤 \( m \times n \) 실수 행렬(real matrix) \( A \)와 그 전치 행렬 \( A^T \)의 행렬곱 \( AA^T \)와 \( A^T A \)는 대칭행렬이며 준정정 행렬(positive semi-definite matrix)이다. 먼저 대칭행렬인지 확인해 보자. 행렬곱을 전치한 다음에 원래 행렬과 같은 지 확인하면 된다. \[ (AA^T )^T=AA^T, \ \ \ (A^T A)^T=A^T A \] 그렇다면 \( AA^T \)이 준정정 행렬인지 확인해 보자. 어떤 벡터 \( \mathbf{x} \)에 대해서 다음 부등식을 만족하는지 확인하면 된다. \[ \begin{align} \mathbf{x} ^T (AA^T ) \mathbf{x} &= (A^T \mathbf{x} )^T .. 2020. 7. 23.
특이값 분해(singular value decomposition) 행렬을 다른 여러 개의 행렬의 곱으로 쪼개는 것을 분해(decomposition)라고 한다. 행렬의 분해로는 고유값 분해(eigen decomposition), 촐레스키 분해(Cholesky decomposition), LU 분해(lower-upper decomposition), 특이값 분해(singular value decomposition) 등 여러가지가 있지만 그 중에서도 가장 중요한 것이 SVD라고 불리는 특이값 분해가 아닐까 싶다. 특이값 분해는 이미지 압축, 모델의 차원 축소, 근사해 계산, 웹서치, 제어분야에서 액추에이터와 센서의 최적 위치를 선정하는 문제, 제어력 할당 문제 등 매우 폭넓게 응용되고 있기 때문이다. 고유값이 행과 열의 갯수가 같은 정방 행렬(square matrix)에서만 .. 2020. 7. 23.