问题标签 [rstan]

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 投票
1 回答
238 浏览

r - openCPU 和 rstan - 无法打开连接

我正在使用 openCPU 创建一个 API 来估计 rstan 中非常基本的模型。

我已经验证,当从普通的 R 控制台会话调用时,我的函数在我的环境中工作,而不是从 openCPU 调用。

但是通过openCPU调用时,响应如下:

通过在 rstan 的源代码中插入检查点,我将其追溯到 R/cxxfunplus.R 中的一个调用(此处链接到 github 上的行):

此调用中的什么试图读取可能失败的连接?

0 投票
0 回答
1264 浏览

r - 在用户定义的函数中使用 STAN 函数

我的数据 (m) 的似然函数如下所示:

我在我的 STAN 代码中编写的用户定义的对数似然函数如下:

. 我想知道我做得对吗?我可以在用户定义的函数中使用“exponential_log”和“normal_cdf_log”等STAN函数吗?

0 投票
0 回答
97 浏览

r - rstanarm - 在没有任何事件的情况下使用二进制数据更新先验

rstanarm - 在没有任何事件的情况下使用二进制数据更新先验

嗨,我在上第一门概率课程时开始探索 rstanarm 包。我的问题不是作业,而是在我阅读https://cran.r-project.org/web/packages/rstanarm/vignettes/binomial.html后出于好奇

想象一下,在这个小插图中提供的示例(参见下面的代码)中,开关变量只有前 10 个观察值,没有事件(即所有值都为零)。尝试在没有任何事件的情况下运行此模型会产生错误,但据我所知,即使没有实例,也应该有一种更新先验的方法。

我的问题:是否可以使用 rstanarm 来模拟一个有 10 个没有事件的观察的案例(所有行都用于零值的开关)?

0 投票
1 回答
83 浏览

r - rstanarm 用于适应性试验

我开始探索这个rstanarm包,并对这个包如何潜在地用于自适应试验场景感到好奇。小插图中给出的示例场景提供了 -0.622 的后验,可信区间为 -0.69 到 -0.56。

当我有来自自适应试验的额外数据时,如果我想将此后验用作下一个模型的先验,我的脚本会是什么样子?

0 投票
0 回答
239 浏览

poisson - RStan:“poisson_log”函数的正确更新

我一直在尝试使用来自 github.com/stan-dev/example-models 的版本让旧 BUGS 示例“leuk”的 Stan 版本正常工作。那里的 leuk.stan 版本运行良好,但警告说“<-”、“increment_log_prob”和“poisson_log”都已弃用。我已将所有“<-”编辑为“=”,将“increment_log_prob”编辑为“target +=”,但我无法弄清楚“poisson_log”的正确替换是什么。我检查了 Stan Reference 2.14.0,发现第 490 页上的建议是“poisson_log”的新等效项是“poisson_log_lpmf”(将“,”更改为“|”)。这在语法上是正确的并且可以运行,但给出了错误的答案。有人能告诉我“poisson_log”的正确替换吗?提前谢谢了。

0 投票
1 回答
549 浏览

r - 构建非线性指数模型——使用向量还是实数?

我是 Stan 和概率编程的新手。我正在尝试构建一个非线性增长模型。我已经能够在NLS

我使用的 NLS 公式是:Trump_Pct ~ alpha - beta * lambda^Population

我的 NLS 总结是:

换句话说,基本的指数衰减曲线。我正在尝试与 Stan 进行复制。

我的数据如下:

N在数据集中观察到:预测变量是一个县的人口(“人口”),预测的 Y 是对特朗普“Trump_Pct”的投票百分比。

我尝试了两种构建此模型的方法。

  1. 一方面,我将每个组件的数据作为向量传递给模型。

  2. 另一方面,我将每个数据组件保留为一个列表并尝试使用每个数据点。

在任何一种情况下,我都无法让模型成功运行。

这是我的模型:

情况1:

这是对该模型的改编。

在这里,我创建了 Trump_Pct 和 Population 列的矢量化版本。

由于以下原因,该模型未能与指数一致:

`语法错误,来自解析器的消息:

^ 的参数必须是原始的(实数或整数);不能通过块 = 本地中的向量对实数求幂

我试过使用pow(),但找不到前进的方向。有小费吗?

案例二:

在情况 2 中,我无法将参数估计值保持在范围内:

"Informational Message: The current Metropolis proposal is about to be rejected because of the following issue:"
[2] "Exception thrown at line 21: normal_log: Location parameter[2873] is -inf, but must be finite!"

任何人都可以为我的公式提供一个简单的非线性模型的建议吗?

0 投票
1 回答
274 浏览

stan - RStan:在 ordered_logistic() 中使用矩阵

我想ordered_logistic()在 RStan 中使用函数。

首先,这是数据(sample):

我使用数据子集:

我的斯坦代码是:

如果我运行此代码,则会收到以下错误:

代码有什么问题?

0 投票
0 回答
756 浏览

shiny - 部署预编译的 RStan 模型并避免重新编译

我已经在这几个小时了。

我用以下代码编译了一个 stan 模型:

当我ls进入当前目录时,我看到了model.rds,而我以前没有看到它。到目前为止一切都很好。

随后,我通过以下方式使用新参数重新调整该模型:

此代码在 Shiny 应用程序中运行。在本地,所有工作都按预期进行。

当我将此应用程序部署到 shinyapps.io 时,模型会尝试重新编译(导致 g++ 错误 - 可能是由于内存不足)。无论如何,我不希望这个模型首先重新编译:我希望它使用model.rds我已经构建的对象。是的,我确实在上传到 shinyapps.io 服务器的文件中包含了这个对象。

我觉得我已经尝试了所有的东西——包括model.rds显式加载loadRDS并将其传递给stan(fit = model ...调用。我错过了什么?

为了完整起见,以下是我在 shinyapps.io 端收到的错误。同样,我不希望这个模型首先重新编译。

Compilation ERROR, function(s)/method(s) not created! In file included from /usr/local/lib/R/site-library/BH/include/boost/config.hpp:39:0, from /usr/local/lib/R/site-library/BH/include/boost/math/tools/config.hpp:13, from /usr/local/lib/R/site-library/StanHeaders/include/stan/math/rev/core/var.hpp:7, from /usr/local/lib/R/site-library/StanHeaders/include/stan/math/rev/core/gevv_vvv_vari.hpp:5, from /usr/local/lib/R/site-library/StanHeaders/include/stan/math/rev/core.hpp:12, from /usr/local/lib/R/site-library/StanHeaders/include/stan/math/rev/mat.hpp:4, from /usr/local/lib/R/site-library/StanHeaders/include/stan/math.hpp:4, from /usr/local/lib/R/site-library/StanHeaders/include/src/stan/model/model_header.hpp:4, from file137729fa09.cpp:8: /usr/local/lib/R/site-library/BH/include/boost/config/compiler/gcc.hpp:186:0: warning: "BOOST_NO_CXX11_RVALUE_REFERENCES" redefined [enabled by default] # define BOOST_NO_CXX11_RVALUE_REFERENCES ^ <command-line>:0:0: note: this is the location of the previous definition g++: internal compiler error: Killed (program cc1plus) Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-4.8/README.Bugs> for instructions. make: *** [file137729fa09.o] Error 4

0 投票
2 回答
1363 浏览

mixture-model - Stan 中的混合模型 - 矢量化

我现在正在学习 Stan,想实现一个简单的混合模型。

在参考手册(stan-reference-2.14.0)中已经有一个解决方案:

下一页描述了外部循环的矢量化是不可能的。但是,我想知道内部循环的并行化是否仍然存在。

所以我尝试了以下模型:

...并且该模型做出错误的估计(与原始模型相反)。

我想知道,我对模型规范的理解是错误的。我想了解语法提供的区别(以及vector[K]和之间的区别real[K]),也许对 Stan 有更深入的了解。

0 投票
1 回答
130 浏览

stan - 从 rstan 中的 stanfit 对象中提取 BFMI

在使用 stan 拟合模型后stan(),如何提取每个链的 BFMI?从这个对话中:https ://groups.google.com/forum/#!topic/stan-dev/uJhsapVwlk8 ,使用打印方法时似乎显示了 BFMI。但是,使用 时不会出现,使用时print(stanfit)BFMI 也不会出现get_sampler_params(stanfit)

有没有办法从 stanfit 对象中获取 BFMI?

rstan 版本:2.14.1