확률분포를 배웠다면 이제 한 걸음 더 나아가야 합니다. 분포가 얼마나 불확실한지, 모델이 정답을 얼마나 잘 설명하는지, 두 분포가 얼마나 다른지를 수로 재야 하기 때문입니다. 엔트로피, 크로스엔트로피, KL divergence는 이 세 질문에 각각 답하는 도구입니다. 정보이론에서 시작했지만, 현대 AI의 손실함수와 학습 목표 한가운데에 놓여 있습니다.
즉 이 강의는 "확률을 맞춘다"는 말을 더 정교하게 만드는 강의입니다.
어떤 분포가 예측하기 쉬운지 어려운지를 숫자로 나타내고 싶다고 합시다. 한 값에 거의 다 몰린 분포는 예측이 쉽고, 여러 값에 고르게 퍼진 분포는 예측이 어렵습니다.
엔트로피는 이 불확실성을 재는 값입니다. 이산분포 p의 엔트로피는 다음과 같습니다.
이 식의 핵심은 두 부분입니다.
로그가 들어가는 이유는 이런 "놀라움"을 더하기 좋은 형태로 표현하기 위해서입니다. 그리고 앞의 마이너스 부호는 확률의 로그가 음수가 되기 때문에 전체 값을 양수처럼 읽기 쉽게 만들기 위한 장치입니다.
그래서 엔트로피는 다음처럼 읽을 수 있습니다.
즉 엔트로피는 이 분포가 얼마나 예측하기 어려운가를 나타냅니다.
동전 예를 생각하면 직관이 분명해집니다.
공정한 동전은 결과를 미리 맞히기 어렵기 때문에 엔트로피가 큽니다. 반대로 거의 항상 앞면만 나오는 동전은 불확실성이 작아서 엔트로피가 작습니다.
이 점 때문에 엔트로피는 단순한 확률의 합이 아니라, 분포의 "퍼짐"과 "예측 어려움"을 함께 요약하는 값으로 쓰입니다.
이제 분포 하나가 아니라 두 분포를 보겠습니다. 실제 데이터가 따르는 분포를 p라고 하고, 모델이 예측한 분포를 q라고 합시다.
우리는 "모델 q가 실제 분포 p를 얼마나 잘 설명하는가"를 알고 싶습니다. 이때 크로스엔트로피를 씁니다.
이 식은 엔트로피와 비슷하지만, 로그 안에 들어가는 것이 p가 아니라 q라는 점이 다릅니다. 즉 실제로는 p에서 데이터가 나오는데, 그 데이터를 q로 설명할 때 드는 평균 비용을 보는 것입니다.
모델이 실제 정답에 높은 확률을 주면 손실이 작고, 낮은 확률을 주면 손실이 커집니다. 그래서 크로스엔트로피는 예측 품질을 아주 민감하게 벌점화할 수 있습니다.
분류 문제에서는 정답이 보통 one-hot 형태입니다. 즉 정답 클래스 하나만 1이고, 나머지는 0입니다.
이 경우 크로스엔트로피는 정답 클래스에 모델이 준 확률만 남게 됩니다. 그래서 실제로는 다음과 같은 로그손실로 읽히게 됩니다.
이 성질은 분류 문제에 아주 잘 맞습니다. 단순히 맞았는지 틀렸는지만 보는 것이 아니라, 얼마나 확신 있게 맞혔는지까지 반영하기 때문입니다.
특히 정답인데도 아주 작은 확률을 주면 큰 벌점을 받게 됩니다. 그래서 모델은 단순히 정답 클래스가 가장 크기만 한 것이 아니라, 정답에 충분히 높은 확률을 주도록 학습됩니다.
이제 두 분포의 차이를 좀 더 직접적으로 보고 싶다면 KL divergence를 사용합니다.
이 식은 p를 기준으로 볼 때, q가 얼마나 비효율적인 설명인지를 나타냅니다.
핵심 해석은 이렇습니다.
하지만 KL divergence는 일반적인 거리와는 다릅니다. 가장 중요한 이유는 대칭이 아니기 때문입니다.
왜냐하면 "실제 분포 p를 q로 설명하는 문제"와 "실제 분포 q를 p로 설명하는 문제"는 서로 다른 질문이기 때문입니다. 어떤 값을 기준으로 평균을 내느냐가 달라지기 때문입니다.
세 값은 서로 따로 노는 개념이 아닙니다. 다음 관계로 묶여 있습니다.
이 식이 중요한 이유는 분명합니다.
따라서 실제 분포 p가 고정되어 있다면, 크로스엔트로피를 최소화하는 것은 결국 KL divergence를 줄이는 것과 같은 방향이 됩니다.
즉 모델 학습에서 크로스엔트로피를 줄인다는 말은, 모델 분포 q를 실제 분포 p에 더 가깝게 만든다는 말과 연결됩니다.
이 개념들이 AI에서 중요한 이유는 매우 실용적입니다.
그래서 크로스엔트로피는 분류의 대표 손실함수가 되고, KL divergence는 변분추론, 생성모델, 분포 정렬 문제에서 반복해서 등장합니다.
즉 정보이론의 개념이 그대로 현대 AI의 학습 언어가 된 것입니다.
엔트로피 비교하기
문제: 공정한 동전과 거의 항상 앞면이 나오는 동전 중 어느 쪽의 엔트로피가 더 큰가?
풀이: 공정한 동전은 결과를 예측하기 더 어렵기 때문에 엔트로피가 더 크다.
해설: 엔트로피는 분포의 불확실성 크기를 나타낸다.
크로스엔트로피 손실 해석하기
문제: 정답 클래스에 0.9를 준 모델과 0.1을 준 모델 중 어느 쪽의 크로스엔트로피 손실이 더 큰가?
풀이: 0.1을 준 경우가 훨씬 큰 손실을 가진다. 정답인데도 낮은 확률을 준 것이기 때문이다.
해설: 크로스엔트로피는 단순 정오답이 아니라 정답 확률의 질까지 평가한다.
KL divergence의 뜻 설명하기
문제: KL divergence가 0이라는 것은 무엇을 뜻하는가?
풀이: 두 분포가 같다는 뜻이다.
해설: 모델 분포가 실제 분포를 정확히 따라가면 추가적인 비효율이 없다.