最尤推定
最尤推定(さいゆうすいてい、maximum likelihood estimationという)や最尤法(さいゆうほう、method of maximum likelihood)とは、統計学において、与えられたデータからそれが従う確率分布の母数を点推定する方法である。
& \arg \max\limits_{\theta}L(\theta \mid X=x)=\arg \max\limits_{\theta}f(X=x \mid \theta)
\end{array}この方法はロナルド・フィッシャーが1912年から1922年にかけて開発した。
観測されたデータからそれを生んだ母集団を説明しようとする際に広く用いられる。生物学では塩基やアミノ酸配列のような分子データの置換に関する確率モデルに基づいて系統樹を作成する際に、一番尤もらしくデータを説明する樹形を選択するための有力な方法としても利用される。機械学習ではニューラルネットワーク(特に生成モデル)を学習する際に最尤推定(負の対数尤度最小化として定式化)が用いられる。
最尤推定が解く基本的な問題は「パラメータ \thetaが不明な確率分布f_Dに従う母集団から標本が得られたとき、データを良く説明する良い \thetaは何か」である。
ある母集団が確率分布関数 f_D と母数 \thetaで表される離散確率分布 D を従うとする。そこから n 個の標本 X_1, X_2, ... X_n を取り出すことを考えよう。すると分布関数から、観察されたデータ(標本)が得られる確率を次のように計算できる(離散分布はP=f):
このとき、母集団分布 Dの形(確率分布f_D)はわかっているが母数 \theta は不明な場合、どうしたら \theta を良く推定できるか?利用できる情報はこの母集団から得られた n 個の標本 X_1, X_2, ... X_n である。
最尤法では 、\thetaを仮定したときに今回サンプリングされた標本が得られる確率に着目する。すなわち上記にある、母数 \theta で条件付けられた確率Pに着目する。異なる \theta(\theta _{a}と \theta _{b})を仮定してP_{\theta_{a}<P_{\theta_{b}だった場合、これは何を意味するか? 例えばコイン振りの表確率 \thetaを \theta _{a}=0.01と \theta _{b}=0.5と仮定し、実際の標本が(表・表・表・表・裏)となって \mathbb{P}(x \mid \theta =0.01) = 0.000...9、\mathbb{P}(x \mid \theta =0.5) = 0.03125(P_{\theta_{a}<<P_{\theta_{b})だった場合、これは何を意味するか?
直感的には「\theta _{b}=0.5の方がそれっぽい」と考えられる。すなわち2つの \thetaを仮定したとき、片方ではほぼあり得ない現象が起きたことになり、もう片方ではまぁありうる確率の現象が起きたと考えられるので、より\mathbb{P}(x \mid \theta)が大きい方が尤もらしいと推定しているのである。もちろん奇跡的に稀な表が続いた( \theta _{a}=0.01である)可能性もありうるが、より尤もらしいのはより起きやすい現象であろう、という論理が最尤推定の根底にある論理である(「起きやすい現象が起きた」と「起きづらい現象が起きた」なら前者と考えるのが合理的、という論理)。
このような論理に基づき、母数 \theta の一番尤もらしい値を探す(\theta のすべての可能な値の中から、観察された標本の尤度 \mathbb{P}(x \mid \theta)を最大にするものを探す)方法が最尤推定である。これは他の推定量を求める方法と対照的である。たとえば \theta の不偏推定量は、 \theta を過大評価することも過小評価することもないが、必ずしも一番尤もらしい値を与えるとは限らない。
尤度関数を次のように定義する:
この関数を母数 \theta のすべての可能な値から見て最大になるようにする。そのような値 \hat{\theta} を母数\theta に対する最尤推定量(さいゆうすいていりょう、maximum likelihood estimator、これもMLEと略す)という。最尤推定量は(適当な仮定の下では)しばしば尤度方程式(ゆうどほうていしき、likelihood equation)
\frac{\partial}{\partial\theta}\log L(\theta) = 0
の解として求められる。
尤度は \theta を変数とし x_1,x_2,\ldots,x_n を定数とする関数である。
最尤推定量は唯一ではないこともあるし、存在しないことさえある。
f_D を離散確率分布関数でなく確率密度関数として考えれば、上の定義は連続確率分布にも当てはまる。
尤度 \mathbb{P}(x \mid \theta)は条件付確率の定義から「\thetaを仮定したときに今回サンプリングされた標本が得られる確率」である。「観測データから求まる、パラメータが\thetaである確率」では決してない。それは事後確率 \mathbb{P}(\theta \mid x)である。
よって尤度最大の \thetaを求める最尤推定は「パラメータが\thetaである確率をデータから最大化する統計的推論手法」ではない。起きやすい現象が起きた場合が最も尤もらしいという考えに基づいて、尤度を最大化する \thetaを母集団の推定値とする手法が最尤推定である。
最尤推定は最大事後確率推定(MAP推定)の特殊例とみなせる。ベイズの定理より \mathbb{P}(\theta \mid x) \sim \mathbb{L}(\theta \mid x) \cdot \mathbb{P}(\theta) は常に成り立ちここで \mathbb{P}(\theta) を一様分布と仮定すると、\mathbb{P}(\theta \mid x) \sim \mathbb{L}(\theta \mid x) となってこの最大値推定量はMLEと一致する(c.f. 計量経済学)。
以下、コインを投げて表・裏(あるいは成功・失敗:その確率は0.5とは限らない)のいずれが出るかを見る場合(ベルヌーイ試行)を例にとる。
箱の中に3つのコインがあるとしよう。見た目では全く区別がつかないが、表の出る確率pが、それぞれp=1/3、p=1/2、p=2/3 である。(p が、上で \theta と書いた母数にあたる)。箱の中から適当に1つ選んだコインを80回投げ、x_1=\mbox{H} 、 x_2=\mbox{T}  、 \ldots  、 x_{80}=\mbox{T} のようにサンプリングし、表(H)の観察された回数を数えたところ、表(H)が49回、裏が31回であった。さて、投げたコインがどのコインであったと考えるのが一番尤もらしいか? 一番尤もらしいコイン(すなわち、一番尤もらしいpの値)を推定するためには、次のように尤度を計算する:
1/3) & = & \binom{80}{49}(1/3)^{49}(1-1/3)^{31} = 0.000 \\
&&\\
\mathbb{P}(\mbox{49H/80}\mid p=1/2) & = & \binom{80}{49}(1/2)^{49}(1-1/2)^{31} = 0.012 \\
&&\\
\mathbb{P}(\mbox{49H/80}\mid p=2/3) & = & \binom{80}{49}(2/3)^{49}(1-2/3)^{31} = 0.054 \\
\end{matrix}
こうして母数 \hat{p}=2/3 によって尤度が最大となることがわかり、これが p に対する最尤推定量である。
こんどは上の例での箱に入っているコインの数は無限であると仮定する。それぞれがすべての可能な 0\leq p \leq 1 の値をとるとする。するとすべての可能な 0\leq p \leq 1 の値に対して次の尤度関数を最大化しなければならない:
& f_D(\mbox{observe 49 HEADS out of 80}\mid p) = \binom{80}{49} p^{49}(1-p)^{31} \\
\end{matrix}
この関数を最大化するには p に関して微分しその値を0にすればよい:
& \frac{d}{dp} \left( \binom{80}{49} p^{49}(1-p)^{31} \right) \\
&   & \\
& \propto & 49p^{48}(1-p)^{31} - 31p^{49}(1-p)^{30} \\
&   & \\
& = & p^{48}(1-p)^{30}\left[ 49(1-p) - 31p \right] \\
\end{matrix}
これを解けば p=0 、 p=1 、 p=49/80 の3つの解が得られるが、そのうち尤度を最大化するのは明らかに p=49/80 である( p=0 と p=1 では尤度は0になってしまう)。こうして p に対する最尤推定量は \hat{p}=49/80 と求められる。
この結果で、ベルヌーイ試行の成功数49を t と置き、全回数80を n と置けば一般化できる。 n 回のベルヌーイ試行で t 回成功した場合に対する母数 p の最尤推定量は
となる。
よく出てくる連続確率分布に、次の正規分布がある:
この分布に従う n 個の独立なランダム変数標本の密度関数は:
また計算しやすいように書き換えると:
この分布には平均 \mu と分散 \sigma^2 の2つの母数がある。上では1つの母数に対する最大化だけを議論したが、この場合も各母数に対して尤度 L(\mu,\sigma) = f(x_1,,\ldots,x_n \mid \mu, \sigma^2) を最大化すればよい。上の書き方なら \theta=(\mu,\sigma^2) とする(このように母数が複数の場合は母数ベクトルとして扱う)。
尤度を最大にするのは、尤度の自然対数を最大にするのと同じである(自然対数は単調増加関数であるから)。このような計算法はいろいろな分野でよく利用され、対数尤度は情報のエントロピーやフィッシャー情報と密接な関係がある。
& \frac{\partial}{\partial \mu} \log \left( \left( \frac{1}{2\pi\sigma^2} \right)^\frac{n}{2} e^{-\frac{ \sum_{i=1}^{n}(x_i-\bar{x})^2+n(\bar{x}-\mu)^2}{2\sigma^2 \right) \\
& = & \frac{\partial}{\partial \mu} \left( \log\left( \frac{1}{2\pi\sigma^2} \right)^\frac{n}{2} - \frac{ \sum_{i=1}^{n}(x_i-\bar{x})^2+n(\bar{x}-\mu)^2}{2\sigma^2} \right) \\
& = & 0 - \frac{-2n(\bar{x}-\mu)}{2\sigma^2} \\
\end{matrix}
}
これを解くと \hat{\mu} = \bar{x} = \sum^{n}_{i=1}x_i/n  となる。これはまさに関数の最大値、すなわち  \mu の唯一の極値で、2次微分は負となる。
同様に、 \sigma に関して微分し0とおけば尤度の最大値 \hat{\sigma}^2 = \sum_{i=1}^n(x_i-\hat{\mu})^2/n が得られる。
つまり、正規分布の母数 \theta=(\mu,\sigma^2) に対する最尤推定量は
となる。
最尤法は生物の分子系統推定(分子系統樹作成)にも応用される。系統推定における最尤法は、塩基やアミノ酸配列の置換に関する確率モデルを仮定した上で、想定される樹形ごとに手持ちのデータ(配列の多重アラインメント)が得られる尤度を求め、最も尤度の高い樹形を採用する方法である。
最大節約法や距離行列法と比較して正確性の高い樹形が得られるとされるが、使用する進化モデルを変更すると系統解析の結果が大きく変化する場合がある。また、系統樹の枝(解析の対象とする生物の系統)ごとの進化速度が異なる場合、枝長(形質状態の遷移回数)の見積もりを誤って不正確な系統樹を導く場合もある。さらに、最大節約法やベイズ法と比較して計算速度も遅い。こうした欠点はソフトウェアやアルゴリズムの改良により徐々に解消されつつある。
2021年時点では最も広く分子系統解析に使用されている系統推定法である。最尤法を用いる代表的な系統推定ソフトウェアにはPAUP*やTreefinderおよびRAxMLがある。
最尤推定の統計的推論としての最終目標は、手元の限られたデータ(標本)から真の母集団分布を得ることである。しかし一般に真の母集団分布は観測できず、ゆえに最尤推定された統計モデルが「正しいか」(真の母集団分布と一致するか)は検証が不可能である。人間にできることは推定されたモデルと真の分布のずれ(誤差)がどのように統計的に振る舞うかを検証することだけである(詳しくは汎化誤差)。
最尤推定そのものはあくまで、仮定された分布と観測されたデータから得られる尤度を最大化するパラメータを求める方法論である。最尤推定の枠組みは「常に真の分布と一致した分布を得られる」とは主張していないし「最尤推定を用いることが真の分布へ近い分布を得る唯一最良の方法である」とも主張していない。
これらの疑問点は汎化誤差をはじめとする研究によって検証される。