TensorFlow Probability 是一个用于概率推理和统计分析的库。
import tensorflow as tf import tensorflow_probability as tfp # Pretend to load synthetic data set. features = tfp.distributions.Normal(loc=0., scale=1.).sample(int(100e3)) labels = tfp.distributions.Bernoulli(logits=1.618 * features).sample() # Specify model. model = tfp.glm.Bernoulli() # Fit model given data. coeffs, linear_response, is_converged, num_iter = tfp.glm.fit( model_matrix=features[:, tf.newaxis], response=tf.cast(labels, dtype=tf.float32), model=model) # ==> coeffs is approximately [1.618] (We're golden!)在笔记本中运行
TensorFlow Probability (TFP) 是一个基于 TensorFlow 构建的 Python 库,使我们能够通过该库在现代硬件(TPU、GPU)上轻松结合使用概率模型和深度学习。TFP 适合数据科学家、统计人员、机器学习研究人员,以及希望运用领域知识了解数据和做出预测的从业人员使用。TFP 包括:
- 大量可供选择的概率分布和 Bijector。
- 用于构建深度概率模型的工具,包括概率层和 `JointDistribution` 抽象。
- 变分推断和马尔可夫链蒙特卡洛方法。
- 优化器,例如 Nelder-Mead 算法、BFGS 和 SGLD。
概率编程简介
《黑客的贝叶斯方法》(Bayesian Methods for Hackers) 是一本入门级实践教程,现在提供了 TensorFlow Probability 示例。