tensorflow.keras和keras的比较

tf.keras 与 keras 绝对兼容,但请注意:

  • tf.keras 与 keras 版本相同时,才绝对兼容。可以通过 tf.keras.version.来查看 tf.keras 的版本。

  • tensorflow和keras的兼容版本信息查看地址:
    Environments

  • 保存模型参数时,tf.keras 默认保存成 checkpoint 格式。可以通过设置 save_format=‘h5’ 来保存成 HDF5 格式。

tf.keras是 Keras API 在 TensorFlow 里的实现。

  • Keras 是一个高级 API,用于构建和训练模型,同时兼容 TensorFlow 的绝大部分功能,比如,eager execution,tf.data 模块,及 Estimators。

  • tf.keras 使得 TensorFlow 更容易使用,且保持 TF 的灵活性和性能。

  • 把import keras 换成from tensorflow import keras,所有功能都应该可以工作。反之则未必,因为tf.keras有一些keras不支持的特性。

Keras 特性

  • keras本身并不具备底层运算的能力,所以它需要和一个具备这种底层运算能力的backend(后端)协同工作。

  • keras的特性之一就是可以互换的后端,你在所有后端上写的keras代码都是一样的。从一个后端训练并存储的模型,可以用别的后端加载并运行。

tf.keras

  • 一个不强调后端可互换性、和tensorflow更紧密整合、得到tensorflow其他组建更好支持、且符合keras标准的高层次API。

tf.keras与keras的选择

选择keras还是tf.keras呢?

  • 如果你需要任何一个上述tf.keras的特有特性的话,那当然应该选择tf.keras。

  • 如果后端可互换性对你很重要的话,那选择keras。

  • 如果以上两条对你都不重要的话,那选用哪个都可以。

参考:
tf和keras二者关系
官方文档-中

你可能感兴趣的:(Keras,tensorflow)