使用GRAPHVIZ+TORCHVIZ来可视化模型Pytorch模型结构
这是本人在CSDN发的第一篇博客
可视化pytorch模型结构,生成树状图,可能是很多朋友想做的事情,今天分享一种实现方法。
环境搭建
安装Python环境依赖
安装Python环境依赖:
pip install graphviz
pip install git+https://github.com/szagoruyko/pytorchviz
安装系统graphviz 运行环境
下载地址:graphviz.gitlab.io/_pages/Download/Download_windows.html
使用方法
- 加载并运行待可视化模型
import torch
from torchvision.models import AlexNet
from torchviz import make_dot
import os
os.environ["PATH"] += os.pathsep + 'D:/Program Files (x86)/Graphviz2.38/bin/'
x = torch.rand(8, 3, 256, 512)
model = AlexNet()
y = model(x)
- 调用make_dot()函数构造图对象
g = make_dot(y)
g = make_dot(y, params=dict(model.named_parameters()))
g = make_dot(y, params=dict(list(model.named_parameters()) + [('x', x)]))
- 保存图结构PDF
g.render('espnet_model', view=False)
【注】
一定要加载运行时系统环境变量,
import os
os.environ["PATH"] += os.pathsep + 'D:/Program Files (x86)/Graphviz2.38/bin/'
不然会报错
graphviz.backend.ExecutableNotFound: failed to execute 'dot', make sure the Graphviz executables are on your systems' PATH
|