1

我想将 Keras 模型转换为 Tensorflow Lite 模型。当我检查文档时,据说我们可以使用 tf.keras HDF5 模型作为输入。这是否意味着我可以使用我保存的 HDF5 Keras 模型作为它的输入,或者 tf.keras HDF5 模型和 Keras HDF5 模型是不同的东西?

文档:https ://www.tensorflow.org/lite/convert

编辑:我可以使用这个 API 将我的 Keras 模型转换为 Tensorflow Lite 模型,但我还没有测试它。我的代码:

converter = tf.lite.TFLiteConverter.from_keras_model_file(path + 'plant- 
recognition-model.h5')
tflite_model = converter.convert()

with open('plant-recognition-model.tflite', 'wb') as f:
   f.write(tflite_model)
4

1 回答 1

2

tf.keras HDF5 模型和 Keras HDF5 模型不是不同的东西,除了不可避免的软件版本更新同步。这是官方文档所说的

tf.keras 是 TensorFlow 对 Keras API 规范的实现。这是一个用于构建和训练模型的高级 API,包括对 TensorFlow 特定功能的一流支持

如果转换器可以将 keras 模型转换为 tf.lite,它将提供相同的结果。但是 tf.lite 的功能比 tf.keras 更有限。如果这个功能集对你来说还不够,你仍然可以使用 tensorflow,并享受它的其他优势。

可能很快,您的模型就可以在智能手机上运行。

于 2019-05-04T16:12:39.463 回答