8.92 교차 엔트로피와 KL 발산
1. 교차 엔트로피(Cross-Entropy)
두 확률 분포 p와 q 사이의 교차 엔트로피는 다음과 같이 정의된다.
H(p, q) = -\sum_x p(x)\log q(x) = \mathbb{E}_p[-\log q(X)]
연속 분포의 경우:
H(p, q) = -\int p(x)\log q(x) \, dx
1.1 해석
교차 엔트로피는 “진 분포 p에서 추출된 표본을 분포 q에 기반한 부호로 부호화했을 때의 평균 비트 수“로 해석된다. p = q이면 H(p, q) = H(p)이고, q가 p에서 멀어지면 H(p, q)가 증가한다.
1.2 기계 학습에서의 활용
교차 엔트로피는 분류 문제의 손실 함수로 널리 사용된다. p를 참 레이블의 원-핫(one-hot) 분포, q를 분류기의 예측 분포로 설정하면, 교차 엔트로피 최소화는 예측 분포를 진 분포에 일치시키는 것이다.
이진 분류:
L = -[y\log\hat{y} + (1 - y)\log(1 - \hat{y})]
다중 클래스 분류:
L = -\sum_{k=1}^{K}y_k\log\hat{y}_k
2. 쿨백-라이블러 발산(KL Divergence)
두 확률 분포 p와 q 사이의 KL 발산은 다음과 같이 정의된다.
D_{KL}(p \Vert q) = \sum_x p(x)\log\frac{p(x)}{q(x)} = \mathbb{E}_p\left[\log\frac{p(X)}{q(X)}\right]
2.1 엔트로피와의 관계
D_{KL}(p \Vert q) = H(p, q) - H(p)
KL 발산은 “교차 엔트로피가 진 엔트로피를 얼마나 초과하는지“를 측정한다. 진 분포를 알 때, 교차 엔트로피 최소화는 KL 발산 최소화와 동치이다.
2.2 성질
비음성(깁스 부등식):
D_{KL}(p \Vert q) \geq 0
등호는 p = q일 때만 성립한다. 증명은 젠센 부등식(Jensen’s inequality)에 기반한다.
비대칭성: 일반적으로 D_{KL}(p \Vert q) \neq D_{KL}(q \Vert p)이다. KL 발산은 거리 함수가 아니다(삼각 부등식도 성립하지 않음).
볼록성: (p, q) 쌍에 대해 볼록 함수이다.
2.3 연속 분포에서의 정의
D_{KL}(p \Vert q) = \int p(x)\log\frac{p(x)}{q(x)} \, dx
3. 주요 분포 간의 KL 발산
3.1 두 가우시안의 KL 발산
p = \mathcal{N}(\boldsymbol{\mu}_p, \boldsymbol{\Sigma}_p)와 q = \mathcal{N}(\boldsymbol{\mu}_q, \boldsymbol{\Sigma}_q):
D_{KL}(p \Vert q) = \frac{1}{2}\left[\text{tr}(\boldsymbol{\Sigma}_q^{-1}\boldsymbol{\Sigma}_p) + (\boldsymbol{\mu}_q - \boldsymbol{\mu}_p)^T\boldsymbol{\Sigma}_q^{-1}(\boldsymbol{\mu}_q - \boldsymbol{\mu}_p) - n + \ln\frac{\det\boldsymbol{\Sigma}_q}{\det\boldsymbol{\Sigma}_p}\right]
3.2 베르누이
p = \text{Ber}(a), q = \text{Ber}(b):
D_{KL}(p \Vert q) = a\log\frac{a}{b} + (1 - a)\log\frac{1 - a}{1 - b}
4. 순방향과 역방향 KL 발산
D_{KL}(p \Vert q)와 D_{KL}(q \Vert p)는 서로 다른 성질을 갖는다.
D_{KL}(p \Vert q) (진 분포가 좌측): p의 모드를 포괄하려는 경향. p(x) > 0인 영역에서 q(x) > 0을 강제한다. 한 모드만 포착해도 되므로 다봉에서 한 모드만 선택할 수 있다.
D_{KL}(q \Vert p) (모델이 좌측): 평균을 포괄하려는 경향. 진 분포의 모든 모드를 평균화하여 포괄한다. 다봉 분포에서 모든 모드를 아우르는 분포를 선택한다.
5. 변분 추론에서의 KL 발산
변분 추론(variational inference)은 사후 분포 p(\mathbf{z} \vert \mathbf{x})를 다루기 용이한 분포 q(\mathbf{z})로 근사한다. 근사 기준은 KL 발산의 최소화이다.
q^* = \arg\min_q D_{KL}(q(\mathbf{z}) \Vert p(\mathbf{z} \vert \mathbf{x}))
이 최적화는 증거 하한(Evidence Lower Bound, ELBO) 최대화와 동치이다.
\ln p(\mathbf{x}) \geq \mathbb{E}_q[\ln p(\mathbf{x}, \mathbf{z})] - \mathbb{E}_q[\ln q(\mathbf{z})] = \text{ELBO}(q)
6. 로봇 공학에서의 활용
정책 증류(Policy Distillation): 교사 정책을 학생 정책으로 복제할 때 KL 발산을 최소화한다.
신뢰 영역 정책 최적화(TRPO): 강화 학습에서 정책 갱신의 크기를 KL 발산으로 제약하여 안정성을 확보한다.
\max_\theta \mathbb{E}[\text{reward}], \quad \text{s.t.} \quad D_{KL}(\pi_{\text{old}} \Vert \pi_\theta) < \delta
필터의 근사: 비가우시안 사후 분포를 가우시안으로 근사할 때 KL 발산 기준이 사용된다.
데이터 연관: 분포 사이의 KL 발산으로 데이터와 모델의 일치도를 평가한다.
7. 젠센-섀넌 발산(Jensen-Shannon Divergence)
KL 발산의 대칭 버전이다.
D_{JS}(p \Vert q) = \frac{1}{2}D_{KL}(p \Vert m) + \frac{1}{2}D_{KL}(q \Vert m), \quad m = \frac{p + q}{2}
유한하고 대칭이며 \sqrt{D_{JS}}는 거리 함수가 된다.
8. 참고 문헌
- Cover, T. M., & Thomas, J. A. (2006). Elements of Information Theory (2nd ed.). Wiley.
- Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Springer.
- MacKay, D. J. C. (2003). Information Theory, Inference, and Learning Algorithms. Cambridge University Press.
- Schulman, J., et al. (2015). “Trust Region Policy Optimization.” Proceedings of ICML, 1889–1897.
version: 1.0