Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

PyMC3 - это пакет Python для байесовского статистического моделирования и вероятностного машинного обучения, который фокусируется на продвинутых алгоритмах Монте-Карло цепи Маркова и вариационных алгоритмах подгонки. [1] [2] [3] Это перезапись с нуля предыдущей версии программного обеспечения PyMC. [4] В отличие от PyMC2, который использовал расширения Fortran для выполнения вычислений, PyMC3 полагается на Theano для автоматического дифференцирования, а также для оптимизации вычислений и динамической компиляции C. [2] [5] Начиная с версии 3.8 PyMC3 полагается на ArviZ для обработки графиков, диагностики и статистических проверок. PyMC3 иStan - два самых популярных инструмента вероятностного программирования . [6] PyMC3 - это проект с открытым исходным кодом , разработанный сообществом и финансируемый NumFocus . [7]

PyMC3 использовался для решения задач вывода в нескольких научных областях, включая астрономию , [8] [9] эпидемиологию , [10] [11] молекулярную биологию, [12] кристаллографию, [13] [14] химию , [15] экологию. [16] [17] и психология. [18] Предыдущие версии PyMC были также широко используются, например , в науке о климате, [19] общественного здравоохранения, [20] неврологии , [21] и паразитологии. [22] [23]

После того, как Theano объявил о планах прекратить разработку в 2017 году [24], команда PyMC3 оценила TensorFlow Probability как вычислительный бэкэнд [25], но в 2020 году решила взять на себя разработку Theano. [26] По состоянию на январь 2021 года большая часть кодовой базы Theano-PyMC была переработана, и была добавлена компиляция через JAX [27] . Команда PyMC планирует выпустить пересмотренный вычислительный бэкэнд под новым именем и продолжить разработку PyMC3. [28]

Механизмы вывода [ править ]

PyMC3 реализует неградиентные и основанные на градиенте алгоритмы Монте-Карло цепи Маркова (MCMC) для байесовского вывода и стохастические, основанные на градиенте вариационные байесовские методы для приближенного байесовского вывода.

  • Алгоритмы MCMC:
    • Пробоотборник без разворота [29] (NUTS), вариант гамильтониана Монте-Карло и движка по умолчанию PyMC3 для непрерывных переменных
    • Metropolis – Hastings , движок PyMC3 по умолчанию для дискретных переменных
    • Последовательный Монте-Карло
  • Алгоритмы вариационного вывода:
    • Вариационный вывод черного ящика [30]

См. Также [ править ]

  • Stan - вероятностный язык программирования для статистического вывода, написанный на C ++.

Ссылки [ править ]

  1. ^ Salvatier J, Wiecki TV, Fonnesbeck C. (2016) Вероятностное программирование на Python с использованием PyMC3. PeerJ Computer Science 2: e55 https://doi.org/10.7717/peerj-cs.55
  2. ^ а б Мартин, Освальдо (2016). Байесовский анализ с помощью Python . Пакт Паблишинг Лтд., Стр. 31–60. ISBN 9781785889851. Проверено 16 сентября 2017 года .
  3. ^ Дэвидсон-Пилон, Камерон (2015-09-30). Байесовские методы для хакеров: вероятностное программирование и байесовский вывод . Эддисон-Уэсли Профессионал. ISBN 9780133902921.
  4. ^ «Введение - документация PyMC3 3.1» . docs.pymc.io . Проверено 20 сентября 2017 .
  5. ^ Hilpisch, Ив (2014-12-11). Python для финансов: анализ больших финансовых данных . ISBN O'Reilly Media, Inc. 9781491945391.
  6. ^ "Алгоритмы вероятностного программирования" . Проверено 10 марта 2017 .
  7. ^ «NumFOCUS объявляет о новом финансируемом финансовом проекте: PyMC3» . NumFOCUS | Открытый код = лучшая наука . Проверено 10 марта 2017 .
  8. ^ Greiner, J .; Берджесс, JM; Савченко, В .; Ю., Х.-Ф. (2016). «О событии Fermi-GBM через 0,4 с после GW150914» . Письма в астрофизический журнал . 827 (2): L38. arXiv : 1606.00314 . Bibcode : 2016ApJ ... 827L..38G . DOI : 10.3847 / 2041-8205 / 827/2 / L38 . ISSN 2041-8205 . 
  9. ^ Хильбе, Джозеф М .; Соуза, Рафаэль С. де; Исида, Эмиль Э. О. (30 апреля 2017 г.). Байесовские модели для астрофизических данных: использование R, JAGS, Python и Stan . Издательство Кембриджского университета. ISBN 9781108210744.
  10. ^ Браунер, Ян М .; Миндерманн, Сорен; Шарма, Мринанк; Джонстон, Дэвид; Сальватье, Джон; Гавенчяк, Том; Стефенсон, Анна Б .; Пиявка, Гэвин; Альтман, Джордж; Микулик, Владимир; Норман, Александр Джон; Монрад, Джошуа Теперовски; Бесироглу, Тамай; Ге, Хонг; Хартвик, Меган А .; Тех, Йи Уай; Чинделевич Леонид; Галь, Ярин; Кульвейт, янв (2020-12-15). «Оценка эффективности государственного вмешательства против COVID-19» . Наука . DOI : 10.1126 / science.abd9338 .
  11. ^ Систром, Кевин; Владек, Томас; Кригер, Майк. "Репозиторий Rt.live Github" . Rt.live . Проверено 10 января 2021 года .
  12. ^ Вагнер, Стейси Д .; Ударил, Адам Дж .; Гупта, Рити; Фарнсворт, Дилан Р.; Махади, Эми Э .; Эйхингер, Кэти; Thornton, Charles A .; Ван, Эрик Т .; Берглунд, Дж. Эндрю (28 сентября 2016 г.). «Дозозависимое регулирование альтернативного сплайсинга белками MBNL выявляет биомаркеры миотонической дистрофии» . PLOS Genetics . 12 (9): e1006316. DOI : 10.1371 / journal.pgen.1006316 . ISSN 1553-7404 . PMC 5082313 . PMID 27681373 .   
  13. ^ Шарма, Амит; Йоханссон, Линда; Дюневолл, Элин; Wahlgren, Weixiao Y .; Neutze, Ричард; Катона, Гергей (01.03.2017). «Асимметрия в последовательных данных фемтосекундной кристаллографии» . Acta Crystallographica Раздел A . 73 (2): 93–101. DOI : 10.1107 / s2053273316018696 . ISSN 2053-2733 . PMC 5332129 . PMID 28248658 .   
  14. ^ Катона, Гергей; Гарсия-Бонете, Мария-Хосе; Лундхольм, Ида (2016-05-01). «Оценка разницы между амплитудами структурных факторов с использованием многомерного байесовского вывода» . Acta Crystallographica Раздел A . 72 (3): 406–411. DOI : 10.1107 / S2053273316003430 . ISSN 2053-2733 . PMC 4850660 . PMID 27126118 .   
  15. ^ Гарай, Пабло G .; Мартин, Освальдо А .; Scheraga, Harold A .; Вила, Хорхе А. (21.07.2016). «Обнаружение метилирования, ацетилирования и гликозилирования белковых остатков путем мониторинга изменений химического сдвига 13C: квантово-химическое исследование» . PeerJ . 4 : e2253. DOI : 10,7717 / peerj.2253 . ISSN 2167-8359 . PMC 4963218 . PMID 27547559 .   
  16. ^ Ван, Ян; Хуанг, Хун; Хуанг, Лида; Ристич, Бранко (2017). «Оценка байесовских методов оценки источников с помощью наблюдений в прерии и модели гауссовского шлейфа: сравнение функций правдоподобия и мер расстояния». Атмосферная среда . 152 : 519–530. Bibcode : 2017AtmEn.152..519W . DOI : 10.1016 / j.atmosenv.2017.01.014 .
  17. ^ Макнил, М. Аарон; Чонг-Сенг, Карен М .; Пратчетт, Дебора Дж .; Томпсон, Кассандра А .; Мессмер, Ванесса; Пратчетт, Морган С. (14 марта 2017 г.). «Возраст и рост быстроразвивающейся популяции Acanthaster cf. solaris в пределах Большого Барьерного рифа» . Разнообразие . 9 (1): 18. DOI : 10,3390 / d9010018 .
  18. ^ Tünnermann, Ян; Шарлау, Ингрид (2016). «Периферийные визуальные подсказки: их судьба в обработке и влияние на внимание и восприятие временного порядка» . Границы в психологии . 7 . DOI : 10.3389 / fpsyg.2016.01442 . ISSN 1664-1078 . PMC 5052275 . PMID 27766086 .   
  19. ^ Грэм, Николас AJ; Дженнингс, Саймон; Макнил, М. Аарон; Муийо, Дэвид; Уилсон, Шон К. (2015). «Прогнозирование обусловленных климатом изменений режима в сравнении с потенциалом восстановления коралловых рифов». Природа . 518 (7537): 94–97. Bibcode : 2015Natur.518 ... 94G . DOI : 10,1038 / природа14140 . PMID 25607371 . 
  20. ^ Mascarenhas, Maya N .; Flaxman, Seth R .; Бурма, Галстуки; Вандерпол, Шерил; Стивенс, Гретхен А. (18 декабря 2012 г.). «Национальные, региональные и глобальные тенденции распространения бесплодия с 1990 года: систематический анализ 277 медицинских обследований» . PLOS Medicine . 9 (12): e1001356. DOI : 10.1371 / journal.pmed.1001356 . ISSN 1549-1676 . PMC 3525527 . PMID 23271957 .   
  21. ^ Кавана, Джеймс Ф; Викки, Томас V; Коэн, Майкл X; Фигероа, Кристина М; Саманта, Йохан; Шерман, Скотт Дж; Фрэнк, Майкл Дж (2011). «Стимуляция субталамического ядра меняет медиофронтальное влияние выше порога принятия решения» . Природа Неврологии . 14 (11): 1462–1467. DOI : 10.1038 / nn.2925 . PMC 3394226 . PMID 21946325 .  
  22. ^ Гетинг, Питер У .; Эльязар, Икбал РФ; Мойес, Кэтрин Л .; Смит, Дэвид Л .; Битва, Кэтрин Е .; Герра, Карлос А .; Патил, Ананд П .; Татем, Эндрю Дж .; Хоус, Розалинд Э. (06.09.2012). «Давно забытая карта малярии мира: эндемичность Plasmodium vivax в 2010 году» . PLOS «Забытые тропические болезни» . 6 (9): e1814. DOI : 10.1371 / journal.pntd.0001814 . ISSN 1935-2735 . PMC 3435256 . PMID 22970336 .   
  23. ^ Пуллан, Рэйчел Л .; Смит, Дженнифер Л .; Джасрасария, Рашми; Брукер, Саймон Дж. (21 января 2014 г.). «Глобальные показатели инфекций и бремени болезней, передаваемых через почву гельминтозами в 2010 году» . Паразиты и переносчики . 7 : 37. DOI : 10,1186 / 1756-3305-7-37 . ISSN 1756-3305 . PMC 3905661 . PMID 24447578 .   
  24. ^ Lamblin, Паскаль (28 сентября 2017). «МИЛА и будущее Теано» . theano-users (Список рассылки) . Проверено 28 сентября 2017 года .
  25. ^ Разработчики, PyMC (2018-05-17). «Theano, TensorFlow и будущее PyMC» . Разработчики PyMC . Проверено 25 января 2019 .
  26. ^ «Будущее PyMC3, или: Theano мертв, Да здравствует Theano» . Разработчики PyMC . Проверено 10 января 2021 года .
  27. ^ Брэдбери, Джеймс; Фростиг, Рой; Хокинс, Питер; Джеймс, Мэтью Джеймс; Лири, Крис; Маклорен, Дугал; Некула, Джордж; Пашке, Адам; Вандерплас, Джейк; Вандерман-Милн, Скай; Чжан, Цяо. «JAX» . Проверено 10 января 2021 года .
  28. ^ "Временная шкала PyMC" . Временная шкала PyMC . Проверено 10 января 2021 года .
  29. ^ Хоффман, Мэтью Д .; Гельман, Андрей (апрель 2014 г.). "Пробоотборник без разворота: адаптивная установка длины пути в гамильтониане Монте-Карло" . Журнал исследований в области машинного обучения . 15 : стр. 1593–1623.
  30. ^ Kucukelbir Алп; Ранганатх, Раджеш; Блей, Дэвид М. (июнь 2015 г.). «Автоматический вариационный вывод в Stan». 1506 (3431). arXiv : 1506.03431 . Bibcode : 2015arXiv150603431K . Cite journal requires |journal= (help)

Дальнейшее чтение [ править ]

  • Вероятностное программирование и байесовские методы для хакеров
  • Вычислительная статистика в Python

Внешние ссылки [ править ]

  • Веб-сайт PyMC3
  • Источник PyMC3 , репозиторий Git, размещенный на GitHub
  • Источник PyMC4 для переноса на TensorFlow Probability
  • Symbolic PyMC - это экспериментальный набор инструментов, облегчающих сложные символьные манипуляции с моделями PyMC.