2016-11-28 2 views
0

Сейчас я следующий Train And Export TensorFlow Model:Замораживание Tensorflow Модель Сохраненный session_bundle.exporter

model_exporter = exporter.Exporter(saver) 
... 
model_exporter.export(...) 

, который производит для каждого шага:

173 Nov 26 17:26 checkpoint 
    31M Nov 26 17:26 export-00000-of-00001 
1.5M Nov 26 17:26 export.meta 

Как взять эти файлы и создать frozen model (например, используя freeze_graph.py)?

Похоже, freeze_graph.py хочет GraphDef, но все, что у меня есть, это файл MetaGraph. Нужно ли сначала извлечь это?

Возможно, файл export-00000-of-00001 используется для загрузки файла переменных TensorFlow?

Есть ли какие-либо другие флаги, которые я должен пройти при попытке заморозить модель?

ответ

0

Это, кажется, работает для меня:

from tensorflow.python.framework import graph_util 
from tensorflow.contrib.session_bundle import session_bundle 
import tensorflow as tf 

export_dir = '/tf_files/00000170/' 
output_graph = '/tf_files/00000170/frozen.pb' 
clear_devices = True 

sess, meta_graph_def = session_bundle.load_session_bundle_from_path(export_dir) 

input_graph_def = meta_graph_def.graph_def 
if clear_devices: 
    for node in input_graph_def.node: 
     node.device = '' 

output_graph_def = graph_util.convert_variables_to_constants(sess, input_graph_def, ['flatten5/Reshape']) 

with tf.gfile.GFile(output_graph, "wb") as f: 
    f.write(output_graph_def.SerializeToString()) 
+0

Будет 'session_bundle.load_session_bundle_from_path' быть в состоянии загрузить модель, которая была экспортирована с помощью' tf.saved_model.builder.SavedModelBuilder'? – Abhisek

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