ヒドゥン・マルコフ連鎖
📂確率論ヒドゥン・マルコフ連鎖
ビルドアップ

上の図のように、一定の時間ごとに何かを生産する機械を想像してみよう。緑が正常な良品1で、赤が廃棄すべき不良品0であるとすると、今までの記録は(1,0,1)になるだろう。このように実際に目に見える結果をシグナルsignalと呼ぶ。
ただし、不良品が出る確率は機械が正常か故障かによって異なるとしよう。正常+の時は不良率が1しかないが、故障−の時は不良率が4に急上昇する。これを条件付き確率で表せば
p(1∣+)=0.99p(1∣−)=0.96p(0∣+)=0.01p(0∣−)=0.04
になるだろう。図式で表すと次のようになる。

機械が一回物を生産するごとに故障する確率は上の図式と同じく10%としよう。これはマルコフ連鎖であり、確率過程{Xj}j=0nの状態空間は{+,−}であり、私たちの関心事はj回目の生産を終えた時に機械が正常である確率p(Xj=+)になる。もちろん最初は機械が正常だと仮定することになるが、これはp(X0=+)=1p(X0=−)=0で表される。
機械が故障した状態で放置されれば、続けて多くの不良品を生み出すことになる。問題はこれをどうやって知るかということだ。もちろん管理者が一度機械を分解してみれば、機械が故障しているかどうかはすぐに分かるかもしれないが、大きな工場に膨大な数の機械がある場合、このような点検さえも非常に面倒な仕事になる。現実的には、生産された物を見てどの機械に問題があるかを推測するしかないのだ。
定義
このようにマルコフ連鎖(原因)が隠れていて、その結果のシグナル(結果)だけが分かるとき、それを隠れマルコフ連鎖{Xj}j=0nと呼ぶ。
例
(1)
では、シグナルs(n)=(s1,s2,⋯,sn)が与えられたときの確率p(Xn=x∣S(n)=s(n))を計算してみよう。
Fn(x):=p(Xn=x,S(n)=s(n))と言えば
==p(Xn=x∣S(n)=s(n))p(S(n)=s(n))p(Xn=x,S(n)=s(n))∑yFn(y)Fn(x)
つまり、Fn(x)を知れば、条件付き確率を考えることなくp(Xn=x∣S(n)=s(n))を知ることができる。(1)snはs(n−1)と独立であり、(2){Xj}j=1nはマルコフ連鎖であるため
Fn(x)=========p(Xn=x,S(n)=s(n))p(Xn=x,S(n−1)=s(n−1),Sn=sn)y∑p(Xn=x,Xn−1=y,S(n−1)=s(n−1),Sn=sn)y∑p(Xn−1=y,S(n−1)=s(n−1))p(Xn−1=y,S(n−1)=s(n−1))p(Xn=x,Xn−1=y,S(n−1)=s(n−1),Sn=sn)y∑Fn−1(y)p(Xn=x,Sn=sn∣Xn−1=y,S(n−1)=s(n−1))=(1)y∑Fn−1(y)p(Xn−1=y)p(Sn=sn,Xn=x,Xn−1=y)y∑Fn−1(y)p(Xn−1=y)p(Xn=x,Xn−1=y)p(Xn=x,Xn−1=y)p(Sn=sn,Xn−1=y,Xn=x)y∑Fn−1(y)p(Xn=x∣Xn−1=y)p(Sn=sn∣Xn=x,Xn−1=y)=(2)y∑Fn−1(y)pyxp(sn∣x)y∑Fn−1(y)p(Xn=x,Sn=sn∣Xn−1=y)y∑Fn−1(y)p(Xn=x∣Xn−1=y)p(Sn=sn∣Xn=x)
まとめると、次のようになる。
Fn(x)=p(sn∣x)y∑Fn−1(y)pyx
(2)
それでは、このポストで言及された仮定の下でp(X3=+∣S(3)=(1,0,1))を計算してみよう。つまり、その状況で機械が正常である確率を計算しよう。
マルコフ連鎖で、状態の遷移確率は
p++=0.9p−+=0p+−=0.1p–=1
各状態で
p(1∣+)=0.99p(1∣−)=0.96p(0∣+)=0.01p(0∣−)=0.04
最初は機械が正常だと仮定するので
F1(+)=p(1∣+)=0.99F1(−)=p(0∣+)=0.01
s2=0なので
F2(+)=p(0∣+)[F1(+)p+++F1(−)p−+]=0.01×[0.99×0.9+0]=0.00891F2(−)=p(0∣−)[F1(+)p+−+F1(−)p–]=0.04×[0.99×0.1+0.01×1]=0.00436
s3=1なので
F3(+)=p(1∣+)[F2(+)p+++F2(−)p−+]=0.99×[.00891×0.9+0])=0.00793881F3(−)=p(1∣−)[F2(+)p+−+F2(−)p–]=0.94×[.00891×0.1+.00436×1]=0.00493594
したがって
p(X3=+∣S(3)=(1,0,1))=F3(+)+F3(−)F3(+)=0.012874750.00793881=0.6166⋯
常識的に考えても、不良率がそんなに高くないのに三つ中一つが不良品だったら、機械が正常である可能性は著しく低いと推測できる。計算結果、機械が正常である確率は60%をかろうじて超える程度である。