1.馬爾可夫鏈及其平穩分布
馬爾可夫鏈的定義很簡單,即後乙個狀態只與前面乙個狀態相關
$$p(x_t|x_,\cdots,x_)=p(x_t|x_)$$
2.馬氏鏈定理
如果乙個非週期馬爾可夫鏈具有狀態轉移矩陣\(p\),且它的任意兩個狀態都是連通的,那麼\(\mathop \limits_(p^n)_\)存在且與\(i\)無關,記\(\mathop \limits_(p^n)_=\pi_j\),那麼有
1.$$p^n = \left[\begin \pi_1 & \cdots & \pi_j & \cdots \\ \pi_1 & \cdots & \pi_j & \cdots \\ \pi_1 & \cdots & \pi_j & \cdots\end\right]$$
2.$$\pi_j=\sum_i \pi_ip_$$
3.$$\pi p=\pi$$
其中\(\pi\)稱作馬爾可夫鏈的平穩分布。
3.mcmc
給定乙個概率分布\(p(x)\),如果希望生成它的樣本,那麼可以找到乙個馬爾可夫鏈,使得它的平穩分布為\(p(x)\),那麼根據該馬爾可夫鏈的轉移矩陣進行轉移,在該馬爾可夫鏈收斂之後就能得到\(p(x)\)的樣本
細緻平穩條件
若狀態轉移矩陣和概率分布\pi(x)滿足
$$\pi_ip_=\pi_jp_$$
則稱\pi(x)為該馬爾可夫鏈的平穩分布。
假設想要得到從\(p(x)\)中取樣出它的樣本,且我們已經有了乙個狀態轉移矩陣\(p\),通常
$$p(i)p_\neq p(j)p_$$
因此我們引入乙個\(\alpha_\)並令
$$\alpha_=p(j)p_$$
則有$$p(i)p_\alpha_=p(j)p_\alpha_$$
我們取新的狀態轉移矩陣
$$q_=p_\alpha_$$。
此時\(q\)所對應的馬爾可夫鏈的平穩分布即為p(x)。
其中\(\alpha_\)可以被認為是接受率,也就是說,以\(p_\)的概率從\(i\)轉移到\(j\)時,我們以\(\alpha_\)的概率接受新的狀態\(j\)。
可以將mcmc取樣的過程總結如下
1.初始化狀態\(x_0=x_0\)
2.對於\(t=1,2,\cdots\)
從\(p(x|x_)\)中取樣出y
從[0,1]的均勻分布中取樣\(u\)
若\(u<\alpha_y}\),則接受\(x_t=y\),否則保持原有狀態\(x_t=x_\)
上述過程存在一定缺點,當\(\alpha_\)很小時,大量的轉移會被拒絕,從而導致馬爾可夫鏈收斂緩慢,因此可以對\(\alpha_\)進行一下改造,考慮細緻平穩條件
$$p(i)p_\alpha_=p(j)p_\alpha_$$
將上式子兩邊同時除以\(\alpha_\)我們得到
$$p(i)p_\frac}}=p(j)p_$$
因此我們得到最終的mcmc取樣
1.初始化狀態\(x_0=x_0\)
2.對於\(t=1,2,\cdots\)
從\(p(x|x_)\)中取樣出y
從[0,1]的均勻分布中取樣\(u\)
若\(u<\min(\frac,y)})},1),則接受x_t=y\),否則保持原有狀態\(x_t=x_\)
蒙特卡洛理解
蒙特卡羅演算法並不是一種演算法的名稱,而是是一類隨機方法的統稱。這類方法的特點是,可以在隨機取樣上計算得到近似結果,隨著取樣的增多,得到的結果是正確結果的概率逐漸加大,但在 放棄隨機取樣,而採用類似全取樣這樣的確定性方法 獲得真正的結果之前,無法知道目前得到的結果是不是真正的結果。從特性特性來說,我...
蒙特卡洛演算法
從今天開始要研究sampling methods,主要是mcmc演算法 contents 1.蒙特卡洛介紹 2.蒙特卡洛的應用 3.蒙特卡洛積分 1.蒙特卡洛介紹 蒙特卡羅方法 monte carlo method 也稱統計模擬方法,是二十世紀四十年代中期由於科學技術的 發展和電子計算機的發明,而被...
蒙特卡洛方法
蒙特卡洛方法 monte carlo method,也有翻譯成 蒙特卡羅方法 是以概率和統計的理論 方法為基礎的一種數值計算方法,將所求解的問題同一定的概率模型相聯絡,用計算機實現統計模擬或抽樣,以獲得問題的近似解,故又稱隨機抽樣法或統計試驗法。上述就是蒙特卡洛方法的基本概念,比較抽象,下面結合實際...