학습 목표
- 머신러닝 이론의 이론적 토대를 이루는 가장 중요한 이론 중 하나인 정보이론(Information Theory)에 대해 알아본다.
- 머신러닝에서 많이 사용되는 Entropy, Cross Entropy, KL divergence 등의 개념과 이런 개념들이 머신러닝 이론과 연결되는 사례를 파악해 본다.
후기
학습 내용
28. 정보이론 톺아보기
# 정보 이론(information theory)이란?
추상적인 '정보'라는 개념을 정량화하고 정보의 저장과 통신을 연구하는 분야
28.1. Information Content
- 일어날 가능성이 높은 사건은 정보량이 낮고, 반드시 일어나는 사건에는 정보가 없는 것이나 마찬가지입니다.
- 일어날 가능성이 낮은 사건은 정보량이 높습니다.
- 두 개의 독립적인 사건이 있을 때, 전체 정보량은 각각의 정보량을 더한 것과 같습니다.
사건 x가 일어날 확률을 P(X=x)라고 할 때, 사건의 정보량(information content) $I(x)는 다음과 같이 정의됩니다.
I(x)=−logbP(x)
b=2인 경우 정보량은 정보를 나타내기 위해 필요한 비트(bit)의 개수와 같습니다.
28.2. Entropy
# 엔트로피(entropy)
특정 확률분포를 따르는 사건들의 정보량 기댓값
# For Discrete Random Variables
각각의 경우의 수가 가지는 정보량에 확률을 곱한 후, 그 값을 모두 더한 값
H(X)=EX∼P[I(x)]=−n∑i=1pilogpi(pi:=P(X=xi))
# For Continuous Random Variables (미분 엔트로피, differential entropy)
X가 연속적인 값을 갖는 연속 확률 변수일 때는 유한합 대신 적분의 형태로 정의
h(X)=−∫p(x)logp(x)dx
28.3. Kullback Leibler Divergence
# 쿨백-라이블러 발산(Kullback-Leibler divergence, KL divergence)
데이터가 따르는 실제 확률 분포를 P(x), 모델이 나타내는 확률 분포를 Q(x)라고 합시다. 두 확률 분포의 KL divergence는 P(x)를 기준으로 계산된 Q(x)의 평균 정보량과, P(x)를 기준으로 계산된 P(x)의 평균 정보량의 차이로 정의할 수 있습니다. 실제 확률 분포 P(x) 대신 근사적인 분포 Q(x)를 사용했을 때 발생하는 엔트로피의 변화량을 나타내는 값입니다.
DKL(P∣∣Q)=EX∼P[−logQ(x)]−EX∼P[−logP(x)]=∑P(x)log(Q(x)P(x))
연속 확률 변수의 경우
DKL(P∣∣Q)=∫P(x)log(Q(x)P(x))dx

# Cross Entropy

28.4. Cross Entropy Loss
28.5. Decision Tree와 Entropy