AI資格ドリル
資格を選ぶ↓

大項目8 AIに必要な数理・統計知識(確率・統計)

G検定の最尤推定(尤度・対数尤度・交差エントロピー)

G検定の出題範囲には、確率・統計の用語として最尤法があります。このページは、コインを10回投げて表が7回出た例で、尤度を実際に計算し、尤度が最大になる表の確率を求めます。最尤推定は「得られたデータが、いちばん出やすくなるパラメータを選ぶ方法」だと、数字で確かめられます。

データはすべて架空です。ディープラーニングの損失関数との関係も、最後にまとめます。

公式情報の確認

試験日、料金、申込条件、試験方式など変動する情報は、公式情報を最終確認してください。 当サイトの一次情報確認日: 2026-10-02。

試験の出題範囲・実施要項は変動するため、受験前に公式情報を確認してください。

結論

  1. 最尤推定は、尤度(データが得られる確率をパラメータの関数として書いたもの)が最大になるパラメータを推定値にする方法
  2. コイン10回で表7回なら、尤度はp⁷(1−p)³で、最大になるのはp=0.7(観測した割合と同じ)
  3. 尤度は積になるので、対数を取って和にしてから微分する。尤度と対数尤度の最大点は同じ
  4. 正規分布の分散の最尤推定量はnで割る形で、不偏分散(n−1で割る)とは違う
  5. ニューラルネットワークの損失関数の多くは、負の対数尤度(交差エントロピー)にあたる

尤度とは何か

NISTのハンドブックは、標本データの尤度を「選んだ確率分布のモデルのもとで、そのデータが得られる確率」と説明しています。この式には未知のパラメータが入っていて、標本の尤度を最大にするパラメータの値が、最尤推定値(MLE)です。

考え方の順番は次のとおりです。

  1. 確率分布のモデルを決める(コイン投げなら、表の確率がpのベルヌーイ分布)
  2. 観測したデータが得られる確率を、pの式として書く(これが尤度)
  3. その式が最大になるpを探す(これが最尤推定値)

コイン投げ10回で尤度を計算する

コインを10回投げて、表が7回、裏が3回出ました。表の確率をpとすると、この結果の尤度は、表7回の確率p⁷と裏3回の確率(1−p)³の積です(この順番で出る確率。並び方の数を掛けても、最大になるpは変わりません)。

L(p) = p⁷ × (1−p)³

表の確率 p表7回(p⁷)裏3回((1−p)³)尤度 L(p)
0.50.5⁷ ≒ 0.007810.5³ = 0.125≒ 0.000977
0.60.6⁷ ≒ 0.027990.4³ = 0.064≒ 0.001792
0.70.7⁷ ≒ 0.082350.3³ = 0.027≒ 0.002224(最大)
0.80.8⁷ ≒ 0.209720.2³ = 0.008≒ 0.001678

尤度はp=0.7のとき最大で、表が出た割合7÷10と一致します。p=0.5(公平なコイン)でも同じデータは得られますが、尤度は0.000977と、0.7の場合の半分以下です。「このデータが出たのは、p=0.7のときが最も自然」というのが、最尤推定の考え方です。

対数尤度で最大値を求める

表を並べて探すかわりに、微分で最大点を求めます。尤度は積なので、対数を取って和にします。

  1. 対数尤度:ln L(p) = 7 ln p + 3 ln(1−p)
  2. pで微分して0とおく:7÷p − 3÷(1−p) = 0
  3. 整理する:7(1−p) = 3p となり、p = 7÷10 = 0.7

このときの対数尤度は ln L(0.7) ≒ −6.109、p=0.5では ln L(0.5) = 10 ln 0.5 ≒ −6.931です。対数は単調に増える関数なので、尤度を最大にするpと、対数尤度を最大にするpは同じです。データが1万件でも、積を和に直せば計算できます。

正規分布の平均と分散の最尤推定

データが正規分布に従うと考えるときも、同じ手順で平均と分散を推定できます。3個のデータ4、5、9で確かめます。

  1. 平均の最尤推定値:標本平均 = (4+5+9)÷3 = 6
  2. 偏差:−2、−1、3。偏差平方和は 4+1+9 = 14
  3. 分散の最尤推定値(nで割る):14÷3 ≒ 4.667
  4. 不偏分散(n−1で割る):14÷2 = 7

分散の最尤推定量は、nで割るので不偏分散より小さくなり、偏りがあります。英語版Wikipediaは、この推定量の期待値が(n−1)/n×σ²になると説明しています。サンプルサイズが大きくなると差は小さくなります。nで割る分散とn−1で割る分散の違いは、標本分散と不偏分散の比較にまとめています。

最尤推定と交差エントロピー損失

Goodfellow他の教科書『Deep Learning』は、現代のニューラルネットワークの多くは最尤法で訓練されると述べています。このとき、コスト関数は負の対数尤度で、訓練データとモデルの分布の間の交差エントロピーと等価です。

コイン投げの例で、負の対数尤度を計算します。

  • p=0.7:−ln L(0.7) ≒ 6.109。10回で割ると約0.611
  • p=0.5:−ln L(0.5) ≒ 6.931。10回で割ると約0.693(ln 2)

負の対数尤度を小さくすることと、尤度を大きくすることは同じ操作です。分類問題で使う交差エントロピー損失を下げる学習は、正解ラベルが出やすいパラメータを探す最尤推定にあたります。損失を下げる手順は勾配降下法のページで確認できます。

問題文から読み取る

このページの計算例から導いた読み方です。出題を予想するものではありません。

  • 「データが得られる確率が最大になるパラメータを推定する」とあれば、最尤法の説明
  • 「確率をパラメータの関数として見たもの」とあれば、尤度
  • 「積を和に直して計算しやすくする」とあれば、対数尤度を使う理由
  • 「損失関数が負の対数尤度になる」とあれば、交差エントロピー損失との関係
  • 最尤推定値は、データから見て最も尤もらしい値であって、真の値を保証するものではない

よくある質問

最尤推定とは何ですか?

データが得られる確率(尤度)を、未知のパラメータの関数として書き、その尤度が最大になるパラメータの値を推定値にする方法です。NISTのハンドブックも、標本の尤度を最大にするパラメータの値を最尤推定値(MLE)と説明しています。

尤度と確率は何が違いますか?

確率は、パラメータを決めたうえで「このデータが出る度合い」を見ます。尤度は、データを固定したうえで「パラメータをいくつにすれば、このデータが出やすいか」を、パラメータの関数として見ます。式の形は同じで、動かす変数が違います。

なぜ尤度ではなく対数尤度を最大にするのですか?

データが多いと尤度は小さな確率の積になり、計算しにくくなります。対数を取ると積が和になり、微分もしやすくなります。対数は単調に増える関数なので、尤度を最大にするパラメータと、対数尤度を最大にするパラメータは同じです。

分散の最尤推定量は、普通の標本分散と同じですか?

同じではありません。正規分布の分散の最尤推定量は偏差平方和をnで割り、不偏分散はn−1で割ります。英語版Wikipediaも、最尤推定量の期待値が(n−1)/n×σ²になり、偏りがあると説明しています。このページの例では、4.667と7になります。

ディープラーニングの損失関数と最尤推定は関係がありますか?

あります。Goodfellow他の教科書は、現代のニューラルネットワークの多くは最尤法で訓練され、コスト関数は負の対数尤度であり、訓練データとモデルの分布の間の交差エントロピーと等価だと述べています。

次に読むと効率的なページ

執筆: ミナト編集部(運営者情報を見る)