Mối liên hệ giữa chuỗi Markov và chuỗi Markov monte carlo


15

Tôi đang cố gắng hiểu chuỗi Markov bằng cách sử dụng SAS. Tôi hiểu rằng quy trình Markov là một quá trình trong đó trạng thái tương lai chỉ phụ thuộc vào trạng thái hiện tại chứ không phụ thuộc vào trạng thái trong quá khứ và có một ma trận chuyển tiếp nắm bắt xác suất chuyển đổi từ trạng thái này sang trạng thái khác.

Nhưng sau đó tôi đã bắt gặp thuật ngữ này: Markov Chain Monte Carlo. Những gì tôi muốn biết là nếu Markov Chain Monte Carlo có liên quan đến quá trình Markov mà tôi mô tả ở trên không?

Câu trả lời:


9

Vâng, vâng, có một mối quan hệ giữa hai điều khoản bởi vì các khoản rút ra từ MCMC tạo thành một chuỗi Markov. Từ Gelman, Phân tích dữ liệu Bayes (tái bản lần 3), tr. 265:

Markov mô phỏng chuỗi (hay còn gọi là chuỗi Markov Monte Carlo hay MCMC) là một phương pháp tổng quát dựa trên bản vẽ giá trị của từ phân phối thích hợp và sau đó sửa chữa những thu hút tới xấp xỉ tốt hơn các mục tiêu sau phân phối, p ( θ | y ) . Việc lấy mẫu được thực hiện tuần tự, với sự phân phối các bản vẽ được lấy mẫu tùy thuộc vào giá trị cuối cùng được rút ra; do đó, các hình vẽ tạo thành chuỗi Markov.θp(θ|y)


Umm ok, nhưng tại sao tôi cần phải vẽ các mẫu ngẫu nhiên tạo thành một quy trình markov, có rất nhiều loại quy trình khác như bình thường, bernoulli, sở hữu, v.v.
Victor

2
@Victor Tôi nghĩ bạn đã đánh mất trường hợp sử dụng MCMC. Chúng tôi sử dụng MCMC trong thống kê Bayes khi không có hình thức phân tích phân phối sau.
Sycorax nói Phục hồi lại

3
Thống kê +1 Bayes có lẽ là ứng dụng rõ ràng nhất của MCMC (trong đó phân phối mục tiêu là một hậu thế chung) nhưng không phải là ứng dụng duy nhất có thể.
Glen_b -Reinstate Monica

18

Mối liên hệ giữa cả hai khái niệm là phương pháp chuỗi Markov Monte Carlo (còn gọi là MCMC) dựa trên lý thuyết chuỗi Markov để tạo ra mô phỏng và xấp xỉ Monte Carlo từ phân phối mục tiêu phức tạp .π

X1,,XNXi{Xi1,,X1}Xi1

Xi=f(Xi1,ϵi)
fπϵiXiπi

Ví dụ đơn giản nhất về thuật toán MCMC là bộ lấy mẫu lát : tại lần lặp i của thuật toán này, hãy làm

  1. ϵi1U(0,1)
  2. XiU({x;π(x)ϵi1π(Xi1)})ϵi2

N(0,1)

  1. ϵi1U(0,1)
  2. XiU({x;x22log(2πϵi1}), i.e., Xi=±ϵi2{2log(2πϵi1)φ(Xi1)}1/2 with ϵi2U(0,1)

or in R

T=1e4
x=y=runif(T) #random initial value
for (t in 2:T){
  epsilon=runif(2)#uniform white noise 
  y[t]=epsilon[1]*dnorm(x[t-1])#vertical move       
  x[t]=sample(c(-1,1),1)*epsilon[2]*sqrt(-2*#Markov move from
        log(sqrt(2*pi)*y[t]))}#x[t-1] to x[t]

Dưới đây là một đại diện của đầu ra, hiển thị phù hợp với N(0,1) mục tiêu và sự phát triển của chuỗi Markov (XTôi). top: Histogram of 10⁴ iterations of the slice sampler and normal N(0,1) fit; bottom: sequence $(X_i)$

Và đây là một phóng to về sự phát triển của chuỗi Markov (XTôi,εTôi1π(XTôi)) trong hơn 100 lần lặp lại gần đây, thu được bởi

curve(dnorm,-3,3,lwd=2,col="sienna",ylab="")
for (t in (T-100):T){
lines(rep(x[t-1],2),c(y[t-1],y[t]),col="steelblue");
lines(x[(t-1):t],rep(y[t],2),col="steelblue")}

theo sau các chuyển động dọc và ngang của chuỗi Markov dưới đường cong mật độ mục tiêu.100 last moves of the slice sampler

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.