使用 tensorflow 函数的 Keras 自定义层

数据挖掘 喀拉斯 张量流
2022-02-17 22:39:38

我想知道是否还有其他方法可以编写我自己的 Keras 层,而不是他们文档中给出的继承方式?我的同事对 tensorflow 更熟悉,他给了我一个 tensorflow 函数来完成图层的工作。我是否必须将其重写为 Keras 的继承层?

2个回答

您可以覆盖 tensorflow 类并将您的功能添加为同事提到的层,但 Keras 只是 tensorflow 的高级 API,可以从 keras 调用该层。

取决于你使用的是什么 keras。如果您使用的是 Keras(不是 tf Keras),那么您必须从 Keras Layer 继承。这种行为是。这种行为的原因之一是 Keras 希望他们的框架支持多个后端(尽管我从未见过有人在中途更改后端)。将 keras 视为中间人,将后端视为工作人员,通过使用 keras,您正在与中间人进行通信,然后 keras 会将其转发给工作人员,因此您必须使用中间人理解的语言。

Tensorflow 2.0 提供 tf-keras 作为其高级 API。您可以混合和匹配 tensorflow 函数和 keras 层(仅当您从 tf.keras 导入它时)。这可能是您正在寻找的。