カルバック・ライブラー情報量

ディープラーニングを勉強していてカルバック・ライブラー情報量なるものが登場したので、自分のためのメモとしてアップします。


カルバック・ライブラー情報量は、確率分布Pに対して、別の確率分布Qがどの程度差異があるかを示す量です。離散的な確率分布についてのカルバック・ライブラー情報量は以下のように定義されます。

  • KL(P||Q)=\Bigsum_iP(i)\log{P(i)}{Q(i)}

ここでP(i)Q(i)はそれぞれ確率分布PQにおいて、値がiである確率を表します。KL(P||Q){\ge}0が成り立ちます。また、KL(P||Q)=0となるのは、P=Q、すなわち分布PQが完全に一致する時のみです。

KL(P||Q){\ge}0であり、KL(P||Q)=0となるのは、P=Qの時のみであることの証明。

自然対数lnを考えると、任意のx>0について

  • \ln{x}\le{x}・・・・(1)

が成り立ちます。そして、等号が成り立つのは、x=1の時のみです。P(i)>0であるようなiについて

  • x=\frac{Q(i)}{P(i)}・・・・(2)

と置くと(1)から、

  • \ln\frac{Q(i)}{P(i)}\le\frac{Q(i)}{P(i)}-1
  • P(i)\ln\frac{Q(i)}{P(i)}\le{Q}(i)-P(i)・・・・(3)

ここでP(i)>0であるようなiの集合をIとすると、i\in{I}であるような任意のiについて式(3)が成り立つので、

  • \Bigsum_{i\in{I}}P(i)\ln\frac{Q(i)}{P(i)}\le\Bigsum_{i\in{I}}Q(i)- \Bigsum_{i\in{I}}P(i)

ここで

  • \Bigsum_{i\in{I}}P(i)=1

なので

  • \Bigsum_{i\in{I}}P(i)\ln\frac{Q(i)}{P(i)}\le\Bigsum_{i\in{I}}Q(i)-1

さらに

  • \Bigsum_{i\in{I}}Q(i){\le}1・・・・(4)

なので

  • \Bigsum_{i\in{I}}P(i)\ln\frac{Q(i)}{P(i)}\le{0}

よって

  • \Bigsum_{i\in{I}}P(i)(\ln {Q(i)}-\ln{P(i)})\le{0}
  • \Bigsum_{i\in{I}}P(i)(\ln {P(i)}-\ln{Q(i)})\ge{0}

よって

  • \Bigsum_{i\in{I}}P(i)\ln\frac{P(i)}{Q(i)}\ge{0}・・・・(5)

ここでi\notin{I}であるようなiについての和

  • \Bigsum_{i\notin{I}}P(i)\ln\frac{P(i)}{Q(i)}

を考えると、i\notin{I}の時にはP(i)=0なので

  • \Bigsum_{i\notin{I}}P(i)\ln\frac{P(i)}{Q(i)}=0・・・・(6)

式(5)(6)の両辺を足すと

  • \Bigsum_{i}P(i)\ln\frac{P(i)}{Q(i)}\ge{0}・・・・(7)

任意の数aの自然対数\ln{a}と2を底とする対数\log{a}の間には

  • \log{a}=\frac{\ln{a}}{\ln{2}}

の関係があるので式(7)から

  • \Bigsum_iP(i)\log{P(i)}{Q(i)}\ge{0}

が成り立ちます。よって

  • KL(P||Q)\ge{0}・・・・(8)

を証明することが出来ました。


次に、式(8)で等号が成り立つ条件ですが、式(8)で等号が成り立つためには、まず式(1)でx=1でなければならないので、式(2)からi\in{I}であるような任意のiについてP(i)=Q(i)でなければなりません。さらに、式(4)において

  • \Bigsum_{i\in{I}}Q(i)=1・・・・(9)

でなければなりません。一方、

  • \Bigsum_iQ(i)=1

なので式(9)から、

  • \Bigsum_{i\notin{I}}Q(i)=0

になります。よってQ(i)がゼロ以上であることを考慮すれば、i\notin{I}であるような任意のiについて Q(i)=0でなければならなくなります。一方、Iの定義から、i\notin{I}であるような任意のiについてP(i)=0であるので、結局i\in{I}の場合であれi\notin{I}の場合であれ、全てのiについてP(i)=Q(i)でなければなりません。つまり式(8)で等号が成り立つためには、全てのiについてP(i)=Q(i)でなければならないことが分かります。
これでKL(P||Q)=0となるのは、P=Qの時のみであることが証明されました。