最尤法

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索

最尤法(さいゆうほう、Maximum likelihood estimation略してMLEともいう)は、統計学において、与えられたデータからそれが従う確率分布母数について推測するためによく用いられる方法で、尤度の概念を利用するものである。この方法はロナルド・フィッシャー1912年から1922年にかけて開発したものである。

生物学に於いて、塩基やアミノ酸配列のような分子データの置換に関する確率モデルに基づいて系統樹を作成する際に、一番尤もらしくデータを説明する樹形を選択するための有力な方法としても利用される。

基本的理論[編集]

確率分布関数 f_D と分布の母数 \theta のわかっている離散確率分布 D が与えられたとして、そこから n 個の標本 X_1, X_2, ... X_n を取り出すことを考えよう。すると分布関数から、観察されたデータが得られる確率を次のように計算することができる:

\mathbb{P}(x_1,x_2,\dots,x_n) = f_D(x_1,\dots,x_n \mid \theta)

しかし、データが分布 D によることはわかっていても、母数 \theta の値はわからないかもしれない。どうしたら \theta を見積もれるか? n 個の標本 X_1, X_2, ... X_n があれば、この標本から \theta の値を見積もることができる。最尤法は母数 \theta の一番尤もらしい値を探す(つまり \theta のすべての可能な値の中から、観察されたデータセットの尤度を最大にするものを探す)方法である。これは他の推定量を求める方法と対照的である。たとえば \theta不偏推定量は、 \theta を過大評価することも過小評価することもないが、必ずしも一番尤もらしい値を与えるとは限らない。 尤度関数を次のように定義する:

\mbox{lik}(\theta) = f_D(x_1,\dots,x_n \mid \theta)

この関数を母数 \theta のすべての可能な値から見て最大になるようにする。そのような \hat{\theta} の値は、 \theta に対する最尤推定量(さいゆうすいていりょう Maximum likelihood estimator、これもMLEと略す)として知られる。

注意[編集]

  • 尤度は \theta を変数とし x_1,x_2,\ldots,x_n を定数とする関数である。
  • 最尤推定量は唯一ではないこともあるし、存在しないことさえある。
  • f_D を離散確率分布関数でなく確率密度関数として考えれば、上の定義は連続確率分布にも当てはまる。
  • 最尤法をベイジアンで解釈することも可能である.事前分布に一様分布を仮定し,事後分布のモードを計算することと同値である.詳しくは計量経済学ベイジアン計量経済学の項を参照されたい.

[編集]

離散分布で、母数が離散的かつ有限の場合[編集]

以下、コインを投げて表・裏(あるいは成功・失敗:その確率は0.5とは限らない)のいずれが出るかを見る場合(ベルヌーイ試行)を例にとる。 公平でない1個のコインを80回投げることを考える(つまり x_1=\mbox{H}x_2=\mbox{T} \ldots x_{80}=\mbox{T} のようなものをサンプリングし、表の観察された回数 \mbox{H} を数える)。表の出る確率を p 、裏の出る確率を 1-p とする(ここで p は上で \theta と書いた母数に等しい)。そして3個のコイン―1個は確率 p=1/3 で、1個は確率 p=1/2 で、残りの1個は確率 p=2/3 でそれぞれ表の出るもの―を含む箱からコインを取り出し、結果として表(H)が49回、裏が31回出たとする。コインは区別できないとする。観察されたデータが与えられたとして、それがどのコインであったと考えるのが一番尤もらしいかを次のように計算する:


\begin{matrix}
\mathbb{P}(\mbox{49H/80}\mid 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 の値に対して次の尤度関数を最大化しなければならない:


\begin{matrix}
\mbox{lik}(\theta) & = & f_D(\mbox{observe 49 HEADS out of 80}\mid p) = \binom{80}{49} p^{49}(1-p)^{31} \\
\end{matrix}

この関数を最大化するには p に関して微分しその値を0にすればよい:


\begin{matrix}
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=0p=1p=49/80 の3つの解が得られるが、そのうち尤度を最大化するのは明らかに p=49/80 である( p=0p=1 では尤度は0になってしまう)。こうして p に対する最尤推定量は \hat{p}=49/80 と求められる。 この結果で、ベルヌーイ試行の成功数49を t と置き、全回数80を n と置けば一般化できる。 n 回のベルヌーイ試行で t 回成功した場合に対する最尤推定量は

\hat{p}=\frac{t}{n}

となる。

分布、母数とも連続的な場合[編集]

よく出てくる連続確率分布に、次の正規分布がある:

f(x\mid \mu,\sigma^2) = \frac{1}{\sqrt{2\pi\sigma^2}} e^{-\frac{(x-\mu)^2}{2\sigma^2}}

この分布に従う n 個の独立なランダム変数標本の密度関数は:

f(x_1,\ldots,x_n \mid \mu,\sigma^2) = \left( \frac{1}{2\pi\sigma^2} \right)^\frac{n}{2} e^{-\frac{ \sum_{i=1}^{n}(x_i-\mu)^2}{2\sigma^2}}

また計算しやすいように書き換えると:

f(x_1,\ldots,x_n \mid \mu,\sigma^2) = \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}}

この分布には \mu平均)、 \sigma^2分散)の2つの母数がある。上では1つの母数に対する最大化だけを議論したが、この場合も各母数に対して尤度 \mbox{lik}(\mu,\sigma) = f(x_1,,\ldots,x_n \mid \mu, \sigma^2) を最大化すればよい。上の書き方なら \theta=(\mu,\sigma^2) とする(このように母数が複数の場合は母数ベクトルとして扱う)。 尤度を最大にするのは、尤度の自然対数を最大にするのと同じである(自然対数は単調増加関数であるから)。このような計算法はいろいろな分野でよく利用され、対数尤度は情報エントロピーフィッシャー情報と密接な関係がある。


\begin{matrix}
0 & = & \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) に対する最尤推定量は:

\hat{\theta}=(\hat{\mu},\hat{\sigma}^2) = (\bar{x},\sum_{i=1}^n(x_i-\bar{x})^2/n).

となる。

生物の系統推定への応用[編集]

最尤法は生物の分子系統推定(分子系統樹作成)にも応用される。塩基やアミノ酸配列の置換に関する確率モデルを仮定した上で、想定される樹形ごとに手持ちのデータ(配列の多重アラインメント)が得られる尤度を求め、最も尤度の高い樹形を採用する方法である。

関連項目[編集]