Jak generować prognozy za pomocą rjagów?

12

Użyłem rjags do uruchomienia MCMC na modelu określonym w języku JAGS. Czy istnieje dobry sposób na wyodrębnienie tego modelu i wykonanie z nim prognoz (przy użyciu tylnych rozkładów moich parametrów)? Mogę ponownie określić model w R i podłączyć tryby moich parametrów tylnych; Zastanawiam się tylko, czy istnieje mniej zbędny sposób na zrobienie tego.

Wierzę, że http://sourceforge.net/p/mcmc-jags/discussion/610037/thread/0ecab41c zadaje to samo pytanie.

Historyk ilościowy
źródło
Link jest zepsuty. Czy możesz to zaktualizować?
chl
Gotowy. Wygląda na to, że zmieniono układ sourceforge
Historyk Ilościowy
Dzięki! (Nie znalazłem wątku sam, odkąd SF zmienił swoje ścieżki względne.)
chl

Odpowiedzi:

8

Zwykle możesz wykonywać prognozy w JAGS. Poniżej znajduje się przykład regresji z FEV (związaną z pojemnością płuc) jako zmienną zależną oraz wskaźnikiem wieku i palenia jako predyktorami.

FEV20 i FEV20ns są przewidywanymi wartościami FEV dla 20-letniego palacza i 20-letniego niepalącego.

model
{
for(i in 1:n){
    FEV[i] ~ dnorm(mu[i],tau)
    mu[i] <- beta[1] + beta[2]*Age[i] + beta[3]*Smoke[i]  + beta[4]*Age[i]*Smoke[i]
}

#priors
beta[1] ~ dnorm(0,0.001)
beta[2] ~ dnorm(0,0.001)
beta[3] ~ dnorm(0,0.001)
beta[4] ~ dnorm(0,0.001)
tau ~ dgamma(0.001,0.001)
sigma<-1/sqrt(tau) 

## Predict the FEV for a 20 year old smoker and for a 20 year old nonsmoker
mu20s <-  beta[1] + (beta[2]+beta[4])*20 + beta[3]
mu20ns <-  beta[1] + beta[2]*20 
FEV20s ~ dnorm(mu20s,tau)
FEV20ns ~ dnorm(mu20ns,tau)
}

Przykład z: Bayesian Ideas and Data Analysis

Dolina górska
źródło
Dzięki za wskaźnik - nie myślałem o wysłaniu moich danych testowych do JAGS, ale to powinno wystarczyć.
Historyk ilościowy
1
Czy istnieje sposób na wygenerowanie tych prognoz bez konieczności modyfikacji całego modelu? Gdyby tak było, łatwo byłoby masowo zrównoleglać generowanie prognoz, jednak jeśli cały model wymaga remontu, nie jest to możliwe.
colin