Stan: язык вероятностного программирования
Stan : A Probabilistic Programming Language
2017-01-01
SCID: 54.1/krfwvdgx
Discuss with AI
байесовский выводгамильтонов метод Монте-Карлосэмплер No-U-Turnязык вероятностного программирования Stanвариационный байесовский вывод
Figures from the paper
Abstract (AI)
Stan — это язык вероятностного программирования для задания статистических моделей. Программа Stan в императивной форме определяет функцию логарифма вероятности параметров, обусловленную заданными данными и константами. Начиная с версии 2.14.0, Stan обеспечивает полный байесовский вывод для моделей с непрерывными переменными с помощью методов Монте–Карло по цепям Маркова, таких как сэмплер No-U-Turn — адаптивная форма метода Монте–Карло с гамильтоновской динамикой. Оценки пенализированного метода максимального правдоподобия вычисляются с использованием методов оптимизации, таких как алгоритм Бройдена—Флетчера—Голдфарба—Шанно с ограниченным объёмом памяти. Stan также представляет собой платформу для вычисления логарифмов плотностей, а также их градиентов и матриц Гессе, которые могут применяться в альтернативных алгоритмах, таких как вариационный байесовский вывод, распространение ожиданий и маргинальный вывод с использованием приближённого интегрирования. Для этого Stan организован таким образом, чтобы плотности, градиенты и матрицы Гессе, а также промежуточные величины алгоритма, например вероятности принятия, были легко доступны. Stan можно вызывать из командной строки с использованием пакета cmdstan, из R — с использованием пакета rstan, а из Python — с использованием пакета pystan. Все три интерфейса поддерживают выборку и вывод на основе оптимизации, включая диагностику и апостериорный анализ. Пакеты rstan и pystan также обеспечивают доступ к логарифмам вероятностей, градиентам, матрицам Гессе, преобразованиям параметров и специализированной визуализации.
Key Findings
1
По состоянию на версию 2.14.0 Stan поддерживает полный байесовский вывод для моделей с непрерывными переменными с помощью методов MCMC, включая адаптивный сэмплер No-U-Turn.
2
Stan вычисляет оценки максимального правдоподобия с регуляризацией с использованием методов оптимизации, включая алгоритм BFGS с ограниченной памятью.
3
Stan предоставляет логарифмы плотностей, градиенты, гессианы и промежуточные диагностические величины, поддерживая альтернативные методы, включая вариационный байесовский вывод, распространение ожиданий и приближённое маргинальное оценивание.
4
Stan — это язык вероятностного программирования, позволяющий задавать статистические модели в виде императивных функций логарифма вероятности, зависящих от данных и констант.
5
Stan доступен через командную строку, R и Python; эти интерфейсы поддерживают выборку, оптимизацию, диагностику и анализ апостериорных распределений, а R и Python также предоставляют доступ к плотностям и преобразованиям параметров.
Research Object
Язык вероятностного программирования Stan и его интерфейсы (CmdStan, RStan, PyStan)
Research Subject
Возможности Stan по заданию функций логарифма вероятности и выполнению байесовского вывода, оценки максимального правдоподобия с регуляризацией и приближённого вывода с доступом к плотностям, градиентам, гессианам и диагностике
Publication Details
Publication Date
2017-01-01
Journal
Publisher
ISSN
Open access PDF
Access Type
Author Information
Download PDF
Subscribe to digest