brunch

You can make anything
by writing

C.S.Lewis

by Chris송호연 Jan 21. 2018

정보 이론: Information Theory 1편

Information, Entropy

머신러닝에서 자주 접하는 단어들 중에 엔트로피(Entropy), 크로스 엔트로피(Cross-Entropy), KL-Divergence 가 있습니다.


정보 이론의 대표적인 개념들입니다. 오늘은 정보 이론의 기초에 대해서 공부해보겠습니다.


정보(Information)


정보 이론의 핵심 단어는 바로 정보(Information)라 할 수 있겠는데요. 이 정보란 무엇일까요? 내가 알고 있는 지식이나 새로 접한 뉴스를 정보라고 표현하는데요- 정보 이론에서는 정보라는 개념을 수학적으로 구체적으로 표현하였습니다.


정보 이론에서 정보(Information)는 '놀람의 정도'입니다. 예상치 못한 데이터에 더 높은 가치를 매기는 것입니다. 예를 들어보겠습니다. 알파고와 이세돌의 대전에서, 이세돌의 78수는 알파고를 무너뜨렸습니다. 이세돌의 78수가 얼마나 놀라운 정보였는지 계산을 해보겠습니다.


이세돌의 78수
이세돌의 78수를 보고 놀라는 해설자들
알파고가 백이었다면, 이세돌이 했던 행동을 따라했을까?
알파고가 이세돌의 78수를 선택할 확률은 0.007%

알파고와 이세돌의 대국에서, 4번째 시합을 이세돌이 이겼습니다. 이세돌이 4번째 대국을 이길 수 있도록 만들었던 결정적인 신의 한수가 바로 78수입니다. 딥마인드의 알파고 팀은 알파고가 이세돌의 78수를 놓는 상황으로 만들고 시뮬레이션했을  때, 알파고가 이세돌의 78수를 놓을 확률을 계산해봤습니다.


알파고가 이세돌의 78수를 선택할 확률은 0.007%였습니다. 그 만큼 극히 작은 확률이었습니다. 거의 만명의 사람들 중 1명만이 둘 수 있는 수였던 것이죠. 이렇게 희귀한 수였기에, 알파고는 이를 보고 큰 배움을 얻을 수 있었을 것입니다. 자신이 생각하지 못한 신의 한수였기 때문에 알파고에게는 자기 발전을 위한 엄청난 정보가 된 것이죠.


정보 이론의 핵심은, 잘 일어나지 않는 사건(unlikely event)의 정보는
 자주 발생할만한 사건보다 정보량이 많다고(informative) 하는 것입니다.


정보 이론에서의 정보의 정의는 아래와 같습니다. log의 밑을 2로 하는 것을 섀넌(Shannon) 혹은 비트(bit)라고 합니다. 로그의 밑이 자연상수이면 내트(nat)라고 합니다. 머신러닝에서는 자연상수를 밑으로 주로 활용합니다. 

I(x) = - logP(x)


정보의 정의에 따라 이세돌의 78수를 계산해보겠습니다. 78수의 확률이 0.007%이니, 이 수의 정보량을 구해보면 이렇습니다.


(알파고가 이세돌의 78수를 둘 확률) = -log0.00007 = 9.567015315914915

이세돌의 78수의 정보량을 계산해보면, 9.567이 나옵니다. 


만약에 70%의 확률로 그 수를 따라할 수 있었다면, 정보량은 불과 0.357 밖에 되지 않습니다.

-log0.7 = 0.35667494393873245


정보 엔트로피


엔트로피에 대해서 이야기해보겠습니다. 분포 p를 가진 H(X)로 표기되는 확률변수의 정보 엔트로피는 불확실성의 측정입니다. 섀넌 엔트로피(Shannon entropy)는 모든 사건 정보량의 기대값을 말합니다. 


섀넌 엔트로피(Shannon Entropy): 모든 사건 정보량의 기대값


또한 K가지 상태를 가진 이산 변수의 경우 정보 엔트로피는 아래와 같이 표기할 수 있습니다.


K가지 상태를 가진 이산 변수의 경우 엔트로피

동전을 던지는 경우를 생각해보겠습니다. 동전을 던져서 앞면이 나오는 경우(P(X=1))와 동전을 던져서 뒷면이 나오는 경우(P(X=0))가 있습니다. 앞면과 윗면이 나올 확률이 동일한 동전 던지기의 경우, 앞면과 뒷면이 나올 확률을 각각 50%입니다.


앞면이 나올 확률과 뒷면이 나올 확률


이 동전 던지기의 정보 엔트로피를 구해보겠습니다.


동전 던지기의 엔트로피


동전 던지기 하면 생각나는 사람이 있습니다. 바로 배트맨의 하비 덴트인데요-


배트맨의 하비 덴트 (출처: 배트맨 다크나이트)


배트맨 영화에서 나오는 하비 덴트는 정의로운 변호사였지만, 연인을 잃고선 미쳐버리고 앞면만 나오는 동전을 가지고 다니면서 동전 던지기를 하고 앞면이 나오면 자신이 선택한 일을 합니다.


하비 덴트의 동전 던지기는 무조건 앞면이 나옵니다. 확률론에서는 이러한 분포를 가지는 것을 퇴화분포(Degenerate Distribution)이라고 부릅니다. 이산확률변수가 하나의 값을 가질 확률이 1 인 특별한 분포를 퇴화분포라 합니다.  


하비 덴트의 동전 던지기의 경우 이런 확률을 가지고 있습니다.


하비 덴트의 동전 던지기 확률


마찬가지로, 하비 덴트의 동전 던지기의 정보 엔트로피를 구해보겠습니다. 

하비덴트의 동전 던지기의 엔트로피는 0입니다.


하비 덴트의 동전 던지기의 정보 엔트로피는 0입니다. 엔트로피가 0이라는 말은 확률 분포의 불확실성이 없다는 뜻이죠. 


동전 던지기의 정보 엔트로피 그래프

동전 던지기 게임의 정보 엔트로피 그래프를 그려보았습니다. 우리가 생각하는 일반적인 동전던지기는 정 가운데 위에 파란색 x표시를 해두었습니다. 앞면이 나올 확률이 50%인 경우에 엔트로피, 불확실성이 가장 크죠.


그러나 하비 덴트의 동전 던지기의 경우엔 무조건 앞면만 나오기 때문에, 엔트로피가 0입니다. 하비 덴트의 동전 던지기는 불확실성이 없는 정보 엔트로피 0의 퇴화 분포입니다. 하비 덴트의 동전 던지기는 위 그래프에서 우측 하단에 초록색 x표시를 해두었습니다.


다음 포스팅에서는 KL-Divergence와 크로스 엔트로피(Cross-Entropy)에 대해 설명드리겠습니다.


References


머신 러닝, 케빈 머피, 에이콘 출판사

https://ratsgo.github.io/statistics/2017/09/22/information/

http://blog.naver.com/PostView.nhn?blogId=gyrbsdl18&logNo=221013188633


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari