我正在尝试从我的 Keras(tensorflow 后端)模型创建一个 pb 文件,以便可以在 iOS 上构建它。我正在使用 freeze.py,我需要传递输出节点。如何获取 Keras 模型的输出节点的名称?
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/tools/freeze_graph.py
最佳答案
您可以使用 Keras model.summary() 来获取最后一层的名称。
如果 model.outputs 不为空,您可以通过以下方式获取节点名称:
[node.op.name for node in model.outputs]
你通过
获得 sessionsession = keras.backend.get_session()
然后您通过
将所有训练变量转换为常量min_graph = convert_variables_to_constants(session, session.graph_def, [node.op.name for node in model.outputs])
之后你可以通过
编写一个protobuf文件tensorflow.train.write_graph(min_graph, "/logdir/", "file.pb", as_text=True)
关于python - 如何获取 Keras 模型中 tensorflow 输出节点的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40028175/