首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于适应性试验的rstanarm

用于适应性试验的rstanarm
EN

Stack Overflow用户
提问于 2016-12-28 19:38:20
回答 1查看 82关注 0票数 0

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

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

代码语言:javascript
复制
# Code from vignette
t_prior <- student_t(df = 7, location = 0, scale = 2.5)
fit1 <- stan_glm(switch ~ dist100, data = wells, 
             family = binomial(link = "logit"), 
              prior = t_prior, prior_intercept = t_prior,  
              chains = 10, cores = 2, seed = 3245, iter = 100)
EN

回答 1

Stack Overflow用户

发布于 2016-12-30 13:37:24

你的问题在rstanarm框架中不是那么容易回答的,因为它只提供了有限的选择。

使用原始先验与来自第一阶段和第二阶段的总数据相结合来获得后验分布(基本上忽略了第一阶段之后的中间后验分布)是完全有效的。或者,您可以按照阶段I中的建议进行操作,然后调用draws <- as.matrix(fit1) mu <- colMeans(draws) Sigma <- cov(mu)并使用这些(估计的) muSigma值作为多变量正态先验中的超参数,而不是阶段II中的系数。不幸的是,rstanarm不支持这样的先验,因此您需要用stan语言编写自己的模型,其中包含伯努利似然、logit链接和多变量正态先验,或者我认为您可以使用brms包中的brm函数来完成所有这些操作,该函数从R语法生成Stan代码并从相应的后验分布中提取。

从概念上讲,这两种方法在第二阶段之后应该给出相同的后验分布。但是,对于有限数量的后验绘制,它们在数值上会略有不同,并且多变量正态先验可能不是对第一阶段之后获得的后验分布的完整描述。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41361313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档