机器学习笔记之马尔可夫链蒙特卡罗法

1. 背景

由于拒绝—接受采样重要性采样在高位空间难以寻找合适的参考分布,采样效率低下(样本拒绝的概率小于接受的概率或者重要性权重低),此时就可以考虑马尔可夫链蒙特卡洛法(MCMC)采样法。

MCMC是机器学习中一类非常重要的采样法,可以用于很多复杂分布的采样以及在高维空间中也可以使用。主要适用于随机变量是多元的,密度函数是非标准形式,随机变量各分量是不独立的情况。

2.基本思想

MCMC包含两个MC,即蒙特卡罗法和马尔科夫链。
基本思想是:在随机变量 X X X的状态空间 S S S上定义一个满足遍历定理的马尔科夫链,使其平稳分布就是我们需要抽样的目标分布 p ( x ) p(x) p(x)。然后在这个马尔科夫链上随机游走,每个时刻得到一个样本,根据遍历定理,当时间趋于无穷时,样本的转移概率矩阵就是该马尔科夫链的平稳分布。所以在经过 n n n个时刻后,随机游走得到样本就满足目标分布。

遍历定理:设有马尔科夫链, X = { x 0 , x 1 , . . . , x n , . . . } X=\{x_0,x_1,...,x_n,...\} X={x0,x1,...,xn,...},状态空间为 S S S,若马尔科夫链是非周期,不可约且正常返,则该马尔科夫链有唯一的平稳分布,且转移概率矩阵的极限分布就是马尔科夫链的平稳分布。

MCMC核心就在于构造合适的马尔科夫链,不同的马尔科夫链对应着不同的MCMC采样法

现在有几个问题
1、我们如何构造一个既要满足遍历定理又要其状态转移矩阵的及西安分布是我们要抽样的目标分布的马尔科夫链?
2、如何确定收敛步数,因为根据遍历定理,当时间趋于无穷时,状态转移矩阵的分布才是平稳分布,也是什么时刻之后,马尔科夫链随机游走得到样本是满足我们的目标分布的。

首先我们来解决问题1,根据我们要抽样的目标分布 p ( x ) p(x) p(x),找到一个合适的马尔科夫链,状态转移矩阵为 P P P,使得其平稳分布 π \pi π= p ( x ) p(x) p(x);

这需要介绍,马尔科夫链的细致平稳条件

3.马尔科夫链的细致平稳条件(Detailed Balance Condition)

马尔科夫链的细致平稳条件:如果非周期马尔科夫链状态转移矩阵 P P P和概率分布 π ( x ) \pi(x) π(x)对所与的 i , j i,j i,j 满足:

π ( i ) P ( i , j ) = π ( j ) p ( j , i ) , f o r a l l i , j \pi(i)P(i,j) = \pi(j)p(j,i), for all i,j π(i)P(i,j)=π(j)p(j,i),foralli,j

则称概率分布 π ( x ) \pi(x) π(x)是状态转移矩阵 P P P的平稳分布(Stationary Distribution)。满足这样的状态转移矩阵的马尔科夫链也叫可逆马尔科夫链,上述公式也叫细致平稳方程。

因此只要我们找到使概率分布 π ( x ) \pi(x) π(x)满足细致平稳分布的矩阵 P P P即可。但是这样的矩阵 P P P还是很那找到,当我们找到的 P P P不满足细致平稳条件怎么办?

4.MCMC采样(原始的)

由于一般情况下,目标平稳分布 π ( x ) \pi(x) π(x)和某一个我们找到的马尔科夫链 Q Q Q,但是 Q Q Q不满足细致平稳条件,
即:
在这里插入图片描述
我们是否可以参考拒绝—接受采样法的思想呢,我们现在不是很那找到一个合适的状态矩阵 P P P,那我们是否通过一个一般的马尔科夫链的状态转移矩阵 Q Q Q,通过一个接受—拒绝概率,得到目标转移矩阵的 P P P呢?

引入一个 α ( i , j ) \alpha(i,j) α(i,j),使上式等号成立,即:
在这里插入图片描述
按照对称性,我们有:
在这里插入图片描述
然后我们就可以得到平稳分布是 π ( x ) \pi(x) π(x)的马尔科夫链,其状态转移矩阵 P ( i , j ) = Q ( i , j ) α ( i , j ) P(i,j)=Q(i,j)\alpha(i,j) P(i,j)=Q(i,j)α(i,j);

MCMC采样算法如下
机器学习笔记之马尔可夫链蒙特卡罗法_第1张图片
这样的MCMC采样法类似拒绝—接受采样法,因此它也具有其采样效率低的缺点,也就是拒绝的概率大于接受的概率。因此,有了后面的M-H采样法吉布斯采样法

参考文献:

李航《统计学习方法》
https://zhuanlan.zhihu.com/p/37121528

你可能感兴趣的:(机器学习,机器学习,统计学)