発展|マルコフ連鎖(確率シリーズ 第9章)

マルコフ連鎖

「次の状態は今の状態だけで決まる」という仕組みを、天気の例で理解します。遷移行列、定常分布、そして検索エンジンや破産問題との関係まで。

今日の状態から明日を考えるだけの単純な仕組み。なのに、世の中のいろんなものが説明できちゃうのが面白いところだよ!
✦✦クリーム色のニット姿で確率を説明する若い先生

1. 「今」だけで次が決まる

発展明日の天気は、昨日や一昨日の天気を全部調べなくても、今日の天気が分かれば、ある程度予想できるとしてみましょう。このように、次の状態の確率が「今の状態」だけで決まる仕組みをマルコフ連鎖と呼びます(マルコフ性)。

カジノの一歩ごとの所持金、ネットを移動する人、売上のブランド乗り換え、ゲームのすごろく…世の中にはたくさんの「今の状態→次の状態」があります。

2. 天気のモデル

次のような確率で天気が変わるとします。

天気の状態遷移図晴れから晴れに0.8、晴れから雨に0.2、雨から晴れに0.4、雨から雨に0.6で移る。 晴れ 雨 晴→雨 0.2雨→晴 0.4晴→晴 0.8雨→雨 0.6
今日\明日晴れ雨合計
晴れ0.80.21
雨0.40.61

この表を遷移確率の表といい、数の並びだけ取り出したものを遷移行列 P と呼びます。

P = ( 0.8 0.2 / 0.4 0.6 ) (上の行が「今日晴れ」、下の行が「今日雨」)

ルール:各行の和は必ず1。「今日晴れ」なら、明日は晴れか雨のどちらかに必ずなるからです。

3. 2日後の天気:行列の掛け算

今日が晴れで、明後日が晴れである確率を考えます。明日が晴れなのか雨なのかで場合分けします。

晴→晴→晴:0.8 × 0.8 = 0.64
晴→雨→晴:0.2 × 0.4 = 0.08
合計 = 0.72

同様に全部の組み合わせを計算して表にすると、2日後の遷移確率が出ます。これは行列 P を2回掛けた P² です。

今日\2日後晴れ雨
晴れ0.720.28
雨0.560.44
行列の掛け算のしくみ

P² の(i行 j列)は、「iから出発して、途中のすべての状態kを経由してjに着く確率」の合計です。たとえば雨→晴は、雨→晴→晴 = 0.4×0.8 = 0.32 と、雨→雨→晴 = 0.6×0.4 = 0.24 を足して 0.56。「行 × 列の掛けて足す」という行列の積の計算は、この場合分けそのものです。

4. 分布は落ち着く:定常分布

今日は晴れ(晴100%、雨0%)から始めて、日々の確率を追います。

日今日1日後2日後3日後…ずっと先
晴れ1.0000.8000.7200.688…0.667
雨0.0000.2000.2800.312…0.333

晴れの確率は 1 → 0.8 → 0.72 → 0.688 → … と下がり、2/3 に落ち着きます。初日が雨から始まっても、同じ値に近づきます。

その落ち着き先を定常分布といいます。「1日進んでも分布が変わらない」状態なので、次の式で求められます。

晴の確率 π = 0.8π + 0.4(1−π) → 0.2π = 0.4(1−π) → π = 2/3

長い目で見ると、この街の日々の 2/3が晴れ、1/3が雨。最初にどんな天気だったかは、長期的には関係なくなります。

天気の連鎖を動かそう



上のグラフは「晴れの確率」を、最初に晴れだった場合と雨だった場合で計算したもの。両方が同じ値(定常分布)に近づきます。

5. 応用:ネットの重要度(ページランク)

ネット上を、リンクをランダムにたどって移動する人を考えます。各ページが「状態」、リンクが「遷移」です。長く歩き続けたとき、よく訪れるページは重要なページのはず。つまり定常分布が、ページの重要度になります。これが検索エンジンの初期の順位付け(ページランク)の基本アイデアです。

6. 吸収状態:ギャンブラーの破産もマルコフ連鎖

運と意思決定の破産の問題では、所持金が「状態」です。0円と目標額は、一度入ったら出られません(吸収状態)。天気のモデルと違って、ずっと動き続けるのではなく、最後はどちらかの端に吸い込まれます。その確率を求めたのが「a÷N」でした。

0円
吸収(破産)
1円 ⇄ 2円 ⇄ …
行き来する
目標額
吸収(達成)

7. 練習問題

  1. 上の天気で、今日が雨のとき、2日後が晴れの確率は?
  2. P = (晴→晴 0.9、晴→雨 0.1/雨→晴 0.5、雨→雨 0.5) の定常分布は?
  3. 状態A→A 0.5、A→B 0.5、B→A 1(Bからは必ずAへ)の定常分布は?
  4. 遷移行列の各行の和はなぜ1?
  5. 上の天気で、今日が晴れのとき、3日後に晴れである確率は?
答えと途中式を確認する

1:P² の雨→晴:0.4×0.8 + 0.6×0.4 = 0.32+0.24 = 0.56。

2:晴の割合 π:π = 0.9π + 0.5(1−π) → 0.6π = 0.5 → π = 5/6。晴 5/6、雨 1/6。

3:Aの割合 π:π = 0.5π + 1×(1−π) → 1.5π = 1 → π = 2/3。A 2/3、B 1/3。

4:その状態にいるとき、次はどれかの状態に必ず移るため、行き先の確率を全部足すと1になる。

5:2日後の分布が(0.72, 0.28)。3日後の晴:0.72×0.8 + 0.28×0.4 = 0.576 + 0.112 = 0.688。