Норми прийняття для Метрополіс-Гастінгса з рівномірним розподілом кандидатів


9

Коли використовується алгоритм Metropolis-Hastings з рівномірним розподілом кандидатів, що обґрунтовує рівень прийняття близько 20%?

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

Де я помиляюся в такому мисленні? Дуже дякую!

Ось ілюстрація моїх розрахунків:

Acceptance_rate=exp{l(θc|y)+log(p(θc))[l(θ|y)+log(p(θ)]},

де l це ймовірність журналу.

Як θ кандидати завжди приймаються з однакового інтервалу,

p(θc)=p(θ).

Тому розрахунок норми приймання скорочується до:

Acceptance_rate=exp{l(θc|y)[l(θ|y)]}

Правило прийняття θc є наступним чином:

Якщо UAcceptance_rate, де U виводиться з рівномірного розподілу в інтервалі [0,1], тоді

θ=θc,

ще намалювати θc від рівномірного розподілу в інтервалі [θmin,θmax]


1
Я змінив форматування для кращої читабельності, перевірте, чи не змінив початкове значення.
mpiktas

Відповіді:


9

Я вважаю, що слабка конвергенція та оптимальне масштабування алгоритмів методів Metropolis від випадкових кроків Робертса, Гельмана та Гілкса є джерелом оптимальної швидкості прийняття 0,234.

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

Алгоритм Метрополіс-Гастінгса насправді не є алгоритмом оптимізації, на відміну від імітованого відпалу. Це алгоритм, який повинен імітувати цільовий розподіл, отже, ймовірність прийняття не повинна спрямовуватися на 0.


9

Просто для додання відповіді від @NRH. Загальна ідея випливає з принципу Златинок :

  • Якщо стрибки «занадто великі», то ланцюжок стирчить;
  • Якщо стрибки "занадто малі", то ланцюг досліджує простір параметрів дуже повільно;
  • Ми хочемо, щоб стрибки були справедливими.

Звичайно, питання полягає в тому, що ми маємо на увазі під "правильним". По суті, для конкретного випадку вони мінімізують очікувану відстань стрибків у квадраті. Це еквівалентно мінімізації автокореляцій відставання-1. Нещодавно Шерлок та Робертс показали, що магія 0,234 стосується інших цільових розподілів:

К. Шерлок, Г. Робертс (2009); Оптимальне масштабування випадкової ходи Метрополіса на еліптично симетричних одномодальних цілях ; Бернуллі 15 (3)


1
(+1) Дякую за довідку. Ось ще одна довідка, що показує, що 0,234 не є повною історією.
NRH

2

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

  1. Коефіцієнт прийняття використовується для того, щоб вирішити, приймати чи відхиляти кандидата. Коефіцієнт, який ви називаєте як швидкість прийняття, насправді називається коефіцієнтом прийняття, і він відрізняється від рівня прийняття.
  2. Швидкість прийняття - це швидкість прийому кандидатів. Це відношення кількості унікальних значень у ланцюзі MCMC до загальної кількості значень у ланцюзі MCMC.

Тепер ваші сумніви в оптимальній приймальній ставці 20% насправді стосуються реальної норми приймання, а не коефіцієнта прийняття. Відповідь подано в інших відповідях. Я просто хотів вказати на непорозуміння, яке у вас виникає.


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