MCMC抽樣演算法要點總結

2021-07-09 04:21:22 字數 1485 閱讀 5511

給定乙個已知的概率分布函式

,對隨機變數

進行取樣,使其滿足

概率分布。

乙個馬爾科夫鏈,對應的概率轉移矩陣為

,如果其具有 非週期性 且任意兩個狀態之間都是 連通 的 ,則不論初始的狀態概率分布向量

取什麼值,在 n 步轉移後,狀態的概率分布一定會穩定到乙個向量

, 就稱為該馬爾可夫鏈的平穩分布。

非週期性:對於狀態i,d為集合

的最大公約數,如果

,則該狀態為非週期的。

互通:兩個狀態

連通指,狀態

可以通過有限的

步轉移,到達狀態

如果乙個馬爾科夫鏈滿足 細緻平穩條件,則其一定是收斂的,也就是會達到上述的平穩分布

。注意:細緻平穩條件只是馬爾科夫鏈收斂的充分條件,不是必要條件。

細緻平穩條件:

,也就是從狀態

轉移到狀態

的數量和從狀態

轉移到狀態

的數量相一致,也就相互抵消,所以數量不發生改變。

因此如果能夠構造乙個概率轉移矩陣為

的馬爾科夫鏈,而該馬爾科夫鏈的平穩分布為已知概率分布

。任意的初始狀態

,在該馬爾科夫鏈上進行狀態轉移,得到一系列隨機序列

。如果從第

步開始該馬爾科夫鏈收斂,則從

開始得到的狀態都滿足概率分布

,也就是我們需要取樣的滿足給定概率分布

的隨機變數。

假設我們已知某個穩定分布為

的馬氏鏈的概率轉移矩陣為

,而為了將其改造為穩定分布為

的馬氏鏈,也就是要滿足細緻平穩條件,我們在式子兩側分別乘上乙個接受概率

,如下式所示:

其中最簡單的為了使上式成立的方法,就是令

、 。

而接受概率也就是在進行狀態轉移後,增加一步判斷是否接受本次轉移,如果接受則狀態成功轉移,否則維持原來的狀態。

輸入:概率分布

輸出:滿足概率分布

的樣本集合

步驟:

注意:

1. 通常選取高斯分布或者某些已知取樣方法的分布為

; 2. 如果當前取樣結果

不依賴於狀態

,則 ;

3. 拒絕轉移代表本次取樣結果不準確,不予使用

跡圖遍歷均值圖

蒙特卡洛誤差

gelman-rubin方法

lda-math-mcmc 和 gibbs sampling

馬爾科夫鏈的性質

隨機取樣方法整理與講解

貝葉斯集錦(3):從mc、mc到mcmc

水庫抽樣演算法精簡總結

輸入 一組資料,大小未知 輸出 這組資料的k個均勻抽取 要求 僅掃瞄一次 總體要求 從n個元素中隨機的抽取k個元素,其中n無法確定,保證每個元素抽到的概率相同 一些符號 k為要抽樣的個數,n為總體個數字置,n為當前遍歷的元素的位置。pool為k大小的陣列,用來儲存抽到的樣本 n k,把當前值放入po...

抽樣方法總結

1.簡單隨機抽樣 簡單隨機抽樣,也叫純隨機抽樣。就是從總體中不加任何分組 劃類 排隊等完全隨機地抽取調查單位 2.系統隨機抽樣 系統抽樣是將總體的觀察單位,按一定順序號平均分成n個部分,每一部分抽取第k號觀察單位組成樣本,這裡的k是隨機確定的,其體現了系統抽樣中的隨機性 3.分層隨機抽樣 分層抽樣是...

水庫抽樣演算法

輸入 一組資料,大小未知 輸出 這組資料的k個均勻抽取 要求 僅掃瞄一次 總體要求 從n個元素中隨機的抽取k個元素,其中n無法確定,保證每個元素抽到的概率相同 一些符號 k為要抽樣的個數,n為總體個數字置,n為當前遍歷的元素的位置。pool為k大小的陣列,用來儲存抽到的樣本 n k,把當前值放入po...