问题标签 [tensorflow2.0]

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

python - 从 np 数组转换后,keras(tensorflow 2.0)中 tensorflow 数据集数据的形状错误

在按照本指南设置简单的 tensorflow 2.0 测试时,keras 输入层的输入是错误的,但只有在转换为数据集(假装具有正确的形状)之后。

从文档中运行 colab 笔记本当然可以,但我无法弄清楚我的设置可能有什么问题。任何提示表示赞赏!

在 jupyter lab 中设置一些假数据:

使用功能性 keras API 构建简化模型(顺序没有区别):

在 numpy 数组上运行模型拟合按预期工作:

不适合数据集的是(而 docs/colab 示例可以):

这会在输入形状上引发 ValueError,显然是 (1,):

这是在遇到更复杂模型的错误之后最简单、最精简的版本,并且首先是新的 tensorflow-datasets 包 - 现在它是如此简单,以至于我不知道为什么它不能正常工作(并且执行 (几乎)与 numpy 数组版本相同)。

0 投票
1 回答
1791 浏览

python - TensorFlow 2.0:如何更新张量?

在 TensorFlow 1.x 中,要更新张量,我会使用tf.scatter_update, 仅更新张量的相关部分。

我们如何在 TF 2.0 中做同样的事情?

0 投票
0 回答
41 浏览

keras - Keras categorical_entropy 输出形状未知?

几乎说明了一切。最终形成通常的 TypeError:“NoneType”类型的对象没有 len() 。

0 投票
0 回答
177 浏览

tensorflow - 与初学者代码相比,使用 TensorFlow 2.0 专家代码的训练结果更差

我在TensorFlow 2.0.0 alpha教程中看到了两个快速入门模板。一种适用于初学者,model.fit用于培训,另一种与tf.GradientTape() as tape:and一起使用optimizer

我尝试了两种代码来训练相同的数据,相同的网络,但只有初学者一个效果很好。

输入: [224, 224] 图片 * 240

网络: keras 应用上的 VGG19

班级人数: 24

模型:

初学者代码:

专家代码:

初学者的结果:

专家结果:

0 投票
1 回答
618 浏览

python - TensorFlow 2.0:带有@tf.function 装饰器的函数不采用 numpy 函数

我正在编写一个函数来在 TensorFlow 2.0 中实现一个模型。它需要image_batch(一批 numpy RGB 格式的图像数据)并执行一些我需要的特定数据增强任务。导致我出现问题的行是:

numpy当我把装饰器放在它上面时,它的.append()功能就不再起作用了。@tf.function它返回:

ValueError:无法连接零维数组

当我np.append()在函数之外使用命令时,或者没有@tf.function顶部的命令时,代码运行没有问题。

这是正常的吗?我是否被迫移除装饰器以使其工作?或者这是一个错误,因为 TensorFlow 2.0 仍然是测试版?在这种情况下,我该如何解决这个问题?

0 投票
0 回答
131 浏览

tensorflow - 如何在 keras tensorflow 2.0 模型中使用单个可训练变量作为“输入”,在整个批次中广播?

例如,您将如何创建一个模型来预测输出 Y 的平均值(没有给出输入 X)。

平均值应该是

但这不起作用。

例如:

不会产生有效的模型。

更新:

看到这里如何创建一个没有内核的 tf.keras 层?

0 投票
1 回答
253 浏览

python - tensorflow 2.0,调用函数时给出了两个变量,但是,定义函数时,没有变量

我正在关注tensorflow-2.0中的教程。定义生成器时,没有给出变量,但调用函数时,给出了两个变量。

这是 tensorflow 网站上的官方教程。

0 投票
1 回答
2638 浏览

tensorflow - 如何在 TensorFlow 2.0 中调试 Keras?

实际上,我在 TensorFlow 1.13.0 中已经发现了问题。(tensorflow1.12.0 运行良好)。

我的代码被列为一个简单的例子:

在我的 Keras 模型中用作 lambda 层。在 tensorflow1.12.0 中,print(temp)可以输出如下的详细数据

这是因为我使用 1024 作为 batch_size。但是当我更新到 tensorflow1.13.0 或 TensorFlow 2.0 时,相同的代码输出

这很糟糕,因为我不知道确切的错误。那么,关于如何解决它的任何想法?

0 投票
0 回答
190 浏览

keras - 由于 Keras 变量名称未出现在摘要中,如何通过名称访问回调或其他地方的 Keras 变量?

这是在 tensorflow-2.0 keras 中。

然后我使用这个模型(未编译)作为另一个模型构建过程的输入。

变量“V”没有出现在第一个或第二个模型的摘要中。如何在回调甚至急​​切模式下获取值 V?

0 投票
0 回答
232 浏览

python - 嵌套顺序模型未训练

我正在尝试建立几个模型来预测不同的市场发展,每个模型都使用相同的编码器网络。所以我定义了一个共享的 LSTM 网络,如下所示:

我还为每个市场定义了一个类,它有以下模型作为成员:

到目前为止一切顺利,模型都可以根据各自的数据进行训练。LSTM 模型构建一次,并作为encoder_model. 我的目标是让 LSTM 学习创建一个潜在空间,然后其他密集层使用该潜在空间进行预测。然而,在检查直方图后,我意识到编码器网络权重根本没有变化。

我检查了trainable_variables所有层都列出了,所以理论上这应该可行,对吧?我还通过以下方式在训练步骤之前保存了编码器权重

并将它们与训练后的权重进行比较

果然,权重根本没有改变(打印出来的结果只包含0)

我错过了什么?梯度不应该也通过 Sequential LSTM 网络传播吗?因为我只添加了两层,所以渐变不应该消失,对吧?