MCMC(MH算法)
1.通过构造马尔可夫链进行蒙特卡洛采样,使得其收敛到平稳分布
2.MCMC的具体采样方法有MH算法和Gibbs采样
3.Gibbs采样是MH算法的特殊情形,用于解决高维空间采样问题
4.MCMC有三个局限:无法判断是否已经收敛,燃烧期过长,样本具备相关性
在上一篇MCMC(马尔可夫链)中,我们介绍了马尔可夫链平稳分布的一个充分条件,也就是细致平衡:
我们这一篇,介绍如何把马氏链的细致平衡应用到蒙特卡洛采样思想,求得p(z)的后验分布,最终求解目标函数的期望。这是我们的目标。
MH算法
首先,对于后验p(z),我们要构造一个关于样本z马氏链,其转移矩阵(提议矩阵)记为Q,使得其满足细致平衡条件,但通常情况下没那么容易找到,也即:
故我们引入一个接收率,使得其相等:
只要取
就可以满足细致平衡。我们证明这一点:
这个就是大名鼎鼎的Metropolis-Hastings 算法,简称MH算法,它属于MCMC中的一种。算法的流程为:
注意,这里的后验p(z)并非归一化的,因为归一化因子Z无法求解,我们默认是
Gibbs采样
采样的困难点还有另外一个,就是面对高维空间采样依旧困难。解决这个问题的是Gibbs采样,它是MH算法的一种特殊情形。
Gibbs采样思想很简单,通过固定其他维度逐一对某一维度进行采样:
注:这里下标i表示维度
关键是要找到一个合适转移矩阵Q,我们从z是二维的情况看起:
仔细观测可以发现,当某一维度固定时,用两个维度的条件概率作为转移概率,则满足细致平衡条件。
由此,我们可以构造转移矩阵:
上升到多维空间,我们有:
Gibbs采样的转移矩阵就是平稳分布,算法流程为:
Gibbs采样的接收率为1,因为:
故而,
局限与困难
至此,我们介绍完了MCMC。这一节我们做个总结以及介绍一下它的局限。
给定转移矩阵和初始状态,我们可以通过构造马氏链得到平稳分布的样本,使得这些样本能够代表原概率分布p(z)总体,其过程如下:
设该马氏链平稳分布为π(x),从t=1时刻开始采样,直到m时刻概率分布收敛,即:
显然,到达平稳分布所需要的时间跟转移矩阵和初始状态有关,我们把到达平稳分布的过程称为燃烧期,燃烧期的时长称为混合时间
MCMC与拒绝采样、重要性采样的区别是不用去寻找提议函数q(z),并且解决高维复杂的情况。但MCMC也并非万能,它存在以下局限性:
理论只能保证收敛性,但无法判断是否已经收敛
燃烧期可能过长
样本之间⼀定是有相关性的
针对第一点,可以采取比较传统的方式,每隔一段时间取相同的样本,计算其均值是否一致;针对第二点,可能会带来效率过于低下,它的本质是因为p(z)过于复杂造成的,也即维度过高,如果维度之间相关性较强,该方法出来的样本有失偏颇,因为Gibbs采样的假设是每个维度之间的相关性较低,才能一维一维逐步采样;针对第三点,我们可以通过间隔一段时间采样来降低其相关性。
MCMC(MH算法)相关推荐
- MCMC笔记Metropilis-Hastings算法(MH算法)
1 前言 我们在MCMC笔记:齐次马尔可夫链_UQI-LIUWJ的博客-CSDN博客 中介绍了平稳条件,当马尔可夫链达到平稳状态时(也就是各个状态之间的转移概率已经和时间无关了),那我们可以通过此时的 ...
- MH算法拟合标准柯西分布
1. 题目 利用M-H算法从标准柯西分布中产生随机数,丢弃链的前1000个值,比较生成链观测值的十分位数和柯西分布理论10分位数的拟合情况,并画出QQ图和链的直方图.本题中提议分布取为N(xt,σ2) ...
- PRML第十一章读书笔记——Sampling Methods 拒绝采样/重要性采样/采样重要性重采样/数据增广IP算法、Metropolis算法/MH算法/吉布斯、切片采样、混合MC、估计配分函数
(终于把第十章读完了,这一章应该相对轻松.但这两天状态有待调整,所以没咋认真读) 目录 11.1 Basic Sampling Algorithms P526 标准概率分布 P528 拒绝采样 P53 ...
- R语言用Backfitting MCMC抽样算法进行贝叶斯推理案例
BART是贝叶斯非参数模型,可以使用Backfitting MCMC进行拟合 . 我不使用任何软件包...... MCMC是从头开始实现的. 考虑协变量数据和成果为主题,.在这个玩具示例中,数 ...
- Metropolis-Hastings算法
(学习这部分内容大约需要1.5小时) 摘要 马尔科夫链蒙特卡洛(Markov chain Monte Carlo, MCMC)是一种近似采样算法, 它通过定义稳态分布为 \(p\) 的马尔科夫链, 在 ...
- c++求解自行车慢速比赛问题_隐马尔可夫模型(模型推断五大问题)
1.隐马尔科夫模型Learning问题是求解未知参数λ 2.隐马尔科夫模型Inference问题有五个:Decoding.Evaluation.Filtering.Smoothing.Predicti ...
- mh采样算法推导_科学网—MCMC中的Metropolis Hastings抽样法 - 张金龙的博文
Metropolis Hastings抽样法示例 jinlongzhang01@gmail.com Metropolis Hasting(下面简称MH)是蒙特卡罗马尔科夫链中一种重要的抽样方法.本文简 ...
- 【LDA学习系列】MCMC之Metropolis-Hastings采样算法python代码理解
Metropolis-Hastings采样算法的流程: 代码一:有助于理解算法流程 # -*- coding: utf-8 -*- ''' Created on 2018年5月15日@author: ...
- mh采样算法推导_深度学习:Gibbs 采样
1. 什么是Gibbs采样 Gibbs采样是MH算法的一种特例(α==1),因此可以保证Gibbs抽取的样本,也构成一个非周期不可约稳定收敛的马氏链:Gibbs采样适用于样本是两维或以上的情况:通过积 ...
- mh采样算法推导_贝叶斯推断:Metropolis-Hastings 采样
前面一篇文章贝叶斯统计:初学指南介绍了最简单的 Metropolis 采样方法,本文将介绍另一种采样 Metropolis-Hastings ,并且会对前文介绍的例子给出证明,为什么 Metropol ...
最新文章
- 计算机课做ppt的软件有哪些内容,课程内容计算机软件的基础知识.ppt
- Android 4.0操作系统的20个使用小技巧
- 记一次 React 组件无法更新状态值的问题分析与解决
- Chrome无法打开文件的错误 [Not allowed to load local resource: file://XXXX]
- 文档数据库的学习报告
- ensp VRRP配置2
- linux系统查看ssh是否开启,linux查看与开启ssh
- 2020-09-13 滴滴-2021校招在线笔试-DE数据开发试卷
- win2003 服务器设置 完全版 作者:冰盾防火墙
- 如何给SCI收录的文章分区?
- 计算机微机维修工四级理论知识试卷,计算机维修工中级理论知识试卷1.doc
- Thumbnails生成缩略图透明底图变黑bug修改
- 高德地图获取地址坐标
- JavaScript:实现加密哈希SHA-256 算法(附完整源码)
- 什么样的女生城府深?
- 中国PETG市场预测及战略研究报告(2022版)
- 【网络流】——搞搞dinic
- 信赖域狗腿(dogleg)方法
- 微波辐射数据读取与处理
- 老板,缺人吗?这里有一大波产品人才想安利给你~