Releases: tensorflow/probability
TensorFlow Probability 0.12.0-rc2
This is RC2 of the TensorFlow Probability 0.12 release. It is tested against TensorFlow 2.4.0-rc2.
TensorFlow Probability 0.12.0-rc1
This is RC1 of the TensorFlow Probability 0.12 release. It is tested against TensorFlow 2.4.0-rc1.
TensorFlow Probability 0.12.0-rc0
This is RC0 of the TensorFlow Probability 0.12 release. It is tested against TensorFlow 2.4.0-rc0.
TensorFlow Probability 0.11.1
This is a patch release for compatibility with CloudPickle >= 1.3. It is tested and stable against TensorFlow version 2.3.0.
TensorFlow Probability 0.11.0
Release notes
This is the 0.11 release of TensorFlow Probability. It is tested and stable against TensorFlow version 2.3.0.
Change notes
Links point to examples in the TFP 0.11.0 release Colab.
-
Distributions
- Support automatic vectorization in
JointDistribution*AutoBatchedinstances. - Reproducible sampling, even in Eager.
- Add
Weibulldistribution. - Add
TruncatedCauchydistribution. - Add
SphericalUniformdistribution. - Add
PowerSphericaldistribution. - Add
LogLogisticdistribution. - Add
Batesdistribution. - Add
GeneralizedNormaldistribution. - Add
JohnsonSUdistribution. - Add
ContinuousBernoullidistribution. - Simplify
MultivariateNormalDiagPlusLowRankand make it tape-safer; remove deprecation. - Added
KL(PowerSpherical || VonMisesFisher) - Adds
KL(PowerSpherical || UniformSpherical),PowerSpherical.entropyandSphericalUniform.entropy - Fix gradient for
Gammasamples with respect torateparameter. - Increase accuracy of default
Distribution.{log_}survival_functioniflog_cdfis implemented butcdfis not. - More accurate log_probs and entropies across many
Distributions that were subtracting lgammas under the hood. - Fix
Multinomiallog_probwhen classes have zero probability. - Improve performance of
Multinomialsampler whentotal_countis high. - More accurate
Binomialsampling and log_prob for large counts and small probabilities. Binomialwill no longer emit samples below 0 or abovetotal_count.- Add
nanhandling forBateslog_probandcdf. - Allow named arguments in
JointDistribution*.sample().
- Support automatic vectorization in
-
Bijectors:
- Add the
Splitbijector. - Add
GompertzCDFand ShiftedGompertzCDF bijectors - Add
Sinhbijector. Scalebijector can take inlog_scaleparameter.Blockwisenow supports size changing bijectors.- Allow using conditioning inputs in
AutoregressiveNetwork. - Move bijector caching logic to its own library.
- Add the
-
MCMC:
tfp.mcmcnow supports stateless sampling.tfp.mcmc.sample_chain(..., seed=(1,2))is expected to always return the same results (within a release), and is deterministic (provided the underlying kernel is deterministic).- Better static shape inference for Metropolis-Hastings kernels with partially-specified shapes.
TransformedTransitionKernelnests properly with itself and other wrapper kernels.- Pretty-printing MCMC kernel results.
-
Structured time series:
- Automatically constrain STS inference when weights have constrained support.
-
Math:
- Add
tfp.math.bessel_iv_ratiofor ratios of modified bessel functions of the first kind. round_exponential_bump_functionadded totfp.math.- Support dynamic
num_stepsand custom convergence_criteria intfp.math.minimize. - Add
tfp.math.log_cosh. - Define more accurate
lbetaandlog_gamma_difference.
- Add
-
Jax/Numpy substrates:
- TFP runs on JAX!
- Expose
MaskedAutogregressiveFlowto Numpy and JAX.
-
Experimental:
- Add experimental Sequential Monte Carlo sample driver.
- Add experimental tools for estimating parameters of sequential models using iterated filtering.
- Use
Distributions asCompositeTensors. - Inference Gym: Add logistic regression.
- Add support for convergence criteria in
tfp.vi.fit_surrogate_posterior.
-
Other:
- Added
tfp.random.split_seedfor stateless sampling. Movedtfp.math.random_{rademacher,rayleigh}totfp.random.{rademacher,rayleigh}. - Possibly breaking change:
SeedStreamseedargument may not be aTensor.
- Added
Huge thanks to all the contributors to this release!
- Alexey Radul
- anatoly
- Anudhyan Boral
- Ben Lee
- Brian Patton
- Christopher Suter
- Colin Carroll
- Cristi Cobzarenco
- Dan Moldovan
- Dave Moore
- David Kao
- Emily Fertig
- erdembanak
- Eugene Brevdo
- Fearghus Robert Keeble
- Frank Dellaert
- Gabriel Loaiza
- Gregory Flamich
- Ian Langmore
- Iqrar Agalosi Nureyza
- Jacob Burnim
- jeffpollock9
- jekbradbury
- Jimmy Yao
- johannespitz
- Joshua V. Dillon
- Junpeng Lao
- Kate Lin
- Ken Franko
- luke199629
- Mark Daoust
- Markus Kaiser
- Martin Jul
- Matthew Feickert
- Maxim Polunin
- Nicolas
- npfp
- Pavel Sountsov
- Peng YU
- Rebecca Chen
- Rif A. Saurous
- Ru Pei
- Sayam753
- Sharad Vikram
- Srinivas Vasudevan
- summeryue
- Tom Charnock
- Tres Popp
- Wataru Hashimoto
- Yash Katariya
- Zichun Ye
TensorFlow Probability 0.11.0-rc1
This is RC1 of the TensorFlow Probability 0.11 release. It is tested against TensorFlow 2.3.0-rc2.
TensorFlow Probability 0.11.0-rc0
This is RC0 of the TensorFlow Probability 0.11 release. It is tested against TensorFlow 2.3.0-rc1.
TensorFlow Probability 0.10.1
This is a patch release to pin the CloudPickle version to 1.3 to address #991 . It is tested and stable against TensorFlow version 2.2.0.
Tensorflow Probability 0.10.0
Release notes
This is the 0.10 release of TensorFlow Probability. It is tested and stable against TensorFlow version 2.2.0.
Change notes
-
Distributions
- Beta-Binomial distribution.
- Add new
AutoBatchedjoint distribution variants that treat a joint sample as a single probabilistic event. - XLA-able Python TF Gamma sampler.
- XLA-able binomial sampler. Replaces the existing sampler, which implements binomial using one-hot categoricals via multinomial, with a batched rejection sampler. The new sampler is 4-6 times slower for very small problems, but an unbounded amount faster on large problems, since it removes a linear dependency on
total_count. Additionally, since the previous solver required memory proportional to total_count*num_samples, many problems which OOM'd before are now feasible. - Enable use of joint bijectors in TransformedDistribution.
- Remove unused
get_logits_and_probsfrom internal/distribution_util. - Batched rejection sampling utilities.
- Update batched_rejection_sampler to use prefer_static.shape to handle possibly-dynamic shape.
-
Bijectors
- Add Lambert W transform bijectors.
-
MCMC
- EllipticalSliceSampler in tfp.experimental.mcmc
- Add cross-chain ESS, following Vehtari et al. 2019.
-
Optimizer
- Add convergence criteria for optimizations.
-
Stats
- Add
tfp.stats.expected_calibration_error_quantiles.
- Add
-
Math
- Add a 'special' module to tfp.math - a TF version of scipy.special.
- Add
scan_associativefunction, implementing parallel prefix scan of tensors with a user-provided binary operation.
-
Breaking change: Removed a number of functions, methods, and classes that were deprecated in TensorFlow Probability 0.9.0 or earlier.
- Removed deprecated tfb.Weibull -- use tfb.WeibullCDF.
- Remove VectorLaplaceLinearOperator
- Remove deprecated method
tfp.sts.build_factored_variational_loss. - Remove deprecated tfb.Kumaraswamy -- use tfb.Invert(tfb.KumaraswamyCDF).
- Remove deprecated tfd.VectorSinhArcsinhDiag, tfd.VectorLaplaceDiag.
- Remove deprecated
tfb.Gumbel-- usetfb.GumbelCDF.
-
Other
- Python 3.8 compatibility.
- TensorFlow now requires gast version 0.3.2 and is no longer compatible with 0.2.2.
- Moving TF Session C++ to Python code and functionality from swig to pybind11.
- Update TFP examples to Python 3.
Huge thanks to all the contributors to this release!
- Alexander Ivanov
- Alexey Radul
- Amanda
- Amelio Vazquez-Reina
- Amit Patankar
- Anudhyan Boral
- Artem Belevich
- Brian Patton
- Christopher Suter
- Colin Carroll
- Dan Moldovan
- Dave Moore
- Demetri Pananos
- Dmitrii Kochkov
- Emily Fertig
- gameshamilton
- Georg M. Goerg
- Ian Langmore
- Jacob Burnim
- jeffpollock9
- Joshua V. Dillon
- Junpeng Lao
- kovak1
- Kristian Hartikainen
- Liam
- Martin Jul
- Matt Hoffman
- nbro
- Olli Huotari
- Pavel Sountsov
- Pyrsos
- Rif A. Saurous
- Rushabh Vasani
- Sayam753
- Sharad Vikram
- Spyros
- Srinivas Vasudevan
- Taylor Robie
- Xiaojing Wang
- Zichun Ye
Tensorflow Probability 0.10.0-rc1
This is RC1 of the TensorFlow Probability 0.10 release. It is tested against TensorFlow 2.2.0-rc4.