Pytorch网络可视化——tensorboard、netron、torchviz
前言
pytorch网络模型的可视化主要有以下几种方法:
1、使用Tensorboard
2、使用netron
3、使用torchviz
下面分别介绍一下,怎样使用这些网络可视化,这里以可视化alexnet为例
一、Tensorboard
之前的文章已经讲过什么是Tensorboard以及怎么安装和可视化了,这里不再做详细的描述,直接上代码
1.源码
import torch
from torch.utils.tensorboard import SummaryWriter
from torchviz import make_dot
import torchvision.models as models
if __name__ == "__main__":
alexnet = models.alexnet(pretrained=False) #加载alexnet,这里只需要网络架构,不需要预训练参数
fake_img = torch.rand(1, 3, 256, 256) #输入一个假图片
out = alexnet(fake_img)
# print(out)
# 1. 来用tensorboarf进行可视化
writer = SummaryWriter(comment='test_your_comment',filename_suffix="_test_your_filename_suffix")
writer.add_graph(alexnet, fake_img) # 模型及模型输入数据
# 2. 保存成pt文件后进行可视化
torch.save(alexnet, "alexnet.pt")
# 3. 使用graphviz进行可视化
out = alexnet(fake_img)
g = make_dot(out)
g.render('alexnet', view=False) # 这种方式会生成一个pdf文件
2.结果
二、netron
1.简介
netron就是一个可以支持各种框架的神经网络模型可视化工具。
netron的github: https://github.com/lutzroeder/Netron
2.运行上述代码
会出现一个“alexnet.pt”文件
3.打开方式
(1)使用netron网页版打开
浏览器中输入链接:https://lutzroeder.github.io/netron/
打开保存的alexnet.pt文件即可
(2)使用python直接读取
需要pip install netron安装
3.结果
三、grahviz
1.简介(比较强大)
Graphviz (Graph Visualization Software) 是一个由AT&T实验室启动的开源工具包。DOT是一种图形描述语言,非常简单的,Graphviz就是用来处理这种语言的工具。只需要简单了解一下DOT语言,就可以用Graphviz绘图了,它对程序员特别有用。
官网:http://www.graphviz.org/
2.会出现报错
见这篇博客:https://blog.csdn.net/srf_code/article/details/103108862
上一篇: 【Pytorch框架实战】之Faster-Rcnn实现目标检测
下一篇: 【Leetcode&C语言&Tire】208.Implement Trie (Prefix Tree) & 211.Design Add and Search Words Data Structure
推荐阅读
-
Pytorch中使用tensorboard可视化不显示的问题
-
pytorch中可视化网络结构方法(1)
-
PyTorch + visdom + netron 实现网络数据和模型结构的可视化
-
『Pytorch笔记』使用netron工具可视化Pytorch模型!
-
pytorch在tensorboard上进行可视化
-
Pytorch——tensorboard可视化模型计算图——add_graph() 和 torchsummary可视化模型信息
-
Pytorch网络可视化——tensorboard、netron、torchviz
-
Pytorch手写数字集基于Tensorboard的可视化损失函数(loss)、准确率(Accuracy)、梯度(grad)、权值(data)的源码
-
Pytorch手写数字集为例基于Tensorboard可视化图像——add_image() and torchvision.utils.make_grad