用語比較
クロスエントロピーとKLダイバージェンスの違い|エントロピー分だけずれる2つの指標(G検定・損失関数)
クロスエントロピーは、真の分布Pの下で、モデルの分布Qの対数の平均にマイナスを付けた値です。KLダイバージェンスは、2つの分布がどれだけ違うかを表す値で、クロスエントロピーからPのエントロピーを引いた分に等しくなります。
関係は「クロスエントロピー=エントロピー+KLダイバージェンス」の1本です。Pが固定なら、エントロピーは動かないので、クロスエントロピーを小さくすることとKLダイバージェンスを小さくすることは同じ意味になります。
この記事の目次
この記事の根拠と出典
各セクションの見出しの下に、公式資料で確認した内容か編集部の整理かをラベルで示しています。 試験日・料金・申込条件・試験方式は変わることがあるため、申込前に公式サイトで確認してください。
クロスエントロピーとKLダイバージェンスの要点
クロスエントロピー
H(P,Q)=−E[log Q(x)](xはPに従う)。Pの下で、Qの対数の平均にマイナスを付けた値。Pのエントロピーより小さくならない。
KLダイバージェンス
D_KL(P‖Q)=E[log P(x)−log Q(x)]。PをQで近似したときの、余分な情報量。0以上で、PとQが同じ分布のときだけ0。
つなぐ式
H(P,Q)=H(P)+D_KL(P‖Q)。Qについて最小にするなら、H(P)は関係しないので両者の最小化は同じ(Deep Learning 3.13節)。
違いを表で確認
| 比較軸 | クロスエントロピー | KLダイバージェンス |
|---|---|---|
| 式 | クロスエントロピー:H(P,Q)=−E[log Q(x)] | KLダイバージェンス:D_KL(P‖Q)=E[log P(x)−log Q(x)]。Pのエントロピーを引く項がある |
| 最小値 | クロスエントロピー:最小でもPのエントロピーH(P)。Pが確定的(正解が1つ)なら0 | KLダイバージェンス:最小は0。PとQが同じ分布のときだけ0になる |
| 2つの分布を入れ替えたとき | クロスエントロピー:H(P,Q)とH(Q,P)は一般に違う | KLダイバージェンス:D_KL(P‖Q)とD_KL(Q‖P)は一般に違う(非対称なので距離ではない) |
| 損失関数として | クロスエントロピー:分類の損失関数として使う。このときPはデータの正解ラベルの分布 | KLダイバージェンス:Pが固定なら、最小化はクロスエントロピーの最小化と同じ。2つの分布を近づける場面で名前が出る |
| 値の読み方 | クロスエントロピー:「Qで符号化したときの平均の長さ」に近い意味。Pのエントロピーが底上げになる | KLダイバージェンス:底上げを引いた「余分な分」。分布が一致したかどうかを0かどうかで判断できる |
G検定の学習に使う書籍(Amazon)
PRどこで迷っているかを切り分ける
損失関数がクロスエントロピーなのに、KLの話も出てきて混乱した人
正解ラベルが1つに決まっている分類では、Pのエントロピーが0です。このとき、クロスエントロピーとKLダイバージェンスは同じ値になります。数値例の1つ目で確認します。
KLダイバージェンスを「2つの分布の距離」と覚えた人
0以上で、同じ分布のときだけ0になるので距離のように扱われます。ただし、PとQを入れ替えると値が違うので、距離とは呼べません。数値例の2つ目で、入れ替えた値を確認します。
クロスエントロピーの値が0にならなくて不安になった人
Pが確定的でなければ、Pのエントロピーが0より大きいので、クロスエントロピーはその値を下回れません。0に近づくかどうかは、KLダイバージェンスの側で見ます。
どちらを最小化しても同じだと聞いたのに、数値が違う人
最小になるQは同じですが、値はエントロピーの分だけずれます。数値例の2つ目では、クロスエントロピーが約0.916、KLダイバージェンスが約0.223で、差は約0.693です。
具体例で使い分ける
例 1
正解が1つに決まっている3クラス分類(架空のデータ)
画像が3クラスのうち1番目と分かっていて、正解の分布は P=(1, 0, 0) です。モデルの出力は Q=(0.7, 0.2, 0.1) でした。対数は自然対数を使います。
- Pは確定的なので、Pのエントロピーは0です。
- クロスエントロピーは、−1×ln0.7=約0.357です。0の確率の項は掛け算で消えます。
- KLダイバージェンスは、1×ln(1÷0.7)=約0.357です。H(P)+D_KL=0+0.357で、関係式のとおりです。
結論: 正解が1つなら、クロスエントロピーとKLダイバージェンスは同じ値の約0.357です。分類の損失関数にクロスエントロピーを使うことが、KLを小さくすることと同じになっています。
例 2
確率に幅のある2クラスの分布で比べる(架空のデータ)
P=(0.5, 0.5)、モデルは Q=(0.8, 0.2) とします。
- Pのエントロピーは、ln2=約0.693です。
- クロスエントロピーは、−0.5×ln0.8−0.5×ln0.2=約0.112+約0.805=約0.916です。
- KLダイバージェンスは、0.5×ln(0.5÷0.8)+0.5×ln(0.5÷0.2)=約0.223です。0.693+0.223=0.916で、関係式と合います。
- 分布を入れ替えたD_KL(Q‖P)は、0.8×ln(0.8÷0.5)+0.2×ln(0.2÷0.5)=約0.193です。
結論: D_KL(P‖Q)は約0.223、D_KL(Q‖P)は約0.193で、入れ替えると値が変わります。クロスエントロピーの約0.916は、エントロピーの約0.693を含んだ値です。
問題文から答えを選ぶ手順
- 1
どちらの分布が真の側かを決める
式の中で、平均を取る側のPが真の分布(正解ラベル側)、Qがモデルの出力です。
- 2
Pが確定的かどうかを見る
正解が1つに決まっているなら、Pのエントロピーは0で、クロスエントロピーとKLは同じ値です。
- 3
目的が学習か、比較かを決める
モデルを学習させる損失ならクロスエントロピー。2つの分布が一致したかを見るならKLダイバージェンスです。
- 4
値の最小値を確認する
クロスエントロピーの最小値はPのエントロピー、KLダイバージェンスの最小値は0です。
試験での見分け方
- 1クロスエントロピー=エントロピー+KLダイバージェンス。
- 2Pが固定なら、Qについての最小化は両者で同じ。
- 3KLダイバージェンスは0以上で、一致したときだけ0。PとQを入れ替えると値が変わる。
- 4正解が1つに決まっている分類では、2つの値は同じになる。
誤答しやすい選択肢
クロスエントロピーとKLダイバージェンスを、常に同じ値だと考える
修正: 同じ値になるのは、Pのエントロピーが0のときだけです。数値例の2つ目は、0.916と0.223で、差が約0.693(Pのエントロピー)です。
KLダイバージェンスを、PとQの入れ替えに関係なく同じ値だと考える
修正: Deep Learningは、KLダイバージェンスが対称でないと述べます。数値例で約0.223と約0.193に分かれました。
クロスエントロピーが0にならないことを、学習の失敗だと考える
修正: Pが確定的でなければ、クロスエントロピーはPのエントロピーより小さくなりません。分布が一致したかどうかはKLダイバージェンスで見ます。
確認問題
Q1H(P,Q)=H(P)+D_KL(P‖Q) のとき、Pが固定なら、Qについてクロスエントロピーを最小化することは何を最小化することと同じ?
答え: KLダイバージェンス
H(P)はQに関係しないので、動くのはD_KLの項だけです。Deep Learning 3.13節が同じ説明をしています。
Q2正解が1つに決まっている分類(Pが確定的)で、クロスエントロピーとKLダイバージェンスの関係は?
答え: 同じ値になる
Pのエントロピーが0なので、H(P,Q)=0+D_KL(P‖Q)です。
Q3KLダイバージェンスが距離と呼べない理由は?
答え: 対称でないから
D_KL(P‖Q)とD_KL(Q‖P)は、一般に違う値になります。
到達チェック
- クロスエントロピー=エントロピー+KLの関係を言える
- Pが確定的なら2つが同じ値になると言える
- KLダイバージェンスが非対称だと言える
関連ページで確認する
同じ資格で次に知りたいこと
- マクロ平均とマイクロ平均の違い|多クラス分類のF1・適合率・再現率をクラスごとに平均するか、全件でまとめるか(G検定・DS検定)
マクロ平均(クラスごとの指標を同じ重みで平均)とマイクロ平均(全クラスの真陽性・偽陽性・偽陰性をまとめて計算)の違いを、同じ混同行列からの計算例で整理。クラスが偏るとF1がどう変わるか、確認問題つき。G検定・DS検定の多クラス評価の補足。
- 蒸留とプルーニングの違い|小さなモデルに教えるか、接続を削るか(G検定・軽量化)
蒸留とプルーニングの違いを、新しい小さなモデルを学習させるか、同じネットワークの接続を減らすかで整理。Hinton らの蒸留論文とDeep Compression論文の記述、温度つきsoftmaxの数値例と確認問題で確認。G検定のモデル軽量化の補足。
- SVMとランダムフォレストの違い|境界の引き方と木の多数決(G検定)
SVM(サポートベクターマシン)とランダムフォレストの違いを、分類のしくみ・過学習の抑え方・前処理・確率の出し方で整理します。scikit-learn公式文書にもとづく解説と確認問題つき。
よくある質問
QKLダイバージェンスは、何と読む?
カルバック・ライブラー・ダイバージェンスと読みます。教科書『Deep Learning』はKullback-Leibler (KL) divergenceと書きます。
Qクロスエントロピーを小さくすると、何が起きる?
Pが固定のとき、Qについてクロスエントロピーを小さくすることは、KLダイバージェンスを小さくすること、つまりモデルの分布Qを真の分布Pに近づけることと同じです(教科書『Deep Learning』3.13節)。
QG検定にこの違いは出る?
公式シラバスにクロスエントロピーとKLダイバージェンスの違いが個別に挙がっているかは、当サイトでは確かめていません。損失関数と確率分布を理解する補足として読んでください。
次に見る比較
- G検定・DS検定・統計検定2級で重なる用語10語の比較
同じ名前の用語の定義と収録章を、資格ごとに並べます。
- ベイズの定理と条件付き確率の違い(統計検定2級の式と計算例)
求める確率の向きの違いと、陽性になる確率の計算例を確かめます。
- 紛らわしい用語ペア早見表
混同しやすい用語の違いと判定の手掛かりを、資格別の一覧で確かめます。
執筆: AI資格ドリル編集部(運営者情報を見る)
