在win10下,使用torchviz对深度学习网络模型进行可视化

目录

[1. 安装 graphviz 和 torchviz](#1. 安装 graphviz 和 torchviz)

[2.安装 graphviz.exe](#2.安装 graphviz.exe)

3.实例测试

4.如果你的电脑还是无法画图,并且出现了下面的报错:

5.参考文章:

1. 安装 graphviz 和 torchviz

首先打开 Anaconda prompt 进入自己的 pytorch 环境(图中 pt 是我自己的 pytorch 环境),运行如下代码安装依赖包。

复制代码
pip install graphviz torchviz

2.安装 graphviz.exe

下载地址:Index of /Packages/stable/windows/10/cmake/Release/x64

下面选择第二个,选择将graphviz添加到环境变量。

只需要安装到一个自己记得住的地方,我安装的地方是 C:\Program Files\Graphviz 2.44.1

检查是否已经将将graphviz添加到环境变量中。

我们按照依次顺序进入到编辑环境变量中:win左下角搜索 -> 查看高级系统设置 -> 点击环境变量 ->点击用户的path。

在这里添加变量名和变量值即可,

变量名为:graphviz

变量值为:graphviz所在的路径+bin;那么我的变量值就为:C:\Program Files\Graphviz 2.44.1\bin

3.实例测试

编写一个实现vgg16的结构的画图。

python 复制代码
import torch
from torchviz import make_dot
from torchvision.models import vgg16  # 以 vgg16 为例

x = torch.randn(4, 3, 32, 32)  # 随机生成一个张量
model = vgg16()  # 实例化 vgg16,网络可以改成自己的网络
out = model(x)   # 将 x 输入网络
g = make_dot(out)  # 实例化 make_dot
g.view()  # 直接在当前路径下保存 pdf 并打开
# g.render(filename='netStructure/myNetModel', view=False, format='pdf')  # 保存 pdf 到指定路径不打开

执行完成之后就可以看到画出的结构。

4.如果你的电脑还是无法画图,并且出现了下面的报错:

CalledProcessError: Command '['dot', '-Tpdf', '-O', '测试图片.gv']' returned non-zero exit status 1. [st

那么我们这个时候就可以按照下面步骤完成画图:

  1. 打开cmd(使用管理员身份,要不然没有权限)
  2. 运行:dot -v
  3. 出现问题:There is no layout engine support for "dot"...
  4. 运行:dot -c
  5. 没有提示(成功)
  6. 再次运行dot -v
  7. 结果就会画图成功

5.参考文章:

https://blog.csdn.net/kelanj/article/details/108394313pytorch 网络可视化(二):graphviz + torchviz_听 风、的博客-CSDN博客

相关推荐
fl1768312 小时前
基于python的天气预报系统设计和可视化数据分析源码+报告
开发语言·python·数据分析
档案宝档案管理2 小时前
档案宝:企业合同档案管理的“安全保险箱”与“效率加速器”
大数据·数据库·人工智能·安全·档案·档案管理
闲人编程2 小时前
Python与区块链:如何用Web3.py与以太坊交互
python·安全·区块链·web3.py·以太坊·codecapsule
Want5953 小时前
Python汤姆猫
开发语言·python
IT_Beijing_BIT3 小时前
TensorFlow Keras
人工智能·tensorflow·keras
mit6.8243 小时前
[手机AI开发sdk] 安卓上的Linux环境
人工智能·智能手机
花姐夫Jun3 小时前
基于Vue+Python+Orange Pi Zero3的完整视频监控方案
vue.js·python·音视频
张较瘦_3 小时前
[论文阅读] AI + 教育 | AI赋能“三个课堂”的破局之道——具身认知与技术路径深度解读
论文阅读·人工智能
小雨青年4 小时前
Cursor 项目实战:AI播客策划助手(二)—— 多轮交互打磨播客文案的技术实现与实践
前端·人工智能·状态模式·交互
西西弗Sisyphus4 小时前
线性代数 - 初等矩阵
人工智能·线性代数·机器学习