G検定(ジェネラリスト検定)
こうさえんとろぴー
交差エントロピー
Cross-entropy
交差エントロピーは、モデルが正解に割り当てた確率が低いほど大きくなる損失で、正解に割り当てた確率の対数にマイナスを付け、訓練データ全体で平均した値です。最尤推定に基づくコスト関数(負の対数尤度)と等価であり、モデル分布にガウス分布を仮定すると平均二乗誤差に帰着します。
詳しい説明
交差エントロピーが測るもの
交差エントロピー(cross-entropy)は、モデルが予測した確率が実際のデータとどれだけ食い違っているかを測る量です。ディープラーニングでは、学習で小さくしたい誤差の指標である損失関数として使われます。
考え方の中心は単純です。分類のモデルは「正解がこれである確率はいくらか」を出力します。正解に高い確率を割り当てていれば損失は小さくなり、低い確率しか割り当てていなければ損失は大きくなります。学習では、この損失が小さくなる方向へ、モデルのパラメータ(重みなど、学習で調整される数値)を更新します。
最尤推定から導かれるコスト関数
教科書『Deep Learning』(イアン・グッドフェロー(Ian Goodfellow)、ヨシュア・ベンジオ(Yoshua Bengio)、アーロン・クールビル(Aaron Courville)、2016年)の第6章は、交差エントロピーを最尤推定の考え方から説明しています。最尤推定とは、手元のデータが最も起こりやすくなるようにパラメータを選ぶ方法です。
入力を 、正解を 、パラメータを 、モデルが入力 に対して正解 に割り当てる確率を と書きます。最尤推定に基づくコスト関数は次の式です(同書の式6.12)。
は、訓練データ から取り出した組 についての平均を表します。言い換えると、訓練データの1件ごとに「正解に割り当てた確率の対数」を求めてマイナスを付け、その値を全件で平均したものです。同書は、このコスト関数を負の対数尤度と呼び、訓練データとモデル分布の間の交差エントロピーとも言い換えられると説明しています。
マイナスを付けるのは向きを揃えるためです。確率は0から1の値なので、その対数は0以下になります。マイナスを付けると値は0以上になり、「小さいほどよい」という損失関数の向きと一致します。
2クラス分類での計算例
メールが迷惑メールかどうかを判定する2クラス分類のモデルを考えます。モデルはメールごとに「迷惑メールである確率」を出力し、正解ラベルは迷惑メールなら1、そうでなければ0とします。数値は説明のための架空の値で、対数には自然対数を使います。
2クラスの場合、「迷惑メールでない確率」は1から「迷惑メールである確率」を引いた値です。正解ラベルが0のメールでは、この「迷惑メールでない確率」が、モデルが正解に割り当てた確率になります。
| メール | 正解ラベル | モデルが出した迷惑メールの確率 | 正解に割り当てた確率 | 1件ごとの損失 |
|---|---|---|---|---|
| A | 1 | 0.9 | 0.9 | 約0.105 |
| B | 0 | 0.3 | 0.7 | 約0.357 |
| C | 1 | 0.2 | 0.2 | 約1.609 |
1件ごとの損失は、正解に割り当てた確率の対数にマイナスを付けた値です。
3件の平均が、このデータに対する交差エントロピーです。
この結果から2つのことが読み取れます。1つ目は、メールCの1件が損失の大部分を占めていることです。Cは迷惑メールなのに、モデルは迷惑メールである確率を0.2と低く見積もりました。2つ目は、すべてのメールに0.5を出すだけの当て推量と比べても、ほとんど差が無いことです。当て推量の損失は1件ごとに で、平均も0.693です。AとBでは正解に近い確率を出せていても、Cの大きな外れがその分を打ち消しています。
仮にモデルがCに0.8を出していれば、Cの損失は になります。3件の平均は まで下がります。
値の読み方
1件ごとの損失は、正解に割り当てた確率が1のとき0になり、これが最小値です。確率が下がるにつれて損失は増え、確率0.5で約0.693、0.1で約2.303、0.01で約4.605になります。確率が0に近づくほど、損失は上限なく大きくなります。
この性質のため、交差エントロピーは「自信を持って外した予測」を特に重く扱います。正解の確率を0.5と見積もって外れた予測よりも、0.01と見積もって外れた予測のほうが、損失は6倍以上になります。
対数の底を変えると値はすべて同じ定数倍になるので、どの予測の損失が大きいかという順序は変わりません。値そのものを別の資料と比べるときは、どの底の対数で計算したかを確かめる必要があります。
情報理論で知られている式との関係
交差エントロピーという名前は情報理論に由来します。情報理論では一般に、2つの確率分布 と の交差エントロピーを次の式で表すことが知られています。
この式は、ここで根拠にした教科書の該当箇所に書かれている式ではなく、一般に知られている情報理論の式として紹介します。上の と見比べると、 に訓練データの分布、 にモデルの分布を当てはめた形になっています。教科書が述べているのは、最尤推定に基づくコスト関数が訓練データとモデル分布の間の交差エントロピーと等価だという点です。この記事では、情報量の単位など情報理論の側の意味づけには立ち入りません。
平均二乗誤差との関係
平均二乗誤差は、予測値と正解の差を2乗して平均した損失です。交差エントロピーとは別の損失に見えますが、同書は、両者が同じ一般式から出てくることを示しています。
モデル分布として、平均が のガウス分布(正規分布) を仮定します。 はモデルの出力、 は分散を1に固定することを表します。このとき上の一般式 は、次の平均二乗誤差のコストに帰着します(同書の式6.13)。
つまり平均二乗誤差は、負の対数尤度(交差エントロピー)という一般式において、モデル分布にガウス分布を選んだ場合の特殊なケースにあたります。交差エントロピーのほうが一般的な式で、平均二乗誤差はその一つの具体例です。定数の項はパラメータ に依らないので、学習でパラメータを調整する上では影響しません。
一方で同書は、同じ第6章のXORの例で、二値のデータのモデル化には平均二乗誤差が実用上適切でないことが多いとも述べています。正解ラベルが0か1の分類では、計算例のように、正解に割り当てた確率をそのまま評価する形が、ラベルの二値の構造に合っています。
誤解しやすい点
交差エントロピーの値は、正解率とは別の量です。計算例のモデルは、0.5を境に判定するとAとBを正しく、Cを誤って判定するので、正解率は3件中2件です。それでも交差エントロピーは当て推量とほぼ同じ0.690でした。交差エントロピーは当たったかどうかだけでなく、正解にどれだけの確率を割り当てたかを見ているためです。
また、正解に割り当てた確率がちょうど0になると は定義できず、損失は有限の値になりません。モデルが出す確率がちょうど0にならないかどうかは、計算の上で注意が要る点です。
試験で問われること
G検定
- 最尤推定に基づくコスト関数は、正解に割り当てた確率の対数にマイナスを付けて訓練データで平均したもの(負の対数尤度)で、訓練データとモデル分布の間の交差エントロピーと等価です。
- 1件ごとの損失は、正解に割り当てた確率が1なら0で、確率が0に近づくほど上限なく大きくなります。自信を持って外した予測ほど損失が大きくなる性質として押さえます。
- モデル分布にガウス分布を仮定すると、交差エントロピー(負の対数尤度)の一般式は平均二乗誤差に定数を加えた形に帰着します。平均二乗誤差は、同じ一般式の特別な場合として位置づけられます。
- 二値のデータのモデル化には平均二乗誤差が実用上適切でないことが多いとされます。正解ラベルが0か1の分類では、正解に割り当てた確率を評価する交差エントロピーの形と対比して理解します。
最終更新日: 2026/09/23