모던지 / 수학 / 통계학 7강. 엔트로피와 KL 발산

통계학 7강. 엔트로피와 KL 발산

정보의 양을 재는 단위를 만든 사람은, 그것을 열역학에서 빌려 왔습니다. 농담 반으로요.

풀고 시작

문제 1. 정보 이론에서 어떤 사건이 갖는 정보량이 가장 큰 경우는 언제일까요?
정보량은 놀라움의 크기입니다. 당연히 일어날 일이 일어나면 알려 주는 바가 없고, 좀처럼 없는 일이 일어나야 정보가 큽니다. "내일 해가 뜬다"는 정보량이 0에 가깝고 "내일 눈이 온다"(8월에)는 큽니다.

놀라움을 숫자로 재기

1948년 클로드 섀넌이 통신을 수학으로 다루면서 물었습니다. 메시지가 담은 정보의 양을 어떻게 재는가.

그가 찾은 답은 뜻밖에 단순합니다. 정보량은 놀라움의 크기입니다. 확률이 낮은 일이 일어날수록 정보가 큽니다. 확률 p인 사건의 정보량을 -log p로 정의하면 원하는 성질이 전부 나옵니다. 확률이 1이면 정보량 0(놀랍지 않음), 확률이 낮을수록 값이 커지고, 독립인 두 사건이 함께 일어나면 정보량이 더해집니다.

엔트로피(entropy) 는 이 정보량의 기댓값입니다. 그 분포에서 사건 하나를 관측할 때 평균적으로 얼마나 놀라게 되는가를 재죠. 공정한 동전은 엔트로피가 1비트로 최대이고, 앞면이 99% 나오는 편향된 동전은 결과가 뻔해서 엔트로피가 작습니다. 불확실성이 클수록 엔트로피가 큽니다.

이름의 유래에 재미있는 일화가 있습니다. 섀넌이 이 양을 뭐라 부를지 고민하자 폰 노이만이 조언했다고 합니다. "엔트로피라고 부르게. 열역학에 같은 이름의 양이 있으니 유리하고, 무엇보다 아무도 엔트로피가 뭔지 모르니 논쟁에서 늘 이길 걸세." 확인되지 않은 일화로 여러 판본이 전해지지만, 두 분야의 엔트로피가 같은 수식 형태를 갖는 것은 사실입니다.

의사결정나무는 놀라움을 줄여 갑니다

엔트로피가 기계학습에 처음 들어온 자리가 의사결정나무입니다.

데이터를 어떤 기준으로 쪼갤지 정해야 합니다. 좋은 기준이란 쪼갠 뒤에 각 덩어리가 더 순수해지는 기준이죠. 순수하다는 것은 한쪽으로 쏠려 있다는 뜻이고, 그것은 곧 엔트로피가 낮다는 뜻입니다.

정보 이득(information gain) 은 쪼개기 전 엔트로피에서 쪼갠 뒤 엔트로피의 가중평균을 뺀 값입니다. 이 값이 가장 큰 기준을 고르면 됩니다. 불확실성을 가장 많이 줄여 주는 질문을 먼저 하는 것이죠. 스무고개를 잘하는 사람이 쓰는 전략과 정확히 같습니다.

엔트로피 대신 지니 불순도를 쓰기도 하는데, 계산이 가벼우면서 결과가 비슷해 실무에서 널리 쓰입니다.

두 분포가 얼마나 다른가

엔트로피가 한 분포의 불확실성이라면, KL 발산(Kullback-Leibler divergence)두 분포가 얼마나 다른지를 잽니다.

의미를 정확히 새기면 이렇습니다. 참된 분포가 P인데 Q라고 착각하고 부호를 짰을 때, 평균적으로 낭비하는 비트 수. 잘못 믿는 대가를 정보량으로 환산한 값이죠. P와 Q가 같으면 0이고, 다를수록 커지며, 절대 음수가 되지 않습니다.

여기서 중요한 함정이 하나 있습니다. KL 발산은 거리가 아닙니다. P에서 Q로 잰 값과 Q에서 P로 잰 값이 다릅니다. 대칭이 아니죠. 그래서 "거리"라는 말 대신 "발산"이라 부릅니다. 이 비대칭은 실무에서 실제 결과를 가릅니다. 어느 쪽을 최소화하느냐에 따라 근사 분포가 참 분포의 봉우리 하나에 몰리기도 하고 전체를 넓게 덮기도 합니다.

교차엔트로피는 KL 발산과 한 몸입니다. 교차엔트로피 = P의 엔트로피 + KL 발산인데, 앞의 항은 데이터가 정한 상수라 모형이 건드릴 수 없습니다. 따라서 교차엔트로피를 최소화하는 것은 KL 발산을 최소화하는 것과 같습니다. 분류 모형을 학습시킬 때 우리가 실제로 하는 일은 모형의 분포를 데이터의 분포에 가까이 끌어당기는 일입니다.

이 개념은 곳곳에 있습니다. VAE의 손실에 붙은 KL 항은 잠재변수 분포를 정규분포 쪽으로 당기고, 지식 증류는 작은 모형의 출력 분포를 큰 모형 쪽으로 당기며, 강화학습의 정책 갱신은 새 정책이 옛 정책에서 너무 멀어지지 않도록 KL로 묶습니다. 전부 같은 도구입니다.

인출 문제

문제 1. 엔트로피가 최대가 되는 경우로 옳은 것은 무엇일까요?
엔트로피는 불확실성의 크기입니다. 결과를 전혀 예측할 수 없는 균등분포에서 최대가 되고, 결과가 정해져 있으면 0이 됩니다. 공정한 동전이 편향된 동전보다 엔트로피가 큰 이유입니다.
문제 2. KL 발산에 대한 설명으로 옳지 않은 것은 무엇일까요?
KL 발산은 대칭이 아닙니다. P에서 Q로 잰 값과 그 반대가 다르므로 거리의 조건을 만족하지 않고, 그래서 거리가 아니라 발산이라 부릅니다. 어느 방향을 최소화하느냐가 실제 학습 결과를 바꿉니다.
문제 3. 교차엔트로피를 최소화하는 것이 의미하는 바로 옳은 것은 무엇일까요?
교차엔트로피는 데이터의 엔트로피와 KL 발산의 합이고, 앞의 항은 모형이 바꿀 수 없는 상수입니다. 따라서 최소화되는 것은 KL 발산이며 이는 두 분포를 가깝게 만드는 일입니다.
문제 4. 의사결정나무에서 정보 이득이 가장 큰 분할 기준을 고르는 이유는 무엇일까요?
정보 이득은 분할 전후 엔트로피의 감소량입니다. 가장 크게 줄이는 기준을 먼저 쓰는 것은 가장 많은 것을 가려내는 질문을 먼저 던지는 전략이죠. 오히려 정보 이득만 좇으면 과대적합이 잘 일어나 가지치기가 필요합니다.

이전: 통계학 6강 · 다음: 통계학 8강

모던지 · 궁금하면 모던지 GitHub · 2026-09-10