Mã MCMC nhảy đảo ngược (Matlab hoặc R)


14

Có ai biết một số mã được viết tốt (bằng Matlab hoặc R) cho MCMC nhảy đảo ngược không? Tốt nhất là một ứng dụng demo đơn giản để khen các bài báo về chủ đề này, sẽ hữu ích trong việc tìm hiểu quy trình.


Đã có cuộc thảo luận về việc thêm MCMC nhảy đảo ngược vào OpenBUGS trên mỗi trang 288 của Sách BUGS và WinBUGS, tôi tin rằng, một mô-đun Jump. Bất cứ ai cũng nghe về bất kỳ sự phát triển tương tự cho JAGS? Có một số cách viết mã JAGS để có được hiệu quả của việc thực hiện các chiều khác nhau? Có phải nó chỉ đơn giản là một vấn đề xác định kích thước lớn hơn mức cần thiết?
Jan Galkowski

Câu trả lời:


12

RJMCMC được Peter Green giới thiệu trong một bài báo năm 1995 là một trích dẫn kinh điển. Ông đã viết một chương trình Fortran có tên AutoRJ cho RJMCMC tự động; trang của anh ấy trên liên kết này đến chương trình AutoMix của David Hastie . Có một danh sách các phần mềm có sẵn miễn phí cho các thuật toán RJMCMC khác nhau trong Bảng 1 của bài báo năm 2005 của Scott Sisson . Một tìm kiếm của Google cũng tìm thấy một số mã giả từ một nhóm tại Đại học Glasgow có thể hữu ích trong việc hiểu các nguyên tắc nếu bạn muốn tự lập trình nó.


7

Cuốn sách Phân tích Bayes cho Sinh thái Dân số của King et al. mô tả RJMCMC trong bối cảnh sinh thái dân số. Tôi thấy ở đó mô tả rất rõ ràng và họ cung cấp mã R trong phần phụ lục.

Cuốn sách cũng có một trang web liên quan , nhưng một số mã được tìm thấy trong cuốn sách không có trên trang web.


họ cung cấp mã WinBUGS cho RJMCMC? Vậy, WinBUGS có khả năng của RJMCMC?
Tò mò

1
@Tomas Ai đó đã chỉnh sửa câu trả lời của tôi và thay đổi R thành WinBUGS. Từ những gì tôi nhớ lại, cuốn sách cung cấp mã R.
csgillespie

Cảm ơn bạn. (+1) Btw, bạn có thấy RJMCMC hữu ích cho hệ sinh thái dân số không? Tôi chưa tìm thấy bất kỳ ví dụ nào có thể hữu ích .. Tôi luôn có thể sử dụng tính năng tăng dữ liệu, ví dụ với MCMC tiêu chuẩn và nó thực hiện công việc cho tôi. Lưu ý rằng tôi không có cuốn sách .. nó có tốt không?
Tò mò

@Tomas Cuốn sách sử dụng RJMCMC cho sự lựa chọn mô hình. Tôi thấy mô tả khá tốt đẹp. Tôi đã cần phải sử dụng RJMCMC trong sự tức giận.
csgillespie

"Trong cơn giận" ?? Ý anh là gì?
Tò mò

1

Chỉ cần thêm một chi tiết vào câu trả lời của @ onestop: Tôi thấy phần mềm C được phát hành bởi Olivier Cappé (CT / RJ MCMC) rất hữu ích để hiểu thuật toán MCMC của Reversible jump (đặc biệt là cách thiết kế xác suất cho trường hợp tử vong và chia tách hợp nhất di chuyển). Liên kết đến mã nguồn là: http://perso.telecom-paristech.fr/~cappe/Code/CTRJ_mix/ về /


1

Jailin Ai trình bày khá hay về RJ MCMC cùng nhau (mặc dù nó rất gần với bài báo gốc của Green) với mã R của người phục vụ như là một phần của luận án thạc sĩ của ông tại Leeds. Cũng đưa ra một ví dụ sâu sắc về các vấn đề điểm thay đổi, cũng được bao gồm trong bài viết năm 1995 của Green.

Tìm luận án và mã ở đây:

http://www1.maths.leeds.ac.uk/~voss/projects/2011-RJMCMC/


0

Nando de Freitas cung cấp các bản demo về việc sử dụng thuật toán MCMC nhảy đảo ngược để ước tính tham số mạng thần kinh. Mô hình này coi số lượng tế bào thần kinh, tham số mô hình, tham số chính quy và tham số nhiễu là các biến ngẫu nhiên được ước tính.

Mã và viết lên có sẵn ở đây: http://www.cs.ubc.ca/~nando/software.html

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.