我正在尝试使用jags和rjags包来适应分层模型。我的结果变量是y,这是一系列bernoulli试验。我有38名人受试者被分为两类执行:P和基于M.在我的分析,每个扬声器具有成功的在P类的概率和成功的在M类的概率θ p × θ 米。我也假设存在的P和M一些社区层面超参数:μ p和μ 米。
因此,对于每个扬声器: 和θ 米〜b Ë 吨一个(μ 米 × κ 米,(1 - μ 米)× κ 米)其中κ p和κ 米控制如何达到峰值的分布是围绕和μ 米。
也,μ 米〜b Ë 吨一(甲米,乙米)。
这是我的锯齿模型:
model{
## y = N bernoulli trials
## Each speaker has a theta value for each category
for(i in 1:length(y)){
y[i] ~ dbern( theta[ speaker[i],category[i]])
}
## Category P has theta Ptheta
## Category M has theta Ptheta * Mtheta
## No observed data for pure Mtheta
##
## Kp and Km represent how similar speakers are to each other
## for Ptheta and Mtheta
for(j in 1:max(speaker)){
theta[j,1] ~ dbeta(Pmu*Kp, (1-Pmu)*Kp)
catM[j] ~ dbeta(Mmu*Km, (1-Mmu)*Km)
theta[j,2] <- theta[j,1] * catM[j]
}
## Priors for Pmu and Mmu
Pmu ~ dbeta(Ap,Bp)
Mmu ~ dbeta(Am,Bm)
## Priors for Kp and Km
Kp ~ dgamma(1,1/50)
Km ~ dgamma(1,1/50)
## Hyperpriors for Pmu and Mmu
Ap ~ dgamma(1,1/50)
Bp ~ dgamma(1,1/50)
Am ~ dgamma(1,1/50)
Bm ~ dgamma(1,1/50)
}
我的问题是,当我运行该模型进行5000次迭代以进行自适应时,然后进行1000次采样,Mmu
并Km
收敛到单个值。我已经使用4条链来运行它,并且每个链没有相同的值,但是在每个链中只有一个值。
我对于使用MCMC方法拟合层次模型非常陌生,所以我想知道这有多糟糕。我是否应该以此为标志,说明该模型无法适应,我的先验存在问题,还是该课程的标准?