【準1級】統計学実践ワークブック　例題14.3 マルコフ連鎖




統計検定準1級の勉強のための解説記事となります。下記にご了承いただける方のみ、お読みください。

:::note warn
##### 注意
* 著作権の都合により問題文は掲載せず解説のみの記述となります。
* 独自の解釈により、不適切な表現がある可能性があります。
:::

以下の動画でも解説していますので、見やすいほうでご覧ください。

<iframe width="560" height="315" src="https://www.youtube.com/embed/XoSuxFkuV7Q?si=CtsMyuGcIDtywVsY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

# 問題のポイント

:::note
・マルコフ連鎖とは、ある事象の将来の状態が、過去の状態に関係なく、現在の状態のみによって決まるという性質を持つ確率過程のことです。

・最尤推定値とは、観測されたデータをもとに、最もそのデータが発生しやすいと考えられるパラメータの値です。今回は、降水確率$θ$がパラメータです。

・遷移確率行列を $P$、状態確率ベクトルを $π$とすると、定常分布 $π$ は、$\pi P = \pi$ を満たす状態確率ベクトルです。
:::

# 解法ノート
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/1d4fc2e0-9ce1-f215-da55-a98ca9df471c.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/d46d6bae-854e-b1df-cbfe-4c240cf0d6e2.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/5fa84a21-ebe0-34bb-c314-94f2a2a58476.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/90bc17df-e8b7-5f09-f9b4-dc5cc6cbd9c1.png)



# 解答
問題文に「マルコフ連鎖」と明記されており、有限の状態間の遷移確率が与えられ、確率変数列Xが現在の状態のみで決定されるため、Xはマルコフ連鎖であると判断します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/eb65a529-f506-1267-86e6-f255127fa532.png)


# 状態空間、初期分布と推移確率行列


出発時の傘の本数$Xn$がとりうる値は$0,1,2$のため、状態空間は、下記のとおりとなります。
```math
S=\{0, 1, 2\}: それぞれの場所（家、職場）における傘の本数。
```

ここでは、左から状態$0$,状態$1$,状態$2$といいます。

また、最初はいずれの地点でも傘は1本の状態なので、初期分布のベクトルは、状態$1$の確率が1、それ以外の状態の確率は0となります。
```math
π₀= (0, 1, 0) 

```

表にすると以下となり、今回の問題では、$n \geq 1$のため、$Ｘ_0$は考えません。


| 変数 | $X_1$ | $X_2$ | $X_3$ | $X_4$ | $X_5$ | $X_6$ | $X_7$ | $X_8$ |
|---|---|---|---|---|---|---|---|---|
| 観測データ | 1 |  |  | | | | | |

今回の問題の推移確率行列は、

```math

Q =
\begin{bmatrix}
P(0 \to 0) & P(0 \to 1) & P(0 \to 2) \\
P(1 \to 0) & P(1 \to 1) & P(1 \to 2) \\
P(2 \to 0) & P(2 \to 1) & P(2 \to 2)
\end{bmatrix}

```


であり、これを求めるため、以下のように場合分けして考えます。なお、雨が降る確率は $θ$、降らない確率は $1−θ$ です。

|  | 目的地到着後の<br>傘が0本 |目的地到着後の<br>傘が1本 | 目的地到着後の<br>傘が2本 |
|:-:|:-:|:-:|:-:|
| 現在の地点の<br>傘が0本の場合  |  $P(0 \to 0)=0$ | $P(0 \to 1)=0$  |$P(0 \to 2)=1$<br>（雨が降っても降らなくても）   |
| 現在の地点の<br>傘が1本の場合  | $P(1 \to 0) = 0$  | $\quad P(1 \to 1) = 1-\theta$<br>（雨が降らなったら）  | $\quad P(1 \to 2) = \theta$<br>（雨が降ったら）  |
| 現在の地点の<br>傘が2本の場合  | $P(2 \to 0) = 1 - \theta$<br>（雨が降らなったら）  |  $\quad P(2 \to 1) = \theta$<br>（雨が降ったら） |  $\quad P(2 \to 2) = 0$ |



よって、$Q$は、
```math

Q = \begin{bmatrix}
0 & 0 & 1 \\
0 & 1-\theta & \theta \\
1-\theta & \theta & 0
\end{bmatrix}
```

となります。


# θの最尤推定値

推移確率行列と問題の条件から以下の表が導けます。なお、初期分布から、1回目の移動の出発時にその場所にある傘の本数は１本であり、$P(X_1=1)$=１です。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/1c57985a-886e-f7ee-eb94-b4cac721f922.png)



このことから、観測されたデータが得られる確率（尤度関数）は、降雨確率$θ$を用いて、

```math

L(\theta; X) =1 \cdot (1-\theta) \cdot \theta \cdot (1-\theta) \cdot 1 \cdot \theta \cdot (1-\theta) \cdot (1-\theta)=(1-θ)^4 * θ^2

```
と表されます。これをグラフで書くと以下の通りです。



![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/35d68596-f8fe-788e-7b82-b243f641bb37.png)

ここで、尤度関数を最大にするパラメータθを計算します。尤度関数に対数をとっても、θの最尤推定値は変わらないため、

```math
l(\theta)  =log L(θ; X) = log(1-θ)^4 * θ^2
```
です。対数の性質を利用して式変形すると、
```math
l(\theta)   = 4log(1-\theta) + 2logθ
```
となります。この対数尤度関数のグラフは以下のようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/8720e2e3-19ff-80f8-a0e1-0167483fa374.png)

対数尤度関数が最大のものを求めるため、まず微分すると、

```math

l'(θ) = \frac{d}{dθ} [4\log(1-\theta) + 2\log\theta] = -\frac{4}{1-\theta} + \frac{2}{\theta}
```

となり、この値が、 $0$のときに極値を取るため、

```math
-\frac{4}{1-\theta} + \frac{2}{\theta}=0
```

```math
θ = \frac{1}{3}
```

よって、降雨確率$θ = \frac{1}{3}$のとき、今回のようなデータが得られやすいと導けます。


# 定常分布と長期的な確率
十分な時間が経過した場合は、マルコフ連鎖は、定常状態に達し、状態の分布は一定になります。



![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/da2dbc82-f598-0a84-36a5-7a928e1cdc4d.png)

今回は、問題の条件より推定済みの値$\theta = \frac{1}{3}$を用いるため、$Q$は、

```math
Q = 
\begin{bmatrix}
0 & 0 & 1 \\
0 & 2/3 & 1/3 \\
2/3 & 1/3 & 0
\end{bmatrix}
```

と式変形できます。定常分布を$π = (a,b,c) $として、定義どおり立式すると、ベクトル$π$と行列$Q$との積は、

```math
\begin{bmatrix}
a & b & c
\end{bmatrix}
\begin{bmatrix}
0 & 0 & 1 \\
0 & 2/3 & 1/3 \\
2/3 & 1/3 & 0
\end{bmatrix}
=
\begin{bmatrix}
a & b & c
\end{bmatrix}
```

となります。これを連立方程式として表すと、
```math
\begin{equation}
\left\{
\begin{aligned}
a \cdot 0 + b \cdot 0 + \frac{2}{3}c &= a \\
a \cdot 0 + \frac{2}{3}b + \frac{1}{3}c &= b \\
a + \frac{1}{3}b &= c
\end{aligned}
\right.
\end{equation}
```

です。また、状態$0,1,2$のすべての確率の和は1であるため、

```math
a + b + c = 1
```
が成立します。よって、これらの連立方程式を解けば、 $a = \frac{1}{4}$となり、十分な時間が経つと、傘が0本となる確率は$\frac{1}{4}$であることがわかります。


# コラム
#### 一般化した式
・状態空間とは、確率変数$X_n$がとる値の集合です。
```math
S = \{s_1, s_2, ..., s_n\}
```
・初期分布とは、最初に各状態を取る確率の分布です。各要素は、特定の状態を取る確率です。
```math
\boldsymbol{\pi}_0 = \begin{bmatrix}
p_0(1) \\
p_0(2) \\
\vdots \\
p_0(N)
\end{bmatrix}
```
・推移確率行列は、ある状態から別の状態へ遷移する確率を表す行列です。
```math
Q(m) =
\begin{bmatrix}
q_{11}^{(m)} & q_{12}^{(m)} & \cdots & q_{1N}^{(m)} \\
q_{21}^{(m)} & q_{22}^{(m)} & \cdots & q_{2N}^{(m)} \\
\vdots & \vdots & \ddots & \vdots \\
q_{N1}^{(m)} & q_{N2}^{(m)} & \cdots & q_{NN}^{(m)}
\end{bmatrix}
```



![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/c3186056-28d4-8aad-7ae7-7903b1e24c62.png)


・尤度関数は、あるモデルのパラメータ（$θ$）が与えられたとき、そのモデルから観測されたデータ（$X$）が得られる確率を表す関数です。
```math
L(\theta; X) = P(X_1) \prod_{t=1}^{T} P(X_{t+1} \mid X_{t}) 
```

#### 対数尤度関数の極値が、尤度関数の最尤推定値となる理由
これは、対数関数が単調増加関数であり、尤度関数の値が大きいほどその対数も増加する性質があるためです。なお、対数尤度関数は和の形に変形でき、微分の計算が簡単になるため、通常用いられます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618291/e0d72a5b-ce02-b7d0-7b21-8511391c1bbb.png)