【问题标题】:How can I get output node names from a keras model?如何从 keras 模型中获取输出节点名称?
【发布时间】:2021-12-06 14:34:05
【问题描述】:

正如标题所说,我需要从我的 keras xception 模型中获取输出节点名称。具体来说,我想使用此信息将其冻结以与 opencv 一起使用。

【问题讨论】:

  • 嗨,欢迎来到 SO!你能说得清楚一点吗?您想在一个 epoch 之后获得模型的权重吗?
  • 我正在尝试获取 output_node_names 以供 freeze_graph.freeze_graph 使用。

标签: python tensorflow opencv keras


【解决方案1】:

试试这个。

model = keras.models.load_model( 'yourModel.h5' )
output = model.output

输出:

KerasTensor(type_spec=TensorSpec(shape=(None, 128), dtype=tf.float32, name=None), name='Bottleneck_BatchNorm/batchnorm/add_1:0', description="由层'Bottleneck_BatchNorm'创建")

【讨论】:

  • 我试过这个,我得到这个错误:AssertionError: dense/BiasAdd:0 is not in graph(dense/BiasAdd:0 是输出)。完整消息:KerasTensor(type_spec=TensorSpec(shape=(None, 1), dtype=tf.float32, name=None), name='dense/BiasAdd:0', description="created by layer 'dense'")
  • 另外,我从 model.save(model_directory) 获得两个 .pb 文件。我猜不可能直接使用这些。
猜你喜欢
  • 2017-02-23
  • 1970-01-01
  • 2013-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-25
相关资源
最近更新 更多