深度学习模型显示工具netron
深度学习模型显示工具netron
APP网址
https://netron.app/
netron是很不的深度学习模型显示工具
netron支持显示大多数的深度学习模型,不支持pytorch生成的pt或者pth文件,但是将这两种文件转为onnx格式,netron是支持的
安装
其他的系统个人还没有尝试过,但是github地址中有,个人暂时只在ubuntu下安装了,很简单
pip install netron
代码
import torchimport torch.nn as nnimport netron# 定义一个简单的二分类网络class SimpleNet(nn.Module):def __init__(self):super(SimpleNet, self).__init__()self.conv1 = nn.Sequential(nn.Conv2d(in_channels=3, out_channels=50, kernel_size=3, stride=1, padding=1),nn.ReLU(),nn.MaxPool2d(2))self.conv2 = nn.Sequential(nn.Conv2d(in_channels=50, out_channels=200, kernel_size=3, stride=1, padding=1),nn.ReLU(),nn.MaxPool2d(2))self.conv3 = nn.Sequential(nn.Conv2d(in_channels=200, out_channels=500, kernel_size=3, stride=1, padding=1),nn.ReLU(),nn.MaxPool2d(2))self.conv4 = nn.Sequential(nn.Conv2d(in_channels=500, out_channels=200, kernel_size=3, stride=1, padding=1),nn.ReLU(),nn.MaxPool2d(2))self.conv5 = nn.Sequential(nn.Conv2d(in_channels=200, out_channels=50, kernel_size=3, stride=1, padding=1),nn.ReLU(),nn.MaxPool2d(2))self.fc = nn.Sequential(nn.Linear(50 * 20 * 11, 5000))self.fc1 = nn.Sequential(nn.Linear(5000, 2000))self.fc2 = nn.Sequential(nn.Linear(2000, 50))self.classifier = nn.Sequential(nn.Linear(50, 2))def forward(self, x):x = torch.tensor(x, dtype=torch.float32)x = self.conv1(x)x = self.conv2(x)x = self.conv3(x)x = self.conv4(x)x = self.conv5(x)x = torch.flatten(x, start_dim=1)x = self.fc(x)x = self.fc1(x)x = self.fc2(x)x = self.classifier(x)return xd = torch.rand(1, 3, 640, 360)m = SimpleNet()o = m(d)onnx_path = "dirtyjudgment640320_pattern.onnx"torch.onnx.export(m, d, onnx_path)netron.start(onnx_path)
显示结果
两张图像中间的conv重复
pth转onnx
def convert_model_to_ONNX(input_img_size, input_pth_model, output_ONNX):dummy_input = torch.randn(2, 3, input_img_size[1], input_img_size[0])model = SimpleNet() #网络结构state_dict = torch.load(input_pth_model)new_state_dict = OrderedDict()for k, v in state_dict.items():name = k[7:] # remove `module.`new_state_dict[name] = vmodel.load_state_dict(new_state_dict)#model.load_state_dict(state_dict)input_names = ["input_image"] #指定输入输出output_names = ["output_classification"]torch.onnx.export(model, dummy_input, output_ONNX, verbose=True, input_names=input_names,output_names=output_names)
地址
GitHub - lutzroeder/netron: Visualizer for neural network, deep learning, and machine learning models
深度学习模型显示工具netron相关推荐
- 【Tools】神经网络、深度学习和机器学习模型可视化工具——Netron
背景 有时候我们写完深度学习模型后,想看看代码实现的模型和我们预期是否一致,但是没有一个好的工具.最近发现有一个软件Netron支持对一部分深度学习模型可视化,源码地址.Netron 支持 ONNX. ...
- 使用ANNdotNET GUI工具创建CIFAR-10深度学习模型
目录 编辑说明 数据准备 在Anndotnet中创建新的图像分类项目文件 在ANNdotNET中创建mlconfig 创建网络配置 结论 在这篇文章中,我们将为CIFAR-10数据集创建和训练深度学习 ...
- 机器视觉实用工具集NO.10——使用深度学习模型(yolo3)实现物体检测工具
目录 前言 opencv+YOLO3实现物体检测 python源码 前言 OpenCV 3.3版本之后提供了对主流深度学习主干网络框架的加载支持.opencv给我们提供了一个应用成熟深度学习模型的便捷 ...
- 用Windows电脑训练深度学习模型?超详细配置教程来了
选自towardsdatascience 作者:Ahinand 机器之心编译 编辑:Panda 虽然大多数深度学习模型都是在 Linux 系统上训练的,但 Windows 也是一个非常重要的系统,也可 ...
- 深度学习模型保存_解读计算机视觉的深度学习模型
作者 | Dipanjan(DJ)Sarkar 来源 | Medium 编辑 | 代码医生团队 介绍 人工智能(AI)不再仅限于研究论文和学术界.业内不同领域的企业和组织正在构建由AI支持的大规模应用 ...
- 【深度学习】PyTorch深度学习训练可视化工具visdom
PyTorch Author:louwill Machine Learning Lab 在进行深度学习实验时,能够可视化地对训练过程和结果进行展示是非常有必要的.除了Torch版本的TensorBoa ...
- wandb: 深度学习轻量级可视化工具入门教程
本文,就来给大家介绍一款新型的机器学习可视化工具,能够让人工智能研发过程变得更加简单明了. wandb: 深度学习轻量级可视化工具入门教程 引言 wandb 验证数据可视化 自然语言处理 重要工具 极 ...
- tensorflow linux多卡训练_用Windows电脑训练深度学习模型?超详细配置教程来了
公众号关注 "DL-CVer" 设为 "星标",DLCV消息即可送达! 转自 机器之心 虽然大多数深度学习模型都是在 Linux 系统上训练的,但 Window ...
- windows python 访问mtp存储空间_用Windows电脑训练深度学习模型?超详细配置教程来了...
虽然大多数深度学习模型都是在 Linux 系统上训练的,但 Windows 也是一个非常重要的系统,也可能是很多机器学习初学者更为熟悉的系统.要在 Windows 上开发模型,首先当然是配置开发环境. ...
- pytorch argmax_PyTorch深度学习模型的服务化部署
本文将介绍如何使用Flask搭建一个基于PyTorch的图片分类服务以及并行处理的相关技术.作为一个深度学习工程师,学习这些内容是为了方便对服务化的模型进行debug,因为web开发的同时常常表示他们 ...
最新文章
- vim编辑器操作命令大全-绝对全
- linux显示磁盘使用情况命令,Linux显示磁盘使用率信息(iostat)
- PHP函数参数传递方法的具体改进技巧
- 使用Hibernate和Spring设置分布式Infinispan缓存
- 五、scrapy爬虫框架——logging 模块的使用
- 【sql:练习题3】查询在 SC 表存在成绩的学生信息
- PCL中使用FLANN库(2)
- python检测输入文本的语言
- 调整Virtual Box硬盘大小
- 在QTP中巧用WebTable对象的ChildItem方法进行测试
- 有传递函数画matlab,matlab画传递函数曲线
- memcached入门
- “_CRT_SECURE_NO_DEPRECATE”: 未定义宏或在预编译头使用后定义发生改变
- 360度绩效评估中的6个关键点,尤其是第4个!
- 【分享】性能比肩美拍秒拍的Android视频录制编辑特效解决方案【1】
- 新版Matlab中神经网络训练函数Newff的使用方法
- bzoj3307: 雨天的尾巴
- STM32单片机移植SD卡FATFS文件系统
- [SV]SystemVerilog Mailbox
- 使用PHPProxy把虚拟空间变成HTTP代理(ZT)
热门文章
- Microsoft edge已过期
- 龙芯3A3000 PCI 硬件问题
- 抽象工厂模式(Abstract Factory Pattern)
- torch 中的 stft、torchaudio 中的 Spectrogram、Melscale、MelSpectrogram 的使用
- ISP PIPLINE Denoise 之 space domain denoise 空域降噪
- reStructuredText 表格快速生成
- matlab if语句小于等于,matlab的if语句运算符与或怎么用
- 2021漏洞扫描服务TOP20排行榜
- 张正友标定算法原理详解(一)
- easyExcel 导出 excel 自定义表头