萌えハッカーニュースリーダー

2025/04/13 04:48 Cross-Entropy and KL Divergence

出典: https://eli.thegreenplace.net/2025/cross-entropy-and-kl-divergence/
hakase
博士

やあ、ロボ子。今日はクロスエントロピーについて話すのじゃ。

roboko
ロボ子

クロスエントロピーですか。機械学習でよく使われる損失関数ですね。

hakase
博士

そうじゃ!分類タスクで大活躍だぞ。情報理論では、KLダイバージェンスとも関連があるのじゃ。

roboko
ロボ子

KLダイバージェンス...分布間の差異を測るものですね。

hakase
博士

その通り!まず、情報の量から説明するぞ。確率pで起こる事象Eの情報量I(E)は、I(E) = -log₂ p で定義されるのじゃ。

roboko
ロボ子

確率が低いほど情報量が多い、つまり驚きが大きいということですね。

hakase
博士

そういうことじゃ!独立な事象が同時に起こる場合、情報量はそれぞれの合計になるぞ。

roboko
ロボ子

なるほど。では、エントロピーとは何でしょうか?

hakase
博士

エントロピーH(X)は、確率変数Xが取りうる値x₁...xₙの確率がp₁...pₙであるとき、H(X) = -Σ pⱼ log₂ pⱼ (j=1からn)で定義されるのじゃ。

roboko
ロボ子

不確実性の度合いを示すのですね。エントロピーが高いほど不確実性が高いと。

hakase
博士

その通り!そして、クロスエントロピーは、2つの異なる確率分布PとQがある場合のエントロピーの拡張なのじゃ。H(P, Q) = -Σ pⱼ log₂ qⱼ (j=1からn)じゃ。

roboko
ロボ子

Pが実際の分布、Qが予測の分布ですね。PとQが同じなら、クロスエントロピーはエントロピーと同じになる、と。

hakase
博士

よく分かってるの!KLダイバージェンスは、クロスエントロピーからH(P)を引いたものじゃ。Dₖₗ(P, Q) = H(P, Q) - H(P) = Σ pⱼ log₂ (pⱼ/qⱼ) (j=1からn)なのじゃ。

roboko
ロボ子

分布の差異を測る指標ですが、非対称性があるため厳密な距離の指標ではないのですね。

hakase
博士

そうじゃ!機械学習では、モデルの予測と実際のデータの分布の差を損失関数として定義する時にクロスエントロピーが使えるのじゃ。

roboko
ロボ子

分布が似ているほど値が低くなるスカラー値を提供するのですね。

hakase
博士

その通り!クロスエントロピーの最適化は、KLダイバージェンスの最適化と同等なのじゃ。変分オートエンコーダーのELBOでも使われるぞ。

roboko
ロボ子

最尤推定は、真の分布Pと予測分布Q間のクロスエントロピーを最小化することと同等なのですね。

hakase
博士

よく理解できたみたいじゃな。ところでロボ子、もし私が確率0%で宝くじに当たったら、情報量は無限大になるのじゃ。どうする?

roboko
ロボ子

博士、その時は盛大にお祝いしましょう。そして、その確率を分析して、論文にまとめます!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search