정보이론(Information Theory)은 데이터를 정량적으로 측정하고 분석하는 수학적 프레임워크를 제공합니다. 이 글에서는 정보이론의 핵심 개념들을 설명하고, 이들이 머신러닝과 데이터 분석에서 어떻게 활용되는지 살펴보겠습니다.
정보량(Information Content)
정보량은 특정 사건이나 메시지가 얼마나 '놀라운지'를 측정하는 개념입니다. 자주 발생하는 사건보다 드물게 발생하는 사건이 더 많은 정보를 담고 있다고 볼 수 있습니다.
수학적으로 정보량은 사건의 확률에 로그를 취한 값의 음수로 정의됩니다:
$$I(x) = -\log_2 P(x)$$
여기서 로그의 밑은 일반적으로 2를 사용하며, 정보량의 단위는 비트(bit)가 됩니다.
정보량: 확률이 낮을수록 정보량이 증가합니다
확률에 따른 정보량 그래프: 확률이 0에 가까울수록 정보량이 무한대로 증가합니다
예시: 질문 개수로 보는 정보량
어떤 값을 알아내기 위해 필요한 최소 질문 개수는 해당 경우의 수에 로그를 취한 값과 관련이 있습니다:
- 동전의 경우: 앞면 또는 뒷면? → 1번의 질문으로 결과를 알 수 있음 ($\log_2 2 = 1$)
- 주사위의 경우: $\log_2 6 \approx 2.585$ → 최소 3번의 질문이 필요
- 알파벳 한 글자 맞추기: $\log_2 26 \approx 4.7$ → 최소 5번의 질문이 필요
이처럼 가능한 결과의 수가 많을수록(불확실성이 클수록) 정보량이 증가합니다:
$$\text{정보량} = \log_2(\text{가능한 결과의 수})$$
엔트로피(Entropy)
엔트로피는 확률 분포의 불확실성 또는 무작위성을 측정하는 값으로, 가능한 모든 결과들의 정보량의 기대값(평균 정보량)입니다. 디지털 통신에서는 메시지를 효율적으로 인코딩하는 데 필요한 최소 비트 수의 기대값으로 해석할 수 있습니다.
$$H(X) = -\sum_{x \in X} P(x) \log_2 P(x)$$
엔트로피의 특성
- 최대값: 모든 사건이 동일한 확률을 가질 때 엔트로피는 최대가 됩니다
- 이산 확률: 모든 값이 동일한 확률을 가질 때
- 연속 확률: 가우시안 분포를 가질 때
- 최소값: 하나의 사건만 확률 1을 가지고 나머지는 0일 때 엔트로피는 0이 됩니다
- 단위: 정보량과 마찬가지로 비트(bit)로 표현됩니다
낮은 엔트로피 vs 높은 엔트로피: 왼쪽은 예측 가능한 패턴(낮은 엔트로피), 오른쪽은 무작위적인 패턴(높은 엔트로피)
예시
동전 던지기를 생각해봅시다:
- 공정한 동전(앞면 1/2, 뒷면 1/2)의 엔트로피:
$$H(X) = -(\frac{1}{2} \log_2 \frac{1}{2} + \frac{1}{2} \log_2 \frac{1}{2}) = -(-\frac{1}{2} - \frac{1}{2}) = 1 \text{ bit}$$ - 편향된 동전(앞면 2/3, 뒷면 1/3)의 엔트로피:
$$H(X) = -(\frac{2}{3} \log_2 \frac{2}{3} + \frac{1}{3} \log_2 \frac{1}{3}) \approx 0.918 \text{ bit}$$
공정한 동전이 편향된 동전보다 엔트로피가 높습니다. 즉, 결과를 예측하기 더 어렵습니다.
KL 다이버전스(Kullback-Leibler Divergence)
KL 다이버전스(또는 상대 엔트로피)는 두 확률 분포 간의 차이를 측정하는 방법입니다. 확률 분포 P를 확률 분포 Q로 근사할 때 발생하는 정보 손실을 나타냅니다.
$$D_{KL}(P \parallel Q) = \sum_{x} P(x) \log\left(\frac{P(x)}{Q(x)}\right)$$
또는 엔트로피와 크로스 엔트로피를 사용하여 표현할 수 있습니다:
$$D_{KL}(P \parallel Q) = H(P, Q) - H(P)$$
KL 다이버전스의 특성
- 비대칭성: $D_{KL}(P \parallel Q) \neq D_{KL}(Q \parallel P)$
- 비음수성: $D_{KL}(P \parallel Q) \geq 0$, 두 분포가 동일할 때만 0
- 삼각부등식 미충족: 거리 척도(metric)가 아닙니다
예시
실제 확률 분포 P = (1/2, 1/2)와 예측 모델 Q = (4/5, 1/5)를 고려해봅시다:
- 크로스 엔트로피(모델링된 정보량):
$$H(P, Q) = -\sum_x P(x) \log_2 Q(x) = -(\frac{1}{2} \log_2 \frac{4}{5} + \frac{1}{2} \log_2 \frac{1}{5}) \approx 1.321 \text{ bits}$$ - 엔트로피(원래 분포의 정보량):
$$H(P) = -\sum_x P(x) \log_2 P(x) = -(\frac{1}{2} \log_2 \frac{1}{2} + \frac{1}{2} \log_2 \frac{1}{2}) = 1 \text{ bit}$$ - KL 다이버전스:
$$D_{KL}(P \parallel Q) = H(P, Q) - H(P) = 1.321 - 1 = 0.321 \text{ bits}$$
이 값(0.321 비트)은 실제 분포 P를 모델 Q로 근사할 때 발생하는 추가 비용 또는 정보 손실을 나타냅니다.
크로스 엔트로피(Cross Entropy)
크로스 엔트로피는 실제 분포 P를 사용하여 모델 분포 Q에서 샘플을 인코딩할 때 필요한 평균 비트 수를 측정합니다. 머신러닝에서 손실 함수로 널리 사용됩니다.
$$H(P, Q) = -\sum_{i} P(i) \log_2 Q(i)$$
머신러닝에서의 활용
- 로지스틱 회귀의 비용 함수:
$$-y \log(\hat{y}) - (1-y) \log(1-\hat{y})$$- P(y=1) = y, P(y=0) = 1-y
- Q(y=1) = ŷ, Q(y=0) = 1-ŷ
- 이진 분류에서 실제 레이블이 y∈{0,1}이고 예측 확률이 ŷ일 때:
- 최대 가능도 추정: 크로스 엔트로피를 최소화하는 것은 로그 가능도(log-likelihood)를 최대화하는 것과 동일합니다.
상호 정보량(Mutual Information)
상호 정보량은 두 확률 변수 간의 상호 의존성을 측정합니다. 두 변수의 결합 분포와 주변 분포의 곱 사이의 KL 다이버전스로 정의됩니다.
$$I(X; Y) = D_{KL}(P(X, Y) \parallel P(X)P(Y))$$
$$I(X; Y) = \sum_{x \in X} \sum_{y \in Y} P(x, y) \log\left(\frac{P(x, y)}{P(x)P(y)}\right)$$
특성
- 비음수성: $I(X; Y) \geq 0$
- 대칭성: $I(X; Y) = I(Y; X)$
- 독립성: X와 Y가 독립적이면 $I(X; Y) = 0$
- 엔트로피 관계: $I(X; Y) = H(X) - H(X|Y) = H(Y) - H(Y|X) = H(X) + H(Y) - H(X, Y)$
상호 정보량은 한 변수에 대한 지식이 다른 변수의 불확실성을 얼마나 감소시키는지 측정합니다.
정보 이득(Information Gain)
정보 이득은 특성(feature)을 기반으로 데이터를 분할할 때 엔트로피의 감소를 측정합니다. 의사결정 트리 알고리즘에서 분할 기준으로 널리 사용됩니다.
$$\text{IG}(Y|X) = H(Y) - H(Y|X)$$
여기서:
- $H(Y)$: 분할 전 타겟 변수 Y의 엔트로피
- $H(Y|X)$: 특성 X로 조건부 분할 후의 Y의 엔트로피
이득 비율(Gain Ratio)
정보 이득은 많은 값을 가진 특성을 선호하는 경향이 있습니다. 이를 보정하기 위해 이득 비율이 도입되었습니다:
$$\text{Gain Ratio} = \frac{\text{Information Gain}}{\text{Entropy}}$$
지니 지수(Gini Index)
지니 지수는 엔트로피와 유사하게 불순도(impurity)를 측정하지만, 계산 방식이 다릅니다. CART(Classification and Regression Trees) 알고리즘에서 널리 사용됩니다.
$$\text{Gini} = 1 - \sum_{i=1}^{n} (p_i)^2$$
여기서 $p_i$는 클래스 i에 속하는 샘플의 비율입니다.
특성
- 범위: 0에서 1 사이
- 0: 완벽한 순도(모든 샘플이 같은 클래스)
- 값이 클수록: 더 높은 불순도(샘플이 여러 클래스에 균등하게 분포)
상대적 정보 이득(RIG)과 정규화된 상대적 정보 이득(NRIG)
웹 스케일 클릭률(CTR) 예측에서 모델 성능을 평가하기 위한 척도입니다.
경험적 크로스 엔트로피 또는 로그 점수(CE)
$$\text{CE} := \frac{1}{T} \sum_{t=1}^{T} y_t \log \hat{p}_t + (1 - y_t) \log(1 - \hat{p}_t)$$
여기서:
- $y_t$: 실제 레이블(0 또는 1)
- $\hat{p}_t$: 예측 확률
- $T$: 샘플 수
클릭률(CTR)
$$\bar{p} = \sum_{t=1}^{T} y_t / |T|$$
엔트로피
$$H(\bar{p}) := -(\bar{p} \log \bar{p} + (1 - \bar{p}) \log(1 - \bar{p}))$$
상대적 정보 이득(RIG)
$$\text{RIG} = \frac{H(\bar{p}) - \text{CE}}{H(\bar{p})}$$
RIG는 모델이 제공하는 상대적 정보 이득을 측정합니다. 베이스라인 예측기(항상 평균 CTR을 예측)와 비교하여 모델의 성능을 평가합니다.
정규화된 상대적 정보 이득(NRIG)
정규화된 예측을 사용하여 RIG를 계산합니다:
$$\hat{p}t = p_t \times \frac{\bar{p}}{\sum{t=1}^{T} p_t / |T|}$$
NRIG는 모델의 예측이 실제 평균 CTR과 일치하도록 조정된 후의 정보 이득을 측정합니다.
정보이론의 응용
정보이론의 개념들은 다양한 분야에서 응용됩니다:
- 기계 학습: 손실 함수, 특성 선택, 모델 평가에 활용
- 자연어 처리: 언어 모델링, 텍스트 압축, 정보 검색에 활용
- 통신 시스템: 데이터 압축, 오류 정정 코드, 채널 용량 분석에 활용
- 신경과학: 신경 활동의 정보 처리 이해에 활용
- 금융: 포트폴리오 최적화, 리스크 관리에 활용
결론
정보이론은 불확실성을 측정하고 정량화하는 강력한 프레임워크를 제공합니다. 정보량, 엔트로피, KL 다이버전스, 크로스 엔트로피 등의 개념은 데이터 과학, 기계 학습, 통신 시스템 등 다양한 분야에서 활용되고 있습니다. 이러한 개념들을 이해하면 더 효율적인 알고리즘 설계와 모델 평가가 가능해집니다.
참고 자료
- 정보량 관련 참조 블로그
- 크로스엔트로피 참조 블로그
- Web-Scale Bayesian Click-Through Rate Prediction for Sponsored Search Advertising in Microsoft's Bing Search Engine
- Click-through Prediction for Advertising in Twitter Timeline
- Elements of Information Theory by Thomas M. Cover and Joy A. Thomas
- Pattern Recognition and Machine Learning by Christopher M. Bishop