Гамільтоніан Монте-Карло: як осмислити пропозицію "Метрополіс-Гастінг"?


9

Я намагаюся зрозуміти внутрішню роботу Гамільтоніана Монте-Карло (HMC), але не можу повністю зрозуміти ту частину, коли ми замінимо детерміновану інтеграцію часу на пропозицію Метрополіс-Гастінг. Я читаю дивовижний вступний документ «Концептуальне вступ до гамільтоніану Монте-Карло » Майкла Бетанкура, тому я буду дотримуватися тих же позначень, які використовуються в ньому.

Фон

Загальна мета ланцюга Маркова Монте-Карло (MCMC) - наблизити розподіл π(q) цільової змінної q.

Ідея HMC полягає у запровадженні допоміжної змінної "імпульсу" p, в поєднанні з вихідною змінною qщо моделюється як "позиція". Пара імпульсів позиції утворює розширений фазовий простір і може бути описана динамікою Гамільтона. Спільний розподілπ(q,p) можна записати у вигляді мікроканонічного розкладання:

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

де θE представляє параметри (q,p) на заданому енергетичному рівні E, також відомий як типовий набір . Для ілюстрації див. Фіг. 21 та фіг. 22 паперу.

введіть тут опис зображення

Оригінальна процедура HMC складається з наступних двох чергуються етапів:

  • Стохастичний крок, який виконує випадковий перехід між рівнями енергії та

  • Детермінований крок, який виконує інтеграцію часу (зазвичай реалізується за допомогою цифрової інтеграції стрибкоподібної форми) уздовж заданого рівня енергії.

У статті стверджується, що у стрибка (або симплектичного інтегратора) є невеликі помилки, які вводять числовий зміщення. Отже, замість того, щоб ставитися до цього як до детермінованого кроку, ми повинні перетворити його на пропозицію Metropolis Hasting (MH), щоб зробити цей крок стохастичним, і отримана в результаті процедура отримає точні зразки з розподілу.

Пропозиція МЗ виконає Lкроки операцій стрибків, а потім переверніть імпульс. Потім пропозиція буде прийнята з такою ймовірністю прийняття:

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

Запитання

Мої запитання:

1) Чому ця модифікація перетворення детермінованої інтеграції часу у пропозицію про МЗ скасовує числове зміщення, щоб згенеровані вибірки точно відповідали цільовому розподілу?

2) З точки зору фізики, енергія зберігається на заданому енергетичному рівні. Ось чому ми можемо використовувати рівняння Гамільтона:

dqdt=Hp,dpdt=Hq.

У цьому сенсі енергія повинна бути постійною скрізь на типовому наборіH(q0,p0) повинна дорівнювати H(qL,pL). Чому існує різниця в енергії, яка дозволяє побудувати ймовірність прийняття?

Відповіді:


7

Детерміновані гамільтонові траєкторії корисні лише тому, що вони відповідають цільовому розподілу. Зокрема, траєкторії з типовим енергетичним проектом на регіони з високою ймовірністю розподілу цілі. Якби ми змогли точно інтегрувати рівняння Гамільтона і побудувати явні гамільтонові траєкторії, тоді ми вже мали б цілий алгоритм і не потребував би жодного кроку прийняття .

На жаль, за межами кількох дуже простих прикладів ми не можемо точно інтегрувати рівняння Гамільтона. Ось чому ми маємо залучити симплектичні інтегратори . Симплектичні інтегратори використовуються для побудови числових наближень високої точності до точних гамільтонових траєкторій, які ми не можемо вирішити аналітично. Мала помилка, властива симплектичним інтеграторам, змушує ці числові траєкторії відхилятися від справжніх траєкторій, а отже, проекції числових траєкторій будуть відхилятися від типового набору цільового розподілу. Нам потрібно ввести спосіб виправити це відхилення.

Первісна реалізація Гамільтоніана Монте-Карло вважала кінцевою точкою траєкторії фіксованої довжини як пропозицію, а потім застосувала процедуру прийняття Метрополісу до цієї пропозиції. Якщо числова траєкторія накопичила занадто багато помилок і, отже, відхилилася занадто далеко від початкової енергії, то запропонована пропозиція буде відхилена. Іншими словами, процедура прийняття відкидає пропозиції, які в кінцевому підсумку проектуються занадто далеко від типового набору цільового розподілу, так що єдиними зразками, які ми зберігаємо, є ті, які потрапляють у типовий набір.

Зауважимо, що більш сучасні реалізації, які я відстоюю в Концептуальній роботі, насправді не є алгоритмами Metropolis-Hastings. Вибірка випадкової траєкторії, а потім випадкової точки з цієї випадкової траєкторії є більш загальним способом виправлення числової помилки, введеної симплектичними інтеграторами. Метрополіс-Гастінгс - лише один із способів реалізації цього більш загального алгоритму, але вибірка фрагментів (як це робиться в NUTS) та мультиноміальне відбір проб (як це зараз робиться в Стен) працюють так само добре, якщо не краще. Але в кінцевому підсумку інтуїція така ж - ми ймовірнісно вибираємо точки з невеликою числовою помилкою, щоб забезпечити точні вибірки з цільового розподілу.


Дякую @Michael Betancourt !! Концептуально зараз я отримую ідею зробити крок інтеграції часу імовірнісним, виходячи з того, наскільки інтегрований стан відхиляється від траєкторії. Однак спосіб побудови ймовірності прийняття не має для мене цілком сенсу, оскільки, здається, ми заохочуємо відхилення, що призводить до зниження енергії? ЯкщоH(qL,pL) набагато нижче, ніж H(q0,p0)Чи ми в кінцевому підсумку завжди приймаємо пропозицію, навіть якщо вона сильно відхиляється від траєкторії?
cwl

1
Так, але завдяки тому, як працює об'єм у просторових просторах (завжди більший об'єм до зовнішньої поверхні поверхні, ніж до внутрішньої частини), траєкторії витрачають експоненціально більше часу, відхиляючись від вищих енергій, ніж нижчих. Отже, поєднуючи пропозицію (яка сприяє вищій енергії) з прийняттям (що сприяє зниженню енергії), ви відновите баланс навколо початкової енергії.
Майкл Бетанкур
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.