我已经训练了一个模型并将其保存为h5文件。由于我想在我的Android应用程序中使用它,因此我希望将其转换为Colab上的tflite。这是我的代码:
import tensorflow as tf
model = tf.keras.models.load_model('Final_model.h5')
converter = tf.lite.TFLiteConverter.from_keras_model(model)
tflite_model = converter.convert()
open("converted_model.tflite", "wb").write(tflite_model)
我得到的错误:
AttributeError: type object 'TFLiteConverter' has no attribute 'from_keras_model'
我该如何解决?
答案 0 :(得分:0)
您正在使用Tensorflow 1.x,在这种情况下,它的名称略为different API。您应该使用的是from_keras_model_file
,即:
converter = tf.lite.TFLiteConverter.from_keras_model_file('Final_model.h5')
答案 1 :(得分:0)
您正在使用colab's
默认tensorflow
,即1.15.0
。
您可以通过从colab的单元发布来下载最新版本:
!pip install --upgrade pip && pip install tensorflow
。
您可能必须通过以下命令预先卸载tensorflow
1.15.0版:
!pip uninstall tensorflow (or tensorflow-gpu)
。
之后,您应该可以运行tf2.x
代码。
注意::很快,TF2.0将成为默认版本,并且此解决方法是暂时的。