Bắt đầu ngayBắt đầu miễn phí

Biểu đồ vết (trace) của chuỗi Markov

Một trace plot giúp bạn trực quan hóa diễn biến theo thời gian của chuỗi Markov. Cụ thể, trace plot cho chuỗi \(m\) sẽ vẽ giá trị quan sát của chuỗi (trục y) theo số lần lặp tương ứng (trục x).

Bạn sẽ dựng trace plot của chuỗi \(m\) theo hai cách: dùng hàm có sẵn plot() áp dụng cho đối tượng mcmc.listsleep_sim và, để kiểm soát đồ họa tốt hơn (và kiểm soát phân tích ở các chương sau), dùng ggplot() áp dụng cho đối tượng data.framesleep_chains. Cả sleep_simsleep_chains đều đã có trong workspace của bạn:

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)

Bài tập này là một phần của khóa học

Mô hình hóa Bayesian với RJAGS

Xem khóa học

Hướng dẫn bài tập

  • Áp dụng plot() cho sleep_sim với density = FALSE để dựng trace plot cho các chuỗi \(m\) và \(s\). LƯU Ý: 10.000 Iterations được ghi nhận bắt đầu sau giai đoạn "burn-in" khi các mẫu bị loại bỏ. Vì vậy, số đếm Iterations không bắt đầu từ 1!

  • Áp dụng ggplot() với lớp geom_line() cho sleep_chains để dựng lại trace plot của chuỗi $m`.

  • Phóng to: dựng một trace plot với ggplot() cho 100 lần lặp đầu tiên của chuỗi $m`.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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()
Chỉnh sửa và Chạy Mã