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*AutoBatched
instances. - Reproducible sampling, even in Eager.
- Add
Weibull
distribution. - Add
TruncatedCauchy
distribution. - Add
SphericalUniform
distribution. - Add
PowerSpherical
distribution. - Add
LogLogistic
distribution. - Add
Bates
distribution. - Add
GeneralizedNormal
distribution. - Add
JohnsonSU
distribution. - Add
ContinuousBernoulli
distribution. - Simplify
MultivariateNormalDiagPlusLowRank
and make it tape-safer; remove deprecation. - Added
KL(PowerSpherical || VonMisesFisher)
- Adds
KL(PowerSpherical || UniformSpherical)
,PowerSpherical.entropy
andSphericalUniform.entropy
- Fix gradient for
Gamma
samples with respect torate
parameter. - Increase accuracy of default
Distribution.{log_}survival_function
iflog_cdf
is implemented butcdf
is not. - More accurate log_probs and entropies across many
Distribution
s that were subtracting lgammas under the hood. - Fix
Multinomial
log_prob
when classes have zero probability. - Improve performance of
Multinomial
sampler whentotal_count
is high. - More accurate
Binomial
sampling and log_prob for large counts and small probabilities. Binomial
will no longer emit samples below 0 or abovetotal_count
.- Add
nan
handling forBates
log_prob
andcdf
. - Allow named arguments in
JointDistribution*.sample()
.
- Support automatic vectorization in
-
Bijectors:
- Add the
Split
bijector. - Add
GompertzCDF
and ShiftedGompertzCDF bijectors - Add
Sinh
bijector. Scale
bijector can take inlog_scale
parameter.Blockwise
now supports size changing bijectors.- Allow using conditioning inputs in
AutoregressiveNetwork
. - Move bijector caching logic to its own library.
- Add the
-
MCMC:
tfp.mcmc
now 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.
TransformedTransitionKernel
nests 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_ratio
for ratios of modified bessel functions of the first kind. round_exponential_bump_function
added totfp.math
.- Support dynamic
num_steps
and custom convergence_criteria intfp.math.minimize
. - Add
tfp.math.log_cosh
. - Define more accurate
lbeta
andlog_gamma_difference
.
- Add
-
Jax/Numpy substrates:
- TFP runs on JAX!
- Expose
MaskedAutogregressiveFlow
to Numpy and JAX.
-
Experimental:
- Add experimental Sequential Monte Carlo sample driver.
- Add experimental tools for estimating parameters of sequential models using iterated filtering.
- Use
Distribution
s asCompositeTensor
s. - Inference Gym: Add logistic regression.
- Add support for convergence criteria in
tfp.vi.fit_surrogate_posterior
.
-
Other:
- Added
tfp.random.split_seed
for stateless sampling. Movedtfp.math.random_{rademacher,rayleigh}
totfp.random.{rademacher,rayleigh}
. - Possibly breaking change:
SeedStream
seed
argument 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
AutoBatched
joint 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_probs
from 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_associative
function, 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.