Hamiltonian Monte Carlo: làm thế nào để hiểu ý nghĩa của đề xuất đô thị?


9

Tôi đang cố gắng tìm hiểu hoạt động bên trong của Hamiltonian Monte Carlo (HMC), nhưng không thể hiểu đầy đủ phần này khi chúng ta thay thế sự tích hợp thời gian xác định bằng một đề xuất của Hắc thạch. Tôi đang đọc bài viết giới thiệu tuyệt vời Giới thiệu khái niệm về Hamiltonian Monte Carlo của Michael Betancourt, vì vậy tôi sẽ làm theo cùng một ký hiệu được sử dụng trong đó.

Lý lịch

Mục tiêu chung của Markov Chain Monte Carlo (MCMC) là xấp xỉ phân phối của biến mục tiêu .qπ(q)q

Ý tưởng của HMC là giới thiệu một biến "xung lượng" phụ p , kết hợp với biến ban đầu q được mô hình hóa là "vị trí". Cặp vị trí động lượng tạo thành một không gian pha mở rộng và có thể được mô tả bằng động lực học Hamilton. Phân phối chung π(q,p) có thể được viết dưới dạng phân rã vi mô:

π(q,p)=π(θE|E)π(E) ,

trong đó θE đại diện cho các tham số (q,p) trên mức năng lượng E , còn được gọi là tập hợp điển hình . Xem hình 21 và hình 22 của bài báo để minh họa.

nhập mô tả hình ảnh ở đây

Quy trình HMC ban đầu bao gồm hai bước xen kẽ sau:

  • Một bước ngẫu nhiên thực hiện chuyển đổi ngẫu nhiên giữa các mức năng lượng và

  • Một bước xác định thực hiện tích hợp thời gian (thường được thực hiện thông qua tích hợp số nhảy vọt) dọc theo một mức năng lượng nhất định.

Trong bài báo, người ta lập luận rằng bước nhảy vọt (hoặc tích hợp đối xứng) có các lỗi nhỏ sẽ đưa ra sai lệch số. Vì vậy, thay vì coi đó là một bước xác định, chúng ta nên biến nó thành một đề xuất của Metropolis-Hasting (MH) để thực hiện bước này một cách ngẫu nhiên, và quy trình kết quả sẽ mang lại các mẫu chính xác từ phân phối.

Đề xuất MH sẽ thực hiện các bước của các hoạt động nhảy vọt và sau đó lật đà. Đề xuất sau đó sẽ được chấp nhận với xác suất chấp nhận sau:L

a(qL,pL|q0,p0)=min(1,exp(H(q0,p0)H(qL,pL)))

Câu hỏi

Câu hỏi của tôi là:

1) Tại sao việc sửa đổi này để biến tích hợp thời gian xác định thành đề xuất MH hủy bỏ sai lệch số để các mẫu được tạo tuân theo chính xác phân phối mục tiêu?

2) Từ quan điểm vật lý, năng lượng được bảo toàn trên một mức năng lượng nhất định. Đó là lý do tại sao chúng ta có thể sử dụng các phương trình của Hamilton:

dqdt=Hp,dpdt=Hq .

Theo nghĩa này, năng lượng phải không đổi ở mọi nơi trên tập hợp điển hình, do đó phải bằng . Tại sao có sự khác biệt về năng lượng cho phép chúng ta xây dựng xác suất chấp nhận?H ( q L , - p L )H(q0,p0)H(qL,pL)

Câu trả lời:


7

Các quỹ đạo xác định Hamilton chỉ hữu ích vì chúng phù hợp với phân phối mục tiêu. Cụ thể, các quỹ đạo với một dự án năng lượng điển hình vào các khu vực có xác suất phân phối mục tiêu cao. Nếu chúng ta có thể tích hợp chính xác các phương trình của Hamilton và xây dựng các quỹ đạo Hamilton rõ ràng thì chúng ta sẽ có một thuật toán hoàn chỉnh và không cần bất kỳ bước chấp nhận nào .

Thật không may, bên ngoài một vài ví dụ rất đơn giản, chúng ta không thể tích hợp chính xác các phương trình của Hamilton. Đó là lý do tại sao chúng ta phải đưa vào các nhà tích hợp đối xứng . Các nhà tích hợp đối xứng được sử dụng để xây dựng các xấp xỉ số chính xác cao cho các quỹ đạo chính xác của Hamilton mà chúng ta không thể giải quyết bằng phương pháp phân tích. Lỗi nhỏ vốn có trong các bộ tích hợp đối xứng làm cho các quỹ đạo số này đi chệch khỏi các quỹ đạo thực sự, và do đó các dự đoán của các quỹ đạo số sẽ đi chệch khỏi tập phân phối đích điển hình. Chúng ta cần giới thiệu một cách khắc phục cho sự sai lệch này.

Việc triển khai ban đầu của Hamiltonian Monte Carlo đã coi điểm cuối cùng trong một quỹ đạo có chiều dài cố định là một đề xuất, và sau đó áp dụng một quy trình chấp nhận của Đô thị cho đề xuất đó. Nếu quỹ đạo số đã tích lũy quá nhiều lỗi và do đó đi quá xa so với năng lượng ban đầu, thì đề xuất đó sẽ bị từ chối. Nói cách khác, quy trình chấp nhận loại bỏ các đề xuất kết thúc dự án quá xa so với tập phân phối mục tiêu điển hình để các mẫu duy nhất chúng tôi giữ là các mẫu rơi vào tập hợp điển hình.

Lưu ý rằng các triển khai hiện đại hơn mà tôi ủng hộ trong bài viết Khái niệm không thực sự là thuật toán của Metropolis-Hastings. Lấy mẫu một quỹ đạo ngẫu nhiên và sau đó một điểm ngẫu nhiên từ quỹ đạo ngẫu nhiên đó là một cách tổng quát hơn để sửa lỗi sai số được đưa ra bởi các nhà tích hợp đối xứng. Metropolis-Hastings chỉ là một cách để thực hiện thuật toán tổng quát hơn này, nhưng lấy mẫu lát (như được thực hiện trong NUTS) và lấy mẫu đa phương thức (như hiện được thực hiện trong Stan) cũng hoạt động tốt nếu không muốn nói là tốt hơn. Nhưng cuối cùng, trực giác là như nhau - chúng tôi chắc chắn chọn các điểm có sai số nhỏ để đảm bảo các mẫu chính xác từ phân phối mục tiêu.


Cảm ơn @Michael Betancourt !! Về mặt khái niệm, bây giờ tôi có ý tưởng biến bước tích hợp thời gian thành xác suất, dựa trên mức độ trạng thái tích hợp lệch khỏi quỹ đạo. Tuy nhiên, cách xác suất chấp nhận được xây dựng không hoàn toàn có ý nghĩa với tôi, vì dường như chúng ta đang khuyến khích sự sai lệch dẫn đến năng lượng thấp hơn? Nếu thấp hơn nhiều so với , liệu cuối cùng chúng ta có luôn chấp nhận đề xuất hay không, mặc dù nó đi lệch rất nhiều so với quỹ đạo? H ( q 0 , p 0 )H(qL,pL)H(q0,p0)
cwl

1
Đúng, nhưng do cách thức âm lượng trong không gian chiều cao hoạt động (luôn luôn có nhiều âm lượng hơn ở bên ngoài bề mặt so với bên trong bề mặt của nó), các quỹ đạo dành nhiều thời gian hơn theo cấp số nhân với năng lượng cao hơn năng lượng thấp hơn. Do đó, khi bạn kết hợp đề xuất (ưu tiên năng lượng cao hơn) với sự chấp nhận (ưu tiên năng lượng thấp hơn), bạn sẽ phục hồi sự cân bằng xung quanh năng lượng ban đầu.
Michael Betancourt
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.