您的位置:首页 > 理论基础

随机采样--MCMC

2017-03-10 10:59 141 查看

随机采样

随机模拟也可以叫做蒙特卡罗模拟(Monte Carlo Simulation)。这个方法的发展始于20世纪40年代,和原子弹制造的曼哈顿计划密切相关,当时的几个大牛,包括乌拉姆、冯.诺依曼、费米、费曼、Nicholas Metropolis, 在美国洛斯阿拉莫斯国家实验室研究裂变物质的中子连锁反应的时候,开始使用统计模拟的方法,并在最早的计算机上进行编程实现。[3]

随机模拟中有一个重要的问题就是给定一个概率分布 p ( x ) ,我们如何在计算机中生成它的样本。一般而言均匀分布 U n i f o r m ( 0 , 1 ) 的样本是相对容易生成的。 通过线性同余发生器可以生成伪随机数,我们用确定性算法生成 [ 0 , 1 ] 之间的伪随机数序列后,这些序列的各种统计指标和均匀分布 U n i f o r m ( 0 , 1 ) 的理论计算结果非常接近。这样的伪随机序列就有比较好的统计性质,可以被当成真实的随机数使用。

蒙特卡洛数值积分

如果我们要求f(x)的积分,如: ∫baf(x)dx

而f(x)的形式比较复杂积分不好求,则可以通过数值解法来求近似的结果。常用的方法是蒙特卡洛积分:∫baf(x)q(x)q(x)dx

这样把q(x)看做是x在区间[a,b]内的概率分布,而把前面的分数部门看做一个函数,然后在q(x)下抽取n个样本,当n足够大时,可以用采用均值来近似: 1n∑if(xi)q(xi)

因此只要q(x)比较容易采到数据样本就行了。随机模拟方法的核心就是如何对一个概率分布得到样本,即抽样(sampling)。下面我们将介绍常用的抽样方法。

Monte Carlo 抽样计算随即变量的期望值是接下来内容的重点:X 表示随即变量,服从概率分布 p(x), 那么要计算 f(x) 的期望,只需要我们不停从 p(x) 中抽样xi,然后对这些f(xi)取平均即可近似f(x)的期望。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息