我们如何从几何混合物中进行模拟?

机器算法验证 模拟 蒙特卡洛 几何平均数 可扩展性 有限混合模型
2022-01-24 04:10:04

如果f1,,fk是我可以模拟的已知密度,即可以使用算法。如果产品

i=1kfi(x)αiα1,,αk>0
是可积的,是否有一种通用的方法来模拟这个产品密度,使用来自fi的?

1个回答

好吧,当然有接受-拒绝算法,我将为您的示例实现该算法:

  1. (初始化)对于每个i, 寻找Ai=supx{Πj=1kfj(x)αj/fi(x)}. 编辑反映西安的评论如下:选择分布fi对应于最小的Ai.
  2. 产生xfi.
  3. 计算α=Πi=jkfj(x)αj/(Aifi(x)).
  4. 产生uU(0,1).
  5. 如果uα, 返回x, 否则转到 2。

当然,根据分布,您的接受率可能非常低。碰巧的是,预期的迭代次数等于选定的Ai(假设连续分布),所以至少提前警告你。