漫谈MCMC与Gibbs采样(一)—— 采样背后的逻辑

采样背后的逻辑

我们为什么需要采样

我们先来思考一个最基本的问题,我们为什么需要采样?之所以讨论这一点,是因为深刻理解我们要解决的问题,可以帮助我们更好地掌握解决问题的方法。尤其是当我们在复杂的模型中进行应用时,不至于在眼花缭乱的计算中迷失方向。我们就用下面这个瞎编的例子,来开始讨论。

有一天你的航班紧急迫降在一个小岛上,你走进了一间赌场打算消磨几个小时的时间,那么与单局游戏的输赢相比,其实你更关心的是你几个小时之后能否赢钱离开,换句话说,你想知道收益的期望是多少。

这个赌场里只有一个游戏,规则也非常简单,你和赌场老板坐在窗边观察路过的行人,假设下一个路过赌场的行人的身高是Xcm,如果X>168,那么你能赢(X-168)元,否则你输给老板(168-X)元。你稍作思索,脑海中浮现出了以下过程: 我知道人的身高大致服从正态分布,均值是170cm,标准差是10cm,那么收益Y的期望就是:
E Y = ∫ ( x − 168 ) N ( 170 , 1 0 2 ) d x \mathbb EY = \int (x-168)N(170, 10^2)dx EY=(x168)N(170,102)dx

虽然你无法口算出均值具体是多少,但是你知道均值一定大于零,你露出了胜利者的微笑,决定接受这个无聊的赌局。

一个小时之后,你看着自己手里的钱越来越少,老板的钱包越来越鼓,而且窗外经常经过一些身高不足半米的人,眉头一皱,发现事情并不简单。这时候老板看穿了你的心思,他告诉你,这个村子风水奇特,居民骨骼惊奇,所以身高并不服从正态分布,而是服从 f ( x ) = ( 200 − x ) x / 50 + x ( 200 − x ) / 50 + e 8 s i n ( 0.2 x ) ∫ 0 200 [ ( 200 − x ) x / 50 + x ( 200 − x ) / 50 + e 8 s i n ( 0.2 x ) ] d x , x ∈ [ 0 , 200 ] f(x) = \frac{(200-x)^{x/50} + x^{(200-x)/50} + e^{8sin(0.2x)}}{\int_0^{200}[(200-x)^{x/50} + x^{(200-x)/50} + e^{8sin(0.2x)}]dx}, x \in [0, 200] f(x)=0200[(200x)x/50+x(200x)/50+e8sin(0.2x)]dx(200x)x/50+x(200x)/50+e8sin(0.2x),x[0,200]
于是你的问题变成了计算 E Y = ∫ 0 200 ( x − 168 ) ( 200 − x ) x / 50 + x ( 200 − x ) / 50 + e 8 s i n ( 0.2 x ) ∫ 0 200 [ ( 200 − x ) x / 50 + x ( 200 − x ) / 50 + e 8 s i n ( 0.2 x ) ] d x d x \mathbb EY = \int_0^{200}(x-168)\frac{(200-x)^{x/50} + x^{(200-x)/50} + e^{8sin(0.2x)}}{\int_0^{200}[(200-x)^{x/50} + x^{(200-x)/50} + e^{8sin(0.2x)}]dx}dx EY=0200(x168)0200[(200x)x/50+x(200x)/50+e8sin(0.2x)]dx(200x)x/50+x(200x)/50+e8sin(0.2x)dx

这个分布画出来大概就是这个样子:
\qquad \qquad \qquad \qquad \qquad \qquad 在这里插入图片描述
这一刻,牛顿都不愿与你一起战斗,你起身向老板说了告辞。(这个分布是我随手瞎写的,大家不要纠结它是否严谨,但是它确实是一个概率分布,因为积分等于1)

回去之后,你开始思索这个问题。想要这个东西的均值,直接求积分似乎不太现实,然而你的概率论老师曾经告诉你,如果你可以从分布 f ( x ) f(x) f(x)中获得一组样本 x 1 , x 2 , . . . , x N {x_1, x_2, ..., x_N} x1,x2,...,xN,那么应该有 E Y ≈ ( x 1 − 168 ) + ( x 2 − 168 ) + . . . + ( x N − 168 ) N \mathbb EY \approx \frac{(x_1 - 168) + (x_2 -168) + ... + (x_N - 168)}{N} EYN(x1168)+(x2168)+...+(xN168)

那么现在剩下的问题就是,如何从 f ( x ) f(x) f(x)中获得一组样本。一个简单的办法是蹲在赌场的门口,抓一些人并给他们量身高,但是你并没有把握搞定这些骨骼惊奇的岛民。你转而思考,既然你已经知道了岛民身高的精确分布,那么有没有什么方法可以直接生成一组样本呢?这个问题我们用剩下的部分慢慢来谈,在此之前,我们先回顾一下这一节最开始的问题——我们为什么需要采样。大部分情况下,我们之所以要从某个指定的分布中采样,并不是我们对样本自身感兴趣,而是在我们无法精确地计算基于该分布的积分时,利用该分布产生的样本对积分去进行近似的估算。而在概率密度函数 f ( x ) f(x) f(x)下对另一个函数 g ( x ) g(x) g(x)求积分,等同于求随机变量 g ( X ) g(X) g(X)的期望。 换句话说,我们对这个村的村民长多高并不感兴趣,我们感兴趣的是能不能从赌场中赢钱。 我们把这个结论用数学形式表示出来: 设随机变量 X X X的密度函数是 f ( x ) f(x)

  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值