Google Research

The TensorFlow Distributions Library

Workshop on Probabilistic Programming Languages, Semantics, and Systems (PPS 2018) (2017)


The TensorFlow Distributions library implements building blocks for probabilistic models: standard discrete and continuous distributions with methods including sampling, log densities, and statistics (mean, mode, variance, entropy, etc), as well as invertible transformations (Bijectors) that can generate more complex random structures. Composing these in a TensorFlow computational graph allows us to represent sophisticated models while inheriting TensorFlow’s support for GPU acceleration and automatic differentiation, which enables gradient-based inference techniques such as HMC and ADVI. The Distributions library is widely used in research codebases at Google and Deepmind (and elsewhere), and serves as the back-end for the probabilistic programming system Edward.

Learn more about how we do research

We maintain a portfolio of research projects, providing individuals and teams the freedom to emphasize specific types of work