Стэн (программное обеспечение)
![]() | |
Оригинальный автор(ы) | Команда разработчиков Стэна |
---|---|
Первоначальный выпуск | 30 августа 2012 г. |
Стабильная версия | 2.34.1 [1] ![]() |
Репозиторий | |
Написано в | С++ |
Операционная система | Unix-подобный , Microsoft Windows , Mac OS X |
Платформа | Intel x86 — 32-разрядный , x64 |
Тип | Статистический пакет |
Лицензия | Новая лицензия BSD |
Веб-сайт | Мак-Стэн |
Stan — это вероятностный язык программирования для статистических выводов, написанный на C++ . [2] Язык Stan используется для определения (байесовской) статистической модели с императивной программой, вычисляющей логарифмическую функцию плотности вероятности . [2]
Стэн имеет лицензию New BSD License . Стэн назван в честь Станислава Улама , пионера метода Монте-Карло . [2]
Стэн был создан командой разработчиков, состоящей из 34 человек. [3] в том числе Эндрю Гельман , Боб Карпентер, Мэтт Хоффман и Дэниел Ли.
Интерфейсы [ править ]
Доступ к самому языку Stan можно получить через несколько интерфейсов:
- CmdStan — исполняемый файл командной строки для оболочки ,
- Программные библиотеки CmdStanR и rstan – R ,
- CmdStanPy и PyStan — библиотеки для языка программирования Python ,
- CmdStan.rb — библиотека для языка программирования Ruby ,
- MatlabStan – интеграция со средой численных вычислений MATLAB ,
- Stan.jl — интеграция с языком программирования Julia ,
- StataStan – интеграция со Stata .
Кроме того, интерфейсы более высокого уровня предоставляются пакетами, использующими Stan в качестве бэкэнда, преимущественно на языке R : [4]
- rstanarm обеспечивает замену частотных моделей, предоставляемых базой R и lme4, с использованием синтаксиса формулы R;
- брмс [5] предоставляет широкий спектр линейных и нелинейных моделей с использованием синтаксиса формулы R;
- Пророк предоставляет автоматизированные процедуры для временных рядов прогнозирования .
Алгоритмы [ править ]
Стэн реализует алгоритмы Монте-Карло (MCMC) на основе градиентной цепи Маркова на основе градиента для байесовского вывода, стохастические вариационные байесовские методы для приблизительного байесовского вывода и оптимизацию на основе градиента для штрафной оценки максимального правдоподобия.
- Алгоритмы MCMC:
- Гамильтониан Монте-Карло (HMC)
- Сэмплер без разворота [2] [6] (NUTS), вариант HMC и стандартного движка MCMC Стэна.
- Алгоритмы вариационного вывода:
- Автоматическое дифференцирование, вариационный вывод [7]
- Алгоритмы оптимизации:
- BFGS с ограниченной памятью (алгоритм оптимизации Стэна по умолчанию)
- Алгоритм Бройдена–Флетчера–Гольдфарба–Шенно
- Аппроксимация Лапласа для классических оценок стандартной ошибки и приближенных байесовских апостериоров
Автоматическая дифференциация
в обратном режиме Стэн реализует автоматическое дифференцирование для расчета градиентов модели, что требуется для HMC, NUTS, L-BFGS, BFGS и вариационного вывода. [2] Автоматическое дифференцирование в Stan можно использовать за пределами вероятностного языка программирования.
Использование [ править ]
Стэн используется в таких областях, как социальные науки, [8] фармацевтическая статистика , [9] исследование рынка , [10] и медицинская визуализация . [11]
См. также [ править ]
- PyMC — вероятностный язык программирования на Python.
- ArviZ — библиотека Python для исследовательского анализа байесовских моделей.
Ссылки [ править ]
- ^ «Релиз 2.34.1» . 23 января 2024 г. Проверено 20 февраля 2024 г.
- ↑ Перейти обратно: Перейти обратно: а б с д и Команда разработчиков Стэна. 2015. Руководство пользователя и справочное руководство по языку моделирования Stan, версия 2.9.0.
- ^ «Команда разработчиков» . stan-dev.github.io . Проверено 25 июля 2018 г.
- ^ Габри, Джона. «Текущее состояние экосистемы Stan в R» . Статистическое моделирование, причинный вывод и социальные науки . Проверено 25 августа 2020 г.
- ^ «BRMS: модели байесовской регрессии с использованием Стэна » . 23 августа 2021 г.
- ^ Хоффман, Мэтью Д.; Гельман, Эндрю (апрель 2014 г.). «Пробоотборник без разворота: адаптивная настройка длины пути в гамильтоновом методе Монте-Карло» . Журнал исследований машинного обучения . 15 : стр. 1593–1623.
- ^ Кучукельбир, Альпы; Ранганатх, Раджеш; Блей, Дэвид М. (июнь 2015 г.). «Автоматический вариационный вывод в Стэне». 1506 (3431). arXiv : 1506.03431 . Бибкод : 2015arXiv150603431K .
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) - ^ Гудрич, Бенджамин Кинг, Вавро, Грегори и Кацнельсон, Ира, Разработка количественного исторического социального исследования: введение в Стэна (2012). Документ ежегодного собрания APSA 2012. Доступен по номеру SSRN 2105531.
- ^ Натанегара, Фанни; Нойеншвандер, Бит; Симэн, Джон В.; Кинерсли, Нельсон; Хейльманн, Кори Р.; Олссен, Дэвид; Рочестер, Джордж (2013). «Современное состояние байесовских методов в разработке медицинских изделий: результаты опроса и рекомендации Байесовской научной рабочей группы DIA». Фармацевтическая статистика . 13 (1): 3–12. дои : 10.1002/pst.1595 . ISSN 1539-1612 . ПМИД 24027093 . S2CID 19738522 .
- ^ Фейт, Элея (15 мая 2017 г.). «Использование Стэна для оценки иерархических моделей Байеса» . Проверено 19 марта 2019 г.
- ^ Гордон, GSD; Джозеф, Дж; Алколеа, член парламента; Сойер, Т; Макфаден, Эй Джей; Уильямс, К; Фитцпатрик, CRM; Джонс, PH; ди Пьетро, М; Фицджеральд, Р.К.; Уилкинсон, Т.Д.; Бондик, SE (2019). «Количественная фазовая и поляризационная визуализация с помощью оптического волокна, применяемая для обнаружения раннего онкогенеза пищевода» . Журнал биомедицинской оптики . 24 (12): 1–13. arXiv : 1811.03977 . Бибкод : 2019JBO....24l6004G . дои : 10.1117/1.JBO.24.12.126004 . ПМК 7006047 . ПМИД 31840442 .
Дальнейшее чтение [ править ]
- Карпентер, Боб; Гельман, Эндрю; Хоффман, Мэтью; Ли, Дэниел; Гудрич, Бен; Бетанкур, Майкл; Брубейкер, Маркус; Го, Цзицян; Ли, Питер; Ридделл, Аллен (2017). «Стэн: вероятностный язык программирования» . Журнал статистического программного обеспечения . 76 (1): 1–32. дои : 10.18637/jss.v076.i01 . ISSN 1548-7660 . ПМЦ 9788645 . PMID 36568334 .
- Гельман, Эндрю, Дэниел Ли и Цзицян Го (2015). Стэн: Вероятностный язык программирования для байесовского вывода и оптимизации , Журнал образовательной и поведенческой статистики.
- Хоффман, Мэтью Д., Боб Карпентер и Эндрю Гельман (2012). Стэн, масштабируемое программное обеспечение для байесовского моделирования. Архивировано 21 января 2015 г. в Wayback Machine , Труды семинара NIPS по вероятностному программированию.
Внешние ссылки [ править ]
- Веб-сайт Стэна
- Источник Stan — репозиторий Git , размещенный на GitHub.