MCMC采样理论的一点知识

看了好多相关的知识,大致了解了一下马尔可夫链-蒙特卡罗采样理论,有必要记来下来。

蒙特卡罗积分:(来自:http://blog.csdn.net/itplus/article/details/19168937

下面的写的很让人明白:好好理解一下,第一次感觉到积分与统计学的联系。

利用蒙特卡罗方法求积分的重点就是怎么如何采样指定的分布。。。。简单的分布如均匀分布我们有方法可以采样,但是复复杂的分布呢?如高斯分布呢?你怎么办??

这是就利用马尔可夫链的性质进行采样。

一些马尔可夫链的相关知识

在学习随机过程中,我们已经学习到了马尔可夫链的平稳性质。下面列举一下它的我们需要用到的性质(参考:叶钫. 马尔可夫链蒙特卡罗方法及其R实现[D]. 南京大学, 2014.)

平稳性的性质:

细致平衡性方程,很重要的。

这个等式,也可以这么理解,当进入稳定性的分布以后呢,从状态 i 传到状态 j 的能量与从状态 j 传递到状态 i 的能量是相同的。因为他们是平稳分布。

所以呢,现在的问题就是:我们想要按一定的 目标概率分布 进行采样,我们如何用马尔可夫链进行呢??

方法就是:构造一个马尔可夫链的稳态分布就是我们的 目标概率分布 , 谁决定了最后的稳态分布的概率呢??   转移概率!!!!!所以呢,关键就是怎么构造转移概率。(一开始的时候,我老是想马尔可夫模型的状态如何确定呢?只有确定了状态才能求构造转移概率吧。。。。一直想不明白的。。。。。。现在觉得 这个问题不用先想,后面自然而然地就出来了)

我们构造转移概率的依据就是细致平衡条件;

一, 最基本的Metropolis采样算法

不多说明,因为,它其实就是Metropolis-Hastings算法的殊形式,即要求使用的状态提议分布函数为对称的,即:

此时的状态的接受函数也跟着变化了。变简单了。。

所以呢,直接看Metropolis-Hastings算法就好了。

二, Metropolis-Hastings算法

http://cos.name/2013/01/lda-math-mcmc-and-gibbs-sampling/ 已经给出了很好的介绍。这里我自己再手写一遍。

对于证明这样的转移概率满足细致平衡条件,就没有必要了,因为上面的推导过程就是在细致平衡条件上推导出来的。

最终的采样算法:

三, Gibbs 采样(吉布斯采样)

大家都说:Gibbs 采样也是Metropolis-Hastings算法的一种特殊的形式,怎么特殊呢?就是接受概率为1了。

我觉得呢,是找到了一个公式,一个什么公式呢?就是一个满足细致平衡条件的公式。

假如,二维的情况下,我们的目标采样分布函数表示为 P(x, y), 这时呢:有以下公式成立:

这么看, 公式4是不是满足细致平衡条件呢,对吧。。 只不过,两个状态的转移限定同一维坐标轴上进行的。

所以呢,只要我们把目标的采样分布函数的条件概率作为马尔可夫链的转移概率的话,转移一定的次数以后,最终的马尔可夫链的最终的状态分布就符合 我们的目标采样的分布函数。

二维的Gibbs采样算法:

n维的Gibbs采样算法:

参考:

http://www.cnblogs.com/xbinworld/p/4266146.html      随机采样方法整理与讲解(MCMC、Gibbs Sampling等)

http://blog.csdn.net/itplus/article/details/19168937     受限玻尔兹曼机(RBM)学习笔记(一)预备知识

http://blog.csdn.net/google19890102/article/details/51785156   简单易学的机器学习算法——Metropolis-Hastings算法

http://blog.csdn.net/google19890102/article/details/51755242    简单易学的机器学习算法——马尔可夫链蒙特卡罗方法MCMC

http://blog.csdn.net/google19890102/article/details/51755245    简单易学的机器学习算法——Gibbs采样

时间: 2024-11-03 22:45:06

MCMC采样理论的一点知识的相关文章

MCMC(三)MCMC采样和M-H采样

MCMC(一)蒙特卡罗方法 MCMC(二)马尔科夫链 MCMC(三)MCMC采样和M-H采样 MCMC(四)Gibbs采样(待填坑) 在MCMC(二)马尔科夫链中我们讲到给定一个概率平稳分布$\pi$, 很难直接找到对应的马尔科夫链状态转移矩阵$P$.而只要解决这个问题,我们就可以找到一种通用的概率分布采样方法,进而用于蒙特卡罗模拟.本篇我们就讨论解决这个问题的办法:MCMC采样和它的易用版M-H采样. 1. 马尔科夫链的细致平稳条件 在解决从平稳分布$\pi$, 找到对应的马尔科夫链状态转移矩

复习Oracle中的一点知识

Oracle 10g Oracle是为网格计算而设计的 10g中的g就是指grid computing Oracle将数据存储在文件中,保存不同信息的文件(数据文件,控制文件,日志文件)就组成了数据库的物理结构 逻辑结构:schema, extent, data block, segment Schema 数据库对象的集合,创建用户时会生成一个与用户同名的Schema,Schema 直接处理data的逻辑结构(table, view, index, clusters) View -- 虚拟的,可

MCMC采样法 & 受限玻尔兹曼机

受限玻尔兹曼机(RBM)学习笔记 1)这篇文章中有一部分把MCMC采样法讲的比较形象. 2)RBM,个人感觉是一种通过神经网络来表示概率图模型的方法,或者说通过神经网络来表示观察到的样本发生概率的方法.而与神经网络的主要不同之处在于使用了能量函数作为目标函数.

关于移动支付的一点知识

移动支付,一直在使用,觉得自己天天在用啦,怎么可能不知道是什么呢?然而,今天无聊看了本书,觉得还是有些能写的,虽然简单,也算我的学习笔记吧,花了时间看书,总得留下点什么吧,不然,就是白看了,书没有白看的,就算是烂人写的书,也能看出一些感悟(比如,作者怎么可以烂成这样,他是如何炼成的,). 注意:对于移动支付安全,公共场合的无wifi密码的网络,除非你确认可靠,否则尽量不要使用,大家应该不在乎这点时间和金钱,非得在不安全的网络环境上网吧.   移动支付的定义:交易双方为了某种货物或者服务,使用移动

TMS320F2812上电过程分析和CMD文件一点知识

一.上电过程引自:http://bbs.eeworld.com.cn/thread-262789-1-1.html1:上电运行时根据MP/MC引脚的状态决定是从片外的3fffc0处读取复位向量或者时从片内的rom的3fffc0处读取 复位向量.MC方式下从片内读取,MP方式下从片外读取.2:一般我们用的是MC方式,即从片内读取复位向量,在片内的rom 3fffc0处有一个地址为3ffc00.3:复位后处理器从3fffc0处读取3ffc00这个地址,所以程序从3ffc00处开始执行4:3ffc00

开发人员应该对IIS理论层的知识了解的多一些~第四讲 HttpModel中的几大事件

返回目录 本文主要介绍HttpModule,它在一个网页请求过程中是一个怎样的过程是我们要知道的,在网页加载过程中HttpModule在何时被执行也是我们要知道的,以及,HttpModule在网页请求过程中,所被触发的各个事件也是我们要知道的,下面就带着问题来看文章吧 ASP.NET对请求处理的过程 当请求一个*.aspx文件的时候,这个请求会被inetinfo.exe进程截获,它判断文件的后缀(aspx)之后,将这个请求转交给 ASPNET_ISAPI.dll(否则交给对应的应用程序去解释它)

程序员为什么要加班-每多学一点知识,就能少写几行代码

前言: 在互联网行业工作过的,肯定都听过"加班汪"这个词.而对于一个开发人员来说,加班的概率比普通工作要更多,加班是互联网行业永远的痛,项目节点定下来后,为保证项目节奏,程序员们基本上陷入天昏地暗永无止境地加班中. 作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要这是一个我的iOS交流二群:131915142(一群已满),不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题.面试经验,讨论技术, 大家一起交流学习成长! 首先,假设这个程序员是一位职场新手甲.他刚大学毕业,没有工

每多学一点知识,就少写一行代码

这一个月看书不少,买了4本,已经看完了2本,剩下的2本计划2周内看完,2周内看完也太慢了,还有不少书等着我看, 以后相当长一段时期内,给自己看书的要求是必须2周内看完一本书,每月2本书,每年24本书. 看书的收获太大,其收获远远不是仅仅靠糟糕的实践所能比拟的,实践一年,看起来有经验了,实际上水平可能还在原地打转,甚至入门水平.

makefile中的一点知识

makefile文件中下面这一部分展开是什么样的呢? ... mytarget=foo  $(mytarget): $(mytarget).c        gcc -o $(mytarget) $(mytarget).c mytarget=bar ... 展开是: ... mytarget=foo foo: foo.c        gcc -o bar bar.c mytarget=bar ...