Chẩn đoán chuỗi Markov & tái lập

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

Alicia Johnson

Associate Professor, Macalester College

Đầu ra chuỗi Markov

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

Câu hỏi cần cân nhắc

  • Một chuỗi Markov "tốt" trông như thế nào?

  • Chuỗi Markov xấp xỉ hậu nghiệm chính xác đến đâu?

  • Nên chạy chuỗi Markov bao nhiêu vòng lặp?

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

Chẩn đoán: đồ thị vết

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

Chẩn đoán: đồ thị vết

Tốt: ổn định!

Kém: bất ổn

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

Chẩn đoán: nhiều chuỗi

# COMPILE the model
sleep_jags <- jags.model(..., n.chains = 1)

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

Chẩn đoán: nhiều chuỗi

# COMPILE the model
sleep_jags <- jags.model(..., n.chains = 2)

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

Chẩn đoán: nhiều chuỗi

# COMPILE the model
sleep_jags <- jags.model(..., n.chains = 4)

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

Chẩn đoán: nhiều chuỗi

# COMPILE the model
sleep_jags <- jags.model(..., n.chains = 4)

Mô hình hóa Bayesian với RJAGS
summary(sleep_sim)
1. Empirical mean and standard deviation for each variable,
   plus standard error of the mean:

   Mean    SD Naive SE Time-series SE
m 29.10 8.968   0.2836         0.2820
s 40.07 7.887   0.2494         0.4227

2. Quantiles for each variable:

   2.5%   25%   50%   75% 97.5%
m 11.42 23.27 28.85 34.76 46.76
s 28.31 34.65 38.93 43.91 57.56
  • Ước lượng trung bình hậu nghiệm của $m$ = 29.10 ms

  • Sai số chuẩn (ngây thơ) của ước lượng này = 0.2836 ms
    SD / $\sqrt{\text{number of iterations}}$

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

Chẩn đoán: sai số chuẩn

  • Trung bình ước lượng = 29.10 ms

  • Sai số chuẩn (ngây thơ) = 0.2836 ms

  • $29.10 \pm 2*0.2836$
Mô hình hóa Bayesian với RJAGS

Quy trình làm việc với chuỗi Markov

  • Xây dựng, biên dịch, mô phỏng mô hình

  • Xem các chỉ báo sau:

    • Đồ thị vết
    • Đầu ra nhiều chuỗi
    • Sai số chuẩn
  • Hoàn tất mô phỏng

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

Hoàn tất chuỗi Markov: Tái lập

sleep_jags <- jags.model(textConnection(sleep_model), 
    data = list(Y = sleep_study$diff_3),
    inits = list(.RNG.name = "base::Wichmann-Hill",
                 .RNG.seed = 1989))
Mô hình hóa Bayesian với RJAGS

Cùng luyện tập nào!

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

Preparing Video For Download...