问题标签 [eager-execution]

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 回答
309 浏览

python - 将多个标量保存到 TensorBoard

我处于渴望模式,我试图在 TensorBoard 中绘制一些标量的演变。我已经设法做到这一点 - 损失函数 - 通过使用:

但是,如果我添加另一行代码

那么它就不会被记录下来(或者至少它不会出现在 TensorBoard 中)。我找不到很多参考资料,但我确实找到的那些让我这样写......

有谁知道如何正确地做到这一点?谢谢!

0 投票
1 回答
260 浏览

tensorflow - 渴望模式:在 tf.keras.Model 中使用序列

我正在从 Pytorch 过渡到 TensorFlow 1.12,并且想知道是否可以tf.keras.Sequential在 a 中定义类tf.keras.Model并以 Eager 模式运行这些类。

我构建了这个最小的非工作示例,如果有人能告诉我哪里出错了,我将不胜感激。但是,我也使用过tf.contrib.eager.Network类(取得了更大的成功),因为它们计划弃用,所以我尝试避免使用这些类。

0 投票
0 回答
62 浏览

tensorflow - 如何将在 Eager 模式下编写的 tensorflow 模型转换为 tensorflow lite

我想将 resnet50 模型(以急切执行模式编写)转换为tflite. 模式实现在此处提供tensorflow。似乎tflite不知道层块(例如:)_ConvBlock。我收到错误消息:

我想知道您是否可以通过提供一个简单的示例来帮助我?非常感谢您的帮助。

0 投票
1 回答
101 浏览

tensorflow - 如何将 resnet50 转换为 coreml 模型?

如何将eager_execution模式编写的resnet50网络转成coreml?

这是 tf resnet50 的实现: https ://github.com/tensorflow/tensorflow/blob/r1.13/tensorflow/contrib/eager/python/examples/resnet50/resnet50.py

0 投票
1 回答
394 浏览

python - Sonnet 中的 LSTM 时间步长

我目前正在努力学习Sonnet

我的网络(不完整,问题基于此):

在其他框架(例如 Keras)中,LSTM 输入的形式为(batch_size, sequence_length, input_length).

但是,Sonnet 文档指出 Sonnet 的 LSTM 的输入格式为(batch_size, input_length).

如何将它们用于顺序输入?

到目前为止,我已经尝试在内部使用 for 循环_build,迭代每个时间步长,但这会给出看似随机的输出。

我在 Keras 中尝试过相同的架构,它运行时没有任何问题。

我正在以渴望模式执行,GradientTape用于培训。

0 投票
0 回答
220 浏览

tensorflow - Colab 最近更新导致错误:Tensor 对象仅在启用 Eager Execution 时才可迭代

我有一个受https://github.com/kyzhouhzau/BERT-NER启发的谷歌 Colab 笔记本,几个月前它运行得非常好。

现在它在在线训练期间失败了

带有错误消息:

我尝试添加: tf.enable_eager_execution()

强制执行急切但没有帮助

我在想图书馆的更新可能会导致这个问题。它曾经在 tensorflow 1.13.1 和 bert-tensorflow-1.0.1(来自 bert-tensorflow)(1.11.0)上工作。

现在它使用 tensorflow 1.14.0-rc1 和 bert-tensorflow-1.0.1(来自 bert-tensorflow)(1.12.0)。

任何有关如何解决此问题的建议将不胜感激!谢谢

0 投票
1 回答
113 浏览

python - 张量流概率中的急切执行在第二次迭代时停止记录梯度

不知何故,我的火车循环中没有渐变。下面是一个简单的例子。

如果我两次运行渐变记录步骤,第二次不会显示任何渐变。返回一个带有None类型的列表。

如果我们将模型替换m为“标准”张量流模型,则情况并非如此,即

m = tf.keras.Sequential([tf.keras.layers.Dense(1)])

我正在使用 tensorflow=1.13.1 和 tensorflow-probability=0.6.0

0 投票
0 回答
208 浏览

python - 如何在 TensorFlow Eager 中分析图形函数?

在 TensorFlow Eager 中,我可以使用 Python 的分析器来分析纯粹以 Eager 模式运行的代码。tf.function但是,如果我使用or将 python 函数“编译”为图形函数tf.contrib.eager.defun,则该函数对 python 变得不透明 - 探查器无法输入它。

我已经找到了如何在图形模式下分析 TF 图,但我不知道如何在渴望模式下使用图形函数来做到这一点。

具体来说,如果我构造一个这样的函数,

如何确定执行 myfunc 的时间op1和时间op2

0 投票
1 回答
3647 浏览

python - 为什么 model.losses 返回正则化损失?

我遇到了一段 tensorflow 2.0 的代码片段,用于计算损失。总损失由两部分组成:1)正则化损失,2)预测损失。我的问题是为什么model.losses正则化损失?model这是一个实例tf.keras.Model。我对 tensorflow 官方 API 文档有点困惑。tf.keras.Model,它说

与此层相关的损失。

访问此属性时会创建变量正则化张量,因此它非常安全:在 a 下访问损失tf.GradientTape会将梯度传播回相应的变量。

为什么我们可以通过访问losses属性来获得正则化损失?另外,什么是渴望安全?如果losses属性返回正则化损失,为什么它被命名losses而不是regularization_loss

0 投票
1 回答
1103 浏览

python - Tensorflow Eager Execution - 计算顺序模型两层之间的梯度

我正在尝试遵循http://www.hackevolve.com/where-cnn-is-looking-grad-cam/上的指南,使用 Tensorflow 的新急切执行模式。特别是一行让我难住了:

我知道它正在寻找最后一个卷积层和特定类的输出之间的梯度。但是,我无法弄清楚如何使用 来完成此操作GradientTape,因为 (a) 两者都是张量而不是变量,并且 (b) 一个不是直接从另一个派生的(它们的特征图已经存在,因此如果没有图表,它们实际上是独立的)。

编辑:更多信息。还没有人回答,所以我会继续添加自发布问题以来我尝试过的内容:

显而易见的步骤是使用 Eager 执行重现第一部分。

一种尝试是使用 reduce_sum 和 multiply 来获得所需的梯度(忽略该class_output步骤):

但是,gradNone此设置中。