(著)山たー
強化学習におけるマルコフ決定過程や、ベイズ統計におけるマルコフ連鎖モンテカルロ法(MCMC)、隠れマルコフモデルなど、様々な応用があるマルコフ連鎖について説明します。
マルコフ過程とマルコフ連鎖
マルコフ連鎖は状態が離散的なので、以下のような図を描くことができます。
これを状態遷移図(state transition diagram)といいます。1つの状態に対して1つの節点(node)をあて、矢印で状態の遷移を表します。矢印のそばにある数字は遷移確率です。もし、状態が離散的でなければ、このような図を描くことはできません。
マルコフ過程の例:天気
例として天気の状態をマルコフ連鎖で考えましょう。もちろん、天気は複雑な要因が絡み合っており、簡単な確率モデルで表すことはできません。ですが、マルコフ連鎖を理解するためには役立ちます。
時刻$t$のとき、晴である確率を$q_1^{(t)}$, 雨である確率を$q_2^{(t)}$とし、確率行ベクトルを $$ \boldsymbol{\pi}^{(t)}:=\begin{bmatrix} q_1^{(t)},\ q_2^{(t)} \end{bmatrix} $$ とします(分かりやすいようにカンマで区切りました)。条件として \begin{align*} q_i \geq 0\ (i&=1,2)\\ q_1^{(t)}+q_2^{(t)}&=1 \end{align*} が成り立ちます。1番目の式は確率は0以上の値を取るということで、2番目の式は晴と雨以外の状態を取らないということを表します。 このとき、$t=n+1$のときの確率行ベクトルは、高校で習う漸化式と同じように考えれば、 \begin{align*} \boldsymbol{\pi}^{(n+1)}= \begin{bmatrix} q_1^{(n+1)},\ q_2^{(n+1)} \end{bmatrix} &=\begin{bmatrix} 0.8q_1^{(n)}+0.4q_2^{(n)},\ 0.2q_1^{(n)}+0.6q_2^{(n)} \end{bmatrix}\\ &=\begin{bmatrix} q_1^{(n)},\ q_2^{(n)} \end{bmatrix} \underbrace{\begin{bmatrix} 0.8&0.2\\ 0.4&0.6 \end{bmatrix}}_{:=P}\\ &=\boldsymbol{\pi}^{(n)}P \end{align*} となります。この$P$を遷移行列(transition matrix)といいます。$P$は同じ行の要素をすべて足し合わせると$1$になります。つまり、$P=[p_{ij}]$とすると、 $$ \sum_j p_{ij}=1 $$ が成り立ちます。要は、次の状態は状態空間内のどれかになるということです。なお、マルコフ連鎖はこの遷移行列か状態遷移図のいずれかで表されます。遷移行列はグラフを描くときに用いる隣接行列と同じです。
少し具体的な例を見てみましょう。1日目($t=0$のとき)晴である、つまり$\boldsymbol{\pi}^{(0)}=\begin{bmatrix} 1&0 \end{bmatrix}$であるとします。この$\boldsymbol{\pi}^{(0)}$を初期分布と呼びます。2日目($t=1$のとき)の天気は、 $$ \boldsymbol{\pi}^{(1)}=\boldsymbol{\pi}^{(0)}P =\begin{bmatrix} 1&0 \end{bmatrix} \begin{bmatrix} 0.8&0.2\\ 0.4&0.6 \end{bmatrix} =\begin{bmatrix} 0.8&0.2 \end{bmatrix} $$ と予測できます。よって2日目は晴の確率が$0.8$で、雨の確率が$0.2$です。3日目($t=2$のとき)も同様に、 $$ \boldsymbol{\pi}^{(2)}=\boldsymbol{\pi}^{(1)}P =\begin{bmatrix} 0.8&0.2 \end{bmatrix} \begin{bmatrix} 0.8&0.2\\ 0.4&0.6 \end{bmatrix} =\begin{bmatrix} 0.72&0.28 \end{bmatrix} $$ と計算できます。ところで、上の2つの計算をまとめて、 \begin{align*} \boldsymbol{\pi}^{(2)}&=\boldsymbol{\pi}^{(1)}P\\ &=\left(\boldsymbol{\pi}^{(0)}P\right)P\\ &=\boldsymbol{\pi}^{(0)}P^2\\ &=\begin{bmatrix} 1&0 \end{bmatrix} \begin{bmatrix} 0.8&0.2\\ 0.4&0.6 \end{bmatrix}^2 =\begin{bmatrix} 0.72&0.28 \end{bmatrix} \end{align*} と一気に計算することもできます。これを一般的に考えれば、 \begin{align*} \boldsymbol{\pi}^{(n)}&=\boldsymbol{\pi}^{(n-1)}P\\ &=\left(\boldsymbol{\pi}^{(n-2)}P\right)P\\ &=\cdots\\ &=\boldsymbol{\pi}^{(0)}P^n \end{align*} が成り立つことが分かります。
この $$\color{red}{\boldsymbol{\pi}^{(n)}=\boldsymbol{\pi}^{(0)}P^n}$$ は、$n$回目の遷移確率を求めるには、遷移行列を$n$乗すれば良いということを表しています。数学的な正確性を求めると、この式はチャップマン・コルモゴロフの等式(Chapman-Kolmogorov equation): $$ p_{ij}^{(t+s)}=\sum _{k\in S}p_{ik}^{(t)}p_{kj}^{(s)} $$ から導かれます($S$は状態空間)。しかし、違和感なくこの事実は理解できると思うので、特にこの式を深く掘り下げることはしません。
定常分布
(図1)
(図2)
図1はAやE(またはF)に一度入ってしまうと、そこから抜け出せなくなります。一方、図2はAとBを交互に繰り返します。そのため、定常分布が存在しません。
それでは、定常分布が存在する条件とは何でしょうか。それはエルゴード性という観点から条件づけることができます。
エルゴード性
定常分布があるかどうかは次の3条件が必要です。
- 任意の状態から他の任意の状態へ到達可能(accessible)
- 周期性を持たない
- 状態数が有限
この3つの性質を満たすとき、そのマルコフモデルはエルゴード性(ergodicity)を持つといい、同時に定常分布も存在します。
定常分布の求め方(1):対角化と極限計算
定常分布の求め方(2):定常性の利用
前節では定常分布を対角化と極限計算により求めたわけですが、実際のところ、このように手間のかかる計算をする必要はありません。実は定常分布は次のように定義されます。
$\boldsymbol{\pi}:=\begin{bmatrix} q_1& q_2&\cdots& q_m \end{bmatrix}$とする。ただし、$m$は状態空間$S$の要素数とする。このとき、 \begin{align*} q_i &\geq0\ \ (i=1,2,\cdots,m)\\ \sum_{i=1}^m q_i&=1 \end{align*} が成り立つ。この条件下における、平衡方程式: $$ \boldsymbol{\pi}=\boldsymbol{\pi} P $$ の解$\boldsymbol{\pi}$を定常分布とする(ただし、$P$は遷移行列)。
要は、収束した後はずっと定常分布になり続けるということです。それでは、この定義により定常分布を求めてみましょう。
遷移確率の最尤推定による求め方
尤度って何、というのに簡単に答えると、尤度とは観測結果$x_1,\cdots,x_n$が仮説の下で観測される確率のことです。確率なのですが、変数$\theta$で積分しても$1$にはなりません。なので、確率だけどちょっと違うということで、「尤度(likelihood)」つまり「観測結果の尤もらしさ」という名前が付けられています。
この尤度を最大にすることがパラメータ$\theta$を決めることにどうしてなるのかと言うと、
「確率高い事象と確率低い事象だったら、確率高い事象の方が起こりやすいよね」
↓
「そしたら自分が観測できたデータも確率高い事象である確率が高いよね」
↓
「だったら観測できたデータが得られる確率(=尤度)が最大になるようにパラメータを選べばいいじゃん」
ということです。
補足:対角化の計算
参考文献
・R.デュレット,2012,『確率過程の基礎』,丸善出版
・武田 一哉,2010,『新インターユニバーシティ 確率と確率過程』,オーム社
・Examples of Markov chains -
Wikipedia
・Markov Chains Explained Visually
コメントをお書きください