쿨백-라이블러 발산

위키백과, 우리 모두의 백과사전.

쿨백-라이블러 발산(Kullback–Leibler divergence, KLD)은 두 확률분포의 차이를 계산하는 데에 사용하는 함수로, 어떤 이상적인 분포에 대해, 그 분포를 근사하는 다른 분포를 사용해 샘플링을 한다면 발생할 수 있는 정보 엔트로피 차이를 계산한다. 상대 엔트로피(relative entropy), 정보 획득량(information gain), 인포메이션 다이버전스(information divergence)라고도 한다. 정보이론에서는 상대 엔트로피, 기계학습의 결정 트리에서는 정보 획득량을 주로 사용한다.

쿨백-라이블러 발산은 비대칭으로, 두 값의 위치를 바꾸면 함수값도 달라진다. 따라서 이 함수는 거리 함수는 아니다.

정의[편집]

두 확률변수에 대한 확률분포 가 있을 때, 두 분포의 쿨백-라이블러 발산은 다음과 같이 정의된다.

  • 이산확률변수의 경우:
  • 연속확률변수의 경우: , 여기에서 는 두 확률분포의 확률 밀도 함수를 의미한다.

또는, 측도를 사용하여 더 일반적으로 표현할 수도 있다. 두 확률측도 가 있고 에 대해 절대수렴할 경우, 두 분포의 쿨백-라이블러 발산은 다음과 같이 정의된다.

여기에서 라돈-니코딤 도함수(Radon–Nikodym derivative)이다.

의미[편집]

쿨백-라이블러 발산은 어떠한 확률분포 가 있을 때, 샘플링 과정에서 그 분포를 근사적으로 표현하는 확률분포 대신 사용할 경우 엔트로피 변화를 의미한다. 따라서, 원래의 분포가 가지는 엔트로피 대신 를 사용할 때의 교차 엔트로피(cross entropy) 의 차이를 구하면,

로, 원래 정의했던 식과 같은 결과가 나온다.