정보이론의 기초2 -entropy란?-

1. Entropy는 무엇인가

 

self information이 하나의 사건에 대한 정보량이면 Entropy는 전체 확률분포가 가지는 정보량이라고 볼 수 있다.

 

확률변수 $M$Entropy는 $M$이 가질 수 있는 모든 사건의 평균적인 정보량으로 $M$의 정보량의 기댓값이다.

 

$$H(M)=E(I(M))= \sum _{m} ^{} I(M)P(M=m)=- \sum _{m} ^{} P(M=m)logP(M=m)=-E(log(P(M))$$

 

확률분포가 가지는 불확실성의 측도이고 확률분포가 가지는 모든 정보량이다.

 

2. 예시로 알아보는 Entropy

 

<밑은 컴퓨터에서 사용한다고 가정하여 2로 계산함>

 

기계 XA, B, C, D를 각각 0.25의 확률로 출력

 

 

반면, 기계 YA : 0.5, B: 0.125, C: 0.125, D: 0.25의 확률로 출력한다고 가정해보자.

 

그림1. 기계 X가 구별하기 위해 던져야하는 질문 수

 

기계 X가 출력하는 문자 1개를 구별하기 위해 최적으로 몇 개의 질문을 던져야 하는가?

 

AB / CD? >>>>>.1

 

A/B? OR C/D? >>>>>>>>>1개로 총 2개

 

이 확률분포 X가 가지는 평균적인 정보량은 2이다

 

정의로 계산해보면 P(X=A)=P(X=B)=P(X=C)=P(X=D)=0.25이므로 $$H(X)=- \sum _{x=1} ^{4} \frac{1}{4} log _{2} P(X=x)=4 \times  \frac{1}{4} log _{2} 4=2$$

 

기계 Y는 처음부터 AB / CD로 물어보는 것은 비효율적이다.

 

왜냐하면 A가 나올 확률이 0.5이기 때문에 애초에 A이니? BCD이니?라고 물어보는 것이 효과적이다.

 

비슷한 이유로 D / BC를 물어보고 B/C를 물어보는 것이 효과적이다.

 

그림2. 기계 Y가 구별하기 위해 던져야 하는 질문 수

이 확률분포 Y가 가지는 평균적인 정보량은 얼마인가

 

“”그렇다면 기계 Y의 경우에 필요한 최소의 질문 개수는 앞서 보였던 단순 로그식으로는 계산이 되지 않습니다. “” 아니 3번이자나 ㅡㅡ

 

질문개수로 생각해버리니까 어렵네 그냥 정의 그대로 받아들여야지

 

P(Y=A)=0.5 P(Y=B)=P(Y=C)=0.125 P(Y=D)=0.25이므로

 

$$H(Y)=- \sum _{y=1} ^{4} P(Y=y)log _{2} P(Y=y)=-(- \frac{1}{2} log _{2} 2- \frac{1}{8} log _{2} 8- \frac{1}{8} log _{2} 8- \frac{1}{4} log _{2} 4)=1.75$$

 

entropy는 불확실성의 척도이다.

 

확률분포가 deterministic 할수록 entropy는 작아지고 (Y의 분포)

 

확률분포가 uniform 할수록 entropy는 커진다. (X의 분포)

 

모든 사건이 같은 확률로 일어날수록 uniform한것이고 entropy는 커진다.

 

그만큼 어떤 사건이 일어날지 불확실하다는 이야기이다

 

확률이 서로 다르게 분명히 구별되면 어떤 사건이 더 일어날지 예측이 가능하므로

 

entropy가 작다. 그만큼 덜 불확실하다는 이야기이다.

 

 

3. Cross Entropy는 무엇인가

 

확률분포 P에 대한 확률분포 Qcross entropy는 $$H(P,Q)=-E(log(Q)) _{P}$$

 

이것을 도대체 어떻게 이해해야할까?

 

2.예시로 알아보는 entropy에서 들었던 두 기계에 대해 다시한번 생각해보자.

 

이번에는 X>>> 기계 Q Y>>> 기계 P라고만 바꿔보는 것이다.

 

기계 QA, B, C, D를 각각 0.25의 확률로 출력

 

반면, 기계 PA : 0.5, B: 0.125, C: 0.125, D: 0.25의 확률로 출력

 

최적의 질문 전략으로 구한 기계 QentropyH(Q)=2, 기계 PEntropyH(P)=1.75

 

그리고 각각 Entropy를 구할 때 사용했던 질문전략이 달랐다

 

Q의 경우는 각 문자 A,B,C,D를 출력하기 위해 2번씩 물어봤고

 

H(Q)=0.25*2+0.25*2+0.25*2+0.25*2=2

 

P의 경우는 A1번만에 B3, C3, D2번씩 물어봤다

 

H(P)=0.5*1+0.125*3+0.125*3+0.25*2=1.75

 

만약 Q에 사용했던 질문 전략<Q의 확률분포>P에 사용하면 어떨까?

 

다시 말해 모든 문자의 질문 수를 2번이라고 하자. 그랬을 때 PENTROPY를 구해보는거다

 

그림3. 기계 Q에 사용한 질문 전략을 P에 사용한 경우

원래 1.75였던 PEntropy2로 증가했다. 이것이 바로 P에 대한 QCross entropy이다.

 

어떤 동일한 사건에 대해 두 확률분포 PQ 사이의 Cross entropy

 

그 사건이 P에서 나왔는지 Q에서 나왔는지 확정짓기 위한 평균적인 정보량이다

 

그러면 Cross entropy가 작을수록 PQ를 분명히 확정짓기 위한 평균적인 정보량<불확실성>이 적을테니

 

노력을 안해도 된다는거 아냐?? 그러니까 PQ가 차이가 없다고 보는게 맞겠지?

 

Cross entropy가 클수록 PQ를 분명히 확정짓기 위한 평균적인 정보량<불확실성>이 클테니 그만큼 노력을 많이 해야 한다는 거 아니야???

 

PQ가 차이가 너무 심해서 이 사건이 p에서 나온건지 q에서 나온건지 알기 어렵다는게 아닐까?

 

4. 참조

 

https://en.wikipedia.org/wiki/Quantities_of_information

 

https://en.wikipedia.org/wiki/Cross_entropy

 

https://hyunw.kim/blog/2017/10/26/Cross_Entropy.html

'정보이론' 카테고리의 다른 글

정보이론의 기초3 -KL divergence란?-  (0) 2021.10.10
정보이론의 기초1 -정보량이란?-  (0) 2021.10.08
TAGS.

Comments