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

  • 2つの分布p,qがある
  • pという分布は、いろいろな観察のそれぞれについて、どれくらいの確率で発生するかを決めている
  • qが観察された
  • それぞれの観察についてpが尤度を決めている
  • 大雑把に言うと、xという観察値について、尤度はp(x)^{q(x)}
  • 対数尤度にするとq(x) \log(p(x))
  • すべてのxについて足し合わせるのは積分だから
    • \int_{x \in \Omega} q(x) \log(p(x)) dx
  • ここで基の分布がqであったとしたら\int_{x \in \Omega} q(x) \log(q(x)) dx
  • 基の分布をpとみなすか、qとみなすかで比をとると、観察された分布qについて、仮説pと仮説qに関する尤度比になる
  • それがKL divergenceらしい
  • 基の分布をpとqとの2面作戦に広げたのを受けて、別の広げ方をしてみる
    • 観察qについて基の分布をpにするか、qにするか、が上記の考え方
    • 観察qについて基の分布をpにするか、観察pについて基の分布をqにするか、というのもありだろう
  • そうすると、気になるのは
    • 観察pについて基の分布をpにする、と、観察qについて基の分布をqにする、という「残りの2パターン」
  • 何かしてやることにするなら
    • \int_{x \in \Omega} p(x) \log(p(x)) dx\int_{x \in \Omega} q(x) \log(q(x)) dxとが違うんじゃ、どこかフェアじゃない、と感じて、何かしてやるか
    • そもそもフェアじゃないんだから、両方向性に調べてコンセンサスをえるのがよいか
    • とか?
  • 上で書いた、pを基にq、qを基にp、この二つが違う、というのが、KL divergenceは非対称、と言う意味
  • 非対称なものは「距離」の定義を満足しないから、「対称」にしたいな、と言うのは誰もが思うこと
  • 上でコメントした「気になる」ことも、要するにそういうこと
  • KL distanceは「対称性」を持たせて「距離」的にしたもの
  • RではFNNパッケージがあって、KL.divergence()関数とKL.dist()関数とがある
  • RのFNNパッケージのpdfはこちら
  • KL divergenceに関する参考pdf