Введение
В TensorFlow Hub размещаются модели для различных задач. В моделях для одной и той же задачи рекомендуется реализовать общий API, чтобы потребители моделей могли легко обмениваться ими, не изменяя код, который их использует, даже если они исходят от разных издателей.
Цель состоит в том, чтобы сделать обмен различными моделями для одной и той же задачи таким же простым, как переключение гиперпараметра со строковым значением. Благодаря этому потребители моделей могут легко найти лучшую модель для своей проблемы.
В этом каталоге собраны спецификации распространенных API для моделей в формате TF2 SavedModel . (Он заменяет общие подписи для ныне устаревшего формата TF1 Hub .)
Многоразовая сохраненная модель: общая основа
API Reusable SavedModel определяет общие соглашения о том, как загрузить SavedModel обратно в программу Python и повторно использовать ее как часть более крупной модели TensorFlow.
Основное использование:
obj = hub.load("path/to/model") # That's tf.saved_model.load() after download.
outputs = obj(inputs, training=False) # Invokes the tf.function obj.__call__.
Для пользователей Keras hub.KerasLayer
использует этот API для упаковки многоразовой сохраненной модели в качестве слоя Keras (защищая пользователей Keras от ее подробностей) с входными и выходными данными в соответствии с API-интерфейсами для конкретных задач, перечисленными ниже.
API для конкретных задач
Они уточняют API Reusable SavedModel с помощью соглашений для конкретных задач ML и типов данных.