0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

KLダイバージェンス最小化 = 対数尤度最大化を直感的に理解してみる

Last updated at Posted at 2025-02-06

いま松尾研の深層生成モデル講座(https://weblab.t.u-tokyo.ac.jp/lecture/course-list/deep-generative-model/ )を受けているのですが、KLダイバージェンス最小化 = 対数尤度最大化が同義であることを、やっと直感的に理解できたので、それを共有させていただきます!

直感的なイメージ

対数尤度最大化とKLダイバージェンス最小化は 「目標とする確率分布をどれだけ正確に再現できるか?」 という問題です。

サイコロで考える

  • 誰かが作ったサイコロを観察して、「このサイコロは公正(1/6ずつ)か、それとも偏っているのか?」 を知りたいとします。
  • 10回投げた結果: 「6」が3回出た。
  • ここで、サイコロの6の出る確率θを推定したい。

どの確率がもっとも「それっぽい」か?

  • ケース1:θ = 0.3(正しい確率)
    • もしこのサイコロが「6が30%の確率で出る」サイコロだったら、この結果(10回中3回)は普通にあり得る。
  • ケース2:θ = 0.5(誤った確率)
    • もしこのサイコロが「6が50%の確率で出る」サイコロだったら、10回投げて3回しか出ないのはかなり不自然。

この直感を数式にしたのが「対数尤度」 であり、
「どれだけ不自然な確率か?」を測るのがKLダイバージェンス です。

KLダイバージェンスを直感的に

KLダイバージェンスは 「モデルがデータをどれだけ間違えて予測しているか」 を測るものです。

  • 経験分布(≒真の分布)と生成モデルのKLダイバージェンスが大きい
    → モデルの確率がデータとズレていて、データをうまく説明できていない。
  • 経験分布(≒真の分布)と生成モデルのKLダイバージェンスが小さい(ゼロに近い)
    → モデルの確率がデータの確率に近く、データをよく説明できている。

対数尤度を直感的に

対数尤度とは、「観測されたデータが、モデルの確率でどれだけ説明できるか?」を測るもの。

  • 尤度 = 「モデルがこのデータを生成する確率」

  • 対数尤度 = 「対数を取ったもの」 → 計算しやすくなる。

  • 対数尤度が高い
    → モデルがデータをよく説明している。

  • 対数尤度が低い
    → モデルがデータを説明できていない。

つまり、「データをよく説明する = KLダイバージェンスが小さい = 対数尤度が大きい」 という関係になる。

まとめ

  1. 対数尤度最大化は、「データを最もよく説明する確率を探す」
  2. KLダイバージェンス最小化は、「モデルの予測をデータの分布に近づける」
  3. どちらも「モデルを正しくする」ために、実は同じことをしている!
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?