Класс TFLiteConverter
Класс TFLiteConverter предназначен для конвертации моделей
TensorFlow в формат TensorFlow Lite (.tflite). Он поддерживает
несколько источников: сохраненную модель, Keras-модель и конкретные
функции. Первым параметром методы класса принимают исходную модель
или функцию, а также дополнительные параметры, такие как
поддерживаемые операции и оптимизации. После создания экземпляра
конвертера вызывается метод convert, который возвращает
сериализованную модель в виде массива байтов.
Синтаксис
tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
tf.lite.TFLiteConverter.from_keras_model(model)
tf.lite.TFLiteConverter.from_concrete_functions(funcs)
Пример
Давайте создадим простую Keras-модель и сконвертируем ее в формат
TensorFlow Lite с помощью метода from_keras_model:
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(10, input_shape=(5,))
])
converter = tf.lite.TFLiteConverter.from_keras_model(model)
tflite_model = converter.convert()
print(type(tflite_model))
print(len(tflite_model) > 0)
Результат выполнения кода:
<class 'bytes'>
True
Пример
Давайте сконвертируем модель из сохраненного файла
'model.keras' с использованием метода
from_saved_model:
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(10, input_shape=(5,))
])
model.save('model.keras')
converter = tf.lite.TFLiteConverter.from_saved_model('model.keras')
tflite_model = converter.convert()
print(len(tflite_model) > 0)
Результат выполнения кода:
True
Пример
Давайте сконвертируем конкретную функцию с помощью метода
from_concrete_functions:
import tensorflow as tf
def model_func(x):
return x + 1
concrete_func = tf.function(model_func).get_concrete_function(
tf.TensorSpec(shape=[1], dtype=tf.float32)
)
converter = tf.lite.TFLiteConverter.from_concrete_functions([concrete_func])
tflite_model = converter.convert()
print(len(tflite_model) > 0)
Результат выполнения кода:
True
Смотрите также
-
класс
TFLiteConverter,
который преобразует модели в формат TensorFlow Lite -
метод
from_saved_model,
который создает конвертер из сохраненной модели -
метод
from_keras_model,
который создает конвертер из Keras-модели -
метод
from_concrete_functions,
который создает конвертер из конкретных функций