我刚刚启动了一个项目,该项目需要通过哈密顿量蒙特卡罗方法从高维度(目前为〜10 ^ 3维,但应该为〜10 ^ 6)和高度非高斯后验分布中进行采样(HMC)采样器。在我的特定情况下,可以通过分析来计算电势的梯度,并且可以粗略地近似质量矩阵。据我了解,大多数概率编程包(例如stan,tf.probability,edward,pymcx等)都使用某种数值/随机梯度计算/逼近方法,这可能会更耗时,并且效率较低。收敛。
现在,我在this伪代码中有一个非常幼稚的python实现,这对于高维计算是很慢的。您是否知道该算法是否有任何提高性能的修改,或者是否已经有好的快速采样器明确考虑了这些分析结果?