Pytorch模型可视化
Pytorch模型可视化
原文参考:pytorch模型网络可视化画图工具合集(内附实现代码)
用于可视化的模型
1 | import torch |
torch print
1 | from PytorchModelView.model_builder import TinyVGG3D |
1 | TinyVGG3D( |
torchsummary torchinfo
安装:pip install torchsummarytorchsummary目前不支持包维护了
推荐采用更现代化的torchinfo
安装:pip install torchinfo
1 | #from torchsummary import summary#torchsummary包存在问题 |
1 | ========================================================================================== |
graphviz的安装
支持查看dot转为图像
在线:http://magjac.com/graphviz-visual-editor/
win需要本地安装:https://graphviz.org/download/
可以生成dot文件,pycharm中有dotsupport插件可以查看
pycharm设置:设置→工具→dot support→选择graphviz安装路径中bin的dot.exe
在conda中也需要安装:conda install -c conda-forge graphviz
torchviz
安装:pip install torchviz
需要安装graphviz
1 | from torchviz import make_dot |
hiddenlayer
hiddenlayer跟之前比的一个特色在于,hiddenlayer中支持transforms配置,可以对指定的多个连续算子进行fusion展示,以及有多个重复的结构的话可以进行fold压缩展示。
安装:pip install hiddenlayer
测试失败,放弃使用,软件包较久没有维护
torchview
网址:https://github.com/mert-kurttutan/torchview
安装:pip install graphviz+pip install torchview
1 | import torch |
1 | import torch |
netron
网址:https://github.com/lutzroeder/netron
安装:pip install onnx + pip install netron
本地下载软件
会生成.onnx文件,然后导入到本地文件中可以看到
也可以使用代码直接在浏览器中打开
1 | import torch |
PlotNeuralNet
项目原来地址:https://github.com/HarisIqbal88/PlotNeuralNet
个人感觉像是一个css管理器,可以自定义模块颜色,然后通过设置参数进行图像输出
需要对模型比较了解,绘图风格较好
直接将原项目复制到本地,新建文件夹进行创建运行。
如果需要修改已有的模块或者新建模块,可以在pycore→blocks.py+tikzeng.py中修改
下图为一个GAN三维生成器的视图
1 | import sys |
生成一个tex文件,使用latex编辑器打开后可以生成pdf然后导出为png
总结
文字信息可以用print直接打印
出图可以用torchview和netron