【发布时间】:2020-03-26 16:11:47
【问题描述】:
我正在尝试将 Jags 模型转换为 stan 模型。
锯齿:
model{
for (i in 1:n){
theta[i] ~ dbeta(u*s, s-u*s)
y[i] ~ dbin(theta[i],N[i])
}
u ~ dunif(0,1)
s ~ dlnorm(4,0.25)
}
斯坦:
data {
int<lower=0> J;
int y[J];
int N[J];
}
parameters {
real<lower=0, upper=1> u;
real<lower=0> s;
vector[J] theta;
}
model {
s ~ lognormal(4,2);
theta ~ beta(s*u, s*(1-u));
y ~ binomial(N, theta);
}
但是当我运行它时,它会返回如下消息:
链 1:拒绝初始值: 链 1:在初始值处评估对数概率的错误。 链 1:异常:beta_lpdf:随机变量 [4] 为 -1.58608,但必须 >= 0! (在第 18 行的“model29e45483bba0_model”中)
什么会在这个模型中产生负值?
【问题讨论】: