这个问题来自贝叶斯统计建模项目。为了使用我的模型进行计算,我需要执行积分,其中被积函数的一部分是“Pólya”或“Dirichlet-Multinomial”分布,
在哪里和是整数,, 和. 我想计算的积分,, 适用于小型,但我尝试过的求积方法(在 MATLAB 中)分解为变大。我没试过蒙特卡洛;一个准确、快速的求积方法对我的项目来说非常好。
目前,“最好”的方法是大是计算在 alpha 的网格上,归一化和取幂。这是不准确的(我基本上失去了关于分布的所有细节,除了它的峰值),但至少产生了一个数字。
我将不胜感激有关改进此计算的任何建议,或指向不同算法/方法或现有软件的指针。
编辑:我也许应该补充一点,我对, 通过计算执行使用一些精心编写的代码来计算对于大, 似乎没有引起任何问题。
编辑2:此外,“大”值将是, 最大,以及许多小的值. 其他项在数值上表现良好。作为大致适当的尾部行为的简化,您可以采取