PyMC

Probabilistic programming library for the Python programming language From Wikipedia, the free encyclopedia

PyMC (formerly known as PyMC3) is a probabilistic programming library for Python. It can be used for Bayesian statistical modeling and probabilistic machine learning.

Other namesPyMC2, PyMC3
Original authorPyMC Development Team
Initial releaseApril 6, 2012 (2012-04-06)
Stable release
5.27.1[1] Edit this on Wikidata / 26 January 2026; 39 days ago (26 January 2026)
Quick facts Other names, Original author ...
PyMC
Other namesPyMC2, PyMC3
Original authorPyMC Development Team
Initial releaseApril 6, 2012 (2012-04-06)
Stable release
5.27.1[1] Edit this on Wikidata / 26 January 2026; 39 days ago (26 January 2026)
Written inPython
Operating systemUnix-like, Mac OS X, Microsoft Windows
PlatformIntel x86 – 32-bit, x64
TypeStatistical package
License Apache License, Version 2.0
Websitewww.pymc.io
Repositoryhttps://github.com/pymc-devs/pymc
Close

PyMC performs inference based on advanced Markov chain Monte Carlo and/or variational fitting algorithms.[2][3][4][5] It is a rewrite from scratch of the previous version of the PyMC software.[6] Unlike PyMC2, which had used Fortran extensions for performing computations, PyMC relies on PyTensor, a Python library that allows defining, optimizing, and efficiently evaluating mathematical expressions involving multi-dimensional arrays. From version 3.8 PyMC relies on ArviZ to handle plotting, diagnostics, and statistical checks. PyMC and Stan are the two most popular probabilistic programming tools.[7] PyMC is an open source project, developed by the community and has been fiscally sponsored by NumFOCUS.[8]

PyMC has been used to solve inference problems in several scientific domains, including astronomy,[9][10] epidemiology,[11][12] molecular biology,[13] crystallography,[14][15] chemistry,[16] ecology[17][18] and psychology.[19] Previous versions of PyMC were also used widely, for example in climate science,[20] public health,[21] neuroscience,[22] and parasitology.[23][24]

After Theano announced plans to discontinue development in 2017,[25] the PyMC team evaluated TensorFlow Probability as a computational backend,[26] but decided in 2020 to fork Theano under the name Aesara.[27] Large parts of the Theano codebase have been refactored and compilation through JAX[28] and Numba were added. The PyMC team has released the revised computational backend under the name PyTensor and continues the development of PyMC.[29]

Inference engines

PyMC implements non-gradient-based and gradient-based Markov chain Monte Carlo (MCMC) algorithms for Bayesian inference and stochastic, gradient-based variational Bayesian methods for approximate Bayesian inference.

See also

References

Further reading

Related Articles

Wikiwand AI