Як ABC та MCMC відрізняються у своїх програмах?


15

Наскільки я розумію, приблизні байєсівські обчислення (ABC) та ланцюг Маркова Монте-Карло (MCMC) мають дуже схожі цілі. Нижче я описую своє розуміння цих методів та те, як я сприймаю відмінності в їх застосуванні до реальних даних про життя.

Орієнтовний байєсівський обчислення

ABC полягає у вибірці параметра від попереднього, за допомогою чисельного моделювання обчислити статистику x i, яка порівнюється з деякими спостережуваними x o b s . На основі алгоритму відхилення, x iθxixobsxi або зберігається, або відхиляється. Список збережених s зробив задній розподіл.xi

Марківська ланцюг Монте-Карло

MCMC полягає у вибірці попереднього розподілу параметра . Він бере перший зразок θ 1 , обчислює P ( x o b s | θ 1 ) P ( θ 1 ), а потім переходить (за деяким правилом) до нового значення θ 2, для якого P ( x o b s | θ 2 ) P ( θ 2 ) обчислюється знову. Співвідношення Pθθ1P(xobs|θ1)P(θ1)θ2P(xobs|θ2)P(θ2) обчислюється і залежно від деякого порогового значення наступний стрибок відбудеться з першої чи другої позиції. Дослідженняθзначень іде одне і одне, і до кінця розподіл збереженихθзначень - це задній розподілP(θ|x)(з досі невідомої мені причини).P(xobs|θ2)P(θ2)P(xobs|θ1)P(θ1)θθP(θ|x)

Я усвідомлюю, що мої пояснення пропускають представлення різноманітності методів, що існують під кожним із цих термінів (особливо для MCMC).

ABC проти MCMC (плюси і мінуси)

ABC має ту перевагу, що не потрібно вміти аналітично розв’язувати . Як така ABC зручна для складної моделі, де MCMC не зробила б її.P(x|θ)P(θ)

MCMC дозволяє робити статистичні тести (тест на коефіцієнт ймовірності, G-тест, ...), хоча я не думаю, що це можливо для ABC.

Я правий поки що?

Питання

  • Як ABC та MCMC відрізняються у своїх програмах? Як вирішується скористатися тим чи іншим методом?

1
"MCMC полягає у вибірці попереднього розподілу параметра θ." Хоча це, безумовно, можна зробити, це не обов’язково і навіть не бажано в більшості випадків. Для багатьох застосувань MCMC ми відбираємо θ2 з розподілу кандидатів, орієнтованого навколо θ1 (наприклад, гаусса з невеликим стандартним відхиленням), а потім обчислюємо співвідношення прийняття / відхилення, як ви згадували вище. Це на відміну від ABC, де ми відбираємо вибірку з попереднього (і це єдиний спосіб включення попередньої інформації в ABC, як правило).
z_dood

Відповіді:


12

Деякі додаткові коментарі до відповіді Бьорна:

  1. ABC вперше був представлений Рубіном (1984) як пояснення природи байєсівського умовиводу, а не для обчислювальних цілей. У цій роботі він пояснив, як розподіляють вибірки та попередній розподіл взаємодіють для отримання заднього розподілу.

  2. Однак ABC в основному експлуатується з обчислювальних причин. Населення генетики придумали метод на деревних моделях, коли ймовірність спостережуваного зразка була непереборною. Схеми MCMC (Data Augmentation), які були доступні в таких налаштуваннях, були надзвичайно неефективними, тому важливе значення було вибіркою навіть з параметром одного виміру ... По суті, ABC є заміною методів Монте-Карло, таких як MCMC або PMC, коли вони доступні не для всіх практичних цілей. Коли вони доступні, ABC з'являється як проксі, який може бути використаний для їх калібрування, якщо він працює швидше.

  3. У більш сучасній перспективі я особисто розглядаю ABC як приблизний метод висновку, а не обчислювальну техніку. Побудувавши приблизну модель, можна зробити висновок про параметр, що цікавить, не обов'язково покладаючись на точну модель. Хоча деяка ступінь валідації необхідна в цьому налаштуванні, вона не менш достовірна, ніж виконання усереднення моделі або непараметрики. Насправді, ABC можна розглядати як особливий тип непараметричної баєсової статистики.

  4. Можна також показати, що (галасливий) ABC - це цілком чітко визначений байєсівський підхід, якщо замінити оригінальну модель та дані галасливими. Як такий він дозволяє робити всі байєсівські умовиводи, про які можна думати. У тому числі тестування. Наш внесок у дискусію про тестування ABC та гіпотез полягає в тому, що приблизна модель, що лежить в основі ABC, може виявитися погано оснащеною для оцінки відповідності гіпотези, наданої даними, але обов'язково , що так само добре, оскільки більшість застосувань ABC у популяції генетика стосується вибору моделі.

  5. У ще більш пізній перспективі ми можемо бачити ABC як байєсівський варіант непрямого висновку, де параметри статистичної моделі пов'язані з моментами заздалегідь визначеної статистики. Якщо цієї статистики достатньо (або достатньо у просторічному розумінні), щоб ідентифікувати ці параметри, ABC може бути показано, щоб сходити до справжнього значення параметрів з кількістю спостережень.


2
Я перевірив цю відповідь, але хочу порекомендувати спочатку прочитати відповідь @ Бьорна (+1), а потім відповідь Сіань.
Remi.b

12

Різниця полягає в тому, що для ABC вам не потрібен аналітичний вираз для П(х|θ) і замість цього наблизити їх, моделюючи дані та бачивши, для яких значень θзмодельовані дані найчастіше (приблизно) відповідають спостережуваним даним (із запропонованими значеннями, наприклад, отриманими випадковим чином від попередніх). Для простих випадків, наприклад, однієї біноміальної випадкової величини з не надто великим розміром вибірки, ви навіть можете вимагати точної відповідності, і в цих випадках дійсно абсолютно нічого, що ви не могли б зробити з цими задніми зразками, з якими ви також не могли зробити. стандартні зразки MCMC. Для більш складних ситуацій з безперервним (навіть для багатоваріантних дискретних результатів) та потенційно багатоваріантними результатами, які потребують точного відповідності, більше неможливо.

Насправді є MCMC-версії ABC, які вирішують питання, що якщо у вас є попередній, який не дуже нагадує задній (наприклад, тому що попередній дуже неінформативний), вибірки шляхом виведення з попереднього вкрай неефективні, тому що ви дуже рідко отримати тісну відповідність між спостережуваними та імітованими даними.

Коли П(х|θ)аналітично доступний, я припускаю, що майже завжди буде переважніше використовувати стандартний MCMC. Я гадаю, можна якось оцінити оцінкуП(х|θ)настільки неймовірно обчислювально дорого, що ABC працює краще. Можливо, хтось знає приклад цього. Навпаки, я б розглядав ABC або MCMC-ABC (або один із багатьох інших варіантів ABC) насамперед, коли стандартний підхід MCMC не є варіантом, оскількиП(х|θ)не є аналітично доступним. Звичайно, в таких випадках можуть бути інші можливі варіанти (наприклад, INLA, квадратичні наближення до ймовірностей тощо), які можуть бути ефективнішими / успішнішими для конкретних проблем. Зрештою, будь-які обмеження в тому, що ви можете зробити із задніми зразками ABC, випливають лише з того, що вимагається приблизно відповідність між фактичними та змодельованими даними (якби ви могли вимагати точної відповідності, проблем взагалі не було б). Є кілька хороших вступних праць, наприклад, цей документ Маріна та ін. (2012 р . ) . Принаймні один із співавторів (@ Xi'an) тут є активним дописувачем, і я хотів би тут також роздумувати над своїми думками - я вважаю, що він, можливо, зможе сказати набагато більше на тестування.


Сподіваюся, мені вдалося виправити посилання зараз (воно зараз працює для мене).
Бьорн

1
(+1) дуже хороші бали!
Сіань

1
"Коли P (x | θ) є аналітично доступною, я припускаю, що майже завжди буде переважніше використовувати стандартний MCMC." Майже, але не завжди. Уявіть, що один має дуже великий розмір вибірки (10 ^ 9) у поєднанні з багатьма параметрами. Перераховувати ймовірність для кожного набору параметрів стає дуже дорого. У ABC існує багато хитрощів, які можна використати для прискорення цього. З MCMC не так багато.
z_dood

2
@z_dood: коли занадто багато спостережень, щоб справді обчислити ймовірність, як, наприклад, коли їх потрібно зберігати на різних комп’ютерах, стає сумнівом, що функція ймовірності недоступна в аналітичному відношенні.
Сіань
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.