Существует ли реализованный пробоотборник Монте-Карло / MCMC, который может работать с изолированными локальными максимумами апостериорного распределения?


10

В настоящее время я использую байесовский подход для оценки параметров модели, состоящей из нескольких ODE. Поскольку у меня есть 15 параметров для оценки, мое пространство выборки является 15-мерным, и в моем поиске апостериорного распределения, по-видимому, имеется много локальных максимумов, которые очень изолированы большими областями с очень низкой вероятностью.

Это приводит к проблемам смешения моих цепей Монте-Карло, поскольку очень маловероятно, что одна цепочка «выпрыгнет» из одного локального максимума и случайно попадет в один из других максимумов.

Похоже, что в этой области проводится много исследований, поскольку легко найти документы, посвященные этой проблеме (см. Ниже), но найти реальную реализацию сложно. Я нашел только пакеты, относящиеся к молекулярной динамике, но не байесовский вывод. Существуют ли реализации (MC) MC-сэмплеров, которые способны работать с изолированными локальными максимумами?

Я вынужден работать с Matlab, так как это то, на чем написана моя модель ODE, поэтому предложения по Matlab приветствуются ;-). Однако, если на каком-то другом языке есть «приложение-убийца», возможно, я смогу убедить мой PI переключиться ;-).

В настоящее время я работаю с пробоотборником Delayed-Rejection / Adaptive Monte Carlo, написанным Haario, Laine et al. и это также единственный сэмплер, который я смог найти до сих пор, который является более сложным, чем стандартный алгоритм Метрополиса-Гастингса


Известные подходы, кажется, являются:

РЕДАКТИРОВАТЬ Обновлено 2017-Mar-07 с тем, что я узнал за это время

Несколько похожих цепочек с разными начальными точками

Межцепочечная адаптация. Используйте эмпирическую ковариационную матрицу объединенных выборок, созданных несколькими независимыми цепочками, чтобы обновить ковариационные матрицы распределений предложений цепочки. (1)

Несколько Цепей с различным темперированием

Закаливание: Некоторая «температура», по-видимому, изменяет задний ландшафт, делая более вероятным смешивание цепей. (Я еще не особо углублялся в это) (1) Цель закаливания состоит в том, чтобы сгладить (многомерный) ландшафт вероятности, образованный апостериорным распределением вероятности. Обычно это достигается путем возведения апостериорной вероятности в степень , где задний ландшафт выравнивается для (3, с.298). Это означает, что вместо того, чтобы вычислять апостериорную вероятность состояния , для данных вычисляется умеренная апостериорная вероятность1/TT>1p(θD)θD

p(θD)1/T(p(Dθ)p(θ))1/T

Чем выше , тем более плоские и широкие пики в вероятностном ландшафте становятся. Следовательно, более высокие значения приводят к более высокой вероятности переключения пробоотборника с одного локального максимума на другой. Однако не является распределением, которое ищется, если . Следовательно, цепочка выборок этого распределения должна использоваться, чтобы включить выборку из впоследствии.TTp(θD)1/TT1p(θD)

Образцы из исходного, нетемперированного апостериорного распределения, данные образцы из закаленной версии этого распределения могут быть получены несколькими методами:

  • Метрополис в сочетание MCMC запускать несколько цепей одновременно, каждый из которых имеет различное , но постоянное значение для . Переключите состояния двух цепочек вероятностно. Используйте только выборки из цепочки с для последующих оценок; другие цепи просто следят за тем, чтобы все пики были выбраны. Ссылка (4) имеет параллельный алгоритм и цитирует статью конференции и учебник для идеи (5,6)TT=1

  • Малый Мир MCMC. Сэмплер переключается между двумя предложениями. Чаще всего используется распределение предложений с небольшой дисперсией, редко используется предложение с большой дисперсией. Выбор между этими двумя предложениями является стохастическим. Предложения с большой дисперсией также могут быть взяты из другой цепочки, которая делает только очень большие скачки, пробуя как можно большую часть пробного пространства грубым образом (2,7).

Гамильтониан Монте-Карло (ГМК)

Я не знаю много об этом, но сэмплер No-U-Turn (NUTS) от JAGS, похоже, использует его. См. Исх. (8). Алексей Рогожников создал наглядное пособие по теме.


Ссылки:

(1) Крайу и др., 2009: учись у своего соседа: параллельная и региональная адаптивная MCMC. J Am Stat Assoc 104: 488, с. 1454-1466. http://www.jstor.org/stable/40592353

(2) Гуам и др., 2012: MCMC Small World с темперированием: эргосити и спектральный разрыв. https://arxiv.org/abs/1211.4675 ( только на arXiv )

(3): Brooks et al. (2011). Справочник Маркова Цепи Монте-Карло. CRC пресс.

(4): Altekar et al. (2004): параллельная метрополисная цепь Маркова Монте-Карло для байесовского филогенетического вывода. Биоинформатика 20 (3) 2004, стр. 407–415, http://dx.doi.org/10.1093/bioinformatics/btg427

(5): Geyer CJ (1991) Марковская цепь Монте-Карло с максимальной вероятностью. В: Керамидас (ред.), Вычислительная наука и статистика: Материалы 23-го Симпозиума по интерфейсу . Основа Интерфейса, Станция Fairfax, стр. 156–163.

(6): Гилкс У.Р. и Робертс Г.О. (1996). Стратегии улучшения MCMC. В кн .: Гилкс В.Р., Ричардсон С. и Шпигельхальтер (ред.) Марковская цепь Монте-Карло на практике . Чепмен и Холл, с. 89-114.

(7): Guan Y, et al. Марковская цепь Монте-Карло в маленьких мирах. Статистика и вычисления (2006) 16 (2), с. 193-202. http://dx.doi.org/10.1007/s11222-006-6966-6

(8): Хоффманн М. и Гельман А. (2014): Пробоотборник без поворота: адаптивная установка длин пути в гамильтониане Монте-Карло. Журнал исследований машинного обучения , 15, с. 1351-1381. https://arxiv.org/abs/1111.4246

Ответы:


1

Ни одна из приведенных выше стратегий не подходит для нескольких оптимумов.

Лучшим выбором являются MCMC дифференциального развития и производные MCMC, такие как DREAM. Эти алгоритмы работают с несколькими цепочками MCMC, которые смешаны для создания предложений. Если у вас есть хотя бы одна цепочка в каждой оптиме, они смогут эффективно прыгать между оптимой. Реализация в R доступна здесь https://cran.r-project.org/web/packages/BayesianTools/index.html

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.