Pyro Versions Save

Deep universal probabilistic programming with Python and PyTorch

1.9.0

2 months ago

Breaking Changes

  • Drop support for PyTorch 1
  • Drop support for Python 3.7

New features

  • Type hints are now available in some parts of Pyro, thanks to @ordabayevy. Please let us know about any issues. We welcome help adding type hints to remaining parts of Pyro. #2550
  • New tutorials using Zuko normalizing flows by @francois-rozet
  • A new simple RandomWalkKernel by @martinjankowiak
  • A new SimplexToOrderedTransform by @peblair
  • A new simple PyTorch training example by @eb8680

Detailed Changes

New Contributors

Full Changelog: https://github.com/pyro-ppl/pyro/compare/1.8.6...1.9.0

1.8.6

9 months ago

Summary

  • Reenable support for PyTorch 1.11 (after Pyro's 1.8.5 release had narrowly required torch>=2.0)
  • Improve docstrings of Pyro's distribution wrappers around torch distributions #3246

What's Changed

New Contributors

Full Changelog: https://github.com/pyro-ppl/pyro/compare/1.8.5...1.8.6

1.8.5

11 months ago

This release includes a number of fixes to support PyTorch 2.

What's Changed

New Contributors

Full Changelog: https://github.com/pyro-ppl/pyro/compare/1.8.4...1.8.5

1.8.4

1 year ago

Fixed

Added

New Contributors

Full Changelog: https://github.com/pyro-ppl/pyro/compare/1.8.3...1.8.4

1.8.3

1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/pyro-ppl/pyro/compare/1.8.2...1.8.3

1.8.2

1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/pyro-ppl/pyro/compare/1.8.1...1.8.2

1.8.1

2 years ago

Breaking changes

New features

Misc changes

New Contributors

Full Changelog: https://github.com/pyro-ppl/pyro/compare/1.8.0...1.8.1

1.8.0

2 years ago

New features and improvements

1.7.0

2 years ago

New features

  • Update to PyTorch 1.9 #2887
  • A StreamingMCMC class for high-dimensional Bayesian inference using NUTS or HMC, thanks to @mtsokol #2857 . StreamingMCMC is a drop-in replacement for MCMC that avoids storing samples during inference by streamingly computing statistics such as mean, variance, and r_hat. You can define your own statistics using the pyro.ops.streaming module by either composing existing statistics or defining your own subclass of StreamingStats #2856 .
  • Make poutine.reparam compatible with initialization logic in autoguides and MCMC #2876 . Previously you needed to manually transform the value in init_to_value() when using a reparametrizer. In Pyro 1.7 you can specify a single init_to_value() output that should work regardless of whether your model is transformed by a reparametrizer. Note this involves a major refactoring of the Reparam interface, namely replacing .call() with .apply(). If you have defined custom reparametrizers using .__call__() you should refactor them before the next Pyro release.
  • Add an AutoStructured guide with flexible distributions, sparse flexible dependencies among latent variables, and support for reparametrization #2812 . This autoguide is somewhere between AutoNormal and AutoIAFNormal+NeuTraReparam. Like AutoNormal this guide is interpretable and structured. Like NeuTraReparam this guide is flexible and can be used to improve geometry for subsequent inference via HMC or NUTS.
  • New directional distributions thanks to @OlaRonning
  • New distributions over genetic and amino acid sequences, thanks to @EWeinstein #2728 (see https://www.biorxiv.org/content/10.1101/2020.07.31.231381v2)
  • New distributions with exponential tails
  • Add AutoGuideList.quantiles() thanks to @vitkl #2896
  • Allow saving a subset of variables in MCMC via the save_params option, which can save memory #2793
  • Add a sample option to pyro.contrib.funsor.infer_discrete #2789

New tutorials

Bug fixes

  • Fix poutine.do to avoid duplicate entries in cond_indep_stack #2846
  • Fix infer.csis to ignore unused gradients, thanks to @fshipy #2828
  • Catch NAN values in TraceENUM_ELBO grads #2782

Breaking changes

  • Simplify param names in callable optim configs #2814
  • Switch to softplus transform when using autoguide scales, thanks to experiments performed by @vitkl #2823

Ceanup

  • Start using mypy for type checking, thanks to @kamathhrishi #2853 #2858
  • Start using black code formatter #2891

1.6.0

3 years ago

Breaking changes

  • Update to PyTorch 1.8 release (required).
  • Enable validation by default #2701. To disable globally call pyro.enable_validation(False); or disable locally to one distribution via e.g. Normal(loc, scale, validate_args=False).
  • Switch from LKJCorrCholesky distribution to upstream LKJCholesky distribution #2771.

New Tutorials

New features

Bugfixes