Tensorflow Summary: 查看Tensorflow Model pb格式模型的信息

参考文链:如何查看Tensorflow SavedModel格式模型的信息;

参考:summary方法--小酒窝的博客;

参考:tensorflow中输出参数的方法--详细;

tensorflow生成的pb图,netron嫌弃太大打不开, 因此需要借助于tensorboard查看工具;

 

0.查看模型的Signature签名

这里的签名,并非是为了保证模型不被修改的那种电子签名。我的理解是类似于编程语言中模块的输入输出信息,比如函数名,输入参数类型,输出参数类型等等。我们以《Tensorflow SavedModel模型的保存与加载》里的代码为例,从语句:

signature = predict_signature_def(inputs={'myInput': x},
                                  outputs={'myOutput': y})

我们可以看到模型的输入名为myInput,输出名为myOutput。如果我们没有源码呢?

Tensorflow提供了一个工具,如果你下载了Tensorflow的源码,可以找到这样一个文件,./tensorflow/python/tools/saved_model_cli.py,你可以加上-h参数查看该脚本的帮助信息:

command:

python $TENSORFLOW_DIR/tensorflow/python/tools/saved_model_cli.py show --dir ./model/ --all

1.使用summary

    def load_pb_kera(self,pb_file_path):
        from tensorflow.python.platform import gfile

        sess = tf.Session()
        #with gfile.FastGFile(pb_file_path + 'model.pb', 'rb') as f:
        with gfile.FastGFile(pb_file_path, 'rb') as f:
            graph_def = tf.GraphDef()
            graph_def.ParseFromString(f.read())
            sess.graph.as_default()
            tf.import_graph_def(graph_def, name='')  # 导入计算图

        # 需要有一个初始化的过程
        #sess.run(tf.global_variables_initializer())
        init = tf.global_variables_initializer()
        sess.run(init)
        #tf.summary.
        LOGDIR = './logdir'
        train_writer = tf.summary.FileWriter(LOGDIR)
        train_writer.add_graph(sess.graph)
        train_writer.flush()
        train_writer.close()

summary写入工程文件的"./logdir"目录下,生成诸如:events.out.tfevents.1557229671.wishchin-MS-1604 文件

进入工程目录,

bash:

$ tensorboard --logdir ./logdir

启动了tensorboard服务

 

2.在浏览器中查看结构

打开chorme浏览器,在地址栏输入:http://localhost:6006;  个人建议使用火狐.

即可完成可视化

查看得MaskRCNN 模型

frozen_inference_graph_incepV2.pb

的输入参数为:

input_image

Operation: Placeholder

Attributes (2)

dtype  {"type":"DT_FLOAT"}

shape {"shape":{"dim":[{"size":-1},{"size":224},{"size":224},{"size":3}]}}

Inputs (0)

Outputs (1)

bbn_stage1_block1_conv/convolution?×224×224×3

输入节点在最下面的数据流的起点位置....

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值