天天看點

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

簡單來說,吉布斯抽樣是單分量Metropolis-Hastings的特殊情況,特殊在哪哪?

特殊在這個時候

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

這個時候的接收率:

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)
MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

   由于

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)
MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

帶入,能夠得到:

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

吉布斯抽樣算法過程:

輸入:目标機率分布的密度函數p(x),函數f(x);

輸出:p(x)的随機樣本

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

,函數樣本均值

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

參數:收斂步數m,疊代步數n。

(1) 初始化。給出初始樣本

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

(2) 對i循環執行

設第(i-1)次疊代結束時的樣本為

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

,則第i

次疊代進行如下幾步操作:

       a.由滿條件分布

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

,抽取

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

       .......

      b.由滿條件分布

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

,抽取

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

      ........

      c.由滿條件分布

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

,抽取

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

得到第i次疊代值

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

(3) 得到樣本集合

            {

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

}

(4) 計算

MCMC (11) --- Markov Chain Monte Carlo (6) --- Gibbs(2)

總結:單分量Metropolis-Hastings算法和吉布斯算法的不同之處在于,前者算法中,抽樣會在樣本之間移動,但期間可能在某一些樣本點停留(由于抽樣被拒絕);而在後者算法中,抽樣會在樣本間持續移動。

吉布斯抽樣适合滿條件機率分布容易抽樣的情況,而單分量Metropolis-Hastings算法适合于滿條件機率分布不容易抽樣的情況,這時使用容易抽樣的條件分布建議分布。

繼續閱讀