MathLabs

確率と統計

確率過程とマルコフ連鎖

時間とともに変化するランダムな状態の列で、マルコフ連鎖は現在の状態のみに依存する。

直観もし明日が今日のことしか気にしないなら、どこまで未来を予測できるだろうか?

池の蓮の葉を飛び移るカエル、マス目を一つずつ進むボードゲームの駒、晴れと雨の間で切り替わる明日の天気を思い浮かべてほしい。いずれの場合も、時計が刻まれるたびに変化する状態(どの葉か、どのマス目か、どの天気か)があり、その変化はあらかじめ決まっているのではなく——ランダムである。確率過程とは、単に時間 n=0,1,2,…n=0,1,2,\dots で添字づけられた確率変数の族 Xn∈SX_n \in S であり、各時刻に一つのランダムな状態を対応させたものにすぎない。カエルの跳躍、そして遺伝子の変異、行列に並ぶ客、取引所で刻々と動く価格、リンクをクリックするウェブサーファーなど、現実の非常に多くの系がこの意味で確率過程である。マルコフ連鎖とは、カエルが物忘れをする特別で非常に有用な場合であり、次の跳躍の確率は現在座っている蓮の葉だけに依存し、そこに至るまでの曲がりくねった経路には決して依存しない。

マルコフ連鎖の状態と遷移確率を示すインタラクティブな有向グラフ。
有向の状態図:各ノードが状態であり、ラベル付きの矢印がそれぞれ遷移確率を表す。ハイライトされたノードを切り替えて見ると、現在どの状態にいても、そこから出る矢印だけが次にどこへ行くかを決めており、それより前の経路は一切関係ないことが分かる。

大学マルコフ性、遷移行列、定常分布

定義: マルコフ連鎖

可算な状態集合を SS とし、n=0,1,2,…n=0,1,2,\dots に対して SS に値をとる確率過程を Xn∈SX_n \in S とする。この過程がマルコフ連鎖であるとは、マルコフ性、すなわちどの状態の選び方、どの nn に対しても P(Xn+1∣Xn,…,X0)=P(Xn+1∣Xn)P(X_{n+1}\mid X_n,\dots,X_0)=P(X_{n+1}\mid X_n) が成り立つことをいう。言い換えれば、XnX_n が分かってしまえば、過去全体 X0,…,Xn−1X_0,\dots,X_{n-1} は Xn+1X_{n+1} について何ら追加の情報を与えない——現在の状態が過去の全履歴を要約するのに十分である。

P(Xn+1∣Xn,…,X0)=P(Xn+1∣Xn)P(X_{n+1}\mid X_n,\dots,X_0)=P(X_{n+1}\mid X_n)

状態空間が有限(または可算)で連鎖が時間斉次であるとき、このランダム性はすべて単一の遷移行列 PP(成分は Pij=P(Xn+1=j∣Xn=i)P_{ij}=P(X_{n+1}=j\mid X_n=i))に集約される——これは連鎖が現在 ii にあるとき状態 jj へ跳ぶ確率である。どの状態からでも連鎖はどこかへ行かなければならないため、PP の各行は確率分布である:非負で、和が1になる ∑j∈SPij=1\sum_{j\in S} P_{ij}=1。この行和が1になる性質を持つ行列を行確率的と呼ぶ。nn ステップと mm ステップの遷移を掛け合わせることは行列の積とちょうど一致し、チャップマン–コルモゴロフ方程式 P(n+m)=P(n)P(m)P^{(n+m)}=P^{(n)}P^{(m)} が成り立つ。したがって分布 μ0\mu_0 から出発して nn ステップ後に各状態にいる確率は単に μ0Pn\mu_0 P^n である。

Pij=P(Xn+1=j∣Xn=i)P_{ij}=P(X_{n+1}=j\mid X_n=i)

SS 上の確率分布 π\pi が定常であるとは、この力学の不動点であること、すなわち πP=π\pi P=\pi かつ ∑i∈Sπi=1\sum_{i\in S}\pi_i=1、πi≥0\pi_i\ge0 が成り立つことをいう。連鎖の分布がある時刻で π\pi に等しくなれば、それ以降のすべての時刻でも π\pi に等しいままである——個々のカエルはランダムに跳び続けているのに、各蓮の葉に乗っているカエルの総数は全体として変化しなくなる。π\pi を求めることは線形方程式系を解くことに帰着し、これはまさに以下の基本定理が存在性・一意性・収束性の保証へと変える対象である。

πP=π\pi P=\pi
マルコフ連鎖を分類する主要な性質
性質定義帰結
既約任意の状態から他の任意の状態へ正の確率で到達できる連鎖は(高々)一つの定常分布を持つ
非周期的ある状態への可能な帰還時刻の最大公約数が1であるPnP^n のべき乗が(平均だけでなく)各成分ごとに収束する
再帰的状態 ii から出発すると、連鎖は確率1で ii に戻る有限既約連鎖ではこれは常に自動的に成り立つ

有限状態空間 SS 上のマルコフ連鎖が既約かつ非周期的であれば、πP=π\pi P=\pi を満たし各状態で πi>0\pi_i>0 となる定常分布 π\pi が一意に存在し、さらに lim⁡n→∞Pn=1 π\lim_{n\to\infty}P^n=\mathbf 1\,\pi が成り立つ——すなわち出発分布によらず、PnP^n のどの行も n→∞n\to\infty のとき π\pi に収束する。

なぜ正しいのか?

これこそがマルコフ連鎖がそもそも有用である理由である:ランダムに進化する系の長期的な振る舞いは、出発点を忘れて単一の予測可能なパターンに落ち着くこと、そしてそのパターンが何であるか(遷移ダイナミクスの唯一の不動点)を正確に教えてくれる。

証明

存在性と一意性。PP は行確率的であるから、全成分1のベクトルは固有値1に対する右固有ベクトルであり、したがって1は PP の固有値でもある(行列とその転置は固有値を共有する)。対応する左固有ベクトル π\pi が存在し πP=π\pi P=\pi を満たす。既約性とは PP が強連結なグラフの遷移行列であることを意味し、したがってペロン・フロベニウスの定理が適用できる:固有値1は単純(重複度1)であり、その固有ベクトルは狭義正に選べるので、成分の和が1になるよう正規化すれば一意性が得られる。

収束性。非周期性と既約性を合わせると、PP の1以外の他のすべての固有値 λ\lambda は ∣λ∣<1|\lambda|<1 を満たす(これは周期性があれば崩れる部分である:周期的な連鎖は単位円周上にちょうどある追加の固有値、例えば −1-1 を持ち、これは決して減衰しない)。任意の出発分布 μ0\mu_0 を PP の固有基底で表すと、π\pi に沿った成分(固有値1)は永遠に変化せず残り、それ以外の各成分はステップ nn で λn\lambda^n 倍され幾何学的にゼロへ縮小する。

この二つのステップを合わせると、μ0Pn\mu_0 P^n は固有値1の成分のみ、すなわちちょうど π\pi に収束し、これはすべての出発分布 μ0\mu_0(単位行列の各行、つまり各点質量を含む)に対して成り立つので、PnP^n のすべての行が主張どおり π\pi に収束する。

JJ を N×NN\times N 全成分1の行列(NN = ウェブページ数)とし、PP を行確率的なリンク行列とする(ページ ii はそれが指す各ページへ均等にリンクし、アウトリンクを持たないページは全ページへ一様に送られるとする)。任意の減衰係数 d∈(0,1)d\in(0,1) に対して、Google行列 G=dP+(1−d)1NJG=dP+(1-d)\tfrac1N J は既約かつ非周期的なマルコフ連鎖の遷移行列であり、したがって上記の基本定理により π=π(dP+(1−d)1NJ)\pi=\pi\Big(dP+(1-d)\tfrac1N J\Big) を満たす一意の定常分布 π\pi を持つ——この π\pi がまさにページランクベクトルであり、べき乗法 πk+1=πkG\pi_{k+1}=\pi_k G はどの初期推定値からもこれに収束する。

なぜ正しいのか?

これにより、「重要なページは他の重要なページからリンクされる」という曖昧な考えが、一意の解が保証された明確な不動点問題へと変わり、「リンクに沿ってランクを広げる」ことを単に繰り返すべき乗法がなぜ振動したり発散したりせず確実にうまくいくのかが説明される。

証明

既約性。1−d>01-d>0 であるから、GG のすべての成分は狭義正である(Gij≥(1−d)/N>0G_{ij}\ge(1-d)/N>0)。したがってどのページからも他の任意のページへ一段階で正の確率で直接跳べる——基礎となるグラフは自明に強連結であり、ゆえに GG は既約である。

非周期性。どの状態からも(Gii>0G_{ii}>0 でもあるため自分自身も含め)他のすべての状態へ直接遷移できる連鎖は、あらゆる長さ 1,2,3,…1,2,3,\dots の帰還時刻を持ち、その最大公約数は1である。したがって GG は非周期的である。

存在性・一意性・収束性。GG は構成上行確率的であり(2つの行確率的行列 PP と J/NJ/N の凸結合 dP+(1−d)1NJdP+(1-d)\tfrac1N J は行確率的である)、既約かつ非周期的であることは今示したとおりなので、有限マルコフ連鎖の基本定理が直接適用できる:π=π(dP+(1−d)1NJ)\pi=\pi\Big(dP+(1-d)\tfrac1N J\Big) を満たす一意の定常分布 π\pi が存在し、GnG^n は各成分ごとにすべての行が π\pi に等しい行列へ収束する。

べき乗法。任意の出発分布 π0\pi_0 に対して πk=π0Gk\pi_k=\pi_0G^k であり、GkG^k のすべての行が k→∞k\to\infty のとき π\pi に収束するので、加重平均 π0Gk\pi_0G^k も π\pi に収束する——これがまさに、任意の出発ランク(通常は一様分布)から πk+1=πkG\pi_{k+1}=\pi_k G を繰り返し適用すると真のページランクベクトルに収束する理由である。

大学実世界での応用と具体例

マルコフ連鎖は、「現在が分かれば過去を忘れる」ことが妥当な近似となる非常に幅広い系をモデル化する。Googleの元祖 ページランク アルゴリズムは、リンクをクリックするランダムサーファーの定常分布(上で証明した)によってウェブページを順位付けする。生物学では、DNA配列やタンパク質の折り畳み経路がヌクレオチドやコンフォメーションに関するマルコフ連鎖としてモデル化される。金融やオペレーションズ・リサーチでは、待ち行列システム(レジで待つ客)や在庫水準がマルコフ連鎖として追跡され、長期的な待ち時間や欠品確率が計算される。音声認識や自然言語処理では、隠れマルコフモデルが音素や品詞タグの列をつなぎ合わせる。そしてコンピュータ科学では、MCMC(マルコフ連鎖モンテカルロ)アルゴリズムが、サンプリングが難しい目標分布を定常分布とするマルコフ連鎖を構築し、それをシミュレートして近似サンプルを得る。

例: 天気の定常分布

単純化した天気モデルには晴れと雨の2状態があり、遷移行列は P=(0.90.10.50.5)P=\begin{pmatrix}0.9&0.1\\0.5&0.5\end{pmatrix}(1行目 = 晴れから、2行目 = 雨から。よって晴れからは確率 0.90.9 で晴れのまま、確率 0.10.1 で雨になる)。定常分布 π=(π1,π2)\pi=(\pi_1,\pi_2) を求めよ。

解答

定常方程式は πP=π\pi P=\pi、すなわち 0.9π1+0.5π2=π10.9\pi_1+0.5\pi_2=\pi_1 と 0.1π1+0.5π2=π20.1\pi_1+0.5\pi_2=\pi_2、および π1+π2=1\pi_1+\pi_2=1 である。

第一式は 0.5π2=0.1π10.5\pi_2=0.1\pi_1、すなわち π2=0.2π1\pi_2=0.2\pi_1 に簡約される(第二式も同じ関係を与える。これは πP−π\pi P-\pi の行が従属であるため必然である)。

正規化に代入すると π1+0.2π1=1\pi_1+0.2\pi_1=1 となり、1.2π1=11.2\pi_1=1 より π1=5/6\pi_1=5/6、π2=1/6\pi_2=1/6 を得る。

よって π=(5/6, 1/6)\pi=(5/6,\,1/6) ——長期的にはこの天気連鎖は 5/65/6 の時間、晴れである。これは直感と一致する:状態1(晴れ)は状態2(雨、留まる確率 0.50.5)よりもずっと「粘着的」(留まる確率 0.90.9)であるため、連鎖は粘着的な状態でほとんどの時間を過ごす。

例: 3ページのウェブのページランク

3つのページ A,B,CA,B,C からなる小さなウェブがあるとする:ページ AA は BB と CC へ均等にリンクし、ページ BB は CC だけにリンクし、ページ CC は AA だけにリンクし返す:P(A→B)=P(A→C)=12,P(B→C)=1,P(C→A)=1P(A\to B)=P(A\to C)=\tfrac12,\quad P(B\to C)=1,\quad P(C\to A)=1。ランダムサーファーのクリックを {A,B,C}\{A,B,C\} 上のマルコフ連鎖としてモデル化し、ページランクベクトル π\pi を求めよ。

解答

まず連鎖が既約かつ非周期的であることを確認する:どのページからも他の任意のページへ到達でき(A→B→C→AA\to B\to C\to A を経由)、長さ2の閉路(A→C→AA\to C\to A)と長さ3の閉路(A→B→C→AA\to B\to C\to A)があり、その最大公約数は1であるから、基本定理により一意の定常分布 π\pi の存在が保証される。

各列ごとに釣り合いの方程式を書く:πA\pi_A は CC からのみ流入を受け、πB\pi_B は AA からのみ、πC\pi_C は AA と BB の両方から受け取る:πA=πC,πB=12πA,πC=12πA+πB\pi_A=\pi_C,\quad \pi_B=\tfrac12\pi_A,\quad \pi_C=\tfrac12\pi_A+\pi_B。

最初の2つの式から直接 πA=πC\pi_A=\pi_C と πB=12πA\pi_B=\tfrac12\pi_A が得られる。正規化 πA+πB+πC=1\pi_A+\pi_B+\pi_C=1 に代入すると πA+12πA+πA=1\pi_A+\tfrac12\pi_A+\pi_A=1、すなわち 52πA=1\tfrac52\pi_A=1 となる。

これを解いて πA=2/5\pi_A=2/5、したがって π=(πA,πB,πC)=(2/5, 1/5, 2/5)\pi=(\pi_A,\pi_B,\pi_C)=(2/5,\,1/5,\,2/5) を得る。ページ AA とページ CC が最高順位で並ぶのは、それぞれが、自身のアウトリンクが1本しかなくすべての重みをそこに注ぎ込むページからリンクを受け取っているためである——これはまさにページランクが評価するよう設計された「票の集中」である。

マルコフ性とは、現在の状態 XnX_n が分かっているとき、次の状態 Xn+1X_{n+1} が:

3状態の連鎖の遷移行列の各行は、それぞれ:

遷移行列 P=(0.90.10.50.5)P=\begin{pmatrix}0.9&0.1\\0.5&0.5\end{pmatrix} について、πP=π\pi P=\pi と ∑i∈Sπi=1\sum_{i\in S}\pi_i=1 を満たすベクトル π\pi はどれか?

Googleの元祖ページランクにおいて、減衰係数 d<1d<1(すべてのページへの一様な 1/N1/N のジャンプを混ぜること)が本質的に必要な主な理由は、それがGoogle行列が次であることを保証するからである:

参考文献

  1. David A. Levin, Yuval Peres, Elizabeth L. Wilmer (2017). Markov Chains and Mixing Times
  2. Sergey Brin, Lawrence Page (1998). The Anatomy of a Large-Scale Hypertextual Web Search Engine
  3. James R. Norris (1997). Markov Chains