MCMC&Gibbs sampling
Note of Markov Chain Monte Carlo and Gibbs Sampling : http://pan.baidu.com/s/1jHpWY1o
序:A major limitation towards more widespread implementation of Bayesian approaches is that obtaining thee posterior distribution often requires the integration of high-dimensional functions. Here the MCMC is used to solve this problem. There are two major method in the using of MCMC ---- Metropolis algorithm and Gibbs sampling.
- Monte Carlo Integration
问题:计算一个复杂积分
解决方案:把
分解成
和
,要求
是概率密度函数,得到
,将函数积分转换为随机变量函数的期望进行计算。
,这里的xi是服从概率分布密度为
的随机变量x的取值。
应用在贝叶斯理论中,后验概率
。
- Introduction to Markov Chain
介绍了马尔科夫过程,马尔可夫链,状态空间,转移概率,转移矩阵,以及切普曼-柯尔莫哥洛夫方程,平稳分布等概念。这里提及了从离散的平稳分布向连续状态进行过渡:
à
- The Metropolis-Hasting Algorithm
问题:从复杂的概率分布p(x)中采样。
解决方案:假如我们要从p(x)=f(x)/K中采样,但是K 并不已知且无法求取,则采取如下方法进行采样
a.设定初始值x0,要满足f(x0)>0;
b.利用现在的x值,从转移分布q(x1,x2)中采样一个候选参数x*,对这个转移分布的限制是q(x1,x2)=q(x2,x1);
c.计算
(这里用的是比值所以可以避开K 进行计算);
d.如果alpha大于1则接受候选 x*;如果alpha小于1,则以概率alpha接受候选x*;然后返回到步骤b.
4. The Gibbs Sampler
这种采样方法应用在多变量的分布当中,在采样时,我们每次只对一个变量进行采样将其他变量固定。也就是说每次都是对一个单变量的条件分布进行采样,而不去理会联合分布,这样对n个变量进行轮流采样,进行k轮之后得到一个长度为k 的Gibbs Sequence 用来表示联合分布的采样。文章中的Example 4里列出了一个二维的联合分布的采样过程,他的两个条件分布分别为二项分布和Beta分布,很好的诠释 了Gibbs采样的流程和优势。
另外,这里还比较了吉布斯采样和EM算法的联系与区别。
EM每次都包含两个步骤:a.在固定参数下对隐变量求期望;b.固定隐变量的取值,利用极大似然的方法对参数数进行估计。
吉布斯采样则将隐变量和参数看成同等地位进行随机采样,可以看成是对EM算法的随机模拟。(原文:The Gibbs sampler can be thought of as a stochastic analog to the EM approaches used to obtain likelihood functions when missing data are present .)
参考:《统计学习方法》;
《Pattern recognition and machine learning 》第十一章 .
MCMC&Gibbs sampling的更多相关文章
- MCMC,GIBBS SAMPLING简单摘要
本文后面很多内容都是参考博客:http://www.cnblogs.com/xbinworld/p/4266146.html.本文主要用作学习交流备忘用. 1)简述: 随机模拟也可以叫做蒙特卡洛模拟, ...
- 随机采样方法整理与讲解(MCMC、Gibbs Sampling等)
本文是对参考资料中多篇关于sampling的内容进行总结+搬运,方便以后自己翻阅.其实参考资料中的资料写的比我好,大家可以看一下!好东西多分享!PRML的第11章也是sampling,有时间后面写到P ...
- 机器学习方法(八):随机采样方法整理(MCMC、Gibbs Sampling等)
转载请注明出处:Bin的专栏,http://blog.csdn.net/xbinworld 本文是对参考资料中多篇关于sampling的内容进行总结+搬运,方便以后自己翻阅.其实参考资料中的资料写的比 ...
- 随机采样方法整理与讲解(Acceptance-Rejection、MCMC、Gibbs Sampling等)
本文是对参考资料中多篇关于sampling的内容进行总结+搬运,方便以后自己翻阅.其实参考资料中的资料写的比我好,大家可以看一下!好东西多分享!PRML的第11章也是sampling,有时间后面写到P ...
- PRML读书会第十一章 Sampling Methods(MCMC, Markov Chain Monte Carlo,细致平稳条件,Metropolis-Hastings,Gibbs Sampling,Slice Sampling,Hamiltonian MCMC)
主讲人 网络上的尼采 (新浪微博: @Nietzsche_复杂网络机器学习) 网络上的尼采(813394698) 9:05:00 今天的主要内容:Markov Chain Monte Carlo,M ...
- 随机模拟MCMC和Gibbs Sampling
随机模拟 统计模拟中有一个重要的问题就是给定一个概率分布 p(x),我们如何在计算机中生成它的样本.一般而言均匀分布 Uniform(0,1)的样本是相对容易生成的. 通过线性同余发生器可以生成伪随机 ...
- 【转载】MCMC和Gibbs Sampling算法
转载随笔,原贴地址:MCMC和Gibbs Sampling算法 本文是整理网上的几篇博客和论文所得出来的,所有的原文连接都在文末. 在科学研究中,如何生成服从某个概率分布的样本是一个重要的问题.如果样 ...
- LDA-math-MCMC 和 Gibbs Sampling
http://cos.name/2013/01/lda-math-mcmc-and-gibbs-sampling/ 3.1 随机模拟 随机模拟(或者统计模拟)方法有一个很酷的别名是蒙特卡罗方法(Mon ...
- 随机采样和随机模拟:吉布斯采样Gibbs Sampling
http://blog.csdn.net/pipisorry/article/details/51373090 吉布斯采样算法详解 为什么要用吉布斯采样 通俗解释一下什么是sampling. samp ...
随机推荐
- 0014 标签显示模式:display(重点)
目标: 理解 标签的三种显示模式 三种显示模式的特点以及区别 理解三种显示模式的相互转化 应用 实现三种显示模式的相互转化 2.1 什么是标签显示模式 什么是标签的显示模式? 标签以什么方式进行显示, ...
- mysql 时间函数总结
1. 获取当前时间 select now(); // 2018-08-24 11:01:26 select unix_timestamp(); // 1535079695 总结:unix_ ...
- vue递归组件 (树形控件 )
首先我们要知道,既然是递归组件,那么一定要有一个结束的条件,否则就会使用组件循环引用,最终出现“max stack size exceeded”的错误,也就是栈溢出.那么,我们可以使用v-if=&qu ...
- $loj526\ [LibreOJ\ \beta\ Round\ \#4]$ 子集 图论
正解:图论 解题报告: 传送门$QwQ$ 发现最大团不好求,于是考虑求最大独立集.也就把所有$gcd(i,j)\cdot gcd(i+1,j+1)=1$的点之间连边,然后求最大独立集. 发现依然不可做 ...
- 小白学 Python 爬虫(32):异步请求库 AIOHTTP 基础入门
人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...
- ipaclient 4.5.4 requires jinja2, which is not installed. rtslib-fb 2.1.63 has requirement pyudev>=0.16.1, but you'll have pyudev 0.15 which is incompatible. ipapython 4.5.4 has requirement dnspython>=
- .Net Core - AgileHttp
2020年新年将至,先预祝.Net Core越来越好. 做了这么多年一线开发,经常跟Http打交道.比如调用三方的Webservice,比如集成微信支付的时候服务端发起Prepay支付.特别是现在分布 ...
- Netty快速入门(06)Netty介绍
前面简单的介绍了Java I/O 和NIO,写了示例程序. Java I/O是阻塞的,为了让它支持多个并发,就要针对每个链接启动线程,这种方式的结果就是在海量链接的情况下,会创建海量的线程,就算用线程 ...
- 【转】13个JavaScript图表(JS图表)图形绘制插件
现在网络上又有越来越多的免费的(JS 图表)JavaScript图表图形绘制插件.我之前给一家网站做过复杂的图形,我们用的是 highchart.在那段时间,没有很多可供选择的插件.但现在不同了,很容 ...
- 悄摸直播(二)—— 播流器实现(拉取rtmp服务器中的数据流,播放直播画面)
悄摸直播 -- JavaCV实现本机摄像头画面远程直播 播流器 一.功能说明 从rtmp服务器中获取视频流数据 + 展示直播画面 二.代码实现 /** * 播流器 * @param inputPath ...