基于Netron库的PyTorch 2.0模型可视化

news2024/12/24 8:49:03

【图书推荐】《从零开始大模型开发与微调:基于PyTorch与ChatGLM》_《从零开始大模型开发与微调:基于pytorch与chatglm》-CSDN博客

前面章节带领读者完成了基于PyTorch 2.0的MNIST模型的设计,并基于此完成了MNIST手写体数字的识别。此时可能有读者对我们自己设计的模型结构感到好奇,如果能够可视化地显示模型结构就更好了。

读者可以自行在百度搜索Netron。Netron是一个深度学习模型可视化库,支持可视化地表示PyTorch 2.0的模型存档文件。因此,我们可以把3.1.2节中PyTorch的模型结构保存为文件,并通过Netron进行可视化展示。保存模型的代码如下:

class NeuralNetwork(torch.nn.Module):
    def __init__(self):
        super(NeuralNetwork, self).__init__()
        self.flatten = torch.nn.Flatten()
        self.linear_relu_stack = torch.nn.Sequential(
            torch.nn.Linear(28*28,312),
            torch.nn.ReLU(),
            torch.nn.Linear(312, 256),
            torch.nn.ReLU(),
            torch.nn.Linear(256, 10)
        )
    def forward(self, input):
        x = self.flatten(input)
        logits = self.linear_relu_stack(x)

        return logits

#进行模型的保存
model = NeuralNetwork()
torch.save(model, './model.pth')		#将模型保存为pth文件

建议读者从GitHub上下载Netron,其主页提供了基于不同版本的安装方式,如图3-6所示。

读者可以依照操作系统的不同下载对应的文件,在这里安装的是基于Windows的.exe文件,安装后是一个图形界面,直接在界面上单击file操作符号打开我们刚才保存的.pth文件,显示结果如图3-7所示。

可以看到,此时我们定义的模型结构被可视化地展示出来了,每个模块的输入输出维度在图3-7上都展示出来了,单击深色部分可以看到每个模块更详细的说明,如图3-8所示。

本文节选自《从零开始大模型开发与微调:基于PyTorch与ChatGLM》,获得出版社和作者授权发布。

《从零开始大模型开发与微调:基于PyTorch与ChatGLM(人工智能技术丛书)》(王晓华)【摘要 书评 试读】- 京东图书 (jd.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1872879.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

3D开发工具HOOPS如何推动造船业数智化转型?

在当今科技迅猛发展的背景下,造船业正经历着翻天覆地的变革。计算机辅助设计(CAD)和三维建筑模型技术的应用,正在逐步取代传统的手绘设计方法,推动着这一行业向数字化、智能化转型。本文将深入探讨HOOPS技术在造船业中…

【LeetCode】九、环形链表检测 + 救生艇

文章目录 1、双指针算法1.1 对撞双指针1.2 快慢双指针 2、leetcode141:环形链表3、leetcode881:救生艇 1、双指针算法 用两个指针来共同解决一个问题: 1.1 对撞双指针 比如先有一个有序的数组array int[] array {1, 4, 5, 7, 9}先要找两个…

mov和mp4区别是什么?苹果的原创和时代的宠儿

在数字媒体领域,视频格式的选择往往决定了观看体验的质量和文件的兼容性。在众多视频格式中,MOV和MP4无疑是最具代表性的两种,它们分别承载着苹果和互联网世界的技术革新与历史变迁。本文将带您穿越时间的长廊,探索MOV与MP4的发展…

基于C++标准库实现定时器类

基于C标准库实现定时器类 定时器类是多线程编程中经常设计到的工具类 简单的定时器原理其实很简单(是不是有点GNU is not unix的味道;): 创建一个新线程在那个线程里等待等待指定时长后做任务 python标准库中就有这么一个定时器类&#xf…

关于JVM必备的一些知识

一、类加载 【加载】 - 【链接】-【初始化】 1.1 加载(Loading) 加载阶段是类加载过程的第一步,它的主要任务是通过类的全限定名(Fully Qualified Class Name)来获取类的二进制字节流(binary data&#…

告别 “屎山” 代码,务必掌握这14 个 SpringBoot 优化小妙招

插: AI时代,程序员或多或少要了解些人工智能,前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家(前言 – 人工智能教程 ) 坚持不懈,越努力越幸运,大家…

PCB在工业领域的应用以及人工智能的影响。

什么是pcb呢? PCB,全称Printed Circuit Board,中文名称为印制电路板,也被称为印刷线路板或印制板1。这是一种重要的电子部件,主要由绝缘基板、连接导线和装配焊接电子元器件的焊盘组成。PCB的主要作用是作为电子元器件的支撑体和电气连接的载体,它能够简化电子产品的装配…

爬虫:爬取知乎热榜一级评论及回答2024不包含翻页

一、先上结果(注:本文仅为兴趣爱好探究,请勿进行商业利用或非法研究,负责后果自负,与作者无关) 1、爬标题及其具体内容 2、抓标题下的对应回答 3、爬取对应一级评论 二、上流程 1、获取cookies(相信哥哥姐姐…

Edge 浏览器全解析:实用技巧让您的浏览体验更上一层楼

在当今数字化的时代,浏览器成为了我们获取信息、工作和娱乐的重要工具。微软 Edge 浏览器作为一款备受瞩目的浏览器,拥有许多强大的功能和实用的使用技巧。在这篇博客中,让我们深入探索 Edge 浏览器,助您充分发挥其潜力。 一、高效…

Ubuntu20.04安装LibTorch并完成高斯溅射环境搭建

0. 简介 最近受到优刻得的使用邀请,正好解决了我在大模型和自动驾驶行业对GPU的使用需求。UCloud云计算旗下的Compshare的GPU算力云平台。他们提供高性价比的4090 GPU,按时收费每卡2.6元,月卡只需要1.7元每小时,并附带200G的免费…

x86 平台实现一个原子加法操作

1&#xff0c;先上代码 #include <iostream> #include <omp.h>int atomicAdd(int* ptr, int value) {int result;asm volatile("lock xaddl %0, %1\n": "r" (result), "m" (*ptr): "0" (value), "m" (*ptr): &…

关于IDEA启动报错 【JAVA_HOME does not point to a valid JM installation】

希望文章能给到你启发和灵感&#xff5e; 感谢支持和关注&#xff5e; 阅读指南 一、基础环境说明1.1 硬件环境1.2 软件环境 二、起因 一、基础环境说明 考虑环境因素不同&#xff0c;大家适当的对比自己的软硬件环境情况分析&#xff5e; 1.1 硬件环境 MacOS Monterey 版本 1…

海南云亿商务咨询有限公司深度解读抖音电商

在当今数字化飞速发展的时代&#xff0c;电商行业早已成为经济发展的重要引擎。而在众多电商平台中&#xff0c;抖音以其独特的短视频直播形式&#xff0c;成为了众多商家和消费者的新宠。海南云亿商务咨询有限公司&#xff0c;正是这一领域的佼佼者&#xff0c;专注于抖音电商…

分享暄桐林曦老师的精进心法

暄桐是一间传统美学教育教室&#xff0c;创办于2011年&#xff0c;林曦是创办人和授课老师&#xff0c;教授以书法为主的传统文化和技艺&#xff0c;皆在以书法为起点&#xff0c;亲近中国传统之美&#xff0c;以实践和所得&#xff0c;滋养当下生活。      清风雅致林曦老…

基于Vue3 + Typescript 封装 Element-Plus 组件

1. 课程简介 项目地址 git clone https://gitee.com/childe-jia/my-message.git 背景: 该课程是基于Vue3 Typescript Vite构建, 教会大家封装Element-Plus组件 具备能力: 最新的 Vue3 及相关技术组件的设计思想大厂的开发模式/代码规范 技术: Vue3 首次渲染 / diff 算法 …

Transformer基础及视觉应用

文章目录 Transformer基础及视觉应用注意力机制基础(主要介绍Transformer用到的类型)Transformer的编解码器结构(Encoder and Decoder)Non-local Neural NetworksTransformer与大规模图像识别(Image Recognition at Scale)DETR-2020分割应用 Transformer基础及视觉应用 注意力…

小区物业服务差,现在催缴物业费,暂时不想交如何应对?

面对催缴物业费的情况&#xff0c;采取合理、合法的方式进行沟通和处理是非常重要的。如果您认为物业服务存在不足或者问题&#xff0c;可以按照以下步骤尝试解决问题&#xff0c;而不是直接拒绝缴费&#xff0c;避免后续可能产生的法律纠纷&#xff1a; 收集证据&#xff1a;首…

电脑怎么去除视频水印?电脑视频水印怎么去掉?

电脑怎么去除视频水印&#xff1f;有是我们见到喜欢的视频会保存下来&#xff0c;但是有时候保存的视频上面会带有水印&#xff0c;那么视频水印该如何去除呢&#xff1f;今天小编给大家推荐一个好用的视频去水印软件&#xff0c;操作简单&#xff0c;去水印效果好。 使用&…

tauri使用github action实现跨平台编译并解决编译错误等问题

正常编译为跨平台结果就像上面的&#xff0c;有mac/windows/linux的安装程序&#xff0c;直接下载就可以安装使用&#xff0c;我的这个livebox桌面端仓库地址&#xff1a;GitHub - Sjj1024/LiveBox: livebox&#xff0c;里面有编译文件可以参考。今天主要讲一下遇到的问题。 官…

碳课堂|ISO 14064标准新版变化

ISO 14064标准是针对组织碳排放方面的管理标准&#xff0c;包括温室气体排放和清除的量化、报告与验证的国际标准。其最新版本于 2018年发布&#xff0c;标志着对温室气体管理的全球认知和实践的进一步演进。ISO 14064 作为 ISO 14060 标准系列的重要组成部分&#xff0c;将继续…