機器學習 之 馬爾可夫 蒙特卡洛法

2021-10-24 19:57:16 字數 1388 閱讀 4278

什麼是蒙特卡洛法?

就是隨機投點計算圓周率的那個例子。

三門問題如何理解?(當然你可以用暴力蒙特卡洛算出)

比如說主持人和你做遊戲,你有乙個箱子,裡面有1個球;主持人乙個箱子,裡面有2個球。他知道每個球的顏色,但你啥也不知道。但是3個球裡面只有1個紫色的球,2個藍色的球,誰手裡面有紫色的球,誰就獲得大獎。

主持人說:你要和我換箱子嗎?

當然換,我箱子裡只有1個球,中獎率1

3\frac

31​,他箱子裡有2個球,中獎率2

3\frac

32​ ,換的中獎率是不換的2倍。

這是這個遊戲的結論。現在情況變了:

主持人從他的箱子裡扔了乙個藍色的球之後說:你要和我換箱子嗎?

當然換,我箱子裡只有1個球,中獎率1

3\frac

31​,他箱子裡有2個球,中獎率2

3\frac

32​。扔了乙個藍色的,中獎率沒變還是2

3\frac

32​,換的中獎率是不換的2倍。

蒙特卡洛演算法實際上是大數定理的應用吧,同分布,有期望就行。蒙特卡羅法的核心是隨機抽樣(random sampling)。

下面是如何求積分

是乙個分布,那麼f(x

)p(x

)\frac

p(x)f(

x)​就相當於x

xx一樣了。整體就會變成乙個期望。然後估計這個期望值就用蒙特卡洛暴力法了,取樣就是採用p(x

)p(x)

p(x)

的概率分布取樣,如果是均勻分布呢?實際上大一的積分估計介紹就是這麼來的,蒙特卡洛的特例而已。這就足以證明其正確性了。

現在的問題轉到了如何按照p(x

)p(x)

p(x)

取樣若干個樣本上來。但是,按照p(x

)p(x)

p(x)

取樣絕非易事,因為有些時候我們根本不知道p(x

)p(x)

p(x)

是什麼,或者有時候是乙個很複雜的表示式,計算機沒法直接抽樣。也就是說,p(x

)p(x)

p(x)

也不是隨隨便便取的。

隨機抽樣方法1:拒絕-接受取樣

隨機抽樣方法2:重取樣技術reparameterization trick

我們需要大量取樣,雖然我們有拒絕-接受取樣和重取樣技術,但是依舊面臨取樣困難的問題。巧了,馬爾科夫鏈可以幫我們解決這個難題。

馬爾科夫鏈你是知道是什麼樣的。如果我們得到了某個平穩分布所對應的馬爾科夫鏈狀態轉移矩陣,我們就很容易採用出這個平穩分布的樣本集。

蒙特卡洛法

蒙特卡洛 monte carlo 方法,或稱計算機隨機模擬方法,是一種基於 隨機數 的計算方法。這一方法源於 美國在第二次世界大戰進研製原子彈的 曼哈頓計畫 該計畫的 主持人之 一 數學家馮 諾伊曼用馳名世界的賭城 摩納哥的monte carlo 來命名這種方法,為它蒙上了一層神秘色彩。monte ...

蒙特卡洛方法 簡潔清晰解釋馬爾可夫鏈蒙特卡洛方法

有三種解釋mcmc的方法 本文,讓你達到中級水平。什麼是mcmc?要回答這個問題,我們首先需要重新審視貝葉斯統計。貝葉斯統計建立在這樣一種觀點的基礎上,即事物發生的概率受先驗概率假設和事件發生的可能性的影響,如資料所示。對於貝葉斯統計,概率由分布表示。如果先驗和似然概率分布是正態分佈的,我們能夠用函...

民科解釋蒙特卡洛法

蒙特卡羅方法於20世紀40年代美國在第二次世界大戰中研製原子彈的 曼哈頓計畫 計畫的成員s.m.烏拉姆和j.馮 諾伊曼首先提出。數學家馮 諾伊曼用馳名世界的賭城 摩納哥的monte carlo 來命名這種方法,為它蒙上了一層神秘色彩。先看看wiki的解釋 蒙特卡羅方法 英語 monte carlo ...