何の話かと言うと Tensorflow Probability の公式ページを見ると、 「TensorFlow Probability は確率的推論と統計的分析のためのライブラリです。」 という言葉が目に飛び込んできますが、機械学習モデルを扱うライブラリーとしての Tensorflow とどういう関係にあるのかがよくわかりません。 ここでは、「確率分布をファーストクラスオブジェクトとして扱う」というプログラミング言語的な観点から、Tensorflow Probability を説明してみます。 「確率分布」というオブジェクト 数学で言うところの「変数 x」には、通常、実数や複素数などのスカラー値が入ります。一方、プログラミング言語の「変数」には、もっと多様なものを代入することができます。次の例では、変数 f に対して、「関数 is_even()」を代入しています。 def is_even(