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 ライブラリです。TFP を使用すると、最新のハードウェア(TPU、GPU)上で確率モデルとディープ ラーニングを容易に組み合わせることができます。これは、データ サイエンティスト、統計学者、機械学習の研究者、データを理解して予測を行えるようにするためにドメイン知識をエンコードしたいと考えている実務担当者向けのライブラリです。TFP には以下のものが含まれています。
  • 確率分布と Bijector の各種オプション。
  • 深層確率モデルを構築するための各種ツール(確率層や「JointDistribution」抽象化など)。
  • 変分推論とマルコフ連鎖モンテカルロ法。
  • Nelder-Mead 法、BFGS、SGLD などの最適化手法。
TFP は TensorFlow のメリットを受け継いでいるため、モデルの調査と作成のライフサイクル全体で単一の言語を使用してモデルの構築、調整、デプロイを行うことができます。オープンソースであり、GitHub で入手できます。開始にあたっては、TensorFlow Probability ガイドをご覧ください。