2016-11-22 2 views
1

Я использую exporter от tensorflow.contrib.session_bundle, чтобы спасти мою модель:ВЫВЕЗЕННЫЕ Tensorflow Модели не сохраняющий Заполнитель Формы

x = tf.placeholder(tf.float32, (None,) + (100, 200) + (1,)) 
.... 
saver = tf_saver.Saver(sharded=True) 
model_exporter = exporter.Exporter(saver) 
model_exporter.init(
    sess.graph.as_graph_def(), 
    named_graph_signatures={ 
     'inputs': exporter.generic_signature({'images': x}), 
     'outputs': exporter.generic_signature({'classes': y})}) 

, а затем я загрузить модель обратно в (session_bundle из tensorflow.contrib.session_bundle):

sess, meta_graph_def = session_bundle.load_session_bundle_from_path(input) 

Однако, когда я проверяю тензор Placeholder, соответствующий входу x, я не вижу информации о форме:

> sess.graph.get_tensor_by_name(input_name) 
<tf.Tensor 'Placeholder:0' shape=<unknown> dtype=float32> 

Это по дизайну или есть какая-то ошибка, вызывающая утери формы?

ответ

0

Вот ответ от коллеги:

«The exporter.generic_signature вызова (при построении named_graph_signatures) заполнит карту generic_signature, как определено здесь: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/session_bundle/manifest.proto#L69

Значение в карте является TensorBinding, который сам по себе является просто тензорным именем. См. https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/session_bundle/manifest.proto#L20

Так что ожидается, что форма не будет сохранена, и имя должно достаточно идентифицировать тензор ».

+0

Правильно, но я беру имя тензора, которое я [читаю из протобуфа] (https://gist.github.com/cancan101/31df34ca5dd971338cad8ca85bc1d8e2), а затем вызывает 'get_tensor_by_name', который разрешает имя для фактического тензорный объект. –

+0

Привет, Алекс, похоже, до тех пор, пока информация о тензоре может быть получена с использованием имени, это должно сработать. Можете ли вы рассказать о конкретной проблеме? – Neal

+0

Я до сих пор не понимаю, почему форма выходного тензора сохраняется по форме входных тензоров. –

Смежные вопросы