Mímisbrunnr知恵の泉

← 確率過程 一覧

🎓 レベル:標準 | 重要度:A(必須) 📎 前提:マルコフ連鎖とは・遷移行列状態の分類

要点(BLUF)

概念

連鎖を長く走らせると、初期状態の影響が薄れ、各状態を訪れる頻度が一定の分布に落ち着きます。これが定常分布です。さらに重要なのは、1本の長い軌道を観測するだけで(多数の軌道を平均しなくても)この分布が推定できること — これがエルゴード性で、サンプリング手法の根幹です。

数式による定式化

行ベクトル π=(π1,,πm)\pi=(\pi_1,\dots,\pi_m)定常分布とは

πP=π,iπi=1,πi0\pi P = \pi, \qquad \sum_i \pi_i = 1, \qquad \pi_i \ge 0

これは π\pi が固有値1に対応する PP左固有ベクトルであることを意味します。既約・非周期なら(ペロン=フロベニウスの定理により)固有値1は単純で、対応する正の固有ベクトルがただ1つ。収束定理

limnpij(n)=πj(初期 i に依らない)\lim_{n\to\infty} p_{ij}^{(n)} = \pi_j \qquad (\text{初期 } i \text{ に依らない})

エルゴード定理(時間平均=空間平均)は、関数 ff に対し

1Nn=1Nf(Xn)a.s.iπif(i)=Eπ[f]\frac{1}{N}\sum_{n=1}^{N} f(X_n) \xrightarrow{\text{a.s.}} \sum_i \pi_i f(i) = \mathbb{E}_\pi[f]

直観

要するに「スタート地点を忘れて平衡に落ち着く」。遷移行列 PP の繰り返し作用は、固有値1の方向(=π\pi)だけを残し、それ以外の固有値(絶対値 <1<1)の成分を指数的に潰します。だから収束の速さは「2番目に大きい固有値の絶対値(スペクトルギャップ)」で決まります。非周期性は「固有値 1-1 のような振動成分がない」ことを保証します。

具体例

3状態の連鎖で、左固有ベクトルとしての π\piP50P^{50} の収束、長時間軌道の滞在割合(エルゴード)の三者一致を確認します。

import numpy as np
P = np.array([[0.5, 0.4, 0.1],
              [0.2, 0.5, 0.3],
              [0.3, 0.3, 0.4]])
vals, vecs = np.linalg.eig(P.T)              # 左固有ベクトル = P^T の固有ベクトル
pi = np.real(vecs[:, np.argmin(np.abs(vals - 1))]); pi = pi / pi.sum()
print("定常分布 pi =", np.round(pi, 4))
print("pi P      =", np.round(pi @ P, 4), "(piと一致)")
print("P^50 第0行 =", np.round(np.linalg.matrix_power(P, 50)[0], 4))

rng = np.random.default_rng(5)
M = 1500000; s = 0; counts = np.zeros(3)
cP = np.cumsum(P, axis=1); u = rng.random(M)
for k in range(M):
    counts[s] += 1
    s = np.searchsorted(cP[s], u[k])
print("長時間滞在割合 =", np.round(counts / M, 4), "(piと一致=エルゴード)")
# 定常分布 pi = [0.3231 0.4154 0.2615]
# pi P      = [0.3231 0.4154 0.2615] (piと一致)
# P^50 第0行 = [0.3231 0.4154 0.2615]
# 長時間滞在割合 = [0.3232 0.4155 0.2613] (piと一致=エルゴード)

固有ベクトル・行列べき乗の収束・1本の長い軌道の滞在割合 — 3つの独立な計算がすべて同じ π\pi を指します。

他過程との関係

数式の直観的意味

πi=1/E[Ti]\pi_i = 1/\mathbb{E}[T_i](定常確率=平均回帰時間の逆数)という関係が、状態の分類の正再帰と定常分布を結びます。よく戻る状態ほど(回帰時間が短いほど)定常確率が高い、という自然な対応です。スペクトルギャップが小さい連鎖は「混ざりにくく」収束が遅い — これが MCMC の収束診断の核心になります。

⚠️ よくある誤解

対応シミュレーション

本文コードの PP を変えて2番目の固有値の絶対値を大きくすると、PnP^n の収束と滞在割合の収束がともに遅くなる(混合が遅い)様子が観察できます。

関連