如何从像model.ckpt.meta这样的图解文件中生成一个model.ckpt.meta,即包含图def的原型。
我想这两个文件,graph.pbtxt和model.ckpt.meta都是在培训期间生成的。但是,我想使用一个分析工具,它需要一个经过预先训练的NN上的graph.pbtxt,而我只能访问model.ckpt.*文件。这个是可能的吗?
发布于 2018-07-08 17:22:43
要生成一个原型,您需要两件事:
.meta,.ckpt。本质上,.meta文件包含图形定义,而.ckpt包含经过训练的模型的权重。protobuf格式将两者合并在一个文件中。
您必须加载元图,然后按以下方式加载检查点:
sess = tf.Session()
saver = tf.train.import_meta_graph(meta_file)
saver.restore(save_path=ckpt_file, sess=sess)最后,在将图形导出到protobuf格式之前,必须定义图形的输出节点。输出节点包含在您希望检索的输出层的名称列表中。例如,它可能是['myModel/fc12/BiasAdd']。
from tensorflow.python.framework import graph_util
output_graph = graph_util.convert_variables_to_constants(
sess,
sess.graph.as_graph_def(),
output_node_names)
with tf.gfile.GFile('output.pb', 'wb') as f:
f.write(output_graph.SerializeToString())https://stackoverflow.com/questions/51233023
复制相似问题