교차 엔트로피(Cross Entropy)는 정보 이론에서 정의되는 개념으로, 동일한 사건 집합에 대해 두 확률 분포 간의 차이를 측정하는 척도이다. 실제 확률 분포 $P$와 모델이 예측한 확률 분포 $Q$ 사이에서, $P$ 대신 $Q$를 사용하여 사건을 부호화할 때 필요한 평균 정보량(비트 수)을 나타낸다.
정의
이산 확률 분포의 경우, 교차 엔트로피 $H(P, Q)$는 다음과 같이 정의된다.
$$ H(P, Q) = -\sum_{x} P(x) \log Q(x) $$
연속 확률 분포의 경우에는 적분 형태로 정의된다.
$$ H(P, Q) = -\int P(x) \log Q(x) , dx $$
엔트로피 및 KL 발산과의 관계
교차 엔트로피는 엔트로피 $H(P)$와 쿨백-라이블러 발산(KL Divergence) $D_{KL}(P \parallel Q)$의 합으로 분해된다.
$$ H(P, Q) = H(P) + D_{KL}(P \parallel Q) $$
여기서 $H(P)$는 실제 분포 $P$ 자체의 엔트로피이며, $D_{KL}(P \parallel Q)$는 두 분포 간의 순수한 차이를 나타낸다. 두 분포가 완전히 동일할 경우 $D_{KL} = 0$이 되어 교차 엔트로피는 엔트로피와 같아진다. 또한 교차 엔트로피는 항상 엔트로피보다 크거나 같으며(Gibbs' inequality), 이는 잘못된 분포 $Q$를 사용할수록 더 많은 정보량이 필요함을 의미한다.
머신러닝에서의 활용
교차 엔트로피는 분류 문제에서 손실 함수(Cross-Entropy Loss)로 널리 사용된다. 실제 정답 레이블의 분포(보통 one-hot 형태)와 모델이 예측한 확률 분포 사이의 교차 엔트로피를 최소화하는 방향으로 모델을 학습시킨다. 이는 최대 우도 추정(Maximum Likelihood Estimation)과 수학적으로 동치이다.
- 이진 분류(Binary Classification): 로지스틱 회귀에서 사용되는 로그 손실(Log Loss)과 동일하다. $$ H(P, Q) = -y \log \hat{y} - (1-y) \log(1-\hat{y}) $$
- 다중 분류(Multi-class Classification): 소프트맥스(Softmax) 함수와 결합하여 사용되며, 카테고리 로그 손실(Categorical Log-Loss)이라고도 한다.
정보 이론에서의 해석
정보 이론의 관점에서 교차 엔트로피는 실제 분포 $P$를 따르는 데이터를, 최적이 아닌 다른 분포 $Q$에 기반한 부호화 방식으로 인코딩할 때 필요한 평균 비트 수로 해석된다. 예를 들어, 실제 문자 출현 확률 분포와 다른 가정 하에 가변 길이 코드를 설계하면 추가 비트가 발생하게 되며, 이 추가 비트의 평균이 KL 발산에 해당한다.
특성
- 교차 엔트로피는 항상 0 이상의 값을 가진다.
- 예측 분포 $Q$가 실제 분포 $P$에 가까울수록 값이 작아지며, 멀어질수록 값이 커진다.
- 로그 함수의 특성상 확률이 0에 가까울수록 값이 급격히 증가하여, 모델이 잘못된 확신을 가지는 경우 큰 벌점을 부여한다.
- 교차 엔트로피는 대칭적이지 않으며, $H(P, Q) eq H(Q, P)$이다.