问题标签 [pymc]
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.
pymc - Python 中的 N 混合模型
我是 Python 新手,无法将我用 R 编写的模型翻译成 Python 语言。如果有人对可能有帮助的资源或代码示例有任何建议,我将不胜感激。我已经在帮助文件等中看到了一些代码和文本片段,但是对于 Python 新手来说,没有一个是完全注释或足够具体的。以下模型是仿照 Royle (2004) 建模的 N 混合丰度模型:用于从空间复制计数估计种群大小的 N 混合模型。基本上它描述了一个泊松/二项式混合模型,其中 Z_i 是湿地水平的丰度,并被视为具有泊松分布的随机变量。在站点 i 和访问 j 期间观察到的育雏丰度 (yij) 遵循指数参数 Z_i 和成功参数 p_ij 的二项式分布。
提前感谢您的任何帮助/建议
python - 将高斯混合转换为 PyMC3
我正在尝试学习 PyMC3,我想做一个简单的高斯混合示例。我找到了这个示例并想将其转换为 pymc3,但我目前在尝试绘制跟踪图时遇到错误。
错误:
python - PyMC3 中的正弦回归
我正在通过回归示例探索 PyMC3。我从一条直线开始,然后转到二次曲线,效果很好。当我尝试移动到其中包含随机变量的正弦函数时,尽管事情变糟了。
这是我的 PyMC3 代码:
我收到此错误:
提前致谢!
python - 高斯混合在 pyMC3 中不收敛
我混合了 3 个高斯,但无论我如何调整先验,我都无法获得后验平均值来从它们的先验值移动..
输出:
如您所见,没有收敛,并且均值不会偏离其初始值
python - PyMC3 中的简单动态模型
我试图在 PyMC3 中组合一个动态系统模型,以推断两个参数。该模型是基本的 SIR,常用于流行病学:
dS/dt = - r0 * g * S * I
dI/dt = g * I (r * S - 1 )
其中 r0 和 g 是要推断的参数。到目前为止,我根本无法走得很远。我见过的将这样的马尔可夫链组合在一起的唯一示例会产生关于递归太深的错误。这是我的示例代码。
任何帮助将非常感激。谢谢 !
pymc - 使用数组调用时 laplace_like pymc2 中的错误
你好 PyMC 开发人员,
该功能似乎存在错误laplace_like
。它现在返回:
但是什么时候x
是一个数组(实际上总是如此),它应该返回
简单的测试用例:
这也证实了与的laplace.nnlf
比较scipy.stats
python - 当涉及离散变量时,pymc3 与 pymc2 的困难
我正在更新一些我使用 pymc2 到 pymc3 的计算,当我的模型上有一些离散随机变量时,我遇到了采样器行为的一些问题。例如,考虑使用 pymc2 的以下模型:
它并不能真正代表任何东西,它只是一个模型,其中一个未观察到的变量是离散的。当我使用 pymc2 对该模型进行采样时,我得到以下结果:
但是当我对 PYMC3 进行同样的尝试时,我得到了这个:
看起来变量 A 根本没有被采样。我没有阅读太多关于 pymc3 中使用的采样方法的内容,但我注意到它似乎特别针对连续模型。这是否意味着它排除了模型上离散的未观察到的变量,或者有什么方法可以做我想做的事情?
covariance - PyMC - 协方差估计的愿望分布
我需要根据资产类别收益建模和估计方差-协方差矩阵,因此我查看了https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for第 6 章中给出的股票收益示例-黑客
这是我的简单实现,我从使用具有已知均值和方差-协方差矩阵的多元法线的样本开始。然后我尝试使用非信息性先验来估计它。
估计与已知的先验不同,所以我不确定我的实现是否正确。如果有人能指出我做错了什么,我将不胜感激?
pymc - 用于模型平均的 PyMC
我有兴趣将 PyMC 应用于模型平均。我的目标是估计许多线性模型和它们的平均估计值,并通过它们的后验模型概率加权。我目前正在使用贝叶斯信息准则 (BIC) 来近似我的数据的可能性(因此,我的分析不完全是贝叶斯)。我已经使用我自己的一个脚本成功地模拟了一个马尔可夫模型链,但我想使用 PyMC,因为它看起来是一个很棒的工具。
到目前为止,在我的尝试中,我并没有正确地形成马尔可夫链。我不会比其他人更频繁地访问具有更高后权重的模型。我将包括下面的示例代码。另请参阅此处的 IPython 笔记本!在 github 上将数学标记和代码放在一起。
python - PYMC - 95% 的可信区间
(nb。刚刚在 google 群组上发布了这个,但它说它现在已被弃用)
我有一些代码可以将大约 12 个模型参数拟合到一系列数据集。pymc 代码的结果看起来很好,并且与我使用 lmfit 包的相同版本的代码一致,即非线性最小二乘法。我确实担心的一个问题是 95% 的可信区间在我看来是很小的,这对我来说表明某处存在错误。来自其他拟合脚本的标准误差在大小上是合理的,并且函数足够复杂,以至于不太可能出现这种独特的最小值。这可能是我如何采样数据的结果吗?我正在执行 100,000 次迭代,燃烧 50,000 次,然后细化 10 倍。
我的代码是:
https://github.com/mdekauwe/FitFarquharModel/blob/master/fit_farquhar_model/fit_dummy_pymc.py
如果有帮助,我可以尝试上传示例驱动文件,但也许我做了一些明显愚蠢的事情?
当我说微小时,这里是一个例子:
[lmfit] Vcmax25_1 = 16.55232485 +/- 1.22831709 (Std.err)
[pymc] Vcmax25_1 = 19.5718912 [19.57150052, 19.57232205] (95% HPD)
非常感谢,
马丁
附言。如果有人想测试它,我已经添加了一个示例文件。该脚本的底部有必要的链接......(当然需要从示例目录下载文件)
我的猜测是采样器必须卡住,所以我会尝试更详细地查看痕迹。