Có vẻ như các điều kiện đầy đủ thường khá khó để lấy được, nhưng các chương trình như JAGS và BUGS tự động lấy chúng. Ai đó có thể giải thích làm thế nào họ thuật toán tạo ra các điều kiện đầy đủ cho bất kỳ đặc tả mô hình tùy ý nào không?
Có vẻ như các điều kiện đầy đủ thường khá khó để lấy được, nhưng các chương trình như JAGS và BUGS tự động lấy chúng. Ai đó có thể giải thích làm thế nào họ thuật toán tạo ra các điều kiện đầy đủ cho bất kỳ đặc tả mô hình tùy ý nào không?
Câu trả lời:
Đọc qua các bình luận về các câu trả lời othe, tôi tin rằng câu trả lời chính xác cho câu hỏi dự định được hỏi là "họ không", nói chung. Như đã đề cập, họ xây dựng một DAG và nhìn vào tấm chăn Markov và sau đó (đại khái) làm như sau.
Đây không phải là chính xác những gì đang được thực hiện; ví dụ, JAGS sẽ sử dụng một số thủ thuật khác để xây dựng các bản cập nhật khối. Nhưng điều này sẽ cho một ý tưởng về những gì họ đang làm.
rjags
có một chức năng liệt kê các mẫu mà nó đang sử dụng, một cái gì đó giống như list_samplers
nhưng bạn có thể kiểm tra các tài liệu thông thường R
để tìm thấy nó.
Tôi không chắc tại sao bạn nghĩ rằng điều kiện đầy đủ là khó để có được. Đưa ra mật độ xác suất chung hoàn chỉnh cho cả tham số và dữ liệu, có điều kiện đầy đủ, giả sử, cho và dữ liệu dễ dàng rút ra: nó chỉ tỷ lệ thuận với khớp trước cho các tham số và dữ liệu. Thật dễ dàng để kiểm tra bằng cách kiểm tra các phần tử nào của có thể được loại bỏ khỏi điều kiện đầy đủ cho .θ i θ - i θ - i θ i
Các bộ lấy mẫu Gibbs tự động thực hiện "kiểm tra" này bằng cách phân tích một đặc tả mô hình thành một mô hình đồ thị chu kỳ có hướng xác suất . Sau đó, họ tính toán các điều kiện đầy đủ như tỉ lệ với mật độ chung toàn bộ 's Markov chăn .