НачатьНачать бесплатно

Воспроизводимость результатов

Теперь, когда вы выполнили (и успешно прошли!) диагностику цепей Маркова, можно завершить симуляцию в RJAGS. На этом этапе воспроизводимость результатов особенно важна. Чтобы каждый раз получать одинаковые результаты симуляции, необходимо задать начальное значение генератора случайных чисел RJAGS. Это делается иначе, чем в базовом R: вместо set.seed() нужно указать начальное зерно через inits = list(.RNG.name = "base::Wichmann-Hill", .RNG.seed = ___) при компиляции модели.

Это упражнение является частью курса

Байесовское моделирование с RJAGS

Посмотреть курс

Инструкции к упражнению

  • Запустите предоставленный код несколько раз. Обратите внимание, что статистика summary() меняется при каждом запуске.

  • Чтобы получить воспроизводимые результаты, передайте параметр inits генератора случайных чисел в функцию jags.model(). Укажите начальное зерно равным 1989.

  • Запустите новый код несколько раз. Обратите внимание, что теперь статистика summary() НЕ изменяется!

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# COMPILE the model
sleep_jags <- jags.model(textConnection(sleep_model), data = list(Y = sleep_study$diff_3)) 

# SIMULATE the posterior    
sleep_sim <- coda.samples(model = sleep_jags, variable.names = c("m", "s"), n.iter = 10000)

# Summarize the m and s chains of sleep_sim
summary(sleep_sim)
Редактировать и запускать код