У меня есть обычная модель, и я использую tf.lite.TFLiteConverter.from_keras_model_file
для преобразования ее в модель .tflite. Затем я использую интерпретатор для вывода изображений.
tf.logging.set_verbosity(tf.logging.DEBUG)
interpreter = tf.lite.Interpreter(model_path)
interpreter.allocate_tensors()
input_index = interpreter.get_input_details()[0]["index"]
output_index= interpreter.get_output_details()[0]["index"]
for loop:
(read image)
interpreter.set_tensor(input_index, image)
interpreter.invoke()
result = interpreter.get_tensor(output_index)
В обычной модели я использую следующее для прогнозирования.
model = keras.models.load_model({h5 model path}, custom_objects={'loss':loss})
for loop:
(read image)
result = model.predict(image)
Тем не менее, затраченное время на модели логического вывода .tflite намного длиннее обычной. Я также пробую квантование после обучения на .tflite, но эта модель является самой медленной по сравнению с двумя другими. Имеет ли это смысл? Почему это происходит? Есть ли способ сделать Liteor модель Liteor быстрее, чем его обычная модель? Благодарю.