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ダイバージェンスとクロスエントロピーの関係:機械学習における重要な等価性

Posted at

機械学習において、クロスエントロピー損失を最小化することがKLダイバージェンスを最小化することと等価であるという事実は、深層学習の理論的基盤を理解する上で極めて重要です。この関係を数学的背景から実践的な応用まで、順を追って解説していきます。

基本概念の復習

エントロピー(Shannon Entropy)

離散確率分布 p(x) に対するエントロピーは、その分布の「不確実性」や「情報量」を測る指標です:

H(p) = -∑ p(x) log p(x)

エントロピーが大きいほど、分布は均等に近く(不確実性が高い)、小さいほど特定の値に集中しています(確実性が高い)。

KLダイバージェンス(Kullback-Leibler divergence)

KLダイバージェンスは、2つの確率分布p(真の分布)とq(推定分布)の「距離」を測る指標です:

D_KL(p||q) = ∑ p(x) log(p(x)/q(x)) = ∑ p(x) log p(x) - ∑ p(x) log q(x)

重要な性質:

  • 非対称性:D_KL(p||q) ≠ D_KL(q||p)
  • 非負性:D_KL(p||q) ≥ 0
  • p = q のとき D_KL(p||q) = 0

クロスエントロピー(Cross Entropy)

分布pとqのクロスエントロピーは:

H(p,q) = -∑ p(x) log q(x)

これは、真の分布がpのときに、分布qを使って符号化した場合の期待符号長を表します。

核心となる関係式

ここで重要な関係式が導かれます:

H(p,q) = H(p) + D_KL(p||q)

証明:

H(p,q) = -∑ p(x) log q(x)
       = -∑ p(x) log q(x) + ∑ p(x) log p(x) - ∑ p(x) log p(x)
       = -∑ p(x) log p(x) + ∑ p(x) log p(x) - ∑ p(x) log q(x)
       = H(p) + ∑ p(x) log(p(x)/q(x))
       = H(p) + D_KL(p||q)

なぜこの関係が重要なのか

機械学習における等価性

機械学習において、真の分布p(正解ラベル)は固定されています。したがって:

  • H(p)は定数:真の分布のエントロピーは変わらない
  • **H(p,q) = H(p) + D_KL(p||q)**の関係により
  • クロスエントロピーを最小化KLダイバージェンスを最小化

つまり、クロスエントロピー損失を最小化することで、自動的にモデルの予測分布を真の分布に近づけることができるのです。

実践的な意味

この等価性により、機械学習では以下が成り立ちます:

  1. 最尤推定との一致:クロスエントロピー最小化は最尤推定と等価
  2. 確率論的解釈:損失関数に明確な確率論的意味を与える
  3. 勾配の良い性質:シグモイド関数などと組み合わせた際の勾配消失問題の緩和

具体例:分類問題での応用

二値分類の場合

正解ラベルが y ∈ {0,1}、モデルの予測確率が p̂ のとき:

真の分布:p = (1-y, y)
予測分布:q = (1-p̂, p̂)

クロスエントロピー = -y log(p̂) - (1-y) log(1-p̂)

この式を最小化することで、p̂ → y となり、KLダイバージェンスも最小化されます。

多クラス分類の場合

K個のクラスがあるとき、one-hot エンコーディングされた正解ベクトルを y、softmax出力を p̂ とすると:

クロスエントロピー = -∑(k=1 to K) y_k log(p̂_k)

情報理論的解釈

符号化の観点から

クロスエントロピー H(p,q) は、真の分布がpのデータを分布qに基づく符号で符号化した場合の期待符号長です。

  • H(p):最適符号(真の分布に基づく)の期待符号長
  • D_KL(p||q):次善の符号を使うことによる余分な符号長
  • H(p,q) = H(p) + D_KL(p||q):次善の符号の期待符号長

最小記述長原理との関連

機械学習モデルの学習は、データを最も効率的に記述(符号化)する方法を見つけることと解釈できます。クロスエントロピーの最小化は、この情報理論的最適化と一致しています。

実装上の考慮事項

数値安定性

実装では以下に注意が必要です:

# 数値的に不安定
cross_entropy = -np.sum(y_true * np.log(y_pred))

# 数値的に安定(log-sum-exp trick等を使用)
cross_entropy = tf.keras.losses.categorical_crossentropy(y_true, y_pred)

正則化との関係

L2正則化項は、事前分布に関する情報を表現するものとして解釈でき、ベイズ統計学的な枠組みでの最大事後確率推定と結びつきます。

まとめ

KLダイバージェンスとクロスエントロピーの関係 H(p,q) = H(p) + D_KL(p||q) は、機械学習の理論と実践を結ぶ重要な橋渡しです。この関係により:

  1. 理論的基盤:確率論・情報理論に基づく損失関数の正当性
  2. 実践的利点:計算しやすい形での最適化目標
  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?