У меня есть несколько вопросов относительно API SavedModel
, чья документация, которую я нахожу, оставляет много деталей необъяснимым.
Первые три вопроса о том, чтобы перейти к аргументам add_meta_graph_and_variables()
метод tf.saved_model.builder.SavedModelBuilder
, а четвертый вопрос о том, почему использовать SavedModel
API над tf.train.Saver
.
-
Каков формат аргумента
signature_def_map
? Должен ли я обычно устанавливать этот аргумент при сохранении модели? -
Аналогично, Каков формат аргумента
assets_collection
? -
Почему вы сохраняете список тегов с помощью metagraph, а не просто присваиваете ему имя (т.е. Прикрепляете к нему только один уникальный тег)? Почему я должен добавить несколько тегов в данный метаграф? Что делать, если я пытаюсь загрузить metagrpah из
pb
определенным тегом, но несколько metagraphs в этомpb
соответствуют этому тегу? -
В документации утверждается, что рекомендуется использовать
SavedModel
для сохранения целых моделей (в отличие от переменных) только в автономных файлах. Ноtf.train.Saver
также сохраняет граф в дополнение к переменным в файле.meta
. Итак, каковы преимущества использованияSavedModel
? В документации говорится:
Когда вы хотите сохранять и загружать переменные, график и метаданные графика - в основном, когда вы хотите сохранить или восстановить свою модель, мы рекомендуем использовать SavedModel. SavedModel - это нейтральный по языку, восстанавливаемый, герметичный формат сериализации. SavedModel позволяет системам и инструментам более высокого уровня производить, потреблять и преобразовывать модели TensorFlow.
но это объяснение довольно абстрактно и на самом деле не помогает мне понять, каковы преимущества SavedModel
. Какие конкретные примеры, где SavedModel
(в отличие от tf.train.Saver
) лучше использовать?
Обратите внимание, что мой вопрос не является дубликатом этого вопроса. Я не спрашиваю, как сохранить модель, я SavedModel
очень конкретные вопросы о свойствах SavedModel
, который является лишь одним из множества механизмов, которые TensorFlow обеспечивает для сохранения и загрузки моделей. Ни один из ответов в связанном вопросе не затрагивает API SavedModel
(который, опять же, не совпадает с tf.train.Saver
).