머신러닝, 특히 분류 문제를 공부하다 보면 엔트로피(Entropy), 크로스 엔트로피(Cross Entropy), KL 발산(KL Divergence)이라는 개념이 자주 등장합니다. 이 글에서는 이 세 가지 개념을 간단하게 정리해 보겠습니다.
1. 엔트로피 (Entropy)
: 확률 분포의 불확실성을 나타내는 지표
어떤 확률 변수 X가 있을 때, 그 엔트로피는 다음과 같이 정의됩니다:
$H(X) = - \sum_{x \in \mathcal{X}} P(x) \log P(x)$
사건 x가 발생할 확률이 작을수록, 정보량 $-\log P(x)$ 는 커짐
엔트로피는 전체 평균 정보량 (불확실성)을 나타냄
엔트로피가 클수록 예측이 어려운 상황
2. 크로스 엔트로피 (Cross Entropy)
: 실제 분포 P와 예측 분포 사이의 차이를 측정
$H(P, Q) = - \sum_{x \in \mathcal{X}} P(x) \log Q(x)$
분류 문제에서 자주 쓰이는 손실 함수
예측이 정답과 가까울수록 → 값이 작아짐
정답 확률이 높은 Q(x)일수록 손실이 적음
3. KL 발산 (KL Divergence)
: 예측 분포 Q가 실제 분포 와 얼마나 다른지를 정량적으로 나타냄
$D_{\text{KL}}(P \parallel Q) = \sum_{x \in \mathcal{X}} P(x) \log \frac{P(x)}{Q(x)}$
두 분포의 차이를 측정하는 비대칭적 지표
실제 분포 P를 예측 분포 Q로 근사할 때 생기는 정보 손실
항상 $D_{\text{KL}}(P \parallel Q) \geq 0$, 같을 경우 0
4. 세 개념의 관계
$H(P, Q) = H(P) + D_{\text{KL}}(P \parallel Q)$
크로스 엔트로피 = 엔트로피 + KL 발산
실제 분포가 one-hot일 경우, 크로스 엔트로피와 KL 발산은 수치적으로 동일
'공부 > 딥러닝' 카테고리의 다른 글
| Optimizer : AdaGrad, RMSProp, Adam (0) | 2025.05.01 |
|---|