Тензор потока: как преобразовать замороженную модель в сохраненную модель - PullRequest
0 голосов
/ 17 мая 2018

Я пытаюсь конвертировать эту замороженную модель (расширение .pb) отсюда:

https://www.dropbox.com/s/bb7n78hq5owyjr0/tf_model_pb.zip?dl=0

К Сохраненная модель .

Возможно ли это? Можете ли вы поделиться точным кодом для преобразования этого файла в сохраненную модель?

1 Ответ

0 голосов
/ 19 февраля 2019

Ответьте сначала, это возможно, но довольно грязно, потому что все переменные, необходимые для SavedModel, преобразуются в константу или другой тип во время замораживания модели ckpt в pb. В tf вернуть 'Constant' в 'Variable' немного сложно, например:

# node is a constant
node = tf.Constant([1, 2])
output_node = tf.NodeDef()
output_node.op = "Variable"
output_node.name = node.name
dtype = node.attr["dtype"].type
data = node.attr["value"].tensor
output_node.attr["dtype"].type = dtype
output_node.attr["value"].CopyFrom(tf.AttrValue(tensor=data))

См. ответ для получения подробной информации о преобразовании константного узла в некоторые другие типы.

Итак, замораживание SavedModel из файла ckpt - самый простой и прямой способ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...