Tôi nên biết gì về việc thiết kế một thuật toán Hybrid / Hamiltonian Monte Carlo tốt?


12

Tôi đang thiết kế một thuật toán lấy mẫu Hybrid Monte Carlo cho PyMC và tôi đang cố gắng làm cho nó trở nên miễn phí và chung chung nhất có thể, vì vậy tôi đang tìm kiếm lời khuyên tốt về thiết kế thuật toán HMC. Tôi đã đọc chương khảo sát của RadfordBeskos et. bài báo gần đây của al. về điều chỉnh (kích thước bước) tối ưu của HMC và tôi đã thu thập các mẹo sau:

  • Các biến động lượng nên được phân phối với hiệp phương sai C-1, Ở đâu Cnói chung là một cái gì đó giống như ma trận hiệp phương sai của phân phối (đối với các phân phối đơn giản), nhưng có thể hiểu khác nhau (đối với các phân phối có hình dạng ngộ nghĩnh). Theo mặc định, tôi đang sử dụng hessian ở chế độ.
  • Các quỹ đạo nên được tính toán bằng phương pháp nhảy vọt (các nhà tích hợp khác dường như không có giá trị)
  • Tỷ lệ chấp nhận tối ưu là 0,651 cho các vấn đề thực sự lớn và mặt khác cao hơn.
  • Kích thước bước nên được thu nhỏ như L×d(1/4), Ở đâu L là một biến miễn phí và d là số lượng kích thước.
  • Kích thước bước nên nhỏ hơn khi có đuôi nhẹ hoặc các khu vực khác có đặc điểm ổn định lẻ. Bước ngẫu nhiên kích thước có thể giúp với điều này.

Có những ý tưởng khác mà tôi nên áp dụng hoặc ít nhất là xem xét? Những giấy tờ khác tôi nên đọc? Ví dụ, có các thuật toán kích thước bước thích ứng có đáng không? Có lời khuyên tốt về chiều dài quỹ đạo? Trong thực tế có tích hợp tốt hơn?

Ai đó làm cho nó một cộng đồng-wiki.

Câu trả lời:


3

Bài viết này rất thú vị (mặc dù tôi chưa hoàn toàn hiểu ý mình),

Girolami M. Calderhead B. (2011) Riemann đa dạng phương pháp Langevin và Hamiltonian Monte Carlo. Thống kê JR. Sóc. B. (có thảo luận). 73, Phần 2. Trang 1-37.


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.