我获得了TensorFlow检查点和导出的模型,但是为了使用Google ML Cloud提供模型,我需要一个saved_model.pbtxt
文件。似乎我需要加载检查点并使用SavedModelBuilder
但SavedModelBuilder
需要输入和输出节点名称的字典。
我的问题是,给定检查点或导出的模型(如下),我如何找到生成pbtxt
文件所需的节点名称,我需要通过Google的ML Cloud服务为模型提供服务?< / p>
checkpoint
export.data-00000-of-00001
export.index
export.meta
options.json
答案 0 :(得分:1)
export.meta应为MetaGraphDef原型。所以你应该能够解析原型以获得graph。然后,您可以搜索节点以查找感兴趣的节点。
类似的东西:
import argparse
from tensorflow.core.protobuf import meta_graph_pb2
import logging
if __name__ == "__main__":
parser = argparse.ArgumentParser(
description='Argument parser.')
parser.add_argument('--path',
required=True,
help='The path to the metadata graph file.')
args = parser.parse_args()
with open(args.path, 'r') as hf:
graph = meta_graph_pb2.MetaGraphDef.FromString(hf.read())
print "graph: \n{0}".format(graph)
我认为您还应该能够在包含该文件的目录中指向TensorBoard,TensorBoard将呈现图形并使用它来识别输入/输出节点的名称。