混合正規分布モデル

同僚の先生に説明する手前ちょっと調べて、まとめたのでメモ。

体長組成のデータからエイジングをしコホートに分ける際に問題となるのは、その体長組成データがいくつの正規分布の混合モデルからなっているか?を確かめる必要があることである。

その際情報量基準を使うのだが、とりあえず今回はAICを使ったものでやる。BICAICの改良版であるc-AICなどのほうが良いという論文もあるけど、どちらにしても途中までの演算は一緒なので。

まず、最尤法で正規分布のパラメータ推定をする必要があるので尤度の式が必要となる。
混合正規分布モデルの対数尤度は以下の式となる

l=Σ(i=1 to n)ln[Σ(j=1 to m)α(j)/sqrt{2πσ(j)^2}exp[-{(x(i)-μ(j)}^2/2σ(j)^2] ]

ここで、nは観測データ数、mは混合する正規分布コンポーネント数、α(j)はj番目の正規分布の混合比率でΣ(j=1 to m)α(j)=1となる。
x(i)は観測された体長データ、μ(j)、σ(j)はj番目の正規分布の平均値と標準偏差とする。

lを最大化するα、μ、σを推定する。
Excelでやる場合はソルバーなんかでやることになる。
その場合αは一個推定しないでよいこと(制限要因Σ(j=1 to m)α(j)=1があるため)に注意。

で、コンポーネント数が1から理論的に考えられる最大の数までをそれぞれをモデルとすると、AICの値は
model(j)=-2l+2(3j-1)
となる*1

この値の大きいモデルが採択されたモデルとなり、そのサイズデータに含まれるコホート数となる。

*1:因みにBICでだとmodel(j)=-2l+(3j-1)ln(m)となる。