神经网络结构的读取与可视化

torchsummary 

要使用 Jupyter Notebook 绘制一个神经网络的结构图,可以使用 `torchsummary` 库中的 `summary` 函数。该函数可以显示模型的结构以及每一层的输出形状等信息。首先,确保你已经安装了 `torchsummary`:

pip install torchsummary

然后,在 Jupyter Notebook 中运行以下代码,即可显示模型结构图:

from torchsummary import summary
import torch
import torch.nn as nnclass FeatureExtractor_01(nn.Module):def __init__(self, in_channel=5, kernel_size=3, stride=1, padding=2, mp_kernel_size=2, mp_stride=2):super(FeatureExtractor_01, self).__init__()layer1 = nn.Sequential(nn.Conv1d(5, 32, kernel_size=kernel_size, stride=stride, padding=padding),nn.BatchNorm1d(32),nn.ReLU(inplace=True),nn.MaxPool1d(kernel_size=mp_kernel_size, stride=mp_stride))layer2 = nn.Sequential(nn.Conv1d(32, 64, kernel_size=kernel_size, stride=stride, padding=padding),nn.BatchNorm1d(64),nn.ReLU(inplace=True),nn.MaxPool1d(kernel_size=mp_kernel_size, stride=mp_stride))layer3 = nn.Sequential( nn.Conv1d(64, 128, kernel_size=kernel_size, stride=stride, padding=padding),nn.BatchNorm1d(128),nn.ReLU(inplace=True),nn.MaxPool1d(kernel_size=mp_kernel_size, stride=mp_stride))layer4 = nn.Sequential(nn.Conv1d(128, 256, kernel_size=kernel_size, stride=stride, padding=padding),nn.BatchNorm1d(256),nn.ReLU(inplace=True),nn.MaxPool1d(kernel_size=mp_kernel_size, stride=mp_stride))layer5 = nn.Sequential(nn.Conv1d(256, 512, kernel_size=kernel_size, stride=stride, padding=padding),nn.BatchNorm1d(512),nn.ReLU(inplace=True),nn.AdaptiveMaxPool1d(1),nn.Flatten())self.fs = nn.Sequential(layer1,layer2,layer3,layer4,layer5,)def forward(self, tar, x=None, y=None):h = self.fs(tar)return h# Create an instance of the model
model = FeatureExtractor_01()# Display the model summary
summary(model, (5, 100))

这将在输出中显示类似于以下内容的模型结构信息:

----------------------------------------------------------------Layer (type)               Output Shape         Param #
================================================================Conv1d-1              [-1, 32, 104]             512BatchNorm1d-2              [-1, 32, 104]              64ReLU-3              [-1, 32, 104]               0MaxPool1d-4               [-1, 32, 52]               0Conv1d-5               [-1, 64, 56]          12,352BatchNorm1d-6               [-1, 64, 56]             128ReLU-7               [-1, 64, 56]               0MaxPool1d-8               [-1, 64, 28]               0Conv1d-9              [-1, 128, 32]          24,704BatchNorm1d-10              [-1, 128, 32]             256ReLU-11              [-1, 128, 32]               0MaxPool1d-12              [-1, 128, 16]               0Conv1d-13              [-1, 256, 20]          98,560BatchNorm1d-14              [-1, 256, 20]             512ReLU-15              [-1, 256, 20]               0MaxPool1d-16              [-1, 256, 10]               0Conv1d-17              [-1, 512, 14]         393,728BatchNorm1d-18              [-1, 512, 14]           1,024ReLU-19              [-1, 512, 14]               0
AdaptiveMaxPool1d-20                [-1, 512, 1]               0Flatten-21                  [-1, 512]               0
================================================================
Total params: 531,840
Trainable params: 531,840
Non-trainable params: 0
----------------------------------------------------------------

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

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

相关文章

【ARM 嵌入式 C 字符串系列 23.6 -- 字符串转数值的函数实现】

请阅读【嵌入式开发学习必备专栏 】 文章目录 字符串转数值的函数实现代码实现 字符串转数值的函数实现 背景: 实现个函数首先判断是16进制数值字符串还是10进制数值字符串,如果是16进制数值字符串就将十六进制字符串转换为数值,例如将字符串…

图片公式识别@文档公式识别@表格识别@在线和离线OCR工具

文章目录 abstract普通文字识别本地软件识别公式扩展插件下载小结 在线识别网站/API👺Quicker整合(推荐)可视化编辑和识别公式其他多模态大模型识别图片中的公式排版 开源模型 abstract 本文介绍免费图片文本识别(OCR)工具,包括普通文字识别,公式识别,甚至是手写公…

C++ 类方法解析:内外定义、参数、访问控制与静态方法详解

C 类方法 类方法,也称为成员函数,是属于类的函数。它们用于操作或查询类数据,并封装在类定义中。类方法可以分为两种类型: 类内定义方法: 直接在类定义内部声明和定义方法。类外定义方法: 在类定义内部声明方法,并在…

2024面试自动化测试面试题【含答案】

🔥 交流讨论:欢迎加入我们一起学习! 🔥 资源分享:耗时200小时精选的「软件测试」资料包 🔥 教程推荐:火遍全网的《软件测试》教程 📢欢迎点赞 👍 收藏 ⭐留言 &#x1…

每日Attention学习5——Multi-Scale Channel Attention Module

模块出处 [link] [code] [WACV 21] Attentional Feature Fusion 模块名称 Multi-Scale Channel Attention Module (MS-CAM) 模块作用 通道注意力 模块结构 模块代码 import torch import torch.nn as nnclass MS_CAM(nn.Module):def __init__(self, channels64, r4):super(…

Redis 的数据库管理

Redis 提供了⼏个⾯向 Redis 数据库的操作,分别是 dbsize、select、flushdb、flushall 命令, 我将介绍这些常见的命令。 切换数据库 select dbIndex许多关系型数据库,例如 MySQL ⽀持在⼀个实例下有多个数据库存在的,MySQL 可以…

SQL优化详解

目录 插入数据 insert的优化(少量数据) 批量插入 手动事务提交 主键顺序插入 插入大量数据 主键优化 数据组织方式: 页分裂: 主键顺序插入的方式: 主键乱序插入: 页合并: 主键设计…

docker常用操作

构建和打包 docker build 根据docker file 创建镜像 docker build -f -t docker save 将镜像打包 docker save -o <xxx.tar> 将打包的镜像加载成镜像&#xff0c;镜像名字不可改变&#xff01; docker load -i <xxx.tar> docker export 将容器打包 docker …

模板引擎Freemarker

什么是模板引擎 根据前边的数据模型分析&#xff0c;课程预览就是把课程的相关信息进行整合&#xff0c;在课程预览界面进行展示&#xff0c;课程预览界面与课程发布的课程详情界面一致。 项目采用模板引擎技术实现课程预览界面。什么是模板引擎&#xff1f; 早期我们采用的…

【有趣的透镜】1.透镜初相识

1.透镜的外形和材料 (1)透镜由玻璃或者塑料制成&#xff1b; (2)透镜一般为圆型&#xff0c;其单面或双面为球面&#xff1b; 2.透镜的类型和折射 (1)球面外凸为凸透镜(聚光)&#xff0c;球面内凹为凹透镜(散光)&#xff1b; (2)透镜是基于光的折射&#xff0c;只要光从一…

Linux的基本指令(下)

各位大佬好 &#xff0c;这里是阿川的博客 &#xff0c; 祝您变得更强 个人主页&#xff1a;在线OJ的阿川 大佬的支持和鼓励&#xff0c;将是我成长路上最大的动力 阿川水平有限&#xff0c;如有错误&#xff0c;欢迎大佬指正 这篇博客续博主的上篇博客Linux基本指令。 07 …

MATLAB 三维空间中在两点之间等间隔插入多个点 (67)

MATLAB 三维空间中在两点之间等间隔插入多个点 (67) 一、算法介绍二、算法实现1.代码2.结果一、算法介绍 用于加密直线点云,具体为根据给定的直线端点,沿着该直线方向,插入多个点,从而加密。具体方法和效果如下所示: 二、算法实现 1.代码 代码如下(示例): % 定…

flink kafka的enableCommitOnCheckpoints 和 enable.auto.commit 参数

背景 每次使用flink消费kafka消息的时候我就被这两个参数enableCommitOnCheckpoints 和 enable.auto.commit困扰&#xff0c;本文就来从源码看看这两个参数的作用 enableCommitOnCheckpoints 和 enable.auto.commit参数 1.FlinkKafkaConsumerBase的open方法&#xff0c;查看…

AcWing 1644. 二叉树中的最低公共祖先 题解 线性dp 倍增算法 前序中序构造二叉树

二叉树中的最低公共祖先 题目描述 树中两个结点 U 和 V 的最低公共祖先&#xff08;LCA&#xff09;是指同时具有 U 和 V 作为后代的最深结点。给定二叉树中的任何两个结点&#xff0c;请你找到它们的 LCA。 输入描述 第一行包含两个整数 M 和 N &#xff0c;分别表示询问结…

AlphaFold3: Google DeepMind的的新突破

AlphaFold 3的论文今天在Nature期刊发表啦!这可是AI在生物领域最厉害的突破的最新版本。AlphaFold-3的新招就是用扩散模型去"画出"分子的结构。它一开始先从一团模模糊糊的原子云下手,然后慢慢透过去噪把分子变得越来越清楚。 Alphafold3 我们活在一个从Llama和Sora那…

HTTP协议:通信机制、特点及实践应用

目录 前言 1. 运行机制 2. 通信方式 3. 主要特点 4. 统一资源标识符&#xff08;URL&#xff09; 5. HTTP报文 6. HTTP请求 7. HTTP响应 8. 实体 9. 持续连接 结语 前言 HTTP&#xff08;Hypertext Transfer Protocol&#xff09;是互联网上应用最广泛的一种协议&a…

C# WinForm —— 12 ListBox绑定数据

ListBox加载大量数据时&#xff0c;避免窗体闪烁的方法&#xff1a; 在加载语句的前后分别加上 BeginUpdate()方法 和 EndUpdate()方法 指定一个集合为绑定的数据源 1. 首先&#xff0c;右键项目&#xff0c;添加类 2. 在新建的类文件中添加属性值信息 3. 构建初始化的对象…

Python学习第四部分 函数式编程

文章目录 高阶函数lambda 表达式和匿名函数偏函数闭包map函数reduce函数filter 函数sorted函数 函数式编程主要学习&#xff1a;高阶函数、闭包closure、匿名函数、偏函数&#xff0c;map函数、reduce函数、filter函数、sorted函数 函数式编程是个很古老的概念&#xff0c;最古…

跟TED演讲学英文:Teachers need real feedback by Bill Gates

Teachers need real feedback Link: https://www.ted.com/talks/bill_gates_teachers_need_real_feedback Speaker: Bill Gates Date: May 2013 文章目录 Teachers need real feedbackIntroductionVocabularyTranscriptSummary后记 Introduction Until recently, many teach…

MYSQL-8.调优

性能优化思维 整体思维 木桶效应&#xff1a;系统的性能符合木桶效应&#xff08;一个木桶能装多少水&#xff0c;取决于木桶中最短的那块木板&#xff09;&#xff0c;所以性能优化需要从多个方面去考虑&#xff0c;如架构优化、业务优化、前端优化、中间件调优、网关优化、…