교차 엔트로피
IT 위키
교차 엔트로피(cross entropy)는 확률론 및 정보 이론에서 두 확률 분포 사이의 차이를 정량적으로 측정하는 함수로, 주로 머신러닝과 통계학에서 모델의 예측 성능을 평가하는 손실 함수로 사용된다.
정의[편집 | 원본 편집]
교차 엔트로피는 두 확률 분포 P(실제 분포)와 Q(예측 분포)에 대해 다음과 같이 정의된다.
H(P, Q) = -∑ P(x) log Q(x)
여기서 합은 모든 가능한 사건 x에 대해 계산되며, 로그는 보통 밑이 2 또는 자연로그를 사용한다. 교차 엔트로피는 Q가 P에 가까울수록 작아진다.
이진 분류에서의 교차 엔트로피[편집 | 원본 편집]
이진 분류에서는 각 데이터 샘플에 대해 실제 정답 y ∈ {0, 1}과 예측 확률 ŷ ∈ (0, 1)에 대해 교차 엔트로피 손실은 다음과 같이 계산된다.
L = -[y log(ŷ) + (1 - y) log(1 - ŷ)]
이 손실 함수는 예측값이 실제값과 가까울수록 작아지며, 예측이 틀릴수록 급격히 커진다.
다중 분류에서의 교차 엔트로피[편집 | 원본 편집]
다중 클래스 분류 문제에서 정답 레이블이 원-핫 벡터 y = [y₁, y₂, ..., yₖ], 예측 확률이 ŷ = [p₁, p₂, ..., pₖ]이라면 교차 엔트로피는 다음과 같다.
L = -∑ yᵢ log(pᵢ)
이는 정답 클래스에 해당하는 확률 pᵢ가 1에 가까울수록 손실이 작아진다는 것을 의미한다.
성질[편집 | 원본 편집]
- 교차 엔트로피는 항상 음이 아닌 값을 갖는다.
- 실제 분포와 예측 분포가 같을 때 최소값을 갖는다.
- 엔트로피와 쿨백-라이블러 발산(KL divergence) 사이의 관계로 표현될 수 있다.
예시[편집 | 원본 편집]
1. 실제값 y = 1, 예측값 ŷ = 0.9인 경우:
L = -[1×log(0.9) + 0×log(0.1)] ≈ 0.105
2. 실제값 y = 0, 예측값 ŷ = 0.1인 경우:
L = -[0×log(0.1) + 1×log(0.9)] ≈ 0.105
3. 실제값 y = 1, 예측값 ŷ = 0.01인 경우:
L = -log(0.01) ≈ 4.605
활용[편집 | 원본 편집]
- 딥러닝에서 분류 모델의 손실 함수로 널리 사용됨 (ex. 소프트맥스 출력층과 함께)
- 언어 모델, 이미지 분류, 음성 인식 등 다양한 분야에서 모델 최적화를 위해 사용됨
- 정보 이론에서 통신 채널의 비효율성 측정에도 적용됨
같이 보기[편집 | 원본 편집]
참고 문헌[편집 | 원본 편집]
- Goodfellow, Ian, et al. Deep Learning. MIT Press, 2016.
- Cover, Thomas M., and Joy A. Thomas. Elements of Information Theory. Wiley-Interscience, 2006.