TensorFlow Probability

TensorFlow Probability 是 TensorFlow 中用于概率推理和统计分析的库。TensorFlow Probability 是 TensorFlow 生态系统的一部分,提供了概率方法与深度网络的集成、使用自动微分的基于梯度的推理,并能扩展到包含硬件加速 (GPU) 和分布式计算的大型数据集和大型模型。

要开始使用 TensorFlow Probability,请参阅安装指南并查看 Python 笔记本教程

组件

我们的概率机器学习工具采用如下结构:

第 0 层:TensorFlow

数值运算(尤其是 LinearOperator 类)使无矩阵实现成为可能,这类实现可以利用特定结构(对角、低秩等)实现高效的计算。它由 TensorFlow Probability 团队构建和维护,已成为核心 TensorFlow 中 tf.linalg 的一部分。

第 1 层:统计构建块

第 2 层:模型构建

  • 联合分布(例如 tfp.distributions.JointDistributionSequential):一个或多个可能相互依赖的分布上的联合分布。有关使用 TFP 的 JointDistribution 进行建模的介绍,请查看此 colab
  • 概率层 (tfp.layers):对其表示的函数具有不确定性的神经网络层,扩展了 TensorFlow 层。

第 3 层:概率推理

TensorFlow Probability 正在积极开发,接口可能变化。

示例

除了导航中列出的 Python 笔记本教程外,还提供了一些示例脚本:

报告问题

使用 TensorFlow Probability 问题跟踪器报告错误或提交功能请求。