수학/통계학

정보이론 / entropy & Cross entropy & KL divergence

빛날희- 2022. 1. 20. 14:45

링크된 강의를 참고하여 작성했습니다. 


▶ 엔트로피란?

정보를 표현하는데 필요한 평균 최소 자원량을 의미한다. 정보는 한국어, 영어, 필리핀어등 다양한 표현체계로 나타난다. 이 정보를 공통적으로 컴퓨터에서 0과 1 비트로 표현해 공통된 정보로 나타낼 수 있다. 

여기서 이 bits 단위를 최소 자원량이라고 말한다. 

 

정보가 등장하는 빈도수가 많을 수록, 즉 많이 사용되는 정보일 수록 자원량은 적은 것이 더 효율적일 것이다. 따라서 확률이 1에 가까우면 비트는 짧게 코딩하고 0에 가까우면 길게 코딩되도록 한다. 이 확률을 기반으로 평균 최소 자원량을 정한다. 

코드의 길이는 다음 그래프에 의해 log2Pi 가 된다. 

 

평균 최소 자원량 구하기 위해 기댓값을 구해야 한다. 이 기댓값은 도수*확률 값들을 모두 더해서 구한다. 즉 도수인 코드 길이에 확률을 곱해주면 다음 공식과 같다. 

따라서 위 공식을 적용한 값이 정보를 표현하기 위한 평균 최소 자원량이 된다.

 

 

▶ 크로스엔트로피란?

실제로 확률분포는 p를 따르겠지만 내가 확률분포를 uniform확률분포라고 오해하고 코딩했다고 가정해보자. 내가 가정한 qi확률분포를 다음과 같이 Pi 자리에 넣어준다면 그 값은 최소자원량인 엔트로피보다 클 것이다. 즉 엔트로피보다 비효율적인 값이 된다. 

비효율적인 값을 크로스엔트로피라고 한다. 

 

 

▶ KL divergence란?

비효율적인 크로스 엔트로피가 최소자원량에 비해 얼마나 비효율적인지를 나타내는 정도를 KL divergence라고 한다. 

따라서 크로스엔트로피에서 엔트로피를 뺀 값이 KL이 된다. 

 

 

 

▶ Mutual information이란?

위와 같은 방식으로 mutual information도 추가적으로 설명가능하다.

이는 실제로 두 변수가 독립이 아닌데 독립이라고 생각하고 코딩했을 때의 값이다. 따라서 이 값은 독립이 아닌 정도가 심할 수록 커진다. 즉 x와 y의 정보가 상호 연결이 끈끈할 수록 mutual information값은 커진다.