Алгоритм вложенной выборки — это вычислительный подход к задачам байесовской статистики по сравнению моделей и генерации выборок из апостериорных распределений. Он был разработан в 2004 году физиком Джоном Скиллингом. [1]
Теорема Байеса может быть применена к паре конкурирующих моделей и для данных , одна из которых может быть верной (хотя какая из них неизвестно), но обе не могут быть истинными одновременно. Апостериорная вероятность для может быть рассчитана как:
Априорные вероятности и уже известны, так как они выбираются исследователем заранее. Однако оставшийся байесовский фактор оценить не так просто, так как в общем случае он требует маргинализации мешающих параметров. Как правило, имеет набор параметров, которые можно сгруппировать вместе и назвать , а также собственный вектор параметров, который может иметь разную размерность, но по-прежнему называется . Маргинализация для
и аналогично для . Этот интеграл часто трудно поддается аналитическому анализу, и в этих случаях необходимо использовать численный алгоритм для нахождения аппроксимации. Алгоритм вложенной выборки был разработан Джоном Скиллингом специально для аппроксимации этих интегралов маргинализации, и он имеет дополнительное преимущество, заключающееся в генерации выборок из апостериорного распределения . [2] Это альтернатива методам из байесовской литературы [3] , таким как промежуточная выборка и выборка по важности защиты.
Вот простая версия алгоритма вложенной выборки, за которой следует описание того, как он вычисляет предельную плотность вероятности , где is или :
Начните с точек , выбранных из предыдущего.for to do % Количество итераций j выбирается наугад. текущие значения правдоподобия точек ; Сохраните точку с наименьшей вероятностью как точку выборки с весом . Обновите точку с наименьшей вероятностью с помощью некоторых шагов Монте-Карло цепи Маркова в соответствии с предыдущим, принимая только шаги, которые сохранить вероятность выше .конец возврата ;
На каждой итерации является оценкой количества априорной массы, покрываемой гиперобъемом в пространстве параметров всех точек с вероятностью больше . Весовой коэффициент является оценкой количества априорной массы, лежащей между двумя вложенными гиперповерхностями и . Шаг обновления вычисляет сумму для численной аппроксимации интеграла
В пределе эта оценка имеет положительное смещение порядка [4] , которое можно убрать, используя вместо в приведенном выше алгоритме.
Идея состоит в том, чтобы разделить диапазон и оценить для каждого интервала априорную вероятность того, что случайно выбранный интервал будет отображаться в этот интервал. Это можно рассматривать как байесовский способ численной реализации интеграции Лебега . [5]
Реализации
Общедоступные для скачивания примеры реализации, демонстрирующие алгоритм вложенной выборки, написаны на нескольких языках программирования .
Простые примеры на C , R или Python есть на сайте Джона Скиллинга. [6]
Порт Haskell вышеуказанных простых кодов находится на Hackage . [7]
Пример в R , изначально предназначенный для подгонки спектров , описан в [8] и находится на GitHub. [9]
Пример на C++ под названием Diamonds есть на GitHub. [10]
pymatnest — это пакет Python , предназначенный для изучения энергетического ландшафта различных материалов, расчета термодинамических переменных при произвольных температурах и обнаружения фазовых переходов . Он доступен на GitHub. [12]
Программный пакет MultiNest способен выполнять вложенную выборку на мультимодальных апостериорных распределениях. [13] Он имеет интерфейсы для входных данных C++, Fortran и Python и доступен на GitHub. [14]
PolyChord — еще один программный пакет для вложенных сэмплов, доступный на GitHub. [15] Вычислительная эффективность PolyChord лучше масштабируется с увеличением количества параметров, чем MultiNest, что означает, что PolyChord может быть более эффективным для задач с большими размерами. [16]
NestedSamplers.jl — пакет Julia для реализации алгоритмов вложенной выборки с одним и несколькими эллипсоидами — находится на GitHub. [17]
Приложения
Поскольку в 2004 году была предложена вложенная выборка, она использовалась во многих аспектах области астрономии . В одном документе предлагалось использовать вложенную выборку для выбора космологической модели и обнаружения объектов, поскольку она «уникально сочетает в себе точность, общую применимость и вычислительную осуществимость». [18] Уточнение алгоритма для обработки мультимодальных апостериорных данных было предложено как средство для обнаружения астрономических объектов в существующих наборах данных. [13] Другие применения вложенной выборки относятся к области обновления конечных элементов , где алгоритм используется для выбора оптимальной модели конечных элементов , и это было применено к динамике конструкций .[19] Этот метод выборки также использовался в области моделирования материалов. Его можно использовать для изучения статистической суммы из статистической механики и получения термодинамических свойств. [20]
Динамическая вложенная выборка
Динамическая вложенная выборка — это обобщение алгоритма вложенной выборки, в котором количество выборок, взятых в разных областях пространства параметров, динамически корректируется для достижения максимальной точности вычислений. [21] Это может привести к значительному повышению точности и вычислительной эффективности по сравнению с исходным алгоритмом вложенной выборки, в котором распределение выборок не может быть изменено, и часто многие выборки берутся в областях, которые мало влияют на точность вычислений.
Общедоступные пакеты программного обеспечения для динамической вложенной выборки включают:
dynesty — реализация динамической вложенной выборки на Python, которую можно загрузить с GitHub. [22] [23]
dyPolyChord: программный пакет, который можно использовать с вероятностями Python, C++ и Fortran и предыдущими дистрибутивами. [24] dyPolyChord доступен на GitHub. [25]
Динамическая вложенная выборка применялась для решения множества научных задач, включая анализ гравитационных волн, [26] , отображение расстояний в космосе [27] и обнаружение экзопланет. [28]
Смотрите также
Сравнение байесовской модели
использованная литература
^ Скиллинг, Джон (2004). «Вложенная выборка». Материалы конференции AIP . 735 : 395–405. Бибкод : 2004AIPC..735..395S . дои : 10.1063/1.1835238 .
^ Скиллинг, Джон (2006). «Вложенная выборка для общих байесовских вычислений» . Байесовский анализ . 1 (4): 833–860. дои : 10.1214/06-BA127 .
^ Чен, Мин-Хуэй, Шао, Ци-Ман и Ибрагим, Джозеф Джордж (2000). Методы Монте-Карло в байесовских вычислениях . Спрингер. ISBN 978-0-387-98935-8.CS1 maint: несколько имен: список авторов ( ссылка )
^ Уолтер, Клемент (2017). «Оценка Монте-Карло на основе точечного процесса». Статистика и вычислительная техника . 27 : 219–236. архив : 1412.6368 . doi : 10.1007/s11222-015-9617-y . S2CID 14639080 .
^ Яса, Томислав; Сян, Нин (2012). «Вложенная выборка, примененная в байесовском анализе затухания акустики помещения» . Журнал Акустического общества Америки . 132 (5): 3251–3262. Бибкод : 2012ASAJ..132.3251J . дои : 10.1121/1.4754550 . PMID 23145609 . S2CID 20876510 .
^ Веб-сайт Джона Скиллинга
^ Алгоритм вложенной выборки в Haskell в Hackage
^ Алгоритм вложенной выборки в R на веб-сайте Бояна Николича
^ Алгоритм вложенной выборки в R на GitHub
^ Алгоритм вложенной выборки в C++ на GitHub
^ Алгоритм вложенной выборки в Python на GitHub
^ Алгоритм вложенной выборки для моделирования материалов на GitHub
^ б Фероз, Ф . ; Хобсон, член парламента (2008). «Мультимодальная вложенная выборка: эффективная и надежная альтернатива методам Монте-Карло с цепью Маркова для анализа астрономических данных» . МНРАН . 384 (2): 449–463. архив : 0704.3704 . Бибкод : 2008MNRAS.384..449F . doi : 10.1111/j.1365-2966.2007.12353.x . S2CID 14226032 .
^ Пакет программного обеспечения для вложенной выборки MultiNest на GitHub.
^ Пакет программного обеспечения для вложенных сэмплов PolyChord на GitHub.
^ Мтембу, Л .; Марвала, Т .; Фрисвелл, Мичиган; Адхикари, С. (2011). «Выбор модели при обновлении модели конечных элементов с использованием байесовской статистики свидетельств». Механические системы и обработка сигналов . 25 (7): 2399–2412. Бибкод : 2011MSSP...25.2399M . doi : 10.1016/j.ymssp.2011.04.001 .
^ Партей, Ливия Б. (2010). «Эффективная выборка атомных конфигурационных пространств». Журнал физической химии B . 114 (32): 10502–10512. архив : 0906.3544 . дои : 10.1021/jp1012973 . PMID 20701382 . S2CID 16834142 .
^ Хигсон, Эдвард; Хэндли, Уилл; Хобсон, Майкл; Ласенби, Энтони (2019). «Динамическая вложенная выборка: улучшенный алгоритм оценки параметров и расчета доказательств». Статистика и вычислительная техника . 29 (5): 891–913. архив : 1704.03459 . Бибкод : 2019S&C....29..891H . doi : 10.1007/s11222-018-9844-0 . S2CID 53514669 .
^ Пакет программного обеспечения для вложенной выборки Dynesty на GitHub.
^ Спигл, Джошуа (2020). «dynesty: пакет динамической вложенной выборки для оценки байесовских апостериорных показателей и доказательств». Ежемесячные уведомления Королевского астрономического общества . 493 (3): 3132–3158. архив : 1904.02180 . doi : 10.1093/mnras/staa278 . S2CID 102354337 .
^ Хигсон, Эдвард (2018). «dyPolyChord: динамическая вложенная выборка с помощью PolyChord» . Журнал программного обеспечения с открытым исходным кодом . 3 (29): 965. doi : 10.21105/joss.00965 .
^ Пакет программного обеспечения динамического вложенного сэмплирования dyPolyChord на GitHub.
^ Эштон, Грегори; и другие. (2019). «Билби: удобная библиотека байесовских выводов для гравитационно-волновой астрономии». Серия приложений к астрофизическому журналу . 241 (2): 13. arXiv : 1811.02042 . Бибкод : 2019ApJS..241...27A . doi : 10.3847/1538-4365/ab06fc . S2CID 118677076 .
^ Цукер, Кэтрин; и другие. (2018). «Отображение расстояний в молекулярном облаке Персея с использованием наблюдений {CO}, звездной фотометрии и измерений параллакса Gaia {DR} 2». Астрофизический журнал . 869 (1): 83. arXiv : 1803.08931 . doi : 10.3847/1538-4357/aae97c . S2CID 119446622 .
^ Гюнтер, Максимилиан; и другие. (2019). «Суперземля и два субнептуна проходят транзитом через соседний и тихий карлик М TOI-270». Астрономия природы . 3 (12): 1099–1108. архив : 1903.06107 . Бибкод : 2019NatAs...3.1099G . doi : 10.1038/s41550-019-0845-5 . S2CID 119286334 .
Категории :
Байесовская статистика
Выбор модели
Рандомизированные алгоритмы
Скрытые категории:
CS1 maint: несколько имен: список авторов
Статьи в Википедии, требующие контекста, с октября 2009 г.