github pymc-devs/pymc v6.0.0

4 hours ago

What's Changed

See the announcement post for an overview of what's new in PyMC 6.0.

Major Changes 🛠

  • Depend on PyTensor 3.0 major release by @ricardoV94 in #8199
    • Default backend is now numba
      • set pytensor.config.linker = "cvm" to return to the old default.
    • Several imports have changed location and already deprecated functions were removed
    • Low level changes that shouldn't impact most users:
      • Autodiff L_op and R_op methods are now deprecated in favor of pull_back and push_forward
      • test_value machinery is deprecated
      • low-level random API changed
  • PyMC is now safely pip install-able
  • Make nutpie the default nuts sampler (if installed) by @ricardoV94 in #8248
    • pip install pymc[nutpie] is now available
  • Use arviz 1.0 by @aloctavodia in #8019
    • arviz.InferenceData replaced by xarray.DataTree
    • plot_trace replaced by plot_trace_dist (although plot_rank_dist is recommended instead)
    • default credible interval changed from 0.94 highest-density interval to 0.89 equal-tailed interval
    • InferenceData.extend replaced by DataTree.update
    • See the full migration guide for more details
  • Allow samplers to choose default number of tuning steps by @ricardoV94 in #8289
    • Default pymc nuts sampler remains at 1000 tuning steps. Nutpie defaults to 400. Set tune explicitly to control it.
  • Change sample_posterior_predictive API wrt to volatility by @ricardoV94 in #8209
    • Introduce sample_vars and freeze_vars argument to explicitly control which variables are resampled and which are reused from trace
    • Variables that are deemed "volatile" because they depend on data that has changed or variables being sampled will issue a warning instead of being resampled by default. Users should assign these variables to either sample_vars or freeze_vars to suppress the warning.
    • var_names has no effect on sampling semantics and only controls what variables are saved in the trace.
    • See docstrings for detailed examples.
  • Remove deprecated samples argument in sample_prior_predictive by @williambdean in #8204
  • Remove experimental warning from dims module by @ricardoV94 in #8137
  • Remove several functions and objects from PyMC root namespace by @ricardoV94 in #6973

New Features 🎉

Bugfixes 🪲

  • Validate coordinate and variables don't have the same names by @Chirag3841 in #8093

Documentation 📖

Maintenance 🔧

New Contributors

Full Changelog: v5.28.0...v6.0.0

Don't miss a new pymc release

NewReleases is sending notifications on new releases.