Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Serialization PyMC在采样后更改后端_Serialization_Pymc - Fatal编程技术网

Serialization PyMC在采样后更改后端

Serialization PyMC在采样后更改后端,serialization,pymc,Serialization,Pymc,我一直在使用PyMC分析一些高能物理数据。它已经工作到了完美的程度,分析已经完成,我们正在撰写论文 然而,我有一个小问题。我使用RAM数据库后端运行了采样器。这些痕迹在IPython内核进程的内存中已经存在了几个月了。问题是工作站支持人员希望执行内核升级并重新启动该工作站。这会使我失去踪迹。我想保留这些痕迹(而不是仅仅生成新的),因为它们是我制作所有情节的依据。我还想将一部分痕迹(仅感兴趣的参数)作为出版物的补充材料 是否可以在使用RAM后端创建的pymc.MCMC对象中获取现有链,更改为其他后

我一直在使用PyMC分析一些高能物理数据。它已经工作到了完美的程度,分析已经完成,我们正在撰写论文

然而,我有一个小问题。我使用
RAM
数据库后端运行了采样器。这些痕迹在IPython内核进程的内存中已经存在了几个月了。问题是工作站支持人员希望执行内核升级并重新启动该工作站。这会使我失去踪迹。我想保留这些痕迹(而不是仅仅生成新的),因为它们是我制作所有情节的依据。我还想将一部分痕迹(仅感兴趣的参数)作为出版物的补充材料


是否可以在使用
RAM
后端创建的
pymc.MCMC
对象中获取现有链,更改为其他后端,并写出链中的跟踪?

跟踪值存储为NumPy数组,因此可以使用
NumPy.savetxt
将每个参数的值发送到文件。(这就是文本后端在引擎盖下的作用。)


虽然保存当前跟踪是个好主意,但我建议在发布之前花点时间让您的分析可以重复。

谢谢。当然,分析是可以重复的,我只是不想在这一点上重新做一个通宵运行(再次)。而这些图已经按原样得到了合作组织的批准。如果他们改变了,即使这些改变是看不见的(他们会是看不见的),我也必须再次通过审批流程。因此,保存现有跟踪是可取的。在更一般的情况下,某些计算可能会禁止再次运行。也许你会收到CPU时间的账单。能够从这样的错误中挽救一次跑步是很好的。