YOLOv9最新改进系列:YOLOv9改进加入新型高效的多尺度注意力(EMA)模块保留每个通道的信息并减少计算成本!助力v9检测性能遥遥领先!

YOLOv9最新改进系列:YOLOv9改进加入新型高效的多尺度注意力(EMA)模块保留每个通道的信息并减少计算成本!助力v9检测性能遥遥领先!

YOLOv9原文链接戳这里,原文全文翻译请关注B站Ai学术叫叫首er

详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!

YOLOv9最新改进系列:YOLOv9改进加入新型高效的多尺度注意力(EMA)模块保留每个通道的信息并减少计算成本!助力v9检测性能遥遥领先!

  • YOLOv9最新改进系列:YOLOv9改进加入新型高效的多尺度注意力(EMA)模块保留每个通道的信息并减少计算成本!助力v9检测性能遥遥领先!
  • 摘要
  • 1 简介
  • 2 相关工作
    • 2.1 功能分组。
    • 2.2 多流网络。
    • 2.3多尺度卷积。
  • 3 结论
  • 4 修改步骤!
    • 4.1 修改YAML文件
    • 4.2 新建.py
    • 4.3 修改tasks.py
  • 5、验证是否成功即可


EMA原文(提出原文戳这)

详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!
截止到发稿时,B站YOLOv9最新改进系列的源码包,已更新了11种的改进!自己排列组合2-4种后,考虑位置不同后可排列组合上千种!!专注AI学术,关注B站博主:Ai学术叫叫兽er!

摘要

在各种计算机视觉任务中说明了通道或空间注意机制在产生更可辨别的特征表示方面的显着有效性。 然而,通过通道降维来建模跨通道关系可能会给提取深度视觉表示带来副作用。 本文提出了一种新型高效的多尺度注意力(EMA)模块。 着眼于保留每个通道的信息并减少计算开销,我们将部分通道重塑为批量维度,并将通道维度分组为多个子特征,使空间语义特征在每个特征组内均匀分布。 具体来说,除了对全局信息进行编码以重新校准每个并行分支中的通道权重之外,还通过跨维度交互来进一步聚合两个并行分支的输出特征,以捕获像素级的成对关系。 我们使用流行的基准(例如 CIFAR-100、ImageNet-1k、MS COCO 和 VisDrone2019)对图像分类和目标检测任务进行了广泛的消融研究和实验,以评估其性能。

1 简介

随着深度卷积神经网络(CNN)的发展,更多值得注意的网络拓扑被应用于图像分类和目标检测任务领域。 当我们将 CNN 扩展到多个卷积层时,它表现出增强学习特征表示的非凡能力。 然而,它会导致堆叠更多的深度卷积对应物,并且需要大量的内存和计算资源消耗,这是构建深度CNN的主要缺点[1]、[2]。 作为一种替代方法,注意力机制方法由于其灵活的结构特点,不仅加强了更具辨别力的特征表示的学习,而且可以很容易地插入到 CNN 的主干架构中。 因此,注意力机制引起了计算机视觉研究界的极大兴趣。
人们普遍认为主要提出了三种类型的注意力机制,即通道注意力、空间注意力和两者。 作为代表性的通道注意力,挤压和激励(SE)明确地建模了跨维度交互以提取通道注意力[3]。 卷积块注意力模块(CBAM)[4]通过特征图中空间维度和通道维度之间的语义相互依赖性建立了跨通道和跨空间信息。 因此,CBAM 在将跨维度注意力权重集成到输入特征中表现出了巨大的潜力。 然而,池化操作的手动设计涉及复杂的处理,会带来一些计算开销。
为了克服计算成本限制的缺点,提供了一种长期有效的方法,即使用特征分组方法将不同资源上的特征划分为多组[5]。 显然,它可以使每组特征在空间上均匀分布。 在此设置之后,空间分组增强(SGE)注意力[6]将通道维度分组为多个子特征,并改善了不同语义子特征表示的空间分布,取得了出色的性能。 管理模型复杂性的最有效方法之一是使用具有通道降维的卷积[7]。 与SE注意力相比,坐标注意力(CA)[8]将方向特定信息沿空间维度方向嵌入到通道注意力中,并选择适当的通道维度缩减比例,实现了可比的性能。 相反,与粗粒度的 CV 任务相比,这种现象可能是像素级回归中通过降维来减轻计算负担的最常见问题。 受到估计高度非线性像素语义的思想的启发,极化自注意力(PSA)[9]完全折叠了沿对应通道维度的输入特征图并保留了高光谱分辨率。 在较小的减速比下,PSA表现出了巨大的性能提升潜力。 虽然适当的通道缩减率会产生更好的性能,但它可能在提取深度视觉表示时带来副作用,这在高效通道注意(ECA)[10]中探索了不降维的效率。 大层深度对于提高 CNN 的表示能力起着重要作用。 然而,它不可避免地导致更多的顺序处理和更高的延迟[11],[12]。 与描述为线性序列的大深度注意力不同,三重注意力(TA)[13]提出了一种三重平行分支结构,用于捕获针对不同平行分支的跨维度交互。 通过并行子结构,洗牌注意力(SA)[14]将通道维度分组为多个子特征并并行处理它们,这可以跨多个处理器有效地并行化。 此外,并行网络(ParNet)[15]构建了并行子网络,提高了特征提取的效率,同时保持了小深度和低延迟。 受上述注意力机制的启发,可以看出跨维度交互有助于通道或空间注意力预测。 我们基于分组结构,修改了CA的顺序处理方法,提出了一种无需降维的新型高效多尺度注意力(EMA)。 请注意,这里仅将两个卷积核分别放置在并行子网络中。 其中一个并行子网络是 1x1 卷积核,其处理方式与 CA 中所示的相同,另一个是 3x3 卷积核。 为了证明我们提出的 EMA 的通用性,第 4 节介绍了详细的实验,包括 CIFAR-100、ImageNet-1k、COCO 和 VisDrone2019 基准测试的结果。 以及图像分类和目标检测任务的实验结果如图 1 所示。

在这里插入图片描述
图1 比较以 ResNet50 [17] 作为骨干的不同注意力方法的准确性,结果表明 EMA 表现出最高的 Top-1 准确性,同时具有较低的模型复杂性。 模型还在 COCO 基准上以 yolov5s (v6.0) [18] 的标准主干进行评估,这说明 EMA 是高效且有效的。

我们的主要贡献总结如下:
1 我们提出了一种新颖的跨空间学习方法,并设计了一个多尺度并行子网络来建立短程和长程依赖关系。
2 我们考虑一种通用方法,将部分通道维度重塑为批量维度,以避免通过通用卷积进行某种形式的降维。
3 除了在不降低通道维数的情况下在每个并行子网络中构建局部跨通道交互之外,我们还通过跨空间学习方法融合两个并行子网络的输出特征图。
4 与 CBAM、基于归一化的注意力模块(NAM)[16]、SA、ECA 和 CA 相比,EMA 不仅取得了更好的结果,而且在所需参数方面也更加高效。

2 相关工作

2.1 功能分组。

在以前的文献中,特征分组已经被广泛地研究。为了缓解计算机计算预算的限制,AlexNet说明了分组卷积有利于在更多的GPU资源上将模型分布在两个组上[19]。随着特征分组数量的增加,ResNeXt已被证明子特征的激活会受到不同模式和噪声背景的空间影响[20]。Res2Net被假设为传输分组的子特征的分层模式,使得CNN能够在多个尺度上表示特征[21]。针对特征分组结构,SGE充分利用了整个群体空间的整体信息,既加强了语义区域的特征学习,又压缩了噪声,但未能对空间注意和通道注意之间的相关性进行建模。为了强调同时考虑通道和空间注意特征的有意义的表征能力,SA将通道维度划分为多个组,并采用均匀分布的方法将这些组引入两个平行的分支。因此,这两个分支可以分别对空间和通道注意信息之间的相关性进行建模。然而,只考虑部分通道来挖掘通道之间的相互关系,并通过融合空间信息和通道信息来构建信息特征。

2.2 多流网络。

给人的感觉是,一层又一层的堆叠增加了网络的深度,用于学习越来越抽象的特征。作为一种细粒度的注意机制,PSA利用并行结构对高质量像素回归任务的长期依赖关系进行建模,并取得了显著的效果。尽管平行的子结构加强了图1。以ResNet50[17]为主干,比较不同注意方法的准确率,结果表明EMA在模型复杂度较低的情况下表现出最高的Top-1准确率。模型还在COCO基准上使用Yolov5(V6.0)[18]的标准主干进行了评估,这表明EMA是有效的。特征分组。 特征分组在之前的文献中已经被广泛研究。 为了缓解计算机计算预算的限制,AlexNet 表明分组卷积有利于将模型分布在更多 GPU 资源上的两组中 [19]。 随着特征分组数量的增加,ResNeXt已被证明子特征的激活会在空间上受到不同模式和噪声背景的影响[20]。 Res2Net 被假设为一种分层模式,用于传输分组的子特征,使 CNN 能够在多个尺度上表示特征 [21]。 SGE着眼于特征分组结构,利用整个组空间的整体信息来加强语义区域的特征学习并压缩噪声,但未能对空间注意力和通道注意力之间的相关性进行建模。 为了强调考虑通道和空间注意特征的有意义的表示能力,SA将通道维度分为多个组,并使用平均分布方法将这些组引入两个平行分支。 因此,两个分支可以分别对空间和通道注意力信息之间的相关性进行建模。 然而,仅考虑部分通道,以利用通道的相互关系并通过融合空间和通道信息来构建信息特征。 多流网络。 考虑到一层又一层的堆叠会增加网络的深度,以学习越来越抽象的特征。 作为一种细粒度的注意力机制,PSA利用并行结构对高质量逐像素回归任务的长程依赖性进行建模,并取得了显着的成果。 并行子结构虽然增强了视觉表示能力,但带来了许多额外的参数和计算,不太适合应用。 相应地,三元组注意力将跨通道和空间信息与旋转操作混合到三个并行分支中,以学习越来越抽象的特征。 然而,捕获的注意力权重是通过简单平均直接聚合的,这不利于提高深层特征的可区分性。

2.3多尺度卷积。

不同的内核大小可以使 CNN 在同一处理阶段收集多尺度空间信息。 为了丰富特征空间,Inception [22]提出了多分支结构,其中每个分支的局部感受野不固定。 因此,聚合方法使 CNN 能够聚合来自不同分支的多尺度信息。 选择性核网络[23]采用自适应选择策略,实现神经元的自适应感受野大小,以有效丰富特征表示。 此外,EPSANet [24]用已建立的多尺度金字塔结构取代了3x3卷积,以局部方式建模跨通道交互并独立学习多尺度空间信息。 与上述注意模块相比,我们提出的多尺度注意模块显示出更好的性能改进。 与上述注意力方法不同,其中学习的注意力权重通过简单的平均方法聚合,我们通过跨空间学习方法融合并行子网络的学习注意力图。 它使用矩阵点积运算,旨在捕获像素级成对关系并突出显示所有像素的全局上下文[25]、[26]。

…详情改进方法一定要研读原文、全文!

3 结论

在本文中,我们系统地研究了注意力机制的特性,从而找到了将它们结合到 CNN 中的原则性方法。 此外,我们对 CNN 如何通过使用通用方法来享受良好的泛化和计算预算提出了新的见解,该通用方法避免了通过通用卷积进行某种形式的降维。 由于灵活和轻量级的特点,我们提出的 EMA 可以很容易地应用于不同的计算机视觉任务中,以实现最佳性能。 我们相信我们的 EMA 更适用于语义分割等更广泛的应用,并且可以堆叠到其他深度 CNN 结构中,以显着增强特征表示能力。 我们将把它们留给未来的工作。

4 修改步骤!

4.1 修改YAML文件

详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!

4.2 新建.py

详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽er 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!

4.3 修改tasks.py

详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽er 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!

5、验证是否成功即可

执行命令

python train.py

改完收工!
关注B站:Ai学术叫叫兽er
从此走上科研快速路
遥遥领先同行!!!!

详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽er 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SqlServer专题

目录 1,连接数据库 2,连接池 1.何为连接池? 2.连接池运行原理。 3.如何查看连接池? 4.连接池注意事项。 3,一般SQL语句。 4,控制语句 1.判断语句 2.循环语句 5,视图 1.使用…

Java高阶私房菜:快速学会异步编程CompletableFuture

为了使主程代码不受阻塞之苦,一般使用异步编程,而异步编程架构在JDK1.5便已有了雏形,主要通过Future和Callable实现,但其操作方法十分繁琐,想要异步获取结果,通常要以轮询的方式去获取结果,具体如下&#x…

电脑开不了机?不要慌,三招教你快速解决!

电脑开不了机是我们在日常使用中可能遇到的一个严重问题,它会影响我们的工作和生活。了解如何解决电脑开不了机的问题对于维护电脑正常运行至关重要。本文将介绍三种常见的解决电脑开不了机的方法,帮助您快速恢复电脑的正常使用。 方法1:检查…

Java实现生成中间带图标的二维码

Java实现生成中间带图标的二维码 生成Base64格式的二维码,返回html渲染 package your.package;import com.google.zxing.*; import com.google.zxing.client.j2se.MatrixToImageWriter; import com.google.zxing.common.BitMatrix; import com.google.zxing.qrcod…

flask 应用程序

flask 程序示例 创建 hello.py 文件: # 导入 Flask 模块。Flask 类的一个对象是 wsgi 应用程序。 from flask import Flask# 创建app对象, Flask构造函数将当前模块的名称(__name__)作为参数。 app Flask(__name__)# route() 函数是一个装饰器,它告诉应…

Linux上安装mysql指南

最近入职了新单位,申请到了一台cvm。我这个机子是redhat的linux发行版,就用rpm包安装工具就行。下面把我趟过的一些坑写在这里,希望对您有帮助。 一开始,我自己下载了安装包,装了一个这个社区版的,rpm -qa…

鸿蒙入门05-真机运行“遥遥领先”

如果你有一台真的 "遥遥领先"那么是可以直接在手机上真机运行你的项目的我们也来尝试一下运行 一、手机设置开发者模式 打开手机设置 打开手机设置界面 向下滑动到关于手机位置 快速连续点击版本号位置 下图所示位置快速连续点击 打开 3 - 5 次即可 会提示您已经进…

【R语言】动画图:散点图

绘制成如下的散点图: 如果数据量大,有多个年份,就会生成多张图,例如: 具体代码如下: library(gapminder)#加载 gapminder 包,其中包含了从 1952 年至 2007 年各个国家的 GDP、预期寿命和人口数据…

目标检测——鱼类数据集

一、重要性及意义 生物多样性保护与监测: 鱼类识别是生物多样性保护工作的关键一环。通过准确识别不同种类的鱼类,科学家能够更好地了解它们的分布、种群数量以及栖息地状况,从而制定更为有效的保护措施。鱼类是水域生态系统的重要组成部分…

通过阿里云向量检索 Milvus 版和通义千问快速构建基于专属知识库的问答系统

背景介绍 阿里云向量检索 Milvus 版是一款 Serverless 全托管服务,确保了与开源 Milvus 的完全兼容性,并支持无缝迁移。它在开源版本的基础上增强了可扩展性,能提供大规模 AI 向量数据的相似性检索服务。凭借其开箱即用的特性、灵活的扩展能力…

基于百度文心大模型全面重构,小度正式推出AI原生操作系统DuerOS X

4月16日,以“创造未来”为主题的2024百度Create AI开发者大会在深圳举办。百度集团副总裁、小度科技CEO李莹正式发布了小度新一代操作系统DuerOS X,该操作系统是小度基于百度文心大模型推出的全球首个AI原生操作系统。李莹表示:“作为⽂⼼⼤模…

ChatGPT与Python-GEE融合,遥感云大数据分析、管理与可视化

掌握Earth Engine的实际应用能力,以Python为基础,结合实例讲解平台搭建、影像数据分析、经典应用案例、本地与云端数据管理,以及云端数据论文出版级可视化等技能。 为提高教学质量,将融入ChatGPT 4、Claude Opus、Gemini、文心一…

读《SQL基础教程 第二版 上》的一些总结

1. 数据库语言 DDL: Data Definition Language,数据定义语言(库、表的操作) DML: Data Manipulation Language, 数据操控语言(对表中数据的增删改) DQL: Data Query Language,数据库查询语言…

SAP是什么?SAP介绍

一、概述 ​SAP,为“System Applications and Products”的简称,是SAP公司的产品——企业管理解决方案的软件名称。​ SAP含义 第一,SAP是公司名称,即SAP公司(纽交所代码:SAP),它是成立于1972年总部位于德国沃尔多夫市的全球最大的企业管理和协同化电子商务解决方案…

SpringBoot多数据源(一)

SpringBoot多数据源(一) 1.多数据源使用场景1.1 业务复杂(数据量大)1.2 读写分离 2.多数据源配置3.应用4.测试 1.多数据源使用场景 1.1 业务复杂(数据量大) 简单理解就是业务量复杂,将庞大的数…

UML/SysML建模工具更新情况-截至2024年4月(1)5款-Trufun建模平台 v2024

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 工具最新版本:itemis CREATE 5.2.2 更新时间 2024年3月22日 工具简介 原名YAKINDU Statechart Tools。状态机建模工具,支持各种语言的代码生成,提…

1000kW 柴油发电机组测试负载箱的核心功能

随着科技的不断发展,电力系统的稳定性和安全性日益受到重视。柴油发电机组作为一种重要的备用电源设备,其性能和可靠性直接关系到电力系统的稳定运行。为了确保柴油发电机组的性能和可靠性,对其进行定期的检测和维护是必不可少的。 在这个过程…

电磁仿真--基本操作-CST-(1)

目录 1. 开启-备忘 2. 从调用最简单的Dipole天线开始 2.1 查找示例 2.2 运行示例 2.3 进度与消息 2.4 查看结果 2.4.1 Port signals 2.4.2 S-Parameter 2.4.3 Reference Impedance 2.4.4 Balance 2.4.5 Power 2.4.6 Energy 2.4.7 Discrete Ports 2.4.8 2D/3D Res…

Spring Boot后端+Vue前端:打造高效二手车交易系统

作者介绍:✌️大厂全栈码农|毕设实战开发,专注于大学生项目实战开发、讲解和毕业答疑辅导。 🍅获取源码联系方式请查看文末🍅 推荐订阅精彩专栏 👇🏻 避免错过下次更新 Springboot项目精选实战案例 更多项目…

Linux服务器硬件及RAID配置

一、服务器硬件 塔式服务器:最初的服务器形态之一,类似于传统的台式电脑,但具有更强的处理能力和稳定性,适合小型企业或部门使用。 机架式服务器:设计为可安装在标准化机架内的模块化单元,可以有效地节省空…