Stan (software)
Original author(s) | Stan Development Team |
---|---|
Initial release | August 30, 2012 |
Stable release | 2.5.0 / October 20, 2014 |
Development status | Active |
Written in | C++ |
Operating system | Unix-like, Microsoft Windows, Mac OS X |
Platform | Intel x86 - 32-bit, x64 |
Size | 29.6 MB |
Type | Statistical package |
License | New BSD License |
Website |
mc-stan |
Stan is a probabilistic programming language for Bayesian inference written in C++.[1] The Stan language is used to specify a Bayesian statistical model, which is an imperative declaration of the log probability density function.[1]:2
Stan is licensed under the New BSD License. Stan is named in honour of Stanislaw Ulam, pioneer of the Monte Carlo method.[1]:xii
Interfaces
Stan can be accessed through several interfaces:
- CmdStan - command-line executable
- RStan - integration from the R software environment
- PyStan - integration with the Python programming language
- MatlabStan - integration with the MATLAB numerical computing environment
- Stan.jl - integration with the Julia programming language
Algorithms
For inference, Stan implements multiple Markov chain Monte Carlo algorithms and optimization algorithms:
- MCMC algorithms:
- optimization algorithms:
- Broyden–Fletcher–Goldfarb–Shanno (BFGS) algorithm (Stan's default optimization algorithm)
- Nesterov's accelerated gradient descent algorithm
- Newton's method
Automatic differentiation
Stan implements reverse-mode automatic differentiation to calculate gradients of the model, which is required by HMC and NUTS.[1]:199 The automatic differentiation within Stan can be used outside of the probabilistic programming language.
Usage
Stan is used in fields including social science[3] and pharmaceutical statistics.[4]
References
- ↑ 1.0 1.1 1.2 1.3 1.4 Stan Development Team. 2014. Stan Modeling Language User's Guide and Reference Manual, Version 2.2.0
- ↑ Hoffman, Matthew D.; Gelman, Andrew (April 2014). "The No-U-Turn Sampler: Adaptively Setting Path Lengths in Hamiltonian Monte Carlo". Journal of Machine Learning Research 15: pp. 1593–1623.
- ↑ Goodrich, Benjamin King, Wawro, Gregory and Katznelson, Ira, Designing Quantitative Historical Social Inquiry: An Introduction to Stan (2012). APSA 2012 Annual Meeting Paper. Available at SSRN: http://ssrn.com/abstract=2105531
- ↑ Natanegara, Fanni and Neuenschwander, Beat and Seaman, John W. and Kinnersley, Nelson and Heilmann, Cory R. and Ohlssen, David and Rochester, George (2013). "The current state of Bayesian methods in medical product development: survey results and recommendations from the DIA Bayesian Scientific Working Group". Pharmaceutical Statistics: n/a. doi:10.1002/pst.1595. ISSN 1539-1612.
Literature
- Hoffman, Matthew D., Bob Carpenter, and Andrew Gelman (2012). Stan, scalable software for Bayesian modeling, Proceedings of the NIPS Workshop on Probabilistic Programming.
External links
- Stan web site
- Stan source, a Git repository hosted on GitHub
|