В статистике , Марковская цепь Монте-Карло ( MCMC ) представляет собой класс алгоритмов, используемых для получения выборок из распределения вероятностей . При наличии распределения вероятностей можно построить цепь Маркова , распределение элементов которой приближается к нему – то есть равновесное распределение цепи Маркова соответствует целевому распределению. Чем больше шагов включено, тем точнее распределение выборки соответствует фактическому желаемому распределению.
Методы Монте-Карло цепей Маркова используются для изучения распределений вероятностей, которые слишком сложны или имеют слишком большую размерность для изучения только аналитическими методами. Существуют различные алгоритмы для построения таких цепей Маркова, включая алгоритм Метрополиса–Гастингса .
В байесовской статистике методы Монте-Карло с цепями Маркова обычно используются для вычисления моментов и достоверных интервалов апостериорных распределений вероятностей . Использование методов MCMC позволяет вычислять большие иерархические модели , требующие интеграции сотен или тысяч неизвестных параметров. [5]
На практике ансамбль цепей обычно разрабатывается, начиная с набора точек, произвольно выбранных и достаточно удаленных друг от друга. Эти цепи являются стохастическими процессами «ходоков», которые перемещаются случайным образом в соответствии с алгоритмом, который ищет места с достаточно высоким вкладом в интеграл, чтобы перейти в следующее, назначая им более высокие вероятности.
Хотя методы MCMC были созданы для решения многомерных задач лучше, чем общие алгоритмы Монте-Карло, при увеличении числа измерений они также склонны страдать от проклятия размерности : области с более высокой вероятностью имеют тенденцию растягиваться и теряться в увеличивающемся объеме пространства, который мало способствует интегралу. Одним из способов решения этой проблемы может быть сокращение шагов пешехода, чтобы он не пытался постоянно выйти из области с самой высокой вероятностью, хотя в этом случае процесс будет сильно автокоррелированным и дорогим (т. е. для точного результата потребуется много шагов). Более сложные методы, такие как гамильтонов Монте-Карло и алгоритм Ванга и Ландау, используют различные способы уменьшения этой автокорреляции, при этом сохраняя процесс в областях, которые дают более высокий вклад в интеграл. Эти алгоритмы обычно опираются на более сложную теорию и их сложнее реализовать, но они обычно сходятся быстрее.
Примеры
Случайное блуждание
Алгоритм Метрополиса–Хастингса : этот метод генерирует цепь Маркова, используя плотность предложений для новых шагов и метод отклонения некоторых из предложенных ходов. Фактически это общая структура, которая включает в себя в качестве особых случаев самый первый и более простой MCMC (алгоритм Метрополиса) и многие более поздние альтернативы, перечисленные ниже.
Выборка Гиббса : Когда целевое распределение многомерно, алгоритм выборки Гиббса [6] обновляет каждую координату из ее полного условного распределения с учетом других координат. Выборку Гиббса можно рассматривать как особый случай алгоритма Метрополиса–Гастингса с коэффициентом принятия, равномерно равным 1. Когда извлечение из полных условных распределений не является простым, используются другие выборщики в пределах Гиббса (например, см. [7] [8] ). Выборка Гиббса популярна отчасти потому, что она не требует какой-либо «настройки». Структура алгоритма выборки Гиббса очень похожа на структуру вариационного вывода координатного восхождения в том, что оба алгоритма используют полные условные распределения в процедуре обновления. [9]
Алгоритм Ланжевена, скорректированный по Метрополису, и другие методы, которые полагаются на градиент (и, возможно, вторую производную) целевой логарифмической плотности, чтобы предлагать шаги, которые с большей вероятностью будут направлены в сторону более высокой плотности вероятности. [10]
Гамильтонов (или гибридный) Монте-Карло (HMC): пытается избежать поведения случайного блуждания, вводя вспомогательный вектор импульса и реализуя гамильтонову динамику , так что функция потенциальной энергии является целевой плотностью. Выборки импульса отбрасываются после выборки. Результатом гибридного Монте-Карло является то, что предложения перемещаются по пространству выборки большими шагами; поэтому они менее коррелированы и сходятся к целевому распределению быстрее.
Псевдомаргинальный метод Метрополиса–Гастингса: этот метод заменяет оценку плотности целевого распределения несмещенной оценкой и полезен, когда целевая плотность недоступна аналитически, например, модели скрытых переменных .
Выборка среза : этот метод основан на принципе, что можно сделать выборку из распределения, выбрав равномерно область под графиком его функции плотности. Он чередует равномерную выборку в вертикальном направлении с равномерной выборкой из горизонтального «среза», определяемого текущим вертикальным положением.
Multiple-try Metropolis : Этот метод является вариацией алгоритма Metropolis–Hastings, который допускает несколько попыток в каждой точке. Делая возможным делать более крупные шаги на каждой итерации, он помогает устранить проклятие размерности.
Обратимый скачок : этот метод является вариантом алгоритма Метрополиса–Гастингса, который допускает предложения, которые изменяют размерность пространства. [11] Методы Монте-Карло на основе цепей Маркова, которые изменяют размерность, давно используются в приложениях статистической физики , где для некоторых задач используется распределение, являющееся большим каноническим ансамблем (например, когда число молекул в ящике является переменным). Но вариант с обратимым скачком полезен при выполнении выборки Монте-Карло на основе цепей Маркова или Гиббса по непараметрическим байесовским моделям, таким как те, которые включают процесс Дирихле или процесс китайского ресторана , где число смешиваемых компонентов/кластеров/и т. д. автоматически выводится из данных.
Методы взаимодействующих частиц
Методологии взаимодействующих MCMC представляют собой класс методов частиц среднего поля для получения случайных выборок из последовательности распределений вероятностей с возрастающим уровнем сложности выборки. [12] Эти вероятностные модели включают модели состояний пространства путей с возрастающим временным горизонтом, апостериорные распределения относительно последовательности частичных наблюдений, возрастающие наборы уровней ограничений для условных распределений, убывающие графики температур, связанные с некоторыми распределениями Больцмана–Гиббса, и многие другие. В принципе, любой сэмплер Монте-Карло с цепями Маркова можно превратить во взаимодействующий сэмплер Монте-Карло с цепями Маркова. Эти взаимодействующие сэмплеры Монте-Карло с цепями Маркова можно интерпретировать как способ параллельного запуска последовательности сэмплеров Монте-Карло с цепями Маркова. Например, взаимодействующие алгоритмы имитации отжига основаны на независимых перемещениях Метрополиса–Гастингса, последовательно взаимодействующих с механизмом типа выборки-повторной выборки. В отличие от традиционных методов Монте-Карло на основе цепей Маркова, параметр точности этого класса взаимодействующих сэмплеров Монте-Карло на основе цепей Маркова связан только с числом взаимодействующих сэмплеров Монте-Карло на основе цепей Маркова. Эти передовые методологии частиц относятся к классу моделей частиц Фейнмана–Каца, [13] [14] также называемых методами последовательного Монте-Карло или фильтрами частиц в сообществах байесовского вывода и обработки сигналов . [15] Методы Монте-Карло на основе взаимодействующих цепей Маркова также можно интерпретировать как алгоритм генетической частицы с мутацией-селекцией с мутациями Монте-Карло на основе цепей Маркова.
Квази-Монте-Карло
Метод квази-Монте-Карло является аналогом обычного метода Монте-Карло, который использует последовательности с низким расхождением вместо случайных чисел. [16] [17] Он дает ошибку интегрирования, которая затухает быстрее, чем ошибка истинной случайной выборки, что количественно определяется неравенством Коксмы–Главки . Эмпирически он позволяет уменьшить как ошибку оценки, так и время сходимости на порядок. [16] Методы квази-Монте-Карло на основе цепей Маркова [18] [19], такие как метод Array–RQMC, объединяют рандомизированное квази-Монте-Карло и моделирование цепей Маркова путем одновременного моделирования цепей таким образом, что это лучше аппроксимирует истинное распределение цепи, чем обычный MCMC. [20] В эмпирических экспериментах дисперсия среднего значения функции состояния иногда сходится со скоростью или даже быстрее, чем скорость Монте-Карло. [21]
Конвергенция
Обычно несложно построить цепь Маркова с желаемыми свойствами. Более сложная проблема — определить, сколько шагов необходимо для сходимости к стационарному распределению в пределах приемлемой погрешности. [22] Хорошая цепь будет иметь быстрое перемешивание : стационарное распределение достигается быстро, начиная с произвольной позиции. Стандартный эмпирический метод оценки сходимости — запустить несколько независимых смоделированных цепей Маркова и проверить, что отношение межцепочечных и внутрицепочечных дисперсий для всех выбранных параметров близко к 1. [22] [23]
Обычно выборка Монте-Карло на основе цепи Маркова может лишь аппроксимировать целевое распределение, поскольку всегда присутствует некоторый остаточный эффект исходного положения. Более сложные алгоритмы Монте-Карло на основе цепи Маркова, такие как связывание из прошлого , могут производить точные выборки за счет дополнительных вычислений и неограниченного (хотя и конечного в ожидание) времени выполнения .
Многие методы Монте-Карло случайного блуждания перемещаются вокруг распределения равновесия относительно небольшими шагами, без тенденции к тому, чтобы шаги шли в одном направлении. Эти методы легко реализовать и проанализировать, но, к сожалению, для идущего может потребоваться много времени, чтобы исследовать все пространство. Идущий часто будет возвращаться и проходить уже пройденную территорию.
Дальнейшее рассмотрение сходимости находится в центральной предельной теореме цепи Маркова . См. [24] для обсуждения теории, связанной со сходимостью и стационарностью алгоритма Метрополиса–Гастингса.
Программное обеспечение
Несколько программ предоставляют возможности выборки MCMC, например:
Программное обеспечение ParaMonte для параллельного Монте-Карло доступно на нескольких языках программирования, включая C , C++ , Fortran , MATLAB и Python .
^ Kasim, MF; Bott, AFA; Tzeferacos, P.; Lamb, DQ; Gregori, G.; Vinko, SM (сентябрь 2019 г.). «Получение полей из протонной радиографии без профилей источников». Physical Review E. 100 ( 3): 033208. arXiv : 1905.12934 . Bibcode : 2019PhRvE.100c3208K. doi : 10.1103/PhysRevE.100.033208. PMID 31639953. S2CID 170078861.
^ Гупта, Анкур; Роулингс, Джеймс Б. (апрель 2014 г.). «Сравнение методов оценки параметров в стохастических химических кинетических моделях: примеры в системной биологии». Журнал AIChE . 60 (4): 1253– 1268. Bibcode : 2014AIChE..60.1253G. doi : 10.1002/aic.14409. PMC 4946376. PMID 27429455 .
^ См. Гилл 2008.
↑ См. Роберт и Каселла 2004.
^ Баннерджи, Судипто; Карлин, Брэдли П.; Гельфанд, Алан П. (2014-09-12). Иерархическое моделирование и анализ пространственных данных (второе издание). CRC Press. стр. xix. ISBN978-1-4398-1917-3.
^ Geman, Stuart; Geman, Donald (ноябрь 1984 г.). «Стохастическая релаксация, распределения Гиббса и байесовское восстановление изображений». Труды IEEE по анализу образов и машинному интеллекту . PAMI-6 (6): 721– 741. doi :10.1109/TPAMI.1984.4767596. ISSN 0162-8828. PMID 22499653. S2CID 5837272.
^ Gilks, WR; Wild, P. (1992-01-01). «Адаптивная отбраковка выборки для выборки Гиббса». Журнал Королевского статистического общества. Серия C (Прикладная статистика) . 41 (2): 337– 348. doi :10.2307/2347565. JSTOR 2347565.
^ Gilks, WR; Best, NG ; Tan, KKC (1995-01-01). «Адаптивное отклонение выборки метрополии в выборке Гиббса». Журнал Королевского статистического общества. Серия C (Прикладная статистика) . 44 (4): 455– 472. doi :10.2307/2986138. JSTOR 2986138.
^ Ли, Се Юн (2021). «Сэмплер Гиббса и вариационный вывод с восхождением координат: обзор теории множеств». Communications in Statistics - Theory and Methods . 51 (6): 1– 21. arXiv : 2008.01006 . doi : 10.1080/03610926.2021.1921214. S2CID 220935477.
↑ См . Страмер 1999.
↑ См. Грин 1995.
^ Del Moral, Pierre (2013). Моделирование среднего поля для интегрирования Монте-Карло. Chapman & Hall/CRC Press. стр. 626.
^ Del Moral, Pierre (2004). Формулы Фейнмана–Каца. Генеалогические и взаимодействующие приближения частиц. Springer. стр. 575.
^ Дель Мораль, Пьер; Микло, Лоран (2000). «Аппроксимация формул Фейнмана-Каца ветвящимися и взаимодействующими системами частиц с применением к нелинейной фильтрации». В Жаке Аземе; Мишель Леду; Мишель Эмери; Марк Йор (ред.). Семинар вероятностей XXXIV (PDF) . Конспект лекций по математике. Том. 1729. С. 1–145 . doi : 10.1007/bfb0103798. ISBN978-3-540-67314-9.
^ Del Moral, Pierre (2006). «Последовательные выборки Монте-Карло». Журнал Королевского статистического общества. Серия B (Статистическая методология) . 68 (3): 411– 436. arXiv : cond-mat/0212648 . doi :10.1111/j.1467-9868.2006.00553.x. S2CID 12074789.
^ аб Папагеоргиу, Анаргирос; Трауб, Джозеф (1996). «Победа над Монте-Карло» (PDF) . Риск . 9 (6): 63–65 .
^ Соболь, Илья М (1998). «О квази-монте-карловских интегрированиях». Математика и компьютеры в моделировании . 47 (2): 103– 112. doi :10.1016/s0378-4754(98)00096-2.
^ Чен, С.; Дик, Йозеф; Оуэн, Арт Б. (2011). «Согласованность квази-Монте-Карло цепи Маркова на непрерывных пространствах состояний». Annals of Statistics . 39 (2): 673–701 . arXiv : 1105.1896 . doi : 10.1214/10-AOS831 .
^ Триббл, Сет Д. (2007). Марковские цепные алгоритмы Монте-Карло с использованием полностью равномерно распределенных управляющих последовательностей (дисс.). Стэнфордский университет. ProQuest 304808879.
^ L'Ecuyer, P.; Lécot, C.; Tuffin, B. (2008). "Метод рандомизированного квази-Монте-Карло моделирования для цепей Маркова" (PDF) . Исследование операций . 56 (4): 958–975 . doi :10.1287/opre.1080.0556.
^ L'Ecuyer, P.; Munger, D.; Lécot, C.; Tuffin, B. (2018). «Методы сортировки и скорости сходимости для массива-RQMC: некоторые эмпирические сравнения». Математика и компьютеры в моделировании . 143 : 191– 201. doi :10.1016/j.matcom.2016.07.010.
^ ab Гельман, А.; Рубин, ДБ (1992). "Вывод из итеративного моделирования с использованием множественных последовательностей (с обсуждением)" (PDF) . Статистическая наука . 7 (4): 457– 511. Bibcode :1992StaSc...7..457G. doi : 10.1214/ss/1177011136 .
^ Cowles, MK; Carlin, BP (1996). «Диагностика сходимости цепей Маркова Монте-Карло: сравнительный обзор». Журнал Американской статистической ассоциации . 91 (434): 883–904 . CiteSeerX 10.1.1.53.3445 . doi :10.1080/01621459.1996.10476956.
^ Хилл, SD; Сполл, JC (2019). «Стационарность и сходимость алгоритма Метрополиса-Гастингса: взгляд на теоретические аспекты». Журнал IEEE Control Systems . 39 (1): 56– 67. doi :10.1109/MCS.2018.2876959. S2CID 58672766.
^ Форман-Макки, Дэниел; Хогг, Дэвид В.; Лэнг, Дастин; Гудман, Джонатан (2013-11-25). "ведущий: Молот MCMC". Публикации Астрономического общества Тихого океана . 125 (925): 306– 312. arXiv : 1202.3665 . Bibcode : 2013PASP..125..306F. doi : 10.1086/670067. S2CID 88518555.
^ Фан, Ду; Прадхан, Нирадж; Янковяк, Мартин (24.12.2019). «Компонуемые эффекты для гибкого и ускоренного вероятностного программирования в NumPyro». arXiv : 1912.11554 [stat.ML].
Источники
Кристоф Андриё, Нандо Де Фрейтас, Арно Дусе и Майкл И. Джордан. Введение в MCMC для машинного обучения, 2003 г.
Асмуссен, Сёрен; Глинн, Питер В. (2007). Стохастическое моделирование: алгоритмы и анализ . Стохастическое моделирование и прикладная вероятность. Т. 57. Springer.
Ацбергер, П. «Введение в методы Монте-Карло» (PDF) .
Берг, Бернд А. (2004). Моделирование Монте-Карло с использованием цепей Маркова и их статистический анализ . World Scientific .
Болстад, Уильям М. (2010). Понимание вычислительной байесовской статистики . Wiley. ISBN978-0-470-04609-8.
Грин, П. Дж. (1995). «Вычисление Монте-Карло с обратимым скачком цепи Маркова и определение байесовской модели». Biometrika . 82 (4): 711– 732. CiteSeerX 10.1.1.407.8942 . doi :10.1093/biomet/82.4.711.
Нил, Рэдфорд М. (2003). «Выборка срезов». Annals of Statistics . 31 (3): 705–767 . doi : 10.1214/aos/1056562461 . JSTOR 3448413.
Нил, Рэдфорд М. (1993). «Вероятностный вывод с использованием методов Монте-Карло на основе цепей Маркова».
Роберт, Кристиан П.; Казелла, Г. (2004). Статистические методы Монте-Карло (2-е изд.). Спрингер. ISBN978-0-387-21239-5.
Смит, Р. Л. (1984). «Эффективные процедуры Монте-Карло для генерации точек, равномерно распределенных по ограниченным областям». Исследование операций . 32 (6): 1296– 1308. doi :10.1287/opre.32.6.1296. hdl : 2027.42/7681 .
Сполл, Дж. К. (апрель 2003 г.). «Оценка с помощью метода Монте-Карло на основе цепи Маркова». Журнал IEEE Control Systems . 23 (2): 34– 45. doi :10.1109/mcs.2003.1188770.
Stramer, O.; Tweedie, R. (1999). «Модели типа Ланжевена II: самонацеливающиеся кандидаты для алгоритмов MCMC». Методология и вычисления в прикладной теории вероятностей . 1 (3): 307– 328. doi :10.1023/A:1010090512027. S2CID 1512689.
Дальнейшее чтение
Диаконис, Перси (апрель 2009 г.). «Революция Монте-Карло в цепях Маркова» (PDF) . Bull. Amer. Math. Soc. 46 (2): 179– 205. doi : 10.1090/s0273-0979-08-01238-x . S 0273-0979(08)01238-X.
Ричи, Мэтью (май 2010 г.). «Эволюция методов Монте-Карло для цепей Маркова» (PDF) . The American Mathematical Monthly . 117 (5): 383– 413. CiteSeerX 10.1.1.295.4478 . doi :10.4169/000298910x485923. S2CID 13630404.