Це питання є технічним продовженням цього питання .
У мене виникають проблеми з розумінням та тиражуванням моделі, представленої в Raftery (1988): Висновок щодо біноміального параметра : ієрархічний підхід Байєса в WinBUGS / OpenBUGS / JAGS. Тут йдеться не лише про код, хоча це повинно бути тематичним тут.
Фон
Нехай - це набір підрахунків успіху від біноміального розподілу з невідомими та . Далі я припускаю, що слід за розподілом Пуассона з параметром (як обговорюється в статті). Тоді кожен має розподіл Пуассона із середнім . Я хочу вказати пріори в термінах та .
Припускаючи, що я не маю жодних попередніх знань про або , я хочу призначити неінформативні пріори як і . Скажімо, мої пріори - та .
Автор використовує неправильний пріоритет але WinBUGS не приймає неправильних пріорів.
Приклад
У статті (стор. 226) наводяться наступні підрахунки успіху спостережуваних водяних відвалів: . Я хочу оцінити , чисельність населення.
Ось як я спробував опрацювати приклад у WinBUGS ( оновлений після коментаря @ Stéphane Laurent):
model {
# Likelihood
for (i in 1:N) {
x[i] ~ dbin(theta, n)
}
# Priors
n ~ dpois(mu)
lambda ~ dgamma(0.001, 0.001)
theta ~ dunif(0, 1)
mu <- lambda/theta
}
# Data
list(x = c(53, 57, 66, 67, 72), N = 5)
# Initial values
list(n = 100, lambda = 100, theta = 0.5)
list(n = 1000, lambda = 1000, theta = 0.8)
list(n = 5000, lambda = 10, theta = 0.2)
Модель справді не підходить підвіконням після 500000 проб із 20 000 проби, що випалюються. Ось результат запуску JAGS:
Inference for Bugs model at "jags_model_binomial.txt", fit using jags,
5 chains, each with 5e+05 iterations (first 20000 discarded), n.thin = 5
n.sims = 480000 iterations saved
mu.vect sd.vect 2.5% 25% 50% 75% 97.5% Rhat n.eff
lambda 63.081 5.222 53.135 59.609 62.938 66.385 73.856 1.001 480000
mu 542.917 1040.975 91.322 147.231 231.805 462.539 3484.324 1.018 300
n 542.906 1040.762 95.000 147.000 231.000 462.000 3484.000 1.018 300
theta 0.292 0.185 0.018 0.136 0.272 0.428 0.668 1.018 300
deviance 34.907 1.554 33.633 33.859 34.354 35.376 39.213 1.001 43000
Запитання
Ясна річ, я щось пропускаю, але не можу зрозуміти, що саме. Я думаю, що моя постановка моделі десь неправильна. Отже, мої запитання:
- Чому моя модель та її реалізація не працюють?
- Як можна було правильно сформулювати та реалізувати модель, подану Рафтері (1988)?
Спасибі за вашу допомогу.
mu=lambda/theta
та замінитиn ~ dpois(lambda)
наn ~ dpois(mu)