Releases: pymc-devs/pymc
v3.2 Final
- This version includes two major contributions from our Google Summer of Code 2017 students:
- Maxim Kochurov extended and refactored the variational inference module. This primarily adds two important classes, representing operator variational inference (
OPVI
) objects andApproximation
objects. These make it easier to extend existingvariational
classes, and to derive inference fromvariational
optimizations, respectively. Thevariational
module now also includes normalizing flows (NFVI
). - Bill Engels added an extensive new Gaussian processes (
gp
) module. Standard GPs can be specified using eitherLatent
orMarginal
classes, depending on the nature of the underlying function. A Student-T processTP
has been added. In order to accomodate larger datasets, approximate marginal Gaussian processes (MarginalSparse
) have been added.
- Maxim Kochurov extended and refactored the variational inference module. This primarily adds two important classes, representing operator variational inference (
- Documentation has been improved as the result of the project's monthly "docathons".
- An experimental stochastic gradient Fisher scoring (
SGFS
) sampling step method has been added. - The API for
find_MAP
was enhanced. - SMC now estimates the marginal likelihood.
- Added
Logistic
andHalfFlat
distributions to set of continuous distributions. - Bayesian fraction of missing information (
bfmi
) function added tostats
. - Enhancements to
compareplot
added. - QuadPotential adaptation has been implemented.
- Script added to build and deploy documentation.
- MAP estimates now available for transformed and non-transformed variables.
- The
Constant
variable class has been deprecated, and will be removed in 3.3. - DIC and BPIC calculations have been sped up.
- Arrays are now accepted as arguments for the
Bound
class. random
method was added to theWishart
andLKJCorr
distributions.- Progress bars have been added to LOO and WAIC calculations.
- All example notebooks updated to reflect changes in API since 3.1.
- Parts of the test suite have been refactored.
Fixes
- Fixed sampler stats error in NUTS for non-RAM backends
- Matplotlib is no longer a hard dependency, making it easier to use in settings where installing Matplotlib is problematic. PyMC will only complain if plotting is attempted.
- Several bugs in the Gaussian process covariance were fixed.
- All chains are now used to calculate WAIC and LOO.
- AR(1) log-likelihood function has been fixed.
- Slice sampler fixed to sample from 1D conditionals.
- Several docstring fixes.
v3.1 Final
This is the first major update to PyMC 3 since its initial release. Highlights of this release include:
- Gaussian Process submodule
- Much improved variational inference support that includes:
- Stein Variational Gradient Descent
- Minibatch processing
- Additional optimizers, including ADAM
- Experimental operational variational inference (OPVI)
- Full-rank ADVI
- MvNormal supports Cholesky Decomposition now for increased speed and numerical stability.
- NUTS implementation now matches current Stan implementation.
- Higher-order integrators for HMC
- Elliptical slice sampler is now available
- Added
Approximation
class and the ability to convert a sampled trace into an approximation via itsEmpirical
subclass. - Add MvGaussianRandomWalk and MvStudentTRandomWalk distributions.
v3.0 Final
This is the first major release of PyMC3. A number of major changes since splitting from the PyMC2 project include:
- Added gradient-based MCMC samplers: Hamiltonian MC (
HMC
) and No-U-Turn Sampler (NUTS
) - Automatic gradient calculations using Theano
- Convenient generalized linear model specification using Patsy formulae
- Parallel sampling via
multiprocessing
- New model specification using context managers
- New Automatic Differentiation Variational InferenceAVDI (
ADVI
) allowing faster sampling thanHMC
for some problems. - Mini-batch ADVI
v3.0 Release Candidate 6
Sixth release candidate of PyMC3 3.0.
v3.0 Release Candidate 5
Fifth release candidate of PyMC3 3.0.
v3.0 Release Candidate 4
Fourth release candidate of PyMC3 3.0.
v3.0.rc3_full
Updating the release tag. and this is a full release of release candidate 3.
v3.0 Release Candidate 2
Second release candidate of PyMC3 3.0.
v3.0 Release Candidate 1
First release candidate of PyMC3 3.0.
v3.0beta
PyMC3 has recently seen rapid development. With the addition of two new major features: automatic transforms and missing value imputation, PyMC3 has become ready for wider use. PyMC3 is now refined enough that adding features is easy, so we don’t expect adding features in the future will require drastic changes.
It has also become user friendly enough for a broader audience. Automatic transformations mean NUTS and find_MAP work with less effort, and friendly error messages mean its easy to diagnose problems with your model.