Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Совместимость Модель TF1 / TF2

форматы модели TF-концентратор

TF Hub предлагает многоразовые части модели, которые могут быть загружены обратно, построен на, и, возможно, переучиваться в программе TensorFlow. Они бывают в двух разных форматах:

  • Пользовательский формат TF1 Hub . Его основной цели использования в TF1 TF1 (или режиме совместимости в TF2) через его hub.Module API . Полная совместимость подробности ниже .
  • Родной TF2 SavedModel формат. Его основной цели использования в TF2 через hub.load и hub.KerasLayer API. Полная совместимость подробности ниже .

Формат модели можно найти на странице модели на tfhub.dev . Модель загрузки / вывода, тонкая настройка или создание может не поддерживаться в TF1 / 2 на основе форматов модели.

Совместимость формата TF1 Hub

операция TF1 / TF1 режим Compat в TF2 [1] TF2
Загрузка / Умозаключение Полностью поддерживается ( полный TF1 концентратор формата загрузка руководство )
m = hub.Module(handle)
outputs = m(inputs)
Рекомендуется использовать либо hub.load
m = hub.load(handle)
outputs = m.signatures["sig"](inputs)
или hub.KerasLayer
m = hub.KerasLayer(handle, signature="sig")
outputs = m(inputs)
Тонкая настройка Полностью поддерживается ( полный TF1 концентратор формат тонкой настройки руководство )
m = hub.Module(handle,
               trainable=True,
               tags=["train"]*is_training)
outputs = m(inputs)
Примечание: модули, которые не требуют отдельного поезда графа нет поезда метки.
Не поддерживается
Создание Полностью поддерживаются (см полного TF1 Hub Руководство по созданию формата )
Примечание: Формат TF1 концентратор ориентирован на TF1 и только частично поддерживается в TF2. Рассмотрим создание TF2 SavedModel.
Не поддерживается

Совместимость TF2 SavedModel

Не поддерживается до того TF1.15.

операция TF1.15 / TF1 режим Compat в TF2 [1] TF2
Загрузка / Умозаключение Используйте либо hub.load
m = hub.load(handle)
outputs = m(inputs)
или hub.KerasLayer
m = hub.KerasLayer(handle)
outputs = m(inputs)
Полностью поддерживается ( полное TF2 SavedModel загрузки гид ). Используйте либо hub.load
m = hub.load(handle)
outputs = m(inputs)
или hub.KerasLayer
m = hub.KerasLayer(handle)
outputs = m(inputs)
Тонкая настройка Поддерживается для hub.KerasLayer , используемого в tf.keras.Model , когда тренировался с Model.fit () или обучение в оценщик , чьи model_fn обертывания модели в соответствии с руководством пользовательских model_fn .
Примечание: hub.KerasLayer не заполняет коллекцию графа , как старое tf.compat.v1.layers или hub.Module API , сделал.
Полностью поддерживается ( полное TF2 SavedModel тонкой настройки гида ). Используйте либо hub.load:
m = hub.load(handle)
outputs = m(inputs, training=is_training)
или hub.KerasLayer:
m =  hub.KerasLayer(handle, trainable=True)
outputs = m(inputs)
Создание TF2 API - tf.saved_model.save () может быть вызван из Compat режима. Полностью поддерживаются (см полного руководства по созданию TF2 SavedModel )

[1] «TF1 режим в TF2 Compat» относится к комбинированному воздействию импорта TF2 с import tensorflow.compat.v1 as tf , tf.disable_v2_behavior() import tensorflow.compat.v1 as tf и работает tf.disable_v2_behavior() , как описано в руководстве TensorFlow миграции .