将 Keras 与 Tensorflow 2、Theano 或 CNTK 后端一起使用是不是存在语法差异?

Posted

技术标签:

【中文标题】将 Keras 与 Tensorflow 2、Theano 或 CNTK 后端一起使用是不是存在语法差异?【英文标题】:Are there syntax differences between using Keras with a Tensorflow 2, Theano, or CNTK backend?将 Keras 与 Tensorflow 2、Theano 或 CNTK 后端一起使用是否存在语法差异? 【发布时间】:2020-07-13 22:06:23 【问题描述】:

如果您使用的是 Tensorflow 2 后端,似乎建议使用 tf.keras,但是使用 Theano 或 CNTK 作为后端呢?我从未使用过 Keras 或任何 DL 库。

【问题讨论】:

【参考方案1】:

Keras 已正式决定放弃对 CNTK 和 Theano 的支持。因此,如果你使用 tensorflow 作为后端的 keras,你应该使用 tf.keras。

对于 keras 的旧版本,您可以使用所有三个后端,而无需在 keras 代码中更改语法。

Keras 2.2.5 是 Keras 实现 2.2.* API 的最后一个版本。 这是最后一个仅支持 TensorFlow 1(以及 Theano 和 CNTK)。

当前版本是 Keras 2.3.0,这使得重要的 API 更改并添加对 TensorFlow 2.0 的支持。 2.3.0 版本将是 多后端 Keras 的最后一个主要版本。多后端 Keras 是 被 tf.keras 取代。

您可以找到以上信息here。

【讨论】:

以上是关于将 Keras 与 Tensorflow 2、Theano 或 CNTK 后端一起使用是不是存在语法差异?的主要内容,如果未能解决你的问题,请参考以下文章

TensorFlow2 入门指南 | 11 Keras 与 tf.keras 总体框架介绍

Keras 切换后端(Theano和TensorFlow)

将 Keras 模型集成到 TensorFlow

标准化 Keras:TensorFlow 2.0 高级 API 指南

具有Tensorflow后端的Keras的K.function方法是否适用于网络层?

Keras 2.3.0 发布:支持TensorFlow 2.0!!!!!