问题标签 [pystan]

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.

0 投票
2 回答
1364 浏览

python - 一个漂亮的 pystan 轨迹图,用于 stan 矢量参数

我正在 Stan 中进行多元回归。

我想要回归量/设计矩阵的 beta 向量参数的轨迹图。

当我执行以下操作时:

我得到一个非常可怕的图像:

矢量参数的可怕轨迹图

我追求的是对用户更友好的东西。我设法破解了以下更接近我所追求的东西。

矢量参数的更好的示踪图

我的 hack 插入到 pystan 的后面,如下所示。

我的问题——我肯定错过了一些东西——但是有没有一种更简单的方法可以从 pystan 获得我所追求的向量参数输出?

0 投票
4 回答
5731 浏览

python - PyStan: CompileError: command 'gcc' failed with exit status 1 (macos)

这是我正在尝试运行的 PyStan 模型。但是,一旦我尝试运行它,就会遇到以下错误:

CompileError:命令“gcc”失败,退出状态为 1

知道如何在 macOS 上修复此错误吗?

0 投票
2 回答
4154 浏览

python - 如何修复通过 pip install 安装 pystan 时弹出的这个错误?

这是我在 Windows 命令提示符中输入的内容:

这是我的输出:

谢谢!

0 投票
0 回答
46 浏览

stan - Estimating the posterior of a parameter vector which is only observed after linear transformation

I have a known matrix M (square of dimension D) and a parameter vector v (of length D) which is unknown to me and whose posterior distribution I am trying to estimate. My prior on v is that each of its components is standard normal.

For example, let's say that M looks like this:

#xA;

My observed data is a of the form R * M * v where R is a "reduction" (non-square) matrix that effectively only allows me to observe some of the components of M * v. For example, R might look like this (keeping the first and second components of M * v):

#xA;

What's the right way to set up a problem like this in STAN?

0 投票
0 回答
509 浏览

python - 代码在 Spyder 中逐行运行,但不是在整个脚本运行时

我已经安装了 pystan 并正在尝试验证安装是否正常工作。

当我转到 Spyder 中的 IPython 控制台并逐行运行以下代码时,它会生成正确的答案。

线路调用pystan.StanModel大约需要 30 秒,而其他线路立即执行。最后我得到了正确的结果(大约为 0,例如 0.01 或 -0.01)。

但是,当我在 Spyder 中将代码作为单个脚本运行时,它不起作用,而是控制台永远运行,不会产生结果,我必须手动关闭 Anaconda。这是为什么?

0 投票
0 回答
2520 浏览

python - 在 Windows 上导入 PyStan 时 DLL 加载失败

我正在尝试在 Windows 10 中导入 PyStan,但我不断收到以下错误:

我已经卸载了 PyStan 并重新安装了 Pip,但我似乎遇到了同样的错误。我使用以下 Python 版本:

当我不在虚拟环境中工作时,我也会遇到同样的错误。

提前致谢。

0 投票
1 回答
793 浏览

multithreading - C++ Windows 中的多线程

我在 Windows 中使用 pystan 模块,其中模块中的 Windows 不支持多线程。pystan 模块部分是用 C++ 编写的,由于我试图减少模块的运行时间,我想知道是否有办法在模块的 C++ 部分中手动编写多线程代码以减少运行时间所以我可以增加迭代次数吗?下面是代码:

我对 C++ 不是很精通,因为我一直在使用 python,而 pystan 模块需要用 C++ 编写代码。我希望有一种方法可以对我的 Windows 上不同内核的迭代次数进行多线程处理。

0 投票
2 回答
544 浏览

python - Pystan 后不确定区间

在另一个论坛上看到 PyStan 没有与他们使用的 RStan 相同的功能posterior_interval(),但我们可以使用numpy.percentile()。我目前正在使用pystan.StanModel.optimizing()PyStan 中的函数来获取最大化后验似然的参数集。我现在还想获得后验结果的外部 95% 置信区间,所以我想知道该numpy.percentile()函数是否会与该optimizing函数一起使用?

我尝试找到参数分布的 95% 区间,但这并没有给出围绕结果的良好置信区间。特别是,我不认为这很好,因为当我期望后验呈现多峰分布时,我使用的置信区间numpy.percentile()位于后验二维高斯补丁内。

我认为 95% 的间隔必须取自后部。我会使用百分位数函数和优化函数来获得 95% 置信度的后验结果吗?

0 投票
1 回答
2511 浏览

python - 后验分布 Pystan 的最高密度区间 (HDI)

我看到在 Pystan 中,HDI 函数可用于提供围绕后验分布的 95% 可信区间。然而,他们说它只适用于单峰分布。如果我的模型可能具有多峰分布(最多 4 个峰),有没有办法在 Pystan 中找到 HDI?谢谢!

0 投票
0 回答
578 浏览

bayesian - 用于离散混合模型的 Stan 与 PYMC3

我正在研究零膨胀计数时间数据。我已经建立了一个模型,该模型使用块中的语句stan来处理这种零膨胀数据。正如他们在 Stan 参考指南中所建议的那样。例如,ifmodel

这个if声明显然是必要的,因为 Stan 使用 NUTS 作为不处理离散变量的采样器(因此我们正在边缘化这个离散随机变量而不是从中采样)。我没有太多经验,pymc3但我的理解是它可以处理吉布斯更新步骤(从离散的伯努利可能性中采样)。然后以零膨胀值为条件,它可以对依赖于泊松可能性的参数执行 Metropolis 或 NUTS 更新。

我的问题是:可以(如果可以的话)pymc3以这样的方式使用从离散的零膨胀变量中采样,并通过 NUTS 更新对连续变量进行更新?如果可以,性能是否比上述实现显着提高stan(边缘化了离散随机变量)?此外,如果pymc3只能支持 Gibbs + Metropolis 更新,那么这种远离 NUTS 的变化是否值得考虑?