VAE (Variational Auto Encoder) 손실 함수의 핵심, 확률 분포 간 ‘차이’를 정량화하는 도구
KL Divergence(Kullback–Leibler Divergence, 쿨백-라이블러 발산)는 두 확률 분포가 얼마나 다른지를 수치로 표현하는 방법입니다.
특히 VAE(Variational Autoencoder)에서는 잠재 변수의 분포가 우리가 원하는 표준 정규분포와 가까워지도록 만드는 데 필수적인 요소입니다.
KL Divergence는 다음 질문에 답하는 도구입니다:
“진짜 분포 P 대신 근사한 분포 Q를 쓴다면, 정보가 얼마나 손실될까?”
KL Divergence는 Q가 P에서 얼마나 벗어났는지를 숫자(비용)로 알려줍니다.
연속적인 확률 분포 와 에 대해, KL Divergence는 다음과 같이 계산됩니다:
즉, KL Divergence는 거리처럼 생겼지만 거리(metric)는 아닙니다.
VAE에서는 인코더가 출력하는 잠재 분포 를 정규분포 에 가깝게 만들고자 합니다.
이 두 정규분포 간의 KL Divergence는 다음의 폐쇄형 수식(analytical form)으로 계산됩니다:
이 식은 VAE의 손실 함수에 포함되어, 학습 과정에서 가 0에, 가 1에 가까워지도록 유도합니다. 결과적으로, 잠재 변수 z는 표준 정규분포를 따르게 됩니다.
항목 | 내용 |
---|---|
정의 | 두 확률 분포 간의 "차이"를 정량화 |
직관 | 잘못된 분포를 사용했을 때의 정보 손실량 |
VAE에서의 역할 | 잠재 공간의 분포를 표준 정규분포로 유도 |
값의 범위 | 0 이상 (같으면 0, 다르면 >0) |
특징 | 비대칭적, VAE 손실 함수의 중요한 구성요소 |