1

我一直在运行一些相当昂贵的模型,而且老化时间很长。我想保存和恢复 AdaptiveMetropolis 步骤方法的状态(至少)以减少老化时间。有没有推荐的方法来做到这一点,或者我应该只是腌制dict 并在我想重新启动时step_method.current_state()尝试从腌制数据中更新step_method.C,和其他人?step_method.proposal_sd

(来自已弃用的 Google Group 论坛的交叉帖子:https ://groups.google.com/forum/#!topic/pymc/6U72WuuXmMo )

4

1 回答 1

1

您是否尝试过使用save_stateandrestore_sampler_state方法?它们应该适用于任何非s​​qlite 后端(例如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}}
于 2013-06-11T16:16:31.853 回答