最尤推定法について
前回の記事で、最尤推定法とベイズ推定の違いについて書きました。
今回は、最尤推定法に注目し、まとめていきたいと思います。
この記事に限らず、本ブログの記事は自分も勉強しつつ書いていますので、間違いなどありましたらご指摘いただけると助かります。
- 最尤推定法
最尤推定法は、統計的機械学習で現在もよく用いられる手法の一つです。
画像から特徴量(輝度勾配など)を抽出し、得られた特徴量に何か確率密度関数を近似させたいとします。有限個のパラメータで記述された確率密度関数たちの事をパラメトリックモデルと言います。
パラメトリックモデルのパラメータを(いくつかのパラメータが集まったベクトル)とする時、得られた特徴量がうまく生起するようにを調節し、確率密度関数を近似することを最尤推定と言います。
パラメータのもとで、特徴量が生起する確率をと表し、これを尤度と言います。最尤推定では、この尤度を最大とするパラメトリックモデルのパラメータを探すことが目的となります。
今回、パラメトリックモデルとしてよく用いられる例としてガウスモデルを例に挙げたいと思います。
入力の次元によって式は変化しますが、一般的に入力が次元の時のガウスモデルの式は以下のように表すことが出来ます。
が分散共分散行列、が期待値を表します。簡単に言うと、はガウスの広がり具合を表し、はガウスの位置を表します。
matlabを使って二次元のガウス分布をプロットした例を以下に載せます。
, の正規分布
, の正規分布
, の正規分布
以上の画像より、分散が大きくなると広がり、期待値が変化するとガウスが移動していることが分かると思います。
- 最尤推定してみる
簡単のために、1次元のガウスモデルの最尤推定の例を挙げたいと思います。
最尤推定では、尤度方程式という、尤度をパラメータで偏微分したものを解くと各パラメータの最尤推定の解が得られます。
1次元のガウスモデルにおいて、尤度をパラメータで偏微分した結果は、真の期待値は標本(得られたデータ)の平均で表現でき、真の分散共分散行列は、標本の分散共分散行列で推定します。
実験で用いる真の分布は、のガウスモデルです。
推定に用いる標本(データ)は、真の分布からランダムで生んだ標本5つを用います。
その結果、以下のような推定結果となりました。
赤線が真の分布で、青線が推定結果です。最尤推定により真の分布がある程度近似できていることが分かりました。
標本の数を5個から100個に増やした結果が以下の通りとなります。
十分な数のデータが得られれば、真の分布が十分に近似できることが分かりました。
今回は、シンプルなガウスモデルを用いたため、サンプル数を十分に用意すると真の分布を近似できるようになったが、もっと複雑なモデルを用いる場合(混合ガウスモデルなど)は、パラメータの初期値によっては局所的な最適解に落ち着いてしまい、真の分布が上手く近似できないという問題もあります。