EMアルゴリズム

提供: testwiki
ナビゲーションに移動 検索に移動

テンプレート:Pathnavbox テンプレート:Machine learning bar EMアルゴリズムテンプレート:Lang-en-short)とは、統計学において、確率モデルのパラメータを最尤推定する手法の一つであり、観測不可能な潜在変数に確率モデルが依存する場合に用いられる。EM法期待値最大化法(きたいちさいだいかほう)テンプレート:Sfnテンプレート:Sfnとも呼ばれる。その一般性の高さから、機械学習音声認識因子分析など、広汎な応用があるテンプレート:Sfn

EMアルゴリズムは反復法の一種であり、期待値(テンプレート:Lang-en-short)ステップと最大化(テンプレート:Lang-en-short)ステップを交互に繰り返すことで計算が進行する。Eステップでは、現在推定されている潜在変数の分布に基づいて、モデルの尤度の期待値を計算する。Mステップでは、E ステップで求まった尤度の期待値を最大化するようなパラメータを求める。M ステップで求まったパラメータは、次の E ステップで使われる潜在変数の分布を決定するために用いられる。

概要

セッティング・目標

今、2値テンプレート:Mathテンプレート:Mathを取る確率分布があり、その確率分布の確率密度関数p(x,z|θ)が未知の母数θmによりパラメトライズされているとする。ここでは実数全体の集合を表す。

そしてp(x,z|θ)に従って標本(x1,z1),,(xn,zn)を独立に抽出したものの、何らかの事情でZ=(z1,,zn)の値は観測できず、X=(x1,,xn)だけが観測できたとする。実応用上は例えば、θ=(θ1,θ2)という形をしており、まず観測不能なzip1(z|θ1)が選ばれた後、ziに依存して観測可能なxip2(x|θ2,zi)が選ばれる、といったケースにEMアルゴリズムが使われる事が多いが、必ずしもこのケースにあてはまらなくてもよい。


簡単の為、記号を混用してテンプレート:Mathテンプレート:Mathの同時確率分布の確率密度関数もp(X,Z|θ)と書く。以下ではテンプレート:Mathが離散変数の場合について説明するが、テンプレート:Mathが連続変数の場合も総和を積分に置き換える以外は同様である[1]

このような状況において母数テンプレート:Mathを最尤推定する事が我々の目標である。しかしテンプレート:Mathを知らない場合のX=(x1,,xn)に関する対数尤度

(θ|X):=logp(X|θ)=logZp(X,Z|θ)

を最大値を直接計算するのは一般には簡単ではない。

EMアルゴリズムは、反復法により、数列θ^(t)で対数尤度(θ^(t)|X)単調非減少であるものを作るアルゴリズムである。最尤推定量をθ^MLEとすると、

(θ^MLE|X)(θ^(t)|X)

である事から、(θ^MLE|X)が有限であれば(θ^(t)|X)の単調性より(θ^(t)|X)必ず収束する

アルゴリズム

EMアルゴリズムでは、以下の手順により数列θ^(0),θ^(1),を作る[1]

  • 初期値θ^(0)を(何らかの方法で)選ぶ。
  • t=0,1,に対して以下を実行する
    • E ステップ: p(Z|X,θ^(t))を求める。
    • M ステップ: θ^(t+1)=argmaxθ Q(θ|θ^(t))を求める。

ここでQは対数尤度関数logp(X,Z|θ)テンプレート:Mathに関する条件付き期待値

Q(θ|θ(t)):=EZ|X,θ^(t)[logp(X,Z|θ)]=Zp(Z|X,θ^(t))logp(X,Z|θ)  

である。実応用上は、θ^(t)の値が十分小さくなったと判定する何らかの条件を事前に定めておき、その条件を満たしたら上述のループを終了する。ループを終了する条件は、パラメータ値や対数尤度関数を使って定められる[1]

留意点

EステップとMステップの切れ目は書籍により異なるので注意が必要である。本項では次節の議論と整合性をとる為に文献[1]の切れ目に従ったが、文献[2]ではQ(θ|θ^(t))を計算する所までがEステップであり、Q(θ|θ^(t))argmaxを取るところだけがMステップである。

ステップの名称「E」と「M」はそれぞれExpectation(期待値)、Maximization(最大化)の略であり[2]、文献[2]のようにEステップでQ(θ|θ^(t))を求める為に期待値を計算し、MステップでQ(θ|θ^(t))argmaxを取るところに名称の由来がある。

動作原理

EMアルゴリズムで我々が求めたいのは、X=(x1,,xn)を観測した際における対数尤度

(θ|X):=logp(X|θ)

を最大化する母数θであった。EMアルゴリズムの動作原理を説明する為、以下のような汎関数を考える:

(q,θ):=Zq(Z)logp(X,Z|θ)q(Z)  ...(テンプレート:EquationRef)

ここでq(Z)は任意の確率密度関数である。pX,θ(Z):=p(Z|X,θ)とすると、p(Z|X,θ)p(X|θ)=p(X,Z|θ)より、カルバック・ライブラー情報量

KL(q||pX,θ)=Zq(Z)logp(Z|X,θ)q(Z) 

を使って

(q,θ)=(θ|X)KL(q||pX,θ) ...(テンプレート:EquationRef)

と書ける事が分かる。カルバック・ライブラー情報量が常に非負である事(ギブスの不等式)から、

(θ|X)(q,θ) 

であるので、(q,θ)(θ|X)の下限になっている。EMアルゴリズムはこの下限(q,θ)を逐次的に改善していくことで、(θ|X)を可能な限り最大化するアルゴリズムである。すなわち、EステップとMステップは以下のように書き換えられる事を示す事ができる[1]

  • E ステップ: q^(t)=argmaxq(q,θ^(t))を求める。
  • M ステップ: θ^(t+1)=argmaxθ(q^(t),θ)を求める。

この事実から対数尤度(θ^(t)|X)の単調非減少性が明らかに従う。 (但し反復法の常として、初期値しだいでは尤度の最大点ではない極大点に到達してそこで停止する可能性がある。)

証明

本節ではEステップ、Mステップが上述のように書き換えられることを示す。本節の証明は文献[1]を参考にした。

Eステップの証明

カルバック・ライブラー情報量KL(q||pX,θ)が最小値0になるのはq=pθ,Xの場合だけであった事から、(テンプレート:EquationNote)より(q,θ)

q(Z)=p(Z|X,θ) 

が満たされる場合に最大値を取る。すなわちEMアルゴリズムにおけるEステップは、θ=θ^(t)を固定したままの状態で、(q,θ)を最大化するqである

q^(t):=pX,θ^(t)=argmaxq(q,θ^(t)) 

を求めるステップである。

Mステップの証明

(q,θ)の定義式(テンプレート:EquationNote)にq^(t)=pX,θ^(t)を代入すると、

(q^(t),θ)=Zp(Z|X,θ(t))logp(X,Z|θ)p(Z|X,θ(t))=Q(θ|θ(t))HX,θ(t)(Z) 

が成立し(ここでHX,θ(t)(Z)=Zp(Z|X,θ(t))logp(Z|X,θ(t))条件付きエントロピー)、上式右辺第二項はテンプレート:Mathに依存しないので、

θ^(t+1)=argmaxθQ(θ|θ^(t))=argmaxθ(pX,θ^(t),θ) 

が成立する。

一般化

EMアルゴリズムは観測データの対数尤度を、E ステップとM ステップの繰り返しにより最大化するアルゴリズムであるので、正確にはlog-EMアルゴリズムというべきものである。log関数にはα-logとよばれる一般化された対数があるので、それを用いるとlog-EMを特例として含むアルゴリズムを作り上げることができる。ただし、この場合は尤度ではなくてα-log尤度比とαダイバージェンスを用いて基本等式を導くことになる。このようにして得られたものがα-EMアルゴリズム [3] であり、log-EMアルゴリズムをサブクラスとして含んでいる。α-EMアルゴリズムは適切なαを選ぶことにより、log-EMアルゴリズムよりも高速になる。また、log-EMが隠れマルコフモデル推定アルゴリズム(Baum-Welchアルゴリズム)を含んでいるように、α-EMアルゴリズムから高速なα-HMMアルゴリズムを得ることができる。 [4]

歴史

EMアルゴリズムは、テンプレート:仮リンクテンプレート:仮リンクドナルド・ルービンによる1977年の論文[5]で導入され、その名が付けられた。彼らは、EMアルゴリズムがほかの複数の著者によって「特殊な文脈でなんども提案されてきた」("proposed many times in special circumstances") ことを述べた上で、EMアルゴリズムの一般化を行い、その背後にある理論を追求した。

本来のEMアルゴリズムでは、期待値の評価において潜在変数のとりうる値すべてを列挙することが必要なため、効率的に扱える分布が限られていた。しかしその後、マルコフ連鎖モンテカルロ法テンプレート:仮リンクが考案されたことにより、より一般の分布でも現実的な時間での計算が可能になったテンプレート:Sfnテンプレート:Sfn

脚注

テンプレート:脚注ヘルプ テンプレート:Reflist

参考文献

引用文献

その他の参考文献

和書

  • 小西貞則 ・越智義道 ・大森裕浩:「計算統計学の方法 ―ブートストラップ,EMアルゴリズム,MCMC―」、朝倉書店(シリーズ:予測と発見の科学、5)、ISBN 978-4-254-12785-0 (2008年3月25日)。
  • 関原謙介:「ベイズ信号処理」、共立出版、ISBN 978-4-320-08574-9 (2015年4月11日)。
  • 関原謙介:「ベイズ推論の基礎と信号処理への応用」
  • 黒田正博:「EMアルゴリズム」、共立出版(シリーズ:統計学One Point、18巻)、ISBN 978-4-320-11269-8、(2020年7月31日)。

テンプレート:Statistics-stub