This is just a quick summary about what we are working on and thinking about for the next PyMC3 release (v3.2, aiming for Fall, 2017). It is not a promise for any features.
Feel free to chime in and tell us what you think is important, or if we are missingimportant features or improvements.
We have three Google Summer of Code projects:
- Improvements to our Gaussian process module
- An implementation for Riemannian HMC
- Work on support for variational methods
- Improve error messages and warnings.
There are several parts of PyMC3 where error messages can be hard to understand. Especially where
theanois involved, the stack trace may get long and hard to follow very quickly. These errors may be about shape mismatches, variables with incorrect support for a parameter, and domain errors during sampling
- Mass matrix adaptation in NUTS during tuning (merged on master)
- Choose parametrization when defining a variable (#1924)
- Experimental xarray support for traces
- Make a shinystan clone (Dash looks interesting)
- Support for ODEs
- Direct support for
Censoreddistributions without using a potential (#1864)
LKJCholeskyCorr(for cases where we’d like to model the correlation, not the covariance,
LKJCholeskyCovis available already)
- Fix some deficiencies with
TruncatedStickBreakingso we can do nonparametrics more efficiently
We are planning some restructuring of the docs. Some of the example notebooks will probably be expanded and moved into the sphinx doc. Also, new sections about eg theano usage in PyMC3.
- Refactor test suite (there is a lot of stuff that is covered too well, and some that isn’t covered enough)
- Get benchmark suite running (#1829)
- Keep refactoring HMC with an eye towards being able to more easily experiment with, eg, RMHMC, XHMC, an iterative implementation of NUTS
- Better GPU support (for example, #2345)
- Refactoring of
distribution.pyto get better shape handling and stop depending on the theano
Cool projects that someone might pick up
- Discontinuous HMC (i.e. Nishimura et al)
- Better samplers for mixtures