美文网首页
Tensorflow Pb 文件的一些操作

Tensorflow Pb 文件的一些操作

作者: Nevrast | 来源:发表于2019-02-14 14:29 被阅读2次

    载入文件

    参考链接:https://medium.com/@alexkn15/tensorflow-save-model-for-use-in-java-or-c-ab351a708ee4

    model_filename = './saved_model.pb'
    with tf.gfile.GFile(model_filename, 'rb') as f:
        graph_def = tf.GraphDef()
        graph_def.ParseFromString(f.read())
        # tensorflow adds "import/" prefix to all tensors when imports graph definition, ex: "import/input:0"
        # so we explicitly tell tensorflow to use empty string -> name=""
        tf.import_graph_def(graph_def, name="")
    print(tf.get_default_graph().get_operations())  # just print all operations for debug
    

    除此以外,查看载入图中的节点信息

    node_list = graph_def.node
    ##其数据结构类似
    print node_list[-1]
    ##----------------------
    name: "prediction"
    op: "Reshape"
    input: "score"
    input: "prediction/shape"
    attr {
        key: "T"
        value {
            type: DT_INT32
        }
    }
    attr {
        key: "Tshape"
        value {
            type: DT_INT32
        }
    }
    

    查看所有节点的名字就

    for node in graph_def.node
        print node.name
    

    如果要找出所有Placeholder就

    placeholder_nodes = [node for node in graph_def.node if node.op == "Placeholder"]
    

    相关文章

      网友评论

          本文标题:Tensorflow Pb 文件的一些操作

          本文链接:https://www.haomeiwen.com/subject/lbnseqtx.html