MCMC з алгоритмом Metropolis-Hastings: Вибір пропозиції


13

Мені потрібно зробити моделювання, щоб оцінити інтеграл функції 3 параметрів, ми говоримо f, яка має дуже складну формулу. Для його обчислення пропонується використовувати метод MCMC та реалізувати алгоритм Metropolis-Hastings для генерування значень, розподілених як , і було запропоновано використовувати 3 змінних нормальних як розподіл пропозицій. Читаючи кілька прикладів з цього приводу, я бачив, що деякі з них використовують нормальну з фіксованими параметрами а деякі використовують зі змінною середньою , де - останнє прийняте значення як розподілено згідно з . У мене є деякі сумніви щодо обох підходів:fN(μ,σ)N(X,σ)Xf

1) Який сенс вибору останнього прийнятого значення як нового середнього рівня розповсюдження нашої пропозиції? Моя інтуїція говорить, що це повинно гарантувати, що наші цінності будуть ближче до значень, розподілених як і шанси на прийняття будуть більшими. Але чи не надто це концентрує наш зразок? Це гарантовано, що якщо я отримаю більше проб, ланцюг стане нерухомим?f

2) Чи не вибрали би фіксовані параметри (оскільки аналіз дуже важко проаналізувати) було б дуже важким і залежним від першого зразка, який нам потрібно вибрати для запуску алгоритму? У цьому випадку, що було б найкращим підходом до пошуку, який із них кращий?f

Чи є один із цих підходів кращим за інший чи це залежить від конкретного випадку?

Сподіваюсь, мої сумніви ясні, і я був би радий, якщо можна було б дати трохи літератури (я прочитав деякі статті на цю тему, але більше - це краще!)

Спасибі заздалегідь!

Відповіді:


10

1) Ви могли б подумати про цей метод як про випадковий підхід. Коли розподіл пропозицій , його зазвичай називають алгоритмом метрополії. Якщо занадто мало, ви будете мати високу швидкість прийняття і дуже повільно вивчите цільовий розподіл. Насправді, якщо занадто малий і розподіл мультимодальний, вибірки можуть застрягнути в певному режимі і не зможуть повністю вивчити цільовий розподіл. З іншого боку, якщо занадто велика, швидкість прийняття буде занадто низькою. Оскільки у вас є три виміри, ваш розподіл пропозицій матиме коваріаційну матрицюxxtN(xt,σ2)σ2σ2σ2Σщо, ймовірно, вимагатиме різних варіацій та коваріацій для кожного виміру. Вибір відповідного може бути складним.Σ

2) Якщо ваш розповсюдження пропозицій завжди , це незалежний алгоритм Metropolis-Hastings, оскільки ваше розповсюдження пропозицій не залежить від вашого поточного зразка. Цей метод найкраще працює, якщо ваше розповсюдження пропозицій є хорошим наближенням до цільового розподілу, з якого ви хочете взяти вибірку. Ви вірні, що вибір нормального наближення може бути важким.N(μ,σ2)

Успіх жодного з методів не повинен залежати від початкового значення вибірки. Де б ви не починали, ланцюг Маркова з часом повинен сходитися до цільового розподілу. Щоб перевірити конвергенцію, можна запустити кілька ланцюгів з різних вихідних точок і провести діагностику конвергенції, таку як діагностика конвергенції Гельмана-Рубіна.


Я не впевнений, що твердження: "2) Якщо ваша пропозиція розповсюджується завжди N(μ,σ2), то це незалежний алгоритм Metropolis-Hastings, оскільки розповсюдження вашої пропозиції не залежить від вашого поточного зразка: "правильно, оскільки не малює зразки з N(μ,σ2)симетричним, а отже, це правильніше називатиметься алгоритмом Metropolis, а не алгоритмом Metropolis-Hasting. Я не зовсім впевнений у своєму самому, тому я також задаю питання.
роді

@rhody. Алгоритм Metropolis не відмовляється від кондиціонування у вашому поточному місці. Вся справа в тому, щоб повільно бродити навколо простору параметрів із симетричною пропозицією з вашого поточного місця розташування. Використовуючи БУДЬ-яку симетричну пропозицію, яка залежить від вашого поточного місцезнаходження та розрахунку ймовірності прийняття Metropolis, ви з часом перейдете до цільового розподілу. Для незалежного алгоритму Metropolis-Hastings ви хочете, щоб ваш розподіл пропозицій був наближеним до цільового розподілу, і ви використовуєте інший розрахунок для ймовірності прийняття.
jsk

@rhody. Також вірно, що нормальний розподіл - це симетричний розподіл, але це не той тип симетрії, про який йдеться тут. Якщо q - ваше розповсюдження пропозицій, то розподіл пропозицій симетричний, якщо q (Y | X) = q (X | Y). ЯкщоqN(μ,σ2), то q не симетричний, оскільки q(Y)q(X) для усіх X і Y.
jsk

@jsk xN(x,ε)вважається симетричним, правда?
користувач76284
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.