Số lượng mẫu Markov Monte Carlo Samples


10

rất nhiều tài liệu về chẩn đoán hội tụ chuỗi Monteov (MCMC) của Markov, bao gồm chẩn đoán Gelman-Rubin phổ biến nhất. Tuy nhiên, tất cả những điều này đánh giá sự hội tụ của chuỗi Markov, và do đó giải quyết câu hỏi về burn-in.

Khi tôi đã tìm ra burn-in, tôi nên quyết định có bao nhiêu mẫu MCMC đủ để tiếp tục quá trình ước tính của mình? Hầu hết các bài báo sử dụng MCMC đều đề cập rằng họ đã chạy chuỗi Markov cho một số lần lặp , nhưng không nói gì về lý do tại sao / cách họ chọn số đó, .nn

Ngoài ra, một cỡ mẫu mong muốn không thể là câu trả lời cho tất cả các bộ lấy mẫu, vì mối tương quan trong chuỗi Markov thay đổi rất nhiều từ vấn đề này sang vấn đề khác. Vì vậy, có một quy tắc ra khỏi đó để tìm ra số lượng mẫu cần thiết?

Câu trả lời:


5

Có bao nhiêu mẫu (post burn-in) mà bạn cần phụ thuộc vào những gì bạn đang cố gắng thực hiện với các mẫu đó và cách chuỗi của bạn trộn.

Thông thường, chúng tôi quan tâm đến các kỳ vọng sau (hoặc lượng tử) và chúng tôi ước tính các kỳ vọng này theo trung bình của các mẫu sau, tức là trong đó là các mẫu từ MCMC của bạn. Theo định luật về số lượng lớn, ước tính MCMC hội tụ gần như chắc chắn đến kỳ vọng mong muốn.

E[h(θ)|y]1MΣm= =1Mh(θ(m))= =EM
θ(m)

Nhưng để giải quyết câu hỏi có bao nhiêu mẫu chúng ta cần đảm bảo rằng chúng ta đủ gần với kỳ vọng mong muốn, chúng ta cần một kết quả Định lý giới hạn trung tâm (CLT), tức là một cái gì đó như Với CLT này, sau đó chúng tôi có thể đưa ra các tuyên bố xác suất như "có xác suất 95% rằng nằm giữa . " Hai vấn đề ở đây làE[h(θ)| y]EM±1,96vh

EM-E[h(θ)|y]MdN(0,vh2)
E[h(θ)|y]EM±1,96vh
  1. CLT có áp dụng không?
  2. Làm thế nào chúng ta có thể ước tính .vh2

Chúng tôi có một số kết quả khi CLT áp dụng, ví dụ như chuỗi trạng thái bị loại bỏ, chuỗi đảo ngược, chuỗi ergodic hình học. Xem Robert và Casella (tái bản lần 2) phần 6.7.2 để biết một số kết quả theo hướng này. Thật không may, phần lớn các chuỗi Markov không có bằng chứng cho thấy CLT tồn tại.

Nếu CLT tồn tại, chúng ta vẫn cần ước tính phương sai trong CLT. Một cách để ước tính phương sai này liên quan đến việc chia chuỗi thành các khối, xem Gong và Flegal và các tài liệu tham khảo trong đó. Phương pháp này đã được triển khai trong gói R mcmcsevới các hàm mcsemcse.qđể ước tính phương sai cho kỳ vọng và lượng tử.


Điều này nghe có vẻ hợp lý, và tôi quen thuộc với văn học ở đây. Làm thế nào thường là đối số này thực sự được sử dụng trong thực tế?
Greenparker

3

John Kruschke trong Thực hiện phân tích dữ liệu Bayesian khuyến nghị rằng đối với các tham số quan tâm, chuỗi MCMC nên được chạy cho đến khi kích thước mẫu hiệu quả của chúng ít nhất là 10.000. Mặc dù không có mô phỏng nào được trình bày, tôi tin rằng lý do của anh ta là ESS> 10.000 đảm bảo các ước tính ổn định về số lượng. Tuy nhiên, tôi đã thấy rằng Andrew Gelman và các nhà phát triển Stan khác khuyên dùng ít hơn (ví dụ 2000 - 3000 là tốt; không có liên kết chính xác, không may, nhưng xem các cuộc thảo luận về nhóm người dùng Stan Google). Hơn nữa, đối với các mô hình phức tạp, việc chạy các chuỗi đủ dài cho ESS> 10.000 có thể khó khăn!


Cảm ơn. Bạn có thể gửi cho tôi nơi anh ấy nói điều đó trong tài liệu của mình? Sẽ mất nhiều thời gian để lướt qua trang web. Ngoài ra, câu trả lời của tôi [ở đây] nói về việc xác định ràng buộc thấp hơn đối với ESS.
xanh

Xin lỗi, tôi nhận ra tôi đã không đặt liên kết. Nó đây rồi
xanh

1
Xin lỗi, tôi nên đã được cụ thể hơn. Kruschke đã đề cập ngắn gọn về nó trong bài đăng trên blog của mình tại đây dobayesiandataanalysis.blogspot.co.uk và nó nằm trong Chương 7 của cuốn sách, 'Markov Chain Monte Carlo', trang 184 của ấn bản thứ 2: Books.google.co.uk/ .
dùng3237820

1

Đây thực sự là một trong những nhược điểm lớn của mô phỏng MCMC, vì không có ước tính chung và apriori về số lượng mẫu. Tôi nghĩ rằng một tài liệu hay ở đây là "Một số điều chúng tôi đã học (về MCMC)" của Persi Diaconis liên quan đến rất nhiều sự tinh tế của mô phỏng MCMC có thể chỉ ra rằng không có câu trả lời dễ dàng cho câu hỏi này.

Nói chung, việc ước tính tốt về thời gian chạy chuỗi đòi hỏi phải hiểu rõ về thời gian trộn của chuỗi Markov, điều này phụ thuộc nhiều vào các thuộc tính của biểu đồ cơ bản. Có rất nhiều phương pháp "đốt cháy miễn phí" ngoài kia để ràng buộc thời gian trộn từ trên xuống, nhưng tất cả các phương pháp này đều có điểm chung là chúng cần hiểu sâu hơn về chuỗi Markov cơ bản và các hằng số liên quan thường khó tính toán . Xem ví dụ "Độ dẫn và trộn nhanh chuỗi Markov" của King, "Ghép nối đường dẫn: Kỹ thuật cung cấp trộn nhanh trong chuỗi Markov" của Bubley và cộng sự, hoặc "Bất đẳng thức Nash cho chuỗi Markov hữu hạn" của Diaconis et al.


Đã đồng ý. Nhưng trong thực tế, thời gian trộn của các dụng cụ lấy mẫu không phải lúc nào cũng được nghiên cứu chi tiết như vậy để giải quyết câu hỏi này. Ngoài ra, nghiên cứu thời gian trộn đòi hỏi nền tảng đáng kể trong lý thuyết chuỗi Markov, điều mà hầu hết người dùng cuối của MCMC có thể không quen thuộc. Thậm chí không có heuristic ngoài kia (như chẩn đoán)?
Greenparker

Điều duy nhất tôi có thể nghĩ đến là ước tính bằng số lượng giá trị riêng lớn thứ hai của ma trận chuyển tiếp và rút ra một ràng buộc về thời gian trộn từ đó. Bạn có thể xem luận án tiến sĩ của Kranthi Kumar Gade.
Tobias Windisch

Điều gì xảy ra nếu tôi đang làm việc với chuỗi Markov không gian trạng thái chung, không phải là không gian trạng thái hữu hạn? Tôi đoán rằng điều đó là không thể sau đó, nhưng sẽ xem xét nó.
Greenparker

Bạn đúng rồi. Phương pháp của ông chỉ hoạt động cho các không gian trạng thái hữu hạn và chuỗi Markov thời gian rời rạc.
Tobias Windisch
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.