gpt4 book ai didi

tensorflow - TensorFlow 1.1+ 中 Keras 和 tf.keras 有什么区别?

转载 作者:行者123 更新时间:2023-12-02 22:51:52 26 4
gpt4 key购买 nike

现在 TensorFlow 1.1 支持 tf.contrib.keras 下的 Keras API,如果我打算将 Keras 与 TF 后端一起使用,我应该使用哪一个?

tf.contrib.keras 版本与常规 Keras 发行版有什么不同吗? (我想到了内部数据结构的 TF 特定优化)。如果我使用其中之一,同时使用 Keras 和 TensorFlow Core 有什么好处吗?

或者 tf.contrib.keras 只是与 Keras 相同的代码库的副本,但位于不同的命名空间下?

最佳答案

tf.keras (以前的 tf.contrib.keras )是 keras 2 的一个实现,专门使用/针对 TensorFlow 实现。它托管在tensorflow存储库上,并且具有与官方存储库不同的代码库(最后一次提交在 tf-keras 分支 dates back from May 2017 )。

根据经验,如果您的代码使用任何特定于 tensorflow 的代码,请在tf.data.*中说出任何内容。用于提供输入或tf.summary.*对于张量板中的可视化,使用 tf.keras 更简单。 (有些人甚至可能建议不要将引用 Keras 实现与 TF 一起使用,因为 occasional problems it has with this toolkit )。

另一方面,如果您打算主动维护与框架无关的代码,那么使用 keras 自己的包是您唯一的选择。

如果您不太关心与框架无关但不使用特定于 tensorflow 的代码,我可能建议使用 tf.keras并开始使用特定于 tensorflow 的代码,尤其是。 tf.data在我看来,这是一个游戏规则改变者。

编辑

我参加了 Chollet 关于 TF2 的演讲(无法在线找到录音),他在演讲中基本上说,对 TF 之外的框架的支持最终将下降,而 Keras 的 future 开发将完全发生在 tf.keras 中。 .

据我所知,这种情况已经发生,如 Keras' commit stream这几天瘦了。

这很有意义,因为到目前为止,唯一流行的深度学习框架是 pytorch,而 Keras 不支持它。让 Keras 代码与 tensorflow (它支持的唯一主要框架)“不可知”越来越没有意义。

所以今天,我的答案是使用 tf.keras默认情况下,并为难以迁移的遗留项目保留 Keras ——这是 Keras 面向 future 的选择。

关于tensorflow - TensorFlow 1.1+ 中 Keras 和 tf.keras 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44068899/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com