如何保存/恢复AdaptiveMetropolis步骤方法状态?

时间:2013-06-10 14:51:42

标签: python numpy pymc

我一直在运行一些相当昂贵的模型,并且耗时很长。我想保存&amp;恢复AdaptiveMetropolis步骤方法的状态(至少)以减少老化时间。是否有建议的方法来执行此操作,或者我应该只是挑选step_method.current_state() dict并尝试更新step_method.Cstep_method.proposal_sd,以及在我想重新启动时更新其他来自pickle数据?< / p>

(已弃用的Google论坛论坛:https://groups.google.com/forum/#!topic/pymc/6U72WuuXmMo

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用save_staterestore_sampler_state方法?它们应该与任何非sqlite后端(例如pickle,txt)一起使用。前者应将采样器信息保存到数据库中;这是一个例子:

    {'stochastics': {'alpha': array([-0.20073951]), 'beta': array([ 2.77634734])}, 'step_methods': {'AdaptiveMetropolis_beta_alpha': {'C': array([[ 41.28628017,   2.79567393],
       [  2.79567393,   1.8832875 ]]), '_trace': [array([ 10.4010084 ,   1.48321645]), ... [ 0.43509455,  1.30152996]]), 
       'accepted': 69.0, 'shrink_if_necessary': False}}, 
       'sampler': {'status': 'ready', '_iter': 2000, '_tune_interval': 1000, '_tuned_count': 0, '_tune_throughout': True, '_burn_till_tuned': False, '_current_iter': 2000, '_burn': 0, '_thin': 1}}