如何将tf.assembly.DNNClassifier()转换为tflite



代码:

classifier1 = tf.estimator.DNNClassifier(
feature_columns=my_feature_columns,
hidden_units=[128,64,32,10],
n_classes=10)

#保存型号

feature_spec = tf.feature_column.make_parse_example_spec(my_feature_columns)
export_input_fn = tf.estimator.export.build_parsing_serving_input_receiver_fn(feature_spec)
servable_model_dir = “/content/DNN_model”
servable_model_path = classifier1.export_saved_model(servable_model_dir, export_input_fn)

#转换为tflite

converter=tf.lite.TFLiteConverter.from_saved_model("/content/DNN_model/1653290705/saved_model.pb")
tflite_model = converter.convert()

#最终得到这个错误

OSError: SavedModel file does not exist at: /content/DNN_model/1653290705/saved_model.pb/{saved_model.pbtxt|saved_model.pb}

如何修复此错误?[注意这个代码是在colab上创建的]

您需要指定保存模型的目录,而不是保存模型目录中的.pb文件。因此,如果您将mdoel保存在"/content/DNN_model";然后通过相同的路径"/content/DNN_model";至转换器。

converter=tf.lite.TFLiteConverter.from_saved_model(servable_model_dir)

最新更新