问题标签 [tensorflow-probability]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
63 浏览

tensorflow-probability - 对具有未知数量结构变化的 Poisson RV 进行建模

我有一些过去 365 天的用户交互计数数据。我有理由相信已经发生了一些改变用户交互速度的事件。模型如下:

假设

  • 每日计数数据(本地)从带有参数的泊松分布中提取lambda
  • 之间有0结构n<365变化,即lambda变化
  • 这些变化可以在 365 天期间的任何时间发生

期望的答案

  • 可能的结构变化发生了多少次?
  • 这些变化是什么时候发生的?

我想用tensorflow_probability. 本章结尾处描述的模型似乎是一个很好的起点。但是,结构更改的数量被硬编码为 1。如何扩展此模型以处理未知数量的更改?

编辑

这是上述代码的修改版本。它允许任意数量的开关点。受到 Dave Moore 在下面的回答的启发,我允许tau通过乘以 2 来获得“越界”元素。从风格上讲,我关心 的计算indices,因为我认为理解正在发生的事情有点令人困惑。但是,我想不出更好的方法来做到这一点。从功能上讲,我担心越界值可能对对数概率产生影响。

0 投票
1 回答
135 浏览

python-3.x - 关于使用 SoftmaxCentered Bijector 的问题

我在 tensorflow_probability 中使用 SofmaxCenter 双射器并得到一些错误。由于它的文档处于起步阶段,我无法弄清楚出了什么问题。我希望你能帮助我。

基本上,假设 X 是三个分量的对数正态随机向量,我想创建另一个随机向量 Y,它被定义为 X 的 softmax 中心变换。

以下代码片段没有给出任何错误

然而,当我尝试时,

我收到以下错误,

谢谢!

0 投票
1 回答
52 浏览

tensorflow - Tensorflow:根据另一个张量对一个张量进行采样?

我有一个张量TshapeBatch_Size x Num_Items x Item_Dimension和另一个张量Pshape Batch_Size x Num_Items,其中 P 的每批中的 Num_Items 值总和为 1(每批项目的概率分布)。我想N根据概率分布 P 从 T 中抽取没有替换项目的样本。生成的张量应该是 shape Batch_Size x N x Item_Dimension。我该怎么做?

0 投票
1 回答
515 浏览

python - 在 TensorFlow Probability 中,与贝叶斯层的损失属性相关的损失是什么?

TensorFlow Probability 层(例如DenseFlipout)有一个losses方法(或属性)可以获取“与该层相关的损失”。有人能解释一下这些损失是什么吗?

浏览完Flipout 论文后,我认为损失是指权重和偏差的先验分布和后验分布之间的 Kullback-Leibler 散度。如果有人比我更了解这些事情,请纠正我。

0 投票
0 回答
138 浏览

tensorflow - 使用贝叶斯层时,keras 自定义损失得到错误的输出

keras 的自定义损失函数输出错误:当我使用贝叶斯层 ( tensorflow_probability.layers.DenseFlipout) 并使用我的自定义损失函数时,我得到了错误的输出损失。但是如果我用传统tf.keras.layers.Dense层替换贝叶斯层,输出是正确的。有谁能够帮我 ?

0 投票
1 回答
332 浏览

python - 使用张量流概率解决掷骰子和掷硬币问题,方差是错误的

我对统计学不是很精通,我正在努力学习。所以请多多包涵。我在 Quora 中看到了这个问题 - 基本上说明了以下内容 -

如果结果是奇数,则掷一个公平的骰子,然后投掷一个公平的硬币 3 次。否则,如果结果是偶数,则将投掷 2 次公平的硬币。在这两种情况下,都会计算正面数。获得的#个正面的方差是多少?

我想使用 Python 和 tf-probability 来解决它。这是我所做的 -

但是,这final_nd_arr.var()当然与实际答案相去甚远(它是 2089.805555555556),0.68(正如人们在 Quora 答案中提到的那样)。

我无法找出我做错了什么。我怎样才能纠正我的错误?

任何指针都会有所帮助。提前非常感谢。

- - - - - 编辑

为了提供更多数据,

0 投票
2 回答
1294 浏览

python - How to use HiddenMarkovModel from tensorflow probability?

I am following this tutorial:

https://github.com/tensorflow/probability/blob/master/tensorflow_probability/examples/jupyter_notebooks/Multiple_changepoint_detection_and_Bayesian_model_selection.ipynb

in it it has code that references and uses a HiddenMarkovModel class in tfp. the code that does this in the tutorial is here:

However when I get to this line I get the following error:

Checking the documentation for distributions in tfp here:

https://www.tensorflow.org/probability/api_docs/python/tfp/distributions

I see there is no class called HiddenMarkovModel so I am wondering what I am doing wrong to be unable to get this class that the tutorial uses? This is an official tutorial so i can't imagine it is just "wrong" and no HiddenMarkovModel class exists.

0 投票
3 回答
856 浏览

tensorflow - 使用种子对张量流概率进行采样

我正在尝试使用tensorflow-probability并开始使用一些非常简单的东西:

我想当重复使用相同的种子时我会得到相同的结果,但不知何故,这不是真的。

我也尝试过不eager执行,但结果仍然无法重现。如果我添加类似tf.set_random_seed(12).

我想我缺少一些基本的东西?

对于那些感兴趣的人,我在 Ubuntu 16.04 上运行Python 3.5.2

张量流-概率==0.5.0
张量流==1.12.0

0 投票
0 回答
371 浏览

python - 没有为任何变量提供梯度,检查你的图表中不支持梯度的操作,变量和损失之间

我正在尝试使用 TensorFlow Probabilities Dense Flip-Out 层构建贝叶斯 Softmax 回归模型。该模型正在 MNIST 数据集上进行训练。

TensorFlow 返回错误:

没有为任何变量提供梯度,请检查您的图表中不支持梯度的操作,在变量 [] 和 0x7f07fc127840 处的损失之间

我认为这是由于随机变量不是微分的,因此不存在梯度。但是,Tensorflow 在其网站上提供了此代码的清晰演示 -这里

有没有人对为什么会发生这种情况有一个全面的答案?

我的代码如下:

0 投票
1 回答
1477 浏览

python - 张量流概率中的贝叶斯神经网络

我是 tensorflow 的新手,我正在尝试建立一个具有密集翻转层的贝叶斯神经网络。我的代码如下所示:

尝试编译网络时出现以下错误:

我不知道是什么导致了这个错误......请帮助:)