随机变量采样

背景

概率图模型通常很复杂,难以精确求解。随机模拟等近似算法是处理复杂概率图模型的一种有效手段。许多近似算法的一个关键步骤是生成符合特定分布的样本。对于一些标准的概率分布(如均匀分布、正太分布、指数分布等),通常容易进行采样(例如Matlab 的 Statistics Toolbox 支持许多标准的概率分布)。但是对于复杂的概率分布,很难直接进行采样,因此,我们需要借助其他的手段。

在贝叶斯方法中,我们常需要根据观察到的数据集合 D ,估计模型参数 θ 的后验概率分布 p(θ|D) 。根据贝叶斯规则:

p(θ|D)=p(D|θ)p(θ)p(D)
其中 p(D)=θp(D|θ)p(θ) dθ 为归一化常数,常常难以计算(函数形式复杂,高维)。

我们下面的讨论将考虑从概率分布 p(z) 中采样, p(z) 可能是未归一化的,即有如下形式:

p(z)=1Zpp~(z)
其中 p~(z) 可以很容易地计算出来,但是 Zp 未知。

下面将介绍两种针对复杂概率分布的采样方法:接受-拒绝采样、重要性采样。

接受-拒绝采样(accept-rejct sampling)

接受-拒绝采样基于这样一个前提: 对一个随机变量取样, 等价于从这个变量所服从的密度函数下方的区域均匀取样。当然, 取样的结果是变量值,如果是一元变量, 取样后得到的是一元变量的值。

accept-rejct sampling

上图显示了采样的过程。我们需要生成符合概率分布 p(z) 的样本。 q(z) 表示选择的建议分布(proposal distribution)。建议分布应选择简单的分布(如正态分布),目的是容易直接进行采样。整个计算过程可以概括如下:

  1. 选择一个易于采样的建议分布 q(z)
  2. 寻找一个常数 k ,使 <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值