분류 손실 함수, VAE의 ELBO, TRPO의 신뢰 영역, 확산 모델의 변분 경계 — 이것들은 서로 다른 알고리즘처럼 보이지만 하나의 수학적 객체 위에 세워져 있다. 그 객체가 KL 발산이다. 그런데 KL은 단독 개념이 아니다. 볼록 함수의 “접평면과의 차이”인 Bregman 발산과 완전히 동치이고, α라는 매개변수로 무한히 확장되는 발산 가족의 한 점이다. 왜 이 구조가 정보기하 전체를 지배하는가?
KL은 정보 손실이다
KL 발산을 “거리”라고 부르는 것은 오해를 낳는다. KL(p∥q)=KL(q∥p)이므로 거리의 대칭성 조건을 위반한다. 정확한 해석은 잘못된 모델로 인한 정보 손실이다.
진짜 분포가 p인데 q로 설계한 코드를 쓴다면, 최적 코드보다 매번 KL(p∥q) 비트만큼 더 쓴다. 이 초과 비트가 KL이다. 그래서 KL(p∥q)≥0이고, p=q일 때만 0이 된다 — Jensen 부등식의 직접적인 귀결이다.
비대칭성은 버그가 아니라 두 가지 다른 “관점”을 인코딩한다.
Forward KLKL(p∥q): p가 지지하는 모든 영역을 q가 반드시 커버해야 한다. 아니면 +∞. 이 압박이 q를 p의 모든 mode에 걸쳐 퍼지게 만든다 — mean-seeking.
Reverse KLKL(q∥p): q가 지지하는 곳에서만 p>0이면 된다. q가 mode 하나만 잡아도 페널티가 없다 — mode-seeking.
VAE에서 KL(qϕ(z∣x)∥p(z))를 쓰는 이유, TRPO에서 KL(πold∥πθ)≤δ 제약을 쓰는 이유는 이 비대칭성을 의도적으로 이용하는 것이다.
Fisher는 KL의 미분이다
KL과 Fisher 정보행렬의 관계는 단순한 유사성이 아니라 정확한 수학적 동치다.
KL(pθ∥pθ+ε)=21ε⊤F(θ)ε+O(∥ε∥3)
KL의 2차 테일러 근사가 Fisher quadratic form이다. 다르게 말하면 Fisher는 KL의 미분, KL은 Fisher의 적분이다.
이 관계가 Natural Gradient Descent(NGD)의 이론적 기반이다. KL 제약 아래 손실을 최소화하는 문제
θ′minL(θ′)s.t.KL(pθ∥pθ′)≤ε
를 2차 근사로 풀면 θ′−θ∝F(θ)−1∇L(θ), 즉 NGD 업데이트가 나온다. TRPO가 KL 신뢰 영역을 Fisher quadratic으로 근사하는 것도, PPO가 그것을 ratio clipping으로 다시 근사하는 것도 모두 이 연쇄에서 온다.
Bregman 발산 — 볼록 함수의 초과량
볼록 함수 ψ가 하나 있으면, 그 접평면과 실제 함수값의 차이로 발산을 정의할 수 있다.
Dψ(x,y):=ψ(x)−ψ(y)−⟨∇ψ(y),x−y⟩
볼록성 때문에 항상 ≥0이고, 등호는 x=y에서만 성립한다. 이것이 Bregman 발산이다.
특수 경우를 나열하면 그 일반성이 드러난다.
ψ(x)
Dψ(x,y)
21∥x∥2
21∥x−y∥2 (제곱 유클리드)
∑xilogxi
∑xilog(xi/yi)−∑(xi−yi) (일반화 KL)
−∑logxi
∑(xi/yi−log(xi/yi)−1) (Itakura-Saito)
이제 핵심 정리가 등장한다.
정리 1
· 지수족에서 KL = Bregman
지수족 pθ(x)=h(x)exp(θ⊤T(x)−ψ(θ))에서, cumulant 함수 ψ에 대해
모든 α-divergence가 같은 Fisher 계량을 국소적으로 유도한다. α는 3차 항 이상에서만 갈라진다 — 이것이 α-connection의 α 매개변수가 되는 이유다.
실무에서 α의 선택은 명시적 트레이드오프다. Rényi VAE(Li & Turner 2016)는 α<1에서 tighter ELBO, α>1에서 더 다양한 posterior를 얻는다. Rényi Differential Privacy(Mironov 2017)는 Rényi 발산 Rα의 합성이 additive해 DP-SGD의 개인정보 예산 추적에 표준으로 쓰인다.
✎ 트레이드오프
α-divergence는 KL의 한계를 모드 문제, 아웃라이어 민감성, tail 거동 세 측면에서 동시에 조절한다. 그러나 “최적 α”는 데이터 의존적이므로 하이퍼파라미터 탐색이 필요하고, α>1에서는 p/q가 큰 영역에 수치적으로 불안정하다. Wasserstein 같은 완전히 다른 클래스의 발산이 필요한 경우(분포 지지가 겹치지 않는 GAN 학습 초기)에는 f-divergence 전체 가족으로도 해결되지 않는다.