MCMC-2|机器学习推导系列(十六)

简介: MCMC-2|机器学习推导系列(十六)

一、概述


1. 概述


在对一个概率分布进行随机抽样,或者是求函数关于该概率分布的数学期望时可以使用马尔可夫链蒙特卡罗法(MCMC)。相比于拒绝采样法和重要性采样法,MCMC更适用于随机变量是多元的、概率密度函数是非标准形式的、随机变量各分量不独立等情况。


P81_GXOMURP$VY5H]M]8`K5.png

2. 需要注意的几个知识点


  • 由于这个马尔可夫链满足遍历定理,随机游走的初始点并不影响得到的结果,也就是说从不同的起始点出发,都会收敛到同一平稳分布。


  • MCMC的收敛性的判断往往是经验性的,比如,在马尔可夫链上进行随机游走,检验遍历均值是否收敛。具体的方法有:



①每隔一段时间取一次样本,得到多个样本以后,计算遍历均值,当计算的均值稳定后,认为马尔可夫链已经收敛。


②在马尔可夫链上并行进行多个随机游走,比较各个随机游走的遍历均值是否接近一致。


  • MCMC中得到的样本序列,相邻的样本点是相关的,而不是独立的。因此,在需要独立样本时,可以在该样本序列中再次进行随机抽样,比如每隔一段时间取一次样本,将这样得到的子样本集合作为独立样本集合。


  • 一般来说,MCMC比拒绝采样法更容易实现,因为只需要定义马尔可夫链,而不需要定义建议分布。一般来说MCMC比拒绝采样效率更高,因为没有大量被拒绝的样本,虽然燃烧期的成本也要抛弃。


3. 马尔可夫链蒙特卡罗法的基本步骤

4N1{AH6)FKYPF5895@Z6CJ1.png

二、Metropilis-Hastings算法(MH算法)


1. 基本原理

IHVP@@A3_FUHHXBZ~$@Y~54.png

0]CB@W[FD`5PIB@E3X`D)M3.png

2. 定理

6LGMNX(U@MM7}NAH5Q(~C0G.png

3. 建议分布


  • 第一种形式

%747IUSS08C%JT82873MP{R.png

FJBZ9K%9~%M7[GP(2(GPQVJ.png

4. 满条件分布

~KM@DS8X_WCK(K9SMO)]5YJ.png

5. 基本步骤

Z2(}I)A3K]BO4J$_8`~5W_O.png

6. 单分量MH算法


在MH算法中,通常需要对多元变量分布进行抽样,有时对多元变量的抽样是困难的。可以对多元变量的每一变量的条件分布依次分别进行抽样,从而实现对整个多元变量的一次抽样,这就是单分量MH(single-component Metropolis-Hastings)算法。

RZCAH%Q0P5R4)G(8)%JC${7.png

_6({%2XQZ~W[@L[@Z38C915.png

三、吉布斯抽样


吉布斯抽样可以认为是MH算法的特殊情况,但是更容易实现,因此被广泛使用。


1. 基本原理


吉布斯抽样(Gabbs sampling)用于多元变量联合分布的抽样和估计。其基本做法是,从联合概率分布定义满条件概率分布,依次对满条件概率分布进行抽样,得到样本的序列。可以证明这样的抽样过程是在一个马尔可夫链上的随机游走,每一个样本对应着马尔可夫链的状态,平稳分布就是目标的联合分布。整体成为一个MCMC,燃烧期之后的样本就是联合分布的随机样本。

({UMYN(G[_W`A9Y$JL%2`M1.png


({UMYN(G[_W`A9Y$JL%2`M1.png

2. 吉布斯抽样与单分量MH算法的关系

6FC6I_9QH@NE@G$}]FR}]MU.png

3. 基本步骤

5%@XMBD599%(1VRTEME65]G.png

4. 对比单分量MH算法


单分量MH算法与吉布斯抽样的不同之处在于,在前者算法中,抽样会在样本点之间移动,但其间可能在某一些样本点上停留(由于采样被拒绝);而在后者算法中,抽样点会在样本点之间持续移动。


吉布斯抽样适合于满条件概率分布容易抽样的情况,而单分量MH算法适合于满条件概率分布不容易抽样的情况,这时使用容易抽样的条件分布作建议分布。


参考资料


ref:李航《统计学习方法》

相关文章
|
机器学习/深度学习
受限玻尔兹曼机|机器学习推导系列(二十五)
受限玻尔兹曼机|机器学习推导系列(二十五)
786 0
受限玻尔兹曼机|机器学习推导系列(二十五)
|
机器学习/深度学习 算法 数据挖掘
100天搞定机器学习|day44 k均值聚类数学推导与python实现
100天搞定机器学习|day44 k均值聚类数学推导与python实现
100天搞定机器学习|day44 k均值聚类数学推导与python实现
|
机器学习/深度学习 人工智能 移动开发
【机器学习】线性分类——高斯判别分析GDA(理论+图解+公式推导)
【机器学习】线性分类——高斯判别分析GDA(理论+图解+公式推导)
434 0
【机器学习】线性分类——高斯判别分析GDA(理论+图解+公式推导)
|
机器学习/深度学习 人工智能 算法
【机器学习】线性分类——线性判别分析LDA(理论+图解+公式推导)
【机器学习】线性分类——线性判别分析LDA(理论+图解+公式推导)
444 0
【机器学习】线性分类——线性判别分析LDA(理论+图解+公式推导)
|
机器学习/深度学习 算法
100天搞定机器学习|day38 反向传播算法推导
100天搞定机器学习|day38 反向传播算法推导
100天搞定机器学习|day38 反向传播算法推导
|
机器学习/深度学习
MCMC-1|机器学习推导系列(十五)
MCMC-1|机器学习推导系列(十五)
372 0
MCMC-1|机器学习推导系列(十五)
|
机器学习/深度学习 算法
变分推断|机器学习推导系列(十四)
变分推断|机器学习推导系列(十四)
220 0
变分推断|机器学习推导系列(十四)
|
机器学习/深度学习 算法
Sigmoid信念网络|机器学习推导系列(二十八)
Sigmoid信念网络|机器学习推导系列(二十八)
288 0
Sigmoid信念网络|机器学习推导系列(二十八)
|
机器学习/深度学习 算法
近似推断|机器学习推导系列(二十七)
近似推断|机器学习推导系列(二十七)
165 0
近似推断|机器学习推导系列(二十七)
|
机器学习/深度学习 算法
配分函数|机器学习推导系列(二十六)
配分函数|机器学习推导系列(二十六)
303 0
配分函数|机器学习推导系列(二十六)