🎓 レベル:基礎 | 重要度:A(必須) 📎 前提:確率過程とは、有限次元分布とコルモゴロフの拡張定理
要点(BLUF)
- マルコフ性:次の状態の確率は「今いる状態」だけで決まり、そこに至った経路(過去)には依らない。記憶が1ステップしかない過程です。
- 状態遷移は遷移行列 (行=今、列=次、各行の和が1)にすべて凝縮されます。
- ステップ後の遷移確率は の 乗 で計算できる — これがチャップマン・コルモゴロフ方程式の帰結です。
概念
天気を「晴れ/雨」で記録するとき、「明日の天気は今日の天気だけで決まる(先週がどうだったかは無関係)」と仮定するのがマルコフ連鎖です。過去の全履歴ではなく現在の状態だけが未来を左右するので、必要な情報は「各状態から各状態へ移る確率」の表だけ。これが遷移行列です。
数式による定式化
状態空間 上の過程 がマルコフ性を持つとは、
が成り立つこと。右辺を と書き、遷移行列 を作ります。各行は確率分布なので
ステップ遷移確率 はチャップマン・コルモゴロフ方程式
を満たし、行列で書けば 、したがって です。初期分布を行ベクトル とすると、時刻 の分布は 。
直観
要するに「未来は現在を通してのみ過去とつながる」。現在の状態が過去の情報を要約する十分統計量になっている、ということです。だから遷移は掛け算で積み上がります。「2歩進む」は「1歩進んで、また1歩進む」を全中継点について足し合わせたもの — これがチャップマン・コルモゴロフの中身で、行列の積そのものです。
状態遷移図(例)
graph LR
A["晴れ"] -->|0.8| A
A -->|0.2| B["雨"]
B -->|0.6| A
B -->|0.4| B
この図の遷移行列は です。
具体例
3状態の連鎖で「2歩後の分布」を、理論 と1歩ずつのシミュレーションで突き合わせます。
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]])
rng = np.random.default_rng(1)
N = 300000
state = np.zeros(N, dtype=int)
cP = np.cumsum(P, axis=1)
for _ in range(2): # 状態0から2歩進める
u = rng.random(N)
nxt = np.empty(N, dtype=int)
for i in range(3):
m = state == i
nxt[m] = np.searchsorted(cP[i], u[m])
state = nxt
emp = np.array([(state == j).mean() for j in range(3)])
print("理論 P^2 の第0行:", np.round(np.linalg.matrix_power(P, 2)[0], 3))
print("シミュ 2歩後分布:", np.round(emp, 3))
# 理論 P^2 の第0行: [0.36 0.43 0.21]
# シミュ 2歩後分布: [0.36 0.43 0.21]
行列のべき乗 の第0行と、状態0から2歩動かした実測分布が一致します。チャップマン・コルモゴロフの数値確認です。
他過程との関係
- マルコフ性は有限次元分布とコルモゴロフの拡張定理の有限次元分布を という積に分解し、整合性を自動的に満たします。
- 連続時間版が連続時間マルコフ連鎖と生成行列(遷移行列 の代わりに生成行列 )、状態空間が連続になると拡散過程(ブラウン運動の定義と性質)になります。
数式の直観的意味
は「分布が線形写像 を繰り返し受ける」という形です。後の定常分布と収束では、この反復が の固有値・固有ベクトルで支配され、固有値1に対応する固有ベクトルが定常分布になります。マルコフ連鎖の長期挙動は線形代数の問題に翻訳されるのです。
⚠️ よくある誤解
- 「マルコフ性=無記憶=過去と独立」ではない。 は と相関します( を介して)。独立なのは「 を条件づけたとき」だけです。
- 行と列を取り違えない。ここでは行 =現在、列 =次状態で、行和が1。文献によっては転置(列確率的)を使うので、 か かは規約次第です。
- 状態の取り方でマルコフ性は変わる。記憶が2ステップ必要な過程も、状態を と拡張すればマルコフにできます。
対応シミュレーション
本文コードのステップ数を変えれば任意 で との一致が確認できます。stochastic-processes-study/simulations/ に汎用サンプラを置きます。
関連
- 次に読む:状態の分類
- 土台:有限次元分布とコルモゴロフの拡張定理
- 発展:定常分布と収束、連続時間マルコフ連鎖と生成行列