- This version includes two major contributions from our Google Summer of Code 2017 students:
- Maxim Kochurov @ferrine 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 @bwengals 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 @ferrine 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.