问题标签 [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.
python - 将多个标量保存到 TensorBoard
我处于渴望模式,我试图在 TensorBoard 中绘制一些标量的演变。我已经设法做到这一点 - 损失函数 - 通过使用:
但是,如果我添加另一行代码
那么它就不会被记录下来(或者至少它不会出现在 TensorBoard 中)。我找不到很多参考资料,但我确实找到的那些让我这样写......
有谁知道如何正确地做到这一点?谢谢!
tensorflow - 渴望模式:在 tf.keras.Model 中使用序列
我正在从 Pytorch 过渡到 TensorFlow 1.12,并且想知道是否可以tf.keras.Sequential
在 a 中定义类tf.keras.Model
并以 Eager 模式运行这些类。
我构建了这个最小的非工作示例,如果有人能告诉我哪里出错了,我将不胜感激。但是,我也使用过tf.contrib.eager.Network
类(取得了更大的成功),因为它们计划弃用,所以我尝试避免使用这些类。
tensorflow - 如何将在 Eager 模式下编写的 tensorflow 模型转换为 tensorflow lite
我想将 resnet50 模型(以急切执行模式编写)转换为tflite
. 模式实现在此处提供tensorflow
。似乎tflite
不知道层块(例如:)_ConvBlock
。我收到错误消息:
我想知道您是否可以通过提供一个简单的示例来帮助我?非常感谢您的帮助。
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
python - Sonnet 中的 LSTM 时间步长
我目前正在努力学习Sonnet
。
我的网络(不完整,问题基于此):
在其他框架(例如 Keras)中,LSTM 输入的形式为(batch_size, sequence_length, input_length)
.
但是,Sonnet 文档指出 Sonnet 的 LSTM 的输入格式为(batch_size, input_length)
.
如何将它们用于顺序输入?
到目前为止,我已经尝试在内部使用 for 循环_build
,迭代每个时间步长,但这会给出看似随机的输出。
我在 Keras 中尝试过相同的架构,它运行时没有任何问题。
我正在以渴望模式执行,GradientTape
用于培训。
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)。
任何有关如何解决此问题的建议将不胜感激!谢谢
python - 张量流概率中的急切执行在第二次迭代时停止记录梯度
不知何故,我的火车循环中没有渐变。下面是一个简单的例子。
如果我两次运行渐变记录步骤,第二次不会显示任何渐变。返回一个带有None
类型的列表。
如果我们将模型替换m
为“标准”张量流模型,则情况并非如此,即
m = tf.keras.Sequential([tf.keras.layers.Dense(1)])
我正在使用 tensorflow=1.13.1 和 tensorflow-probability=0.6.0
python - 如何在 TensorFlow Eager 中分析图形函数?
在 TensorFlow Eager 中,我可以使用 Python 的分析器来分析纯粹以 Eager 模式运行的代码。tf.function
但是,如果我使用or将 python 函数“编译”为图形函数tf.contrib.eager.defun
,则该函数对 python 变得不透明 - 探查器无法输入它。
我已经找到了如何在图形模式下分析 TF 图,但我不知道如何在渴望模式下使用图形函数来做到这一点。
具体来说,如果我构造一个这样的函数,
如何确定执行 myfunc 的时间op1
和时间op2
?
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
?
python - Tensorflow Eager Execution - 计算顺序模型两层之间的梯度
我正在尝试遵循http://www.hackevolve.com/where-cnn-is-looking-grad-cam/上的指南,使用 Tensorflow 的新急切执行模式。特别是一行让我难住了:
我知道它正在寻找最后一个卷积层和特定类的输出之间的梯度。但是,我无法弄清楚如何使用 来完成此操作GradientTape
,因为 (a) 两者都是张量而不是变量,并且 (b) 一个不是直接从另一个派生的(它们的特征图已经存在,因此如果没有图表,它们实际上是独立的)。
编辑:更多信息。还没有人回答,所以我会继续添加自发布问题以来我尝试过的内容:
显而易见的步骤是使用 Eager 执行重现第一部分。
一种尝试是使用 reduce_sum 和 multiply 来获得所需的梯度(忽略该class_output
步骤):
但是,grad
在None
此设置中。