[AIFFEL 울산 1기] 28. 정보이론 톺아보기

정경민·2022년 3월 21일
0

학습 목표

  • 머신러닝 이론의 이론적 토대를 이루는 가장 중요한 이론 중 하나인 정보이론(Information Theory)에 대해 알아본다.
  • 머신러닝에서 많이 사용되는 Entropy, Cross Entropy, KL divergence 등의 개념과 이런 개념들이 머신러닝 이론과 연결되는 사례를 파악해 본다.

후기


학습 내용

28. 정보이론 톺아보기

# 정보 이론(information theory)이란?

추상적인 '정보'라는 개념을 정량화하고 정보의 저장과 통신을 연구하는 분야

28.1. Information Content

  1. 일어날 가능성이 높은 사건은 정보량이 낮고, 반드시 일어나는 사건에는 정보가 없는 것이나 마찬가지입니다.
  2. 일어날 가능성이 낮은 사건은 정보량이 높습니다.
  3. 두 개의 독립적인 사건이 있을 때, 전체 정보량은 각각의 정보량을 더한 것과 같습니다.

사건 xx가 일어날 확률을 P(X=x)P(X=x)라고 할 때, 사건의 정보량(information content) $I(x)는 다음과 같이 정의됩니다.

I(x)=logbP(x)I(x)=−log_bP(x)

b=2b=2인 경우 정보량은 정보를 나타내기 위해 필요한 비트(bit)의 개수와 같습니다.

28.2. Entropy

# 엔트로피(entropy)

특정 확률분포를 따르는 사건들의 정보량 기댓값

# For Discrete Random Variables
각각의 경우의 수가 가지는 정보량에 확률을 곱한 후, 그 값을 모두 더한 값
H(X)=EXP[I(x)]=ni=1pilogpi(pi:=P(X=xi))H(X)=E_{X∼P}[I(x)]=−n∑_{i=1}p_ilogp_i(pi:=P(X=x_i))

# For Continuous Random Variables (미분 엔트로피, differential entropy)
XX가 연속적인 값을 갖는 연속 확률 변수일 때는 유한합 대신 적분의 형태로 정의
h(X)=p(x)logp(x)dxh(X)=−∫p(x)log_p(x)dx

28.3. Kullback Leibler Divergence

# 쿨백-라이블러 발산(Kullback-Leibler divergence, KL divergence)

데이터가 따르는 실제 확률 분포를 P(x)P(x), 모델이 나타내는 확률 분포를 Q(x)Q(x)라고 합시다. 두 확률 분포의 KL divergence는 P(x)P(x)를 기준으로 계산된 Q(x)Q(x)의 평균 정보량과, P(x)P(x)를 기준으로 계산된 P(x)P(x)의 평균 정보량의 차이로 정의할 수 있습니다. 실제 확률 분포 P(x)P(x) 대신 근사적인 분포 Q(x)Q(x)를 사용했을 때 발생하는 엔트로피의 변화량을 나타내는 값입니다.

DKL(PQ)=EXP[logQ(x)]EXP[logP(x)]=P(x)log(P(x)Q(x))DKL(P||Q)=E_{X∼P}[−logQ(x)]−E_{X∼P}[−logP(x)]=∑P(x)log(\frac{P(x)}{Q(x)})

연속 확률 변수의 경우
DKL(PQ)=P(x)log(P(x)Q(x))dxDKL(P||Q)=∫P(x)log(\frac{P(x)}{Q(x)})dx

# Cross Entropy

28.4. Cross Entropy Loss

28.5. Decision Tree와 Entropy

0개의 댓글