PyMC3 allows you to write down models using an intuitive syntax to describe a data generating process. Fit your model using gradient-based MCMC algorithms like NUTS, using ADVI for fast approximate inference — including minibatch-ADVI for scaling to large datasets, or using Gaussian processes to build Bayesian nonparametric models. PyMC3 includes a comprehensive set of pre-defined statistical distributions that can be used as model building blocks. Sometimes an unknown parameter or variable in a model is not a scalar value or a fixed-length vector, but a function. A Gaussian process (GP) can be used as a prior probability distribution whose support is over the space of continuous functions. PyMC3 provides rich support for defining and using GPs. Variational inference saves computational cost by turning a problem of integration into one of optimization. PyMC3's variational API supports a number of cutting edge algorithms, as well as minibatch for scaling to large datasets.
Features
- Intuitive model specification syntax
- Powerful sampling algorithms
- Complex models with thousands of parameters with little specialized knowledge of fitting algorithms
- ADVI for fast approximate posterior estimation as well as mini-batch ADVI for large data sets
- Variational inference
- Computation optimization and dynamic C or JAX compilation