问题标签 [emcee]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 有没有办法在 Python 的池中并行化一个函数?
我正在尝试使用该multiprocessing
模块在池中并行化一个函数,但我遇到了错误:
守护进程不允许有子进程
更具体地说,我正在使用使用模块进行并行emcee
化的multiprocessing
模块,并且我想并行化我的后验函数以加快计算速度。在这种情况下,有没有办法在 main 中并行化一个函数Pool
?
编辑(添加代码):
python-3.8 - 使用 GetDist 获得的 68% HPD 区域的两个限制均低于平均值
我正在使用 GetDist 获取 emcee 链的 sigma 区域限制,但是使用 getLatex 或 getMrgeStats 时存在差异,如下图所示
我得到的结果是这个
但是 68% 区域的两个限制都低于 v200 参数给出的平均值,我想知道是否有办法解决给出的警告,即这是否与链本身更相关。
python - 在 SBATCH / SLURM 中使用 ptemcee(Monte Carlo 包)运行 python 脚本
我需要使用sbatch / slurm运行 python 脚本该脚本一直工作到它必须使用ptemcee的步骤(即运行 monte carlo markov 链)。在这一步中,什么也没有发生(好像脚本陷入了无限循环)。我知道脚本中没有错误,因为当我从 slurm 中运行它时,它可以正常工作。有人知道我应该怎么做才能在 sbatch / slurm 中运行 ptemcee(或 emcee)?
python - 即使是很小的步骤,MCMC 代码也很慢
我对 Python 有疑问。我的问题不是关于编写代码的任何问题。我有一个脚本,以前曾多次用于我的计算和发表的论文。它是 MCMC 或 Markov Chain Montecarlo(EMCEE python 包)。为此,我们应该选择步数。当我将其设置为 500 步时,我的代码运行良好,7 分钟后打印结果。但是,当我将其步数设置为 1000 或更多时,即使 4 小时后它也不会打印结果。而且应该认为1000步不是很大。我之前使用此代码使用了 90000 步。
我使用的是 Windows 8.1,而不是 Linux。可能是我的 Windows 或其他任何问题吗?我真的需要再次运行我的脚本。
谢谢
python - 对 4 个独立函数的乘积进行采样,其中两个函数是恒定的 - 与 emcee
我需要从以下函数中采样:
其中 p1 和 p2 是具有相同 sigma 但均值不同的高斯函数。但是 p3 和 p4 都等于 1/(2*(pi)),都是常数函数。
p3 和 p4 在区间 -pi 到 pi 中定义。
在输出中,我需要组成 p 的 p1、p2、p3 和 p4 中的四个变量。但是,如果函数是常数,我如何对 p3 和 p4 的变量进行采样呢?
我能够使用下面代码中的 emcee Python 包从 p = p1 * p2 中采样。
所以 p 如上面代码中定义的那样,我没有费心对其进行规范化,因为 mcmc 不需要它。但是我找不到一种方法来从中采样变量 x[2] 和 x[3],并在它们的值中设置应该是 -pi 到 pi 的界限。
我怎样才能做到这一点?
python - emcee.EnsembleSampler - 循环的构造
我的 MCMC 脚本中有这个命令,它给出了位置、概率和状态。如何重写此命令以循环以连续获取值并将它们保存到文件(而不是我可以看到当前结果)而不是整个列表,好吗?