gpt4 book ai didi

python - 从 model.ckpt.meta 中提取图形定义

转载 作者:太空宇宙 更新时间:2023-11-04 02:22:29 26 4
gpt4 key购买 nike

我将如何从 model.ckpt.meta 之类的 metagraphdef 文件生成 graph.pbtxt,即包含图形 def 的 protobuf?

我猜 graph.pbtxtmodel.ckpt.meta 这两个文件都是在训练期间生成的。但是,我想在预训练神经网络上使用需要 graph.pbtxt 的分析工具,我只能访问其中的 model.ckpt.* 文件。这可能吗?

最佳答案

要生成 protobuf,您需要两件事:

  • 元图,您提到的.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())

关于python - 从 model.ckpt.meta 中提取图形定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51233023/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com