Errori standard ingenui
La media della catena di Markov di \(m\) fornisce una stima della media a posteriori di \(m\). L'errore standard ingenuo misura il possibile errore in questa stima. Possiamo usare questa misura per determinare una lunghezza appropriata della catena. Per esempio, supponiamo che il tuo obiettivo sia stimare la media a posteriori di \(m\) con un errore standard di 0.1 ms. Se l'errore standard ingenuo osservato supera questo target, nessun problema! Esegui semplicemente una catena più lunga: l'errore nell'uso di una catena di Markov per approssimare una posteriore tende a diminuire all'aumentare della lunghezza della catena.
Il sleep_model definito e l'oggetto compilato sleep_jags sono il tuo spazio di lavoro.
Questo esercizio fa parte del corso
Modeling bayesiano con RJAGS
Istruzioni dell'esercizio
SIMULA 1.000 estrazioni dal modello a posteriori di \(m\) e \(s\). Salvale in
sleep_sim_1.Ottieni un
summary()delle catene insleep_sim_1.Se l'errore standard ingenuo della catena di \(m\) supera il target di 0.1, modifica la simulazione: prova a usare 500 estrazioni oppure 10.000 estrazioni (invece di 1.000). Salva i risultati in
sleep_sim_2.Ottieni un
summary()delle catene insleep_sim_2. Conferma che la nuova simulazione soddisfi il criterio. In caso contrario, torna al passaggio precedente e ripeti!
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# SIMULATE the posterior
sleep_sim_1 <- coda.samples(model = ___, variable.names = c("m", "s"), n.iter = ___)
# Summarize the m and s chains of sleep_sim_1
# RE-SIMULATE the posterior
sleep_sim_2 <- coda.samples(model = ___, variable.names = c("m", "s"), n.iter = ___)
# Summarize the m and s chains of sleep_sim_2