我是一个新手pymc用户,我编写了一个非常慢的 MCMC 代码,我想修改我的代码以加快速度。是否可以使用多处理来加快pymc的性能?例如,如果我有一个make_model
由一堆确定性、随机性和潜在类组成的函数,并且我有兴趣找到几个参数的后验。如果我的 MCMC 代码的结构如下:
def make_model(X):
.
.
return locals()
if __name__ == '__main__':
M = pm.MCMC(make_model(X)),db='pickle',dbname='NFWTracer.pickle')
M.use_step_method(pm.AdaptiveMetropolis, M.model_pars ,verbose=1)
M.isample(40000,8000,50)
当所有链都相关时,我如何使用多处理来决定参数空间中的下一步?如果可行,应该怎么做?