Need help with pymc3?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

pymc-devs
5.7K Stars 1.4K Forks Other 7.7K Commits 222 Opened issues

Description

Probabilistic Programming in Python: Bayesian Modeling and Probabilistic Machine Learning with Aesara

Services available

!
?

Need anything else?

Contributors list

.. image:: https://cdn.rawgit.com/pymc-devs/pymc3/master/docs/logos/svg/PyMC3_banner.svg :height: 100px :alt: PyMC3 logo :align: center

|Build Status| |Coverage| |NumFOCUS_badge| |Binder| |Dockerhub| |DOIzenodo|

PyMC3 is a Python package for Bayesian statistical modeling and Probabilistic Machine Learning focusing on advanced Markov chain Monte Carlo (MCMC) and variational inference (VI) algorithms. Its flexibility and extensibility make it applicable to a large suite of problems.

Check out the

getting started guide 
, or
interact with live examples 
using Binder! For questions on PyMC3, head on over to our
PyMC Discourse 
__ forum.

Features

  • Intuitive model specification syntax, for example,
    x ~ N(0,1)
    translates to
    x = Normal('x',0,1)
  • Powerful sampling algorithms, such as the
    No U-Turn
    Sampler 
    __, allow complex models with thousands of parameters with little specialized knowledge of fitting algorithms.
  • Variational inference:
    ADVI 
    __ for fast approximate posterior estimation as well as mini-batch ADVI for large data sets.
  • Relies on
    Aesara 
    __ which provides:
    • Computation optimization and dynamic C or JAX compilation
    • Numpy broadcasting and advanced indexing
    • Linear algebra operators
    • Simple extensibility
  • Transparent support for missing value imputation

Getting started

If you already know about Bayesian statistics:

  • API quickstart guide 
    __
  • The
    PyMC3 tutorial 
    __
  • PyMC3 examples 
    __ and the
    API reference 
    __

Learn Bayesian statistics with a book together with PyMC3:

  • Probabilistic Programming and Bayesian Methods for Hackers 
    __: Fantastic book with many applied code examples.
  • PyMC3 port of the book "Doing Bayesian Data Analysis" by John Kruschke 
    __ as well as the
    second edition 
    __: Principled introduction to Bayesian data analysis.
  • PyMC3 port of the book "Statistical Rethinking A Bayesian Course with Examples in R and Stan" by Richard McElreath 
    __
  • PyMC3 port of the book "Bayesian Cognitive Modeling" by Michael Lee and EJ Wagenmakers 
    __: Focused on using Bayesian statistics in cognitive modeling.
  • Bayesian Analysis with Python  
    __ (second edition) by Osvaldo Martin: Great introductory book. (
    code 
    __ and errata).

PyMC3 talks

There are also several talks on PyMC3 which are gathered in this

YouTube playlist 
__ and as part of
PyMCon 2020 
__

Installation

To install PyMC3 on your system, follow the instructions on the appropriate installation guide:

  • Installing PyMC3 on MacOS 
    __
  • Installing PyMC3 on Linux 
    __
  • Installing PyMC3 on Windows 
    __

Citing PyMC3

Please choose from the following:

  • |DOIpaper| Probabilistic programming in Python using PyMC3, Salvatier J., Wiecki T.V., Fonnesbeck C. (2016)
  • |DOIzenodo| A DOI for all versions.
  • DOIs for specific versions are shown on Zenodo and under
    Releases 
    _

.. |DOIpaper| image:: https://img.shields.io/badge/DOI-10.7717%2Fpeerj--cs.55-blue :target: https://doi.org/10.7717/peerj-cs.55 .. |DOIzenodo| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.4603970.svg :target: https://doi.org/10.5281/zenodo.4603970

Contact

We are using

discourse.pymc.io 
__ as our main communication channel. You can also follow us on
Twitter @pymc_devs 
__ for updates and other announcements.

To ask a question regarding modeling or usage of PyMC3 we encourage posting to our Discourse forum under the

“Questions” Category 
. You can also suggest feature in the
“Development” Category 
.

To report an issue with PyMC3 please use the

issue tracker 
__.

Finally, if you need to get in touch for non-technical information about the project,

send us an e-mail 
__.

License

Apache License, Version
2.0 
__

Software using PyMC3

  • Exoplanet 
    __: a toolkit for modeling of transit and/or radial velocity observations of exoplanets and other astronomical time series.
  • Bambi 
    __: BAyesian Model-Building Interface (BAMBI) in Python.
  • pymc3_models 
    __: Custom PyMC3 models built on top of the scikit-learn API.
  • PMProphet 
    __: PyMC3 port of Facebook's Prophet model for timeseries modeling
  • webmc3 
    __: A web interface for exploring PyMC3 traces
  • sampled 
    __: Decorator for PyMC3 models.
  • NiPyMC 
    __: Bayesian mixed-effects modeling of fMRI data in Python.
  • beat 
    __: Bayesian Earthquake Analysis Tool.
  • pymc-learn 
    _: Custom PyMC models built on top of pymc3models/scikit-learn API
  • fenics-pymc3 
    __: Differentiable interface to FEniCS, a library for solving partial differential equations.
  • cell2location 
    __: Comprehensive mapping of tissue cell architecture via integrated single cell and spatial transcriptomics.

Please contact us if your software is not listed here.

Papers citing PyMC3

See

Google Scholar 
__ for a continuously updated list.

Contributors

See the

GitHub contributor
page 
. Also read our
Code of Conduct 
guidelines for a better contributing experience.

Support

PyMC3 is a non-profit project under NumFOCUS umbrella. If you want to support PyMC3 financially, you can donate

here 
__.

PyMC for enterprise

PyMC is now available as part of the Tidelift Subscription!

Tidelift is working with PyMC and the maintainers of thousands of other open source projects to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while contributing financially to PyMC -- making it even more robust, reliable and, let's face it, amazing!

|tideliftlearn| |tideliftdemo|

Sponsors

|NumFOCUS|

|Quantopian|

|ODSC|

.. |Binder| image:: https://mybinder.org/badgelogo.svg :target: https://mybinder.org/v2/gh/pymc-devs/pymc3/master?filepath=%2Fdocs%2Fsource%2Fnotebooks .. |Build Status| image:: https://github.com/pymc-devs/pymc3/workflows/pytest/badge.svg :target: https://github.com/pymc-devs/pymc3/actions .. |Coverage| image:: https://codecov.io/gh/pymc-devs/pymc3/branch/master/graph/badge.svg :target: https://codecov.io/gh/pymc-devs/pymc3 .. |Dockerhub| image:: https://img.shields.io/docker/automated/pymc/pymc3.svg :target: https://hub.docker.com/r/pymc/pymc3 .. |NumFOCUS| image:: https://www.numfocus.org/wp-content/uploads/2017/03/1457562110.png :target: http://www.numfocus.org/ .. |Quantopian| image:: https://raw.githubusercontent.com/pymc-devs/pymc3/master/docs/quantopianlogo.jpg :target: https://quantopian.com .. |NumFOCUSbadge| image:: https://img.shields.io/badge/powered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A :target: http://www.numfocus.org/ .. |ODSC| image:: https://raw.githubusercontent.com/pymc-devs/pymc3/master/docs/odsclogo.png :target: https://odsc.com .. |tidelift| image:: https://img.shields.io/badge/-lifted!-2dd160.svg?colorA=58595b&style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAOCAYAAADJ7fe0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAAWJQAAFiUBSVIk8AAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAAVhJREFUKBV1kj0vBFEUhmd2sdZHh2IlGhKFQuOviEYiNlFodCqtUqPxA%2FwCjUTnDygkGoVERFQaZFlE9nreO%2BdM5u5wkifvuee892Pu3CyEcA0DeIc%2B9IwftJsR6Cko3uCjguZdjuBZhhwmYDjGrOC96WED41UtsgEdGEAPlmAfpuAbFF%2BFZLfoMfRBGzThDtLgePPwBIpdddGzOArhPHUXowbNptE2www6a%2Fm96Y3pHN7oQ1s%2B13pxt1ENaKzBFWyWzaJ%2BRO0C9Jny6VPSoKjLVbMDC5bn5OPuJF%2BBSe95PVEMuugY5AegS9fCh7BedP45hRnj8TC34QQUe9bTZyh2KgvFk2vc8GIlXyTfsvqr6bPpNgv52ynnlomZJNpB70Xhl%2Bf6Sa02p1bApEfnETwxVa%2Faj%2BW%2FFtHltmxS%2FO3krvpTtTnVgu%2F6gvHRFvG78Ef3kOe5PimJXycY74blT5R%2BAAAAAElFTkSuQmCC :target: https://tidelift.com/subscription/pkg/pypi-pymc3?utmsource=pypi-pymc3&utmmedium=referral&utmcampaign=enterprise .. |tideliftlearn| image:: https://img.shields.io/badge/-learn%20more-2dd160.svg?color=orange&labelColor=58595b&style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAOCAYAAADJ7fe0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAAWJQAAFiUBSVIk8AAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAAVhJREFUKBV1kj0vBFEUhmd2sdZHh2IlGhKFQuOviEYiNlFodCqtUqPxA%2FwCjUTnDygkGoVERFQaZFlE9nreO%2BdM5u5wkifvuee892Pu3CyEcA0DeIc%2B9IwftJsR6Cko3uCjguZdjuBZhhwmYDjGrOC96WED41UtsgEdGEAPlmAfpuAbFF%2BFZLfoMfRBGzThDtLgePPwBIpdddGzOArhPHUXowbNptE2www6a%2Fm96Y3pHN7oQ1s%2B13pxt1ENaKzBFWyWzaJ%2BRO0C9Jny6VPSoKjLVbMDC5bn5OPuJF%2BBSe95PVEMuugY5AegS9fCh7BedP45hRnj8TC34QQUe9bTZyh2KgvFk2vc8GIlXyTfsvqr6bPpNgv52ynnlomZJNpB70Xhl%2Bf6Sa02p1bApEfnETwxVa%2Faj%2BW%2FFtHltmxS%2FO3krvpTtTnVgu%2F6gvHRFvG78Ef3kOe5PimJXycY74blT5R%2BAAAAAElFTkSuQmCC :target: https://tidelift.com/subscription/pkg/pypi-pymc3?utmsource=pypi-pymc3&utmmedium=referral&utmcampaign=enterprise .. |tideliftdemo| image:: https://img.shields.io/badge/-request%20a%20demo-2dd160.svg?color=orange&labelColor=58595b&style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAOCAYAAADJ7fe0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAAWJQAAFiUBSVIk8AAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAAVhJREFUKBV1kj0vBFEUhmd2sdZHh2IlGhKFQuOviEYiNlFodCqtUqPxA%2FwCjUTnDygkGoVERFQaZFlE9nreO%2BdM5u5wkifvuee892Pu3CyEcA0DeIc%2B9IwftJsR6Cko3uCjguZdjuBZhhwmYDjGrOC96WED41UtsgEdGEAPlmAfpuAbFF%2BFZLfoMfRBGzThDtLgePPwBIpdddGzOArhPHUXowbNptE2www6a%2Fm96Y3pHN7oQ1s%2B13pxt1ENaKzBFWyWzaJ%2BRO0C9Jny6VPSoKjLVbMDC5bn5OPuJF%2BBSe95PVEMuugY5AegS9fCh7BedP45hRnj8TC34QQUe9bTZyh2KgvFk2vc8GIlXyTfsvqr6bPpNgv52ynnlomZJNpB70Xhl%2Bf6Sa02p1bApEfnETwxVa%2Faj%2BW%2FFtHltmxS%2FO3krvpTtTnVgu%2F6gvHRFvG78Ef3kOe5PimJXycY74blT5R%2BAAAAAElFTkSuQmCC :target: https://tidelift.com/subscription/request-a-demo?utmsource=pypi-pymc3&utmmedium=referral&utmcampaign=enterprise

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.