統計学や機械学習を学んでいると、「対数尤度」という言葉を見かけることがよくあります。
「そもそも尤度とは何か」「なぜ対数をとるのか」と疑問に感じる方も多いでしょう。
本記事では、対数尤度の意味と尤度関数との違いを、最尤推定・計算方法・データ分析での活用まで含めてわかりやすく解説します。
対数尤度とは何か(結論)
それではまず、対数尤度とは何かについて解説していきます。
対数尤度とは、尤度関数の対数をとったものです。
尤度(ゆうど)とは「あるパラメータのもとでデータが観測される確率(または確率密度)」のことであり、尤度関数 L(θ) は観測データが得られる確率をパラメータ θ の関数として表したものです。
対数尤度は ℓ(θ) = log L(θ) と表され、尤度関数の対数変換として定義されます。
対数尤度を使う最大の理由は「積を和に変換できること」です。独立なデータの尤度は各データの尤度の積ですが、対数をとることで和として計算でき、数値的な安定性と計算効率が大幅に向上します。
尤度と確率の違い
尤度と確率は混同されやすいですが、見る対象が異なります。
確率はパラメータを固定してデータの起こりやすさを見るのに対し、尤度はデータを固定してパラメータの妥当性を評価します。
P(データ|パラメータ) = L(パラメータ|データ) という対応関係にあります。
なぜ対数をとるのか
独立な観測値 x₁, x₂, …, xₙ の尤度は L(θ) = ∏ p(xᵢ|θ) という積の形になります。
この積を計算すると、データ数が多くなるにつれ値が非常に小さくなり、コンピュータの計算精度の限界に達する(アンダーフロー)問題が生じます。
対数をとることで ℓ(θ) = Σ log p(xᵢ|θ) という和の形に変換でき、数値計算が格段に安定します。
最尤推定と対数尤度の関係
続いては、最尤推定と対数尤度の関係を確認していきます。
最尤推定とは
最尤推定(さいゆうすいてい)とは、尤度を最大にするパラメータを推定値とする方法です。
「最もありそうなパラメータ」を選ぶという直感的にもわかりやすい推定方法です。
対数尤度による最尤推定の計算
対数関数は単調増加であるため、尤度 L(θ) を最大化することと対数尤度 ℓ(θ) を最大化することは等価です。
最尤推定では ∂ℓ(θ)÷∂θ = 0 を解くことでパラメータの推定値を求めます。
この方程式をスコア方程式(尤度方程式)と呼びます。
正規分布のパラメータ推定の例
正規分布 N(μ, σ^2) の場合の対数尤度:
ℓ(μ, σ^2) = −(n÷2)・ln(2π) − (n÷2)・ln(σ^2) − Σ(xᵢ−μ)^2 ÷ (2σ^2)
μについて微分してゼロとおくと μ̂ = (1÷n)・Σxᵢ(標本平均)が得られる
このようにして正規分布の平均パラメータの最尤推定量が標本平均になることが確認できます。
対数尤度の計算とデータ分析での活用
続いては、対数尤度の計算方法とデータ分析での活用を確認していきます。
対数尤度の計算手順
| ステップ | 内容 |
|---|---|
| ①確率モデルの設定 | データの確率分布(正規・二項・ポアソンなど)を選ぶ |
| ②尤度関数の構築 | 各データの尤度の積として L(θ) を書き下す |
| ③対数をとる | ℓ(θ) = log L(θ) に変換する |
| ④最大化 | θについて偏微分してゼロとおき推定値を求める |
機械学習での対数尤度の役割
機械学習の分類モデルでは、損失関数として負の対数尤度(NLL: Negative Log-Likelihood)が使われます。
負の対数尤度を最小化することが、モデルのパラメータを最適化することと等価になります。
ロジスティック回帰やニューラルネットワークの学習にも対数尤度の考え方が活用されています。
AICとBICでの応用
モデル選択の指標であるAIC(赤池情報量基準)は −2ℓ + 2k(kはパラメータ数)で定義されます。
BIC(ベイズ情報量基準)は −2ℓ + k・ln(n) で定義されます。
これらは対数尤度を基に計算される統計量であり、モデルの当てはまりとパラメータ数のバランスを評価するために使われます。
まとめ
本記事では、対数尤度の定義・尤度関数との違い・最尤推定への応用・データ分析での活用について解説しました。
対数尤度は尤度関数の対数変換であり、積を和に変換できることで数値計算の安定性が大幅に向上します。
最尤推定・機械学習の損失関数・AIC/BICなど幅広い場面で使われる統計学の重要概念です。
対数尤度の考え方を理解することで、統計解析やデータ分析の理解が一段と深まるでしょう。