使用重要性抽样和蒙特卡罗来估计总和

机器算法验证 模拟 蒙特卡洛 数值积分 重要性抽样
2022-04-11 19:47:08

也许我的问题非常基本和愚蠢。我正在学习计算机科学。在一个问题中,我必须使用蒙特卡洛方法和重要性抽样来估计一大笔钱。我见过可能相同的蒙特卡洛积分,但我很困惑。

我所要做的就是找到一种方法来近似这个总和:

A=c=1Ca(c) ,
其中 C 是一个非常大的数字。

在重要性抽样的情况下,我可以理解,给定一个分布q,

A=c=1Ca(c)qq=Eq[a(c)q]
然后我们将其近似为:
A1Ss=1Sa(s)q(s)
那是对的吗?我怎么能使用简单的蒙特卡洛?

1个回答

如前所述,您的问题并不完全有意义:如果您只对

A=c=1Ca(c)
而如果C太大而无法完成计算,则表示A作为一个期望
A=E[A(X)]
可以是一种近似的方法A通过蒙特卡洛近似:根据大数定律,生成样本X1,,Xn从与期望相关的分布E[A(X)]导致收敛(在n) 估计器
A^n=1ni=1nA(Xi)]
蒙特卡洛近似的关键概念是所述分布几乎是任意的。一个幼稚的解决方案是看A作为期望Ca()反对统一分布{1,,C}. 但几乎任何其他选择都是可以接受的,因为给定概率分布q()处处积极{1,,C}, 身份
A=Eq[A(X)/q(X)]
站立。这意味着从q,即产生一个样本 X1,,Xn分布于q, 近似值
A^n=1ni=1nA(Xi)]/q(Xi)
也是一个收敛的(在n) 估计器。的选择q问题:越接近q|a|,近似值越好。