【Tensorflow】画神经网络图的(两种方法)小结

every blog every motto: We would rather reuse an active dwarf than a sleeping giant.

0. 前言

本想着画神经网络图的,结果折腾半天也是醉了,那就总结一下吧。
第一部分是画神经网络图;第二部分是输出模型结构

1. 正文

1.1 PlotNeuralNet

画图一共分为两步,

  1. 代码 转成 LaTeX
  2. LaTeX 转成 pdf

1.1.1 代码 -> LaTeX

下载源码

git clone https://github.com/HarisIqbal88/PlotNeuralNet

文件组织形式,如下图
其中,pyexamples文件夹已有两个案例,用于输出LaTeX文件(后面再将其转换成pdf),你自定义的网络代码同样放在这个文件夹下。
【Tensorflow】画神经网络图的(两种方法)小结_第1张图片
运行以后生成的LaTeX文件,如下图
【Tensorflow】画神经网络图的(两种方法)小结_第2张图片

1.1.2 LaTeX -> pdf

安装Texlive ,https://www.tug.org/texlive/
【Tensorflow】画神经网络图的(两种方法)小结_第3张图片
【Tensorflow】画神经网络图的(两种方法)小结_第4张图片
【Tensorflow】画神经网络图的(两种方法)小结_第5张图片
【Tensorflow】画神经网络图的(两种方法)小结_第6张图片
文件较大,下载完以后,用管理员身份运行如下文件,时间较长。
注意:

  1. 以管理员身份运行
  2. 文件安装路径不建议C盘,且路径中不能有中文

【Tensorflow】画神经网络图的(两种方法)小结_第7张图片
出现 如下界面,表示安装完成
【Tensorflow】画神经网络图的(两种方法)小结_第8张图片
打开软件
【Tensorflow】画神经网络图的(两种方法)小结_第9张图片
将第一步生成的tex,拖着软件中,运行。
【Tensorflow】画神经网络图的(两种方法)小结_第10张图片

1.2 输出模型结构

1.2.1 安装pydot_ng

控制台输入

pip install pydot_ng

【Tensorflow】画神经网络图的(两种方法)小结_第11张图片

1.2.2 安装graphviz

点我下载
【Tensorflow】画神经网络图的(两种方法)小结_第12张图片
下载后将bin路径添加到环境变量 (添加完成后,pycharm要重启)
【Tensorflow】画神经网络图的(两种方法)小结_第13张图片

1.2.3 输出结果

在model.py的最后,

# 构建模型
model = Model(img_input, output)

# 画图
plot_model(model, to_file='model2.png', show_shapes=True)

结果如下图所示:
【Tensorflow】画神经网络图的(两种方法)小结_第14张图片

参考文献

[1] https://zhuanlan.zhihu.com/p/56982388?utm_source=wechat_timeline
[2] https://blog.csdn.net/cskywit/article/details/87905172
[3] https://blog.csdn.net/zhouchen1998/article/details/93208146
[4] https://blog.csdn.net/weixin_41892813/article/details/106157933
[5] https://graphviz.gitlab.io/_pages/Download/Download_windows.html
[6] https://blog.csdn.net/w5688414/article/details/79053972
[7] https://blog.csdn.net/yz19930510/article/details/82345181
[8] https://blog.csdn.net/qq_37337494/article/details/101956466
[9] https://blog.csdn.net/hawk_2016/article/details/82254228
[10] https://keras-cn.readthedocs.io/en/latest/utils/#plot_model
[11] https://www.jianshu.com/p/56a05b5e4f20

你可能感兴趣的:(机器学习基础知识)