當前位置: 華文問答 > 科學

如何證明馬爾科夫鏈一定會達到穩態?

2021-02-07科學

這個不一定。馬爾科夫鏈未必有穩態。我們知道,馬爾科夫鏈可以用這個遞迴方程式表示:

\boldsymbol{v}_{n+1} = M \boldsymbol{v}_{n}, n \ge 1

其中 \boldsymbol{v}_{n} 表示時刻 n 的狀態向量, M 表示馬爾科夫鏈的狀態轉移矩陣。如果馬爾科夫鏈有穩態解,則對上面的轉移方程式兩邊求極限得到

\boldsymbol{v}_{\infty} = M \boldsymbol{v}_{\infty}

也就是如果馬爾科夫鏈有穩態解,則這個穩態一定是轉移矩陣的特征值為1的右特征向量。所以如果狀態轉移矩陣有唯一的一個特征值為1的右特征向量,則馬爾科夫鏈就有穩態解,否則沒有。那麽問題是什麽時候狀態轉移矩陣有唯一的特征值為1的右特征向量?這個要用到Perron-Frobenius定理。該定理為:

圖片來自Carl D. Meyer的 Matrix analysis and applied linear algebra, 第673頁。

這個定理的描述和證明都挺費時間的。對於馬爾科夫鏈的轉移矩陣而言,顯然它滿足矩陣元素都是非負這個條件,除此之外它還需要是一個不可約矩陣。這時,轉移矩陣的譜半徑就是它最大的特征值,為1,而且該特征值的代數重數為1,但是這個條件還不能保證馬爾科夫鏈的穩態解一定存在,因為盡管特征值1的代數重數為1,但是該矩陣仍然有可能有特征值為 e^{i\theta}, \theta \in \mathbb{R} ,也就是該矩陣的spectral circle上有可能還有別的復根。為了排除這種情況,我們還需要求轉移矩陣為primitive matrix,也就是

圖片來自Carl D. Meyer的 Matrix analysis and applied linear algebra, 第674頁。

所以如果進而要求轉移矩陣是primitive matrix,則可以保證矩陣的spectral circle上只有一個根,且該特征根為 M 的最大特征值,為1. 此時馬爾科夫鏈有唯一的穩態解。

矩陣 M 是primitive matrix的一個充分但非必要條件是 M 至少有一個對角元素大於零。除此之外,還有一個方法可以判斷一個非負矩陣是否為primitive,

圖片來自Carl D. Meyer的 Matrix analysis and applied linear algebra, 第678頁。

這個方法給出判斷primitivity的充要條件,但是真正要用這個準則的時候需要計算矩陣的高次冪。這個定理等價於, 如果一個馬爾科夫鏈的轉移矩陣是primitive matrix,那麽從任意狀態出發,經過足夠長的時間,這個馬爾科夫鏈一定可以存取到每一個狀態。此時稱馬爾科夫鏈為ergodic. 至於如何快速判斷一個轉移矩陣是否是primitive matrix,這個我還真不知道。

如果一個矩陣是primitive matrix,那麽我們可以用power iteration method求解它的最大特征向量。這個演算法也是PageRank演算法的基礎。PageRank演算法裏面引入了一個跳躍因子 \alpha 其實就是為了保證對於任意的圖,它的機率轉移矩陣總是一個primitive matrix,從而可以用power iteration來計算它的最大特征向量。這個最大特征向量又叫做Perron vector.