馬爾可夫蒙特卡洛方法

前兩篇文我們分別理解了馬爾可夫鏈和蒙特卡洛方法是做什麼的,那麼這兩個加起來就構成了我們的主菜-馬爾可夫蒙特卡洛方法。它是一個抽樣方法,用於對一個概率分佈進行隨機抽樣,或者可以求出關於該概率分佈的數學期望。因為概率分佈P(X)可能比較複雜不方便對其進行抽樣,如果直接用蒙特卡洛方法我們需要定義一個建議分佈才能對其進行抽樣,比如我們之前舉例中的π的計算,我們需要定義一個正方形來覆蓋圓,才能用蒙特卡洛方法來近似π值。但是馬爾可夫鏈蒙特卡洛法避免了建議分佈的定義(通常也很難,因為P(X)如果本身很複雜那麼建議分佈的定義必然也很困難),而是去構造一個平穩分佈是P(X)的馬爾可夫鏈,以X在馬爾可夫鏈上隨機遊走而獲得滿足P(X)的一份抽樣,同樣當馬爾可夫鏈的抽樣趨於平穩時就可以計算函數關於P(X)的數學期望了!是不是很巧妙啊,其實就是將一個複雜的問題轉換為另外一個簡單一些的問題,也是算法設計中變治思想的體現。

如何設計馬爾可夫鏈使其滿足平穩分佈為P(X)呢,有兩種方法,一種稱之為Metropolis-Hasting算法,一種稱為吉布斯抽樣兩種算法。後續會分別詳細介紹,這裡大家只要明白馬爾可夫蒙特卡洛方法的核心思想就好了。

那麼馬爾可夫蒙特卡洛方法和統計學習有什麼聯繫麼?因為這個方法可以求函數關於分佈的積分,在統計學習中條件概率分佈用貝葉斯公式+全概率公式形式正表示成了包含積分的形式,所以可以藉助用馬-蒙方法求條件概率P(X|Y)。


馬爾可夫蒙特卡洛方法


分享到:


相關文章: