注意力机制(1)

DWT+pixelshuffle+注意力机制+1x1卷积 一、上采样下采样(DWT+IDWT) 1、实验过程 为了更好的学习下采样DWT和上采样IDWT的过程,我们构建一个简单的网络模型,将一张图片先进行下采样,然后再进行上采样操作,最后我们比较输入和输出图片的是否完全一样?PSNR值! 所以这个操作是可逆的!一张图片先经过下采样然后再进行上采样,是可以完全恢复的! 理解这个F.conv_transpose2d函数 import torch inputs = torch.randint(1,10, (1, 4, 1, 1)) print(inputs) 阅读详情

昨天差不多八点四十五才开始玩游戏,我感觉学习效率提高了很多,我睡觉也早了点。
我昨天看了一下卷积的代码,我感觉那个代码很粗糙,学习率我调来调去,准确率最高才69%,甚至准确率会下降到60%。
我今天跑这个注意力的代码,听说它的效果会很好,就是这个加的注意力模块我有点听不懂

2

其实我现在蛮想打游戏的。可是我知道我离我的目标太远太远了。我想在研二达到毕业要求,然后研三考上事业编。如果我不努力学习,我就达不到这个目标,然后我毕业就会去送外卖当保安,然后我就变成小丑了,学习了这么多年,结果一事无成。所以我还能打游戏吗。学习吧,没有翅膀的孩子只能努力奔跑不是吗。
如果人生可以重来,我不会来上学,我会去当一个混吃等死的保安。

3

# 通道注意力模块
class ChannelAttention(nn.Module):
    def __init__(self, in_channels, ratio=16):
        super().__init__()
        self.avg_pool = nn.AdaptiveAvgPool2d(1)
        self.max_pool = nn.AdaptiveMaxPool2d(1)
        self.fc = nn.Sequential(
            nn.Linear(in_channels, in_channels // ratio),
            nn.ReLU(),
            nn.Linear(in_channels // ratio, in_channels),
            nn.Sigmoid()
        )

    def forward(self, x):
        avg_out = self.fc(self.avg_pool(x).view(x.size(0), -1))
        max_out = self.fc(self.max_pool(x).view(x.size(0), -1))
        return x * (avg_out + max_out).unsqueeze(2).unsqueeze(3)

针对这个通道注意力模块,我提出第一个问题,为什么要计算平均池化和最大池化。
我研究了一会,计算平均池化和最大池化的目的是为了更好的提取图片的信息,提高模型的准确率。从多方面提取图片的信息,有句话怎么说来着,兼听则明。
那我有第二个问题nn.Linear到底是干嘛的,最简单的理解,降维的,比如我输入两个参数a和b,aw1+bw2=c,这样就把两维降为一维。那么问题自然就来了,权重矩阵和偏置矩阵是从哪来的呢,自动生成的,或者全局平均池化或者全局最大池化就是为了这个。

4

# 基础卷积块
class ConvBlock(nn.Module):
    def __init__(self, in_ch, out_ch):
        super().__init__()
        self.conv = nn.Sequential(
            nn.Conv2d(in_ch, out_ch, 3, padding=1),
            nn.BatchNorm2d(out_ch),
            nn.ReLU(),
            nn.MaxPool2d(2)
        )
        self.ca = ChannelAttention(out_ch)

    def forward(self, x):
        x = self.conv(x)
        return self.ca(x)

前面那个注意力机制我看得有点眉目了,我现在看看它是怎么把注意力机制和卷积块融合到一块去的。
我现在可以理解卷积了,卷积核是随机生成的,不同的卷积核提取不同的特征,这样就能得出不同的模型,至于padding=1,则是因为对于一个33的卷积核来说,如果原张量也是33的,那么很显然,只能得到11的张量,所以要在边缘上加上一层,变成一个55的张量。这样用卷积核进行卷积之后就得到了3*3的结果,维度没有发生变化。边缘信息也得到提取了。

nn.MaxPool2d(2)

这个代码的作用是进行池化,我觉得主要是减少运算量吧。

5

# 完整网络
class AttentionCNN(nn.Module):
    def __init__(self):
        super().__init__()
        self.net = nn.Sequential(
            ConvBlock(3, 64),
            ConvBlock(64, 128),
            ConvBlock(128, 256),
            nn.AdaptiveAvgPool2d(1),
            nn.Flatten(),
            nn.Linear(256, 10)
        )

    def forward(self, x):
        return self.net(x)

这个代码最麻烦的地方在于它是一个复合代码,所以它函数层层调用给我调晕了。
我其实不理解为什么卷积层一定要归一化。我觉得这个通道注意力模块还是有点不太理解

ConvBlock(3, 64)

Convolution是卷积的意思,它就是调用我们的卷积函数嘛,输入3维,输出64维。为什么输入是3维,因为CIFAR10是图片数据集,所以一张图片可以看成是一个三维数组,3维的色彩向量,32*32的像素点。
其实卷积那块我看懂了,3维的输入64维的输出,无非就是64个卷积核嘛。就是后面注意力机制那一块,我没看懂

Input:  [128,3,32,32]
  ↓
Conv2d: [128,64,32,32]  # 通道扩展
  ↓
MaxPool:[128,64,16,16]   # 分辨率减半
  ↓
CA模块: [128,64,16,16]   # 通道加权

在CA模块里面,为什么要把64维降到4维,激活之后再升到64维?

            nn.Linear(in_channels, in_channels // ratio),
            nn.ReLU(),
            nn.Linear(in_channels // ratio, in_channels),

我问了一下deepseek,答案是降低了运算量。
如果不降维的话,那就是6464+64(最后这个64是偏置矩阵)=4096
而经过压缩之后,64
4+4=260,4*64+64=320,总共加起来也不过是个580,直接下降了一个量级,而且我问了deepseek之后它告诉我,科学的参数压缩效果很好。
我差不多了解了,这个注意力模块就是对卷积生成的张量对它进行了处理,有了新的权重矩阵。这个新的权重矩阵则是由全局池化和局部池化得来的。

52、神经网络序列处理:1D CNN与注意力机制详解 本文详细介绍了1D CNN和注意力机制在序列处理任务中的应用。1D CNN在序列分类和生成任务中能够有效提取局部特征,而注意力机制则通过动态关注输入序列的不同部分,增强模型的性能和可解释性。文章涵盖了TextCNN、因果卷积、WaveNet、注意力的不同类型及其在机器翻译、语音合成和文本分类中的应用。此外,还讨论了1D CNN与注意力机制的结合方式、模型训练优化方法以及实际案例分析,为处理复杂序列问题提供了系统性的方法指导。 阅读详情

相关推荐

Akamai移动端Sensor数据采集与BMP风控机制深度解析

本文深度解析了Akamai在移动端风控中的核心机制,重点阐述了Sensor数据如何通过采集陀螺仪、加速度计等硬件信息,结合设备指纹生成连续且符合物理规律的行为轨迹。详细剖析了数据从采集、加密校验到通过BMP风控三重验证(校验位、时间差、数据逻辑)的完整流程,并提供了从模拟优化到自建风控模型的实用应对思路。

quiet的专栏 292

YOLOv5 6.1 版本注意力机制集成指南

YOLOv5 6.1 版本注意力机制集成指南 项目介绍 YOLOv5 是一款广泛应用于目标检测领域的开源框架,以其高效、准确和易于使用的特点受到了广大开发者的喜爱。本文将详细介绍如何在 YOLOv5 6.1 版本中集成注意力机制,进一步提升模型的检测性能。通过简单的步骤,您可以轻松地将注意力模块添加到 YOLOv5 中,从而在复杂场景下获得更精确的目标检测结果。 项目技术分析 注意力机制 注意力机...

gitblog_00942的博客 824

从零构建:STM32与EC800 4G模块的工业物联网数据透传实战

本文详细介绍了如何从零构建STM32与EC800 4G模块的工业物联网数据透传系统。内容涵盖硬件选型、抗干扰电路设计、AT指令稳定性优化、网络连接管理、可靠数据透传协议以及低功耗策略,为开发者提供了一套可直接应用于工业场景的完整实战方案。

uran的专栏 1017

4种顶会注意力机制模块及1D-CNN的滚动轴承故障诊断

其中原始的1DCNN准确率为97.5%,ECA-1DCNN准确率:99.21875%,CBAM-1DCNN准确率:99.53125%,GAM-1DCNN准确率:100%。对原始轴承数据添加信噪比为1.2的情况下,原始的1DCNN结果如下,测试集准确率为:97.5%驱动端轴承,采样频率为12 kHz,转速为1797 r/min,负载设定。对原始轴承数据添加信噪比为1.2的情况下,融合CBAM注意力机制。对原始轴承数据添加信噪比为1.2的情况下,融合GAM注意力机制。其中的AM表示注意力机制模块,

淘个代码 1013

DAB协议解读ETSI TS 103 461

数字信号广播( Digital Audio Broadcasting 简称DAB)是继AM、FM传统模拟广播之后的第三代广播--数字信号广播,它提供了接近CD质量的声音,广播及商机无限的附加数据服务,具有抗噪声、抗干扰、抗电波传播衰落、适合高速移动接收等优点,保证固定、携带及移动时接收信号的质量。DAB的原始版本使用MP2音频编解码器。该系统的升级版本于2007年2月发布,称为DAB+,它使用基于改进的离散余弦变换(MDCT)的HE-AACv2(AAC+)音频编解码器。

qflook的博客 4481

Matplotlib之bar3d画3D柱状图

3D柱状图通常用于展示数据集中不同分类项的数据大小或数量。与普通的柱状图相比,3D柱状图更适合展示数据的三个维度 3D 柱状图 按行/列涂颜色 柱加阴影、描黑边 自定义座标轴名、刻度标签、范围

我走的每一步都算数 1123

pytorch框架,4种顶会注意力机制融合1D-CNN的滚动轴承故障诊断

其中原始的1DCNN准确率为97.5%,ECA-1DCNN准确率:99.21875%,CBAM-1DCNN准确率:99.53125%,GAM-1DCNN准确率:100%。对原始轴承数据添加信噪比为1.2的情况下,原始的1DCNN结果如下,测试集准确率为:97.5%驱动端轴承,采样频率为12 kHz,转速为1797 r/min,负载设定。对原始轴承数据添加信噪比为1.2的情况下,融合CBAM注意力机制。对原始轴承数据添加信噪比为1.2的情况下,融合GAM注意力机制。其中的AM表示注意力机制模块,

淘个代码 865

2024届数字IC秋招-华为机试-数字芯片-笔试真题和答案(三)(含2022年和2023年)

此部分包含华为机试真题,方向是数字芯片,内容详细包括设计、验证、后端等,大部分题目给出参考答案。华为机试都是从题库里抽题目,所以这些题目还是很有参考性的,甚至是完全一样,可以搜到的。(题目内容较多,将分开编写几个文章)A.错误B.正确参考答案:BA.getB.try_getC.peekD.put参考答案:B。

qq_42135020的博客 1917

H-Transformer-1D: 快速一维层次化注意力机制教程

H-Transformer-1D: 快速一维层次化注意力机制教程 项目介绍 H-Transformer-1D 是一个由 Lucidrains 开发的 Python 库,实现了高效的层次化注意力机制,专为序列学习设计。该库优化了 Transformer 架构中的注意力计算,灵感来源于数值分析领域的Hierarchical Matrix(H-Matrix),实现了线性的时间和内存复杂度。由 Zhenh...

gitblog_00731的博客 772

【推荐100个unity插件】性能极高的逼真爆炸、火焰和烟雾效果——UNI VFX

这是一篇关于Unity中高性能GPU粒子特效插件UNI VFX的使用指南。文章介绍了该插件提供逼真的爆炸、火焰和烟雾效果,支持URP和HDRP渲染管线。主要内容包括:插件安装方法(需预先安装Visual Effect Graph和Shader Graph包)、事件系统使用方法(如create/loop/stop等事件控制)、特效分类(自动结束型和持续型特效)、检视面板配置技巧以及性能优化建议(特别提醒灯光特效对性能的影响较大)。文末还推荐了多个Unity开发相关的专栏内容。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1492

Vue2 - 详细实现安装西瓜视频 xgplayer 插件详细配置及使用教程,利用西瓜视频播放器播放 mp4、flv、hls 格式视频文件及视频推流(直播或监控摄像头画面),支持移动端H5及PC网站!

vue2,nuxt2,西瓜视频,xgplayer,插件组件,xgplayer-hls,xgplayer-flv,xgplayer-mp4,播放视频点播和直播视频流,自定义播放器样式,截屏,监控视频,vue使用西瓜播放器播放flv、hls、mp4视频,截屏按钮,直播流,报错,黑屏,加载失败,苹果ios不兼容,重连,怎么改样式,很卡,详细教程,监控实时播放推流,倍速播放,在线flv在线推流地址,HLS播放,vue西瓜播放器,vue如何使用西瓜视频插件做直播推流回流,视频点播,flv在线视频流播放,截图功能,利用

🏆 前端领域优质创作者 1万+

注意力机制1

本文介绍了注意力机制的基本概念及其在机器学习中的应用。首先从生物学角度阐述了灵长类视觉系统的注意力机制,包括非自主性和自主性提示。然后提出了注意力机制的查询-键-值框架,解释了注意力汇聚的工作原理。通过Nadaraya-Watson核回归实例,展示了如何利用注意力权重进行预测,并与简单平均汇聚进行对比。实验结果表明,基于注意力机制的预测更接近真实值,且权重分配能反映查询与键的相似程度。最后给出了注意力权重的可视化方法,直观展示了查询与键的关系。

2301_78985220的博客 1373

五种音频器件综合对比——《器件手册--音频器件》

音频器件当在蜂鸣片的两片电极之间接通交流音频信号时,蜂鸣片会根据信号的大小和频率发生振动,从而产生相应的声音。结构简单、造价低廉。广泛应用于玩具、电子表、电子仪器、电子钟表、定时器等电子电器方面。蜂鸣器是一种一体化结构的电子讯响器,采用直流电源供电,广泛应用于各种电子产品中作发声器件有源蜂鸣器:内部带震荡源,通电即发声,程序控制方便。无源蜂鸣器:内部不带震荡源,需用方波驱动,声音频率可控,价格相对便宜。计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品。

XU157303764的博客 1538

YOLOv5-6.1 添加 CoordAtt 注意力机制版本

YOLOv5-6.1 添加 CoordAtt 注意力机制版本 去发现同类优质开源项目:https://gitcode.com/ 本仓库提供了一个名为 yolov5-6.1-CoordAtt.zip 的资源文件下载。该资源文件基于 YOLOv5 官方版本 6.1,并在其中集成了 CoordAtt 注意力机制。 资源文件描述 官方源项目地址:本资源文件基于 YOLOv5 官方版本 6.1,官方源项目...

gitblog_09771的博客 276

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

学习注意力机制【1】

注意力机制学习

weixin_63016274的博客 2415

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

1.注意力机制

注意力机制笔记

YPeng_Gao的博客 1266

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

YOLOv5-6.1 添加 CBAM 注意力机制版本

YOLOv5-6.1 添加 CBAM 注意力机制版本 去发现同类优质开源项目:https://gitcode.com/ 本仓库提供了一个名为 yolov5-6.1-CBAM.zip 的资源文件,该文件基于官方 YOLOv5 版本 6.1 进行了改进,添加了 CBAM(Convolutional Block Attention Module)注意力机制。 资源文件描述 官方源项目地址:本资源文件基...

gitblog_09755的博客 434

Happy-LLM 2.1 注意力机制 Task02

1.1 注意力机制(Attention):为输入不同部分分配不同权重,模拟“聚焦关键信息”。1.2 提出背景:RNN/LSTM 串行、长依赖难题 → 需并行且能捕捉全局关系的新架构。9.1 Attention 把“记忆”问题转化为“检索”问题,逻辑更接近信息检索。2.3 Value(V):值向量,被加权汇总的实际信息。2.1 Query(Q):查询向量,表示当前关注点。投影 → 不同头学习不同语义/位置关系,表示更丰富。2.2 Key(K):键向量,标识所有候选信息。缓和高维点积导致梯度不稳定。

weixin_72250436的博客 341

Yolov5 (v6.1)添加注意力机制

无

qq_41627642的博客 3414

FLUX.1-dev注意力机制可视化工具

本文深入解析FLUX.1-dev模型的注意力机制可视化工具,揭示其如何通过Flow Transformer架构实现图文动态对齐,并利用注意力热力图提升生成可解释性。结合代码实战与应用案例,展示从生成到诊断的闭环优化过程,推动AI生成走向科学化调试。

weixin_36303305的博客 299

【深度学习】(1) CNN中的注意力机制(SE、ECA、CBAM),附Pytorch完整代码

大家好,今天和各位分享一下如何使用 Pytorch 构建卷积神经网络中的各种注意力机制,如:SENet,ECANet,CBAM。注意力机制的原理 和 TensorFlow2 的实现方式可以看我下面两篇博文:SENet、ECANet:https://blog.youkuaiyun.com/dgvv4/article/details/123572065DANet、CBAM:https://blog.youkuaiyun.com/dgvv4/article/details/123888724SE注意力机制(Squeeze-and-Exc

博观而约取,厚积而薄发 11万+

Swin Transformer 变体1:使用MLP代替多头注意力机制

对Swin Transformer的基础模型作出修改

my的博客 1644

【pytorch】注意力机制-1

queries和attention_weights的形状为(查询个数,“键-值”对个数)# values的形状为(查询个数,“键-值”对个数)

积少成多 1788

FLUX.1架构的理解2——Transformer的注意力机制

仅供参考,未经实验验证。参考资料:论文地址:https://arxiv.org/pdf/2507.09595该公式是 Transformer 架构中自注意力机制的核心,通过计算查询与键的点积相似度,并经过缩放和softmaxsoftmax归一化后,得到注意力权重,再将这些权重与值向量加权求和,从而为输入序列中的每个元素生成一个融合了上下文信息的新的表示。这一机制使得模型能够捕捉序列内部的长距离依赖关系,是Transformer 模型在多种模态任务中取得成功的关键。

shimingwang的博客 684

Nunchaku FLUX.1 CustomV3模型的注意力机制分析与优化

本文介绍了Nunchaku FLUX.1 CustomV3模型的注意力机制原理与优化方法。该模型可在星图GPU平台上实现自动化部署,其核心的注意力机制通过引导模型关注图像不同区域的信息关联,显著提升了AI图片生成的细节丰富度与整体协调性,例如在生成“机械钟表齿轮特写”等复杂场景时能有效融合材质与光影。

weixin_30415591的博客 90
上一篇: 图神经网络
下一篇: 事业单位ABCDE类
人生无根蒂,飘如陌上尘
博客等级 码龄9年 224粉丝 228原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值