

확률부터 LLM까지, 원리부터 제대로 배우는 자기주도 학습 플랫폼
특이값 분해(SVD)는 임의의 행렬을 회전·스케일·회전 세 행렬의 곱으로 분해하는 선형대수 기법으로, 차원축소·추천의 기반이다.
각 단계를 클릭하면 해당 학습 내용을 볼 수 있습니다
학습 진도 (완료한 단계)
0%
특이값 분해(SVD)는 어떤 행렬이든 "회전 → 늘림 → 회전"이라는 세 개의 단순한 변환의 곱으로 쪼개는 방법입니다. 행렬이 하는 복잡해 보이는 일을 기본 동작 세 가지로 분해하면, 그 행렬이 담고 있는 정보를 중요한 순서대로 줄 세울 수 있고, 앞쪽 몇 개만 남겨 데이터를 압축하거나 노이즈를 걸러낼 수 있습니다.
회전 → 늘림 → 회전 (교육용 시나리오): 모눈종이 위에 반지름 1인 원을 그리고, 원 위의 점들에 어떤 행렬 A를 곱해 봅시다. 결과는 항상 (기울어진) 타원이 됩니다. SVD는 이 변환을 세 단계로 설명합니다. 1. 첫 번째 회전: 원을 돌려서 "늘릴 방향"을 좌표축에 맞춥니다. 2. 늘림: 가로 방향으로 2.83배, 세로 방향으로 1.41배처럼 각 축 방향으로만 늘리거나 줄입니다. 이 배율들이 특이값입니다. 3. 두 번째 회전: 늘어난 타원을 최종 위치로 돌려놓습니다. 여기서 "회전"을 맡는 행렬을 직교행렬이라 부릅니다. 직교행렬은 열벡터들이 서로 수직이고 길이가 1인 행렬로, 도형을 돌리거나 뒤집기만 할 뿐 크기와 모양은 바꾸지 않습니다. 즉, 크기를 바꾸는 일은 오직 가운데 "늘림"(특이값)만 담당합니다.
정답: 회전, 늘림, 회전입니다. 두 회전(직교행렬)은 도형을 돌리거나 뒤집기만 하고 크기·모양은 바꾸지 않습니다. 크기를 바꾸는 것은 가운데 늘림 단계뿐이며, 각 방향의 늘림 배율이 특이값입니다.
정답: 특이값이 큰 앞쪽 성분 몇 개만 남기고 나머지를 버린다는 뜻입니다. 특이값은 내림차순으로 정렬되므로, 앞쪽 성분이 행렬의 큰 구조를 담고 뒤쪽 성분은 자잘한 세부나 노이즈를 담습니다.
정답: 열벡터들이 서로 수직이고 각각 길이가 1인 행렬입니다. 직교행렬을 곱해도 벡터의 길이와 벡터 사이의 각도가 보존되므로, 도형을 돌리거나 뒤집는 것 외에는 아무것도 바꾸지 않기 때문입니다.