给定一个随机数生成器来生成具有概率密度函数的随机变量,如何生成具有概率密度函数
如何从已知密度的随机变量中生成随机变量?
机器算法验证
分布
随机生成
2022-03-28 18:33:14
1个回答
如果您知道两者的 pdf 以及可以从中采样的分布,则包含您要采样的分布(或者可以通过将可能性乘以一些来做到这一点常量 ),您可以使用接受-拒绝算法。这种方法的要点如下:
- 从f(x)中绘制一个值
- 在那个 x 值处,形成一个比率,
- 从区间 (0,1) 上的均匀分布中绘制一个值
- 如果,则接受该并存储它
- 如果,则拒绝该并重新开始
- 继续,直到你有个已实现的值
请注意,接受-拒绝算法是出了名的缓慢,即使您最终接受了所有 x 值,每次抽奖也有几个额外的步骤。要优化这种方法的性能,请尝试选择尽可能接近(即,略高于) (x) ,以便您接受尽可能高的百分比。
其它你可能感兴趣的问题