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 包含:
- 各種機率分布與 Bijector。
- 用來建構深度機率模型的工具,包括機率層和「JointDistribution」抽象層。
- 變分推論和 Markov chain Monte Carlo。
- 最佳化器,例如 Nelder-Mead、BFGS 和 SGLD。
機率程式設計簡介
你可以參閱 Bayesian Methods for Hackers (深入瞭解貝葉斯方法) 入門實作教學課程,書中提供了 TensorFlow Probability 範例。