用于分析tensorflow 网络图的工具对比介绍

用于分析tensorflow 网络图的工具对比

在利用tensorflow & keras学习神经网络的过程中,能够利用图形化工具来了解和分析你所设计的网络是非常有意义的,本文结合学习过程,简单介绍记录一下:

tensorboard GRAPHS

这个市tensorflow自己的图形化工具,在Chrome浏览器里察看网络图,基本的样子如图
在这里插入图片描述这个工具的好处是可以随意拖拽,点击具体的网络节点,察看设计细节。

Keras model.summary

这个工具给出文本形式的网络层次图,同时还给出了网络参数的数量级等信息:

Model: "sequential_1"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
conv2d_1 (Conv2D)            (None, 148, 148, 32)      896       
_________________________________________________________________
max_pooling2d_1 (MaxPooling2 (None, 74, 74, 32)        0         
_________________________________________________________________
conv2d_2 (Conv2D)            (None, 72, 72, 64)        18496     
_________________________________________________________________
max_pooling2d_2 (MaxPooling2 (None, 36, 36, 64)        0         
_________________________________________________________________
conv2d_3 (Conv2D)            (None, 34, 34, 128)       73856     
_________________________________________________________________
max_pooling2d_3 (MaxPooling2 (None, 17, 17, 128)       0         
_________________________________________________________________
conv2d_4 (Conv2D)            (None, 15, 15, 128)       147584    
_________________________________________________________________
max_pooling2d_4 (MaxPooling2 (None, 7, 7, 128)         0         
_________________________________________________________________
flatten_1 (Flatten)          (None, 6272)              0         
_________________________________________________________________
dense_1 (Dense)              (None, 512)               3211776   
_________________________________________________________________
dense_2 (Dense)              (None, 1)                 513       
=================================================================
Total params: 3,453,121
Trainable params: 3,453,121
Non-trainable params: 0
_________________________________________________________________

Keras. plot_model

from    keras.utils.vis_utils    import plot_model
plot_model(model, to_file="model.png",show_shapes=True);

从代码看,就是到这个工具可以生成一个图形文件,用于描述网络图,但这个工具需要很多依赖,而且从结果看,似乎也没有太多的亮点。

在这里插入图片描述

Netron

Netron支持主流各种框架的模型结构可视化工具,需要单独安装,用于从训练的模型文件提取网络层次图,并且在每个节点上提供进一步的层次信息,在浏览器中可以拖拽,放大,和tensorboard比也毫不逊色,而且支持多家的模型文件。
在这里插入图片描述

小结

上述四个工具都可以帮助学习网络层次和结构,tensorboard/keras.summary/netron三者结合使用更加方便。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值