jisung-02notes
← Archive

특이값분해 SVD (기초)

특이값분해의 세 행렬이 회전과 크기 조정, 좌표 변환에서 맡는 역할과 주성분의 의미를 정리한 노트입니다.

jisung-02

한 줄 요약

X=UΣVTX=U\Sigma V^T. UU는 데이터를 가장 잘 설명하는 직교 방향(주성분), Σ\Sigma는 각 방향의 중요도, VTV^T는 새 좌표 — L07 부분공간 기저 투영에서 필요했던 직교정규기저 UU를 SVD가 만들어 준다.

핵심 개념

요소크기의미
UU Left singular vectorsn×nn\times n직교정규. XX column space의 기저. u1u_1=최대 분산 방향(1st PC)
Σ\Sigma Singular valuesn×pn\times p 대각σ1≥σ2≥⋯≥0\sigma_1\ge\sigma_2\ge\dots\ge0. 각 방향 데이터 퍼짐(중요도)
VV Right singular vectorsp×pp\times p직교정규. 회전·스케일된 좌표계에서의 좌표
  • 기하학: UU=회전(rotation), Σ\Sigma=축별 확대/축소(scaling), VTV^T=새 좌표(coordinates).
  • u1u_1은 거리 최소화 = 분산 최대화 방향. 이후 u2,u3,…u_2,u_3,\dots는 잔차에 대해 순차적으로 구하며 모두 직교 → best kk-dim 근사.
  • SVD = PCA: left singular vectors = principal components. 공분산 C=1nXXTC=\tfrac1n XX^T의 고유벡터 = XXTXX^T의 고유벡터 = UU.

핵심 수식 / 예시

거리 최소화 → 분산 최대화 유도 (1D 부분공간 aa): di2=∥xi−aaTaTaxi∥2=xiTxi−xiTa aTxiaTad_i^2 = \Big\|x_i - \tfrac{aa^T}{a^Ta}x_i\Big\|^2 = x_i^Tx_i - \frac{x_i^T a\,a^T x_i}{a^Ta} xiTxix_i^Tx_i는 상수이므로 제거 → 최대화 문제로: a^=argmaxa aTXXTaaTa(= 1st left singular vector u1)\hat a = \text{argmax}_a\ \frac{a^T XX^T a}{a^Ta}\quad(\text{= 1st left singular vector } u_1)

분해 / rank-1 합: X=UΣVT=σ1u1v1T+σ2u2v2T+⋯+σrurvrTX = U\Sigma V^T = \sigma_1 u_1 v_1^T + \sigma_2 u_2 v_2^T + \dots + \sigma_r u_r v_r^T

투영행렬이 깔끔해짐: PX=X(XTX)−1XT=UUT(역행렬 소거)P_X = X(X^TX)^{-1}X^T = UU^T\quad(\text{역행렬 소거})

최소제곱 응용: span(cols(U))=span(cols(X))\text{span}(\text{cols}(U))=\text{span}(\text{cols}(X)) 이므로 w^=UTy, y^=UUTy\hat w=U^Ty,\ \hat y=UU^Ty.