Трейс-плоти ланцюгів Маркова
Трейс-плот візуалізує поведінку ланцюга в часі у методі Монте-Карло за ланцюгами Маркова. Зокрема, трейc-плот для ланцюга \(m\) показує спостережуване значення ланцюга (вісь y) проти відповідного номера ітерації (вісь x).
Ви побудуєте трейc-плоти ланцюга \(m\) двома способами: застосувавши вбудовану функцію plot() до обʼєкта mcmc.list sleep_sim і, для точнішого керування графікою (а також подальшими аналізами в наступних розділах), застосувавши ggplot() до обʼєкта data.frame sleep_chains. Обидва обʼєкти sleep_sim і sleep_chains є у вашому робочому середовищі:
sleep_sim <- coda.samples(model = sleep_jags, variable.names = c("m", "s"), n.iter = 10000)
sleep_chains <- data.frame(sleep_sim[[1]], iter = 1:10000)
Ця вправа є частиною курсу
Баєсівське моделювання з RJAGS
Інструкції до вправи
Застосуйте
plot()доsleep_simз параметромdensity = FALSE, щоб побудувати трейc-плоти для ланцюгів \(m\) та \(s\). ПРИМІТКА: 10 000 зафіксованихIterationsпочинаються після періоду «розігріву» (burn-in), упродовж якого зразки відкидаються. Тому відлікIterationsне починається з 1!Застосуйте
ggplot()з шаромgeom_line()доsleep_chains, щоб відтворити трейc-плот ланцюга $m`.Збільште масштаб: побудуйте трейc-плот
ggplot()для перших 100 ітерацій ланцюга \(m\).
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Use plot() to construct trace plots of the m and s chains
# Use ggplot() to construct a trace plot of the m chain
ggplot(___, aes(x = ___, y = ___)) +
geom_line()
# Trace plot the first 100 iterations of the m chain
ggplot(___, aes(x = ___, y = ___)) +
geom_line()