蒙特卡洛求定积分

                   
               

蒙特卡洛(Monte Carlo)法是一类随机算法的统称。随着二十世纪电子计算机的出现,蒙特卡洛法已经在诸多领域展现出了超强的能力。在机器学习和自然语言处理技术中,常常被用到的MCMC也是由此发展而来。本文通过蒙特卡洛法最为常见的一种应用——求解定积分,来演示这类算法的核心思想。

欢迎关注白马负金羁的CSDN博客 http://blog.csdn.net/baimafujinji,为保证公式、图表得以正确显示,强烈建议你从该地址上查看原版博文。本博客主要关注方向包括:数字图像处理、算法设计与分析、数据结构、机器学习、数据挖掘、统计分析方法、自然语言处理。


无意识统计学家法则(Law of the unconscious statistician)

这是本文后续会用到的一个定理。作为一个预备知识,我们首先来介绍一下它。先来看一下维基百科上给出的解释。
In probability theory and statistics, the law of the unconscious statistician (sometimes abbreviated LOTUS) is a theorem used to calculate the 期望值 of a function g(X).

  • If it is a discrete distribution and one knows its PMF function ƒX

LOTUS到底表达了一件什么事呢?它的意思是:已知随机变量X的数学期望。LOTUS的公式如下:

  • X

其实就是在计算期望时,用已知的X的PDF(或PMF)。


蒙特卡洛求定积分(一):投点法

这个方法也常常被用来求π


注意由蒙特卡洛法得出的值并不是一个精确之,而是一个近似值。而且当投点的数量越来越大时,这个近似值也越接近真实值。


蒙特卡洛求定积分(二):期望法

下面我们来重点介绍一下利用蒙特卡洛法求定积分的第二种方法——期望法,有时也成为平均值法。

任取一组相互独立、同分布的随机变量{Xi}的近似值。

假设要计算的积分有如下形式

,使其满足下列条件:

如果记


因而求积分的步骤是:

  1. 产生服从分布律

如果
具体步骤如下:

  1. 产生

平均值法的直观解释

下面是来自参考文献【1】的一个例子。注意积分的几何意义就是[a,b]区间内曲线下方的面积。



当我们在[a,b]之间随机取一点 就是均匀分布的PMF。这跟我们之前推导出来的蒙特卡洛积分公式是一致的。


参考文献

【1】http://www.scratchapixel.com/lessons/mathematics-physics-for-computer-graphics/monte-carlo-methods-in-practice/monte-carlo-integration

                                                               
                   
               

蒙特卡洛(Monte Carlo)法是一类随机算法的统称。随着二十世纪电子计算机的出现,蒙特卡洛法已经在诸多领域展现出了超强的能力。在机器学习和自然语言处理技术中,常常被用到的MCMC也是由此发展而来。本文通过蒙特卡洛法最为常见的一种应用——求解定积分,来演示这类算法的核心思想。

猜你喜欢

转载自blog.csdn.net/zhangzhihuino1/article/details/85763589