Преобразование h5 в tflite

Я пытался получить эту классификацию текста с нулевым выстрелом joeddav / xlm-roberta-large-xnliконвертировать из файла h5 в файл tflite ( https://huggingface.co/joeddav/xlm-roberta-large-xnli ), но эта ошибка выскакивает, и я не могу найти ее описание в Интернете, как это исправить? Если это невозможно, есть ли другой классификатор текста с нулевым выстрелом, который я мог бы использовать, который будет давать аналогичную точность даже после того, как я стану tflite?

      AttributeError: 'T5ForConditionalGeneration' object has no attribute 'call'

Я пробовал несколько разных руководств, и текущий файл Google Colab, который у меня есть, представляет собой смесь нескольких из них. https://colab.research.google.com/drive/1sYQJqvhM_KEvMt2IP15d8Ud9L-ApiYv6?usp=sharing

1 ответ

[Преобразовать TFLite из сохраненной модели .h5 в модель TFLite]

Преобразование с помощью tflite convert существует несколькими способами.

  1. Преобразователь TF-Lite Преобразователь TF-Lite
  2. TF.Lite.TFLiteConverter ИЛИ иначе

По предоставленным ссылкам в настоящее время они пытаются преобразовать сохраненную модель .h5 в TFLite, чтобы подтвердить свой вопрос.

[ Образец ]:

      """""""""""""""""""""""""""""""""""""""""""""""""""""""""
: Model Initialize
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
model = tf.keras.models.Sequential([
    tf.keras.layers.InputLayer(input_shape=( 32, 32, 3 )),
    tf.keras.layers.Dense(128, activation='relu'),
])
model.compile(optimizer='sgd', loss='mean_squared_error') # compile the model
model.summary()

model.save_weights(checkpoint_path)

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
: FileWriter
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
if exists(checkpoint_path) :
    model.load_weights(checkpoint_path)
    print("model load: " + checkpoint_path)


tf_lite_model_converter = tf.lite.TFLiteConverter.from_keras_model(
    model
) # <tensorflow.lite.python.lite.TFLiteKerasModelConverterV2 object at 0x0000021095194E80>
tflite_model = tf_lite_model_converter.convert()

# Save the model.
with open(checkpoint_dir + '\\model.tflite', 'wb') as f:
    f.write(tflite_model)

[ Выход ]: