摘要:本研究提出了多尺度卷积注意力模块(MSAM),结合多尺度卷积注意力(MSCA)、空间注意力、残差门控机制(Gamma)和工程优化技术,提升目标检测性能。核心创新点包括通过多尺度卷积增强不同物体尺度的检测能力,空间注意力聚焦重要区域,Gamma机制自适应融合多尺度特征。工程优化方面,DropPath正则化提高泛化能力,模块化设计增强模型灵活性和可扩展性。该模型在小物体检测和多尺度物体识别中表现优异,适用于复杂场景中的目标检测任务。
作者:Bob(二次改进)
计算机视觉中的注意力机制概述
在深度学习尤其是计算机视觉任务中,注意力机制(Attention Mechanism) 已成为提升模型特征表达能力的重要手段。一般来说,注意力机制可分为以下四大类:
通道注意力(Channel Attention):关注不同通道之间的重要性;
空间注意力(Spatial Attention):关注图像在空间维度上的显著区域;
时间注意力(Temporal Attention):用于视频等时序任务,捕捉时间维度的依赖;
分支注意力(Branch Attention):在多分支网络中对不同路径特征赋予不同权重。
这些机制的核心思想是通过"加权特征",引导模型聚焦于更关键的信息区域,从而提升整体特征提取能力。
CBAM:通道与空间注意力的经典融合者
CBAM(Convolutional Block Attention Module) 是一种轻量级且高效的注意力模块,它通过同时引入**通道注意力(CAM)和空间注意力(SAM)**实现了特征的双重增强。其论文题为:
《CBAM: Convolutional Block Attention Module》
链接:https://arxiv.org/pdf/1807.06521.pdf

图1 CBAM 模块总体结构示意图
CBAM(Convolutional Block Attention Module)由通道注意力和空间注意力两个子模块顺序连接而成。首先,通道注意力模块根据全局上下文信息自适应地学习不同通道的重要性权重,从而突出具有判别性的语义特征;随后,空间注意力模块进一步利用通道压缩后的空间信息分布,对关键区域进行显著性增强。通过将 CBAM 插入到网络的卷积块中,模型能够在通道维度和空间维度上同时优化特征表达能力,从而提升整体识别性能。
自研MSAM注意力机制:通道注意力的进化形态
1.背景与创新动机
尽管CBAM模块在轻量级网络中表现出色,但其通道注意力机制仍存在一定局限,例如对多尺度信息的捕获能力不足。为此,我们提出了一种全新的MSAM(Multi-Scale Attention Module)多尺度卷积注意力机制,对CBAM的通道注意力部分进行了深度改进。
核心思想是:
用具有多尺度特征提取能力的 MSCA(Multi-Scale Convolutional Attention) 模块替换CBAM中的通道注意力模块,使模型能更好地适应复杂特征分布。
《SegNeXt: Rethinking Convolutional Attention Design for Semantic Segmentation》
链接:https://arxiv.org/pdf/2209.08575.pdf
2.MSAM模块设计与结构
MSAM由三个关键部分组成:
(1)深度卷积融合局部信息(Depth-wise Convolution)
捕捉不同感受野下的局部特征。
(2)多分支卷积提取多尺度特征(Multi-scale Convolutional Branches)
通过不同卷积核尺寸(如 7×1、11×1、21×1)获取多尺度上下文信息。
(3)1×1卷积特征融合(Channel Mixing)
统一多尺度特征并重新计算权重,实现通道间的高效交互。

图2 MSCA / MSCAN 注意力结构示意图
其结构如图所示:
左侧(a):展示MSCA的基本模块结构;
右侧(b):展示多尺度分支融合的整体过程。
通过这种设计,MSAM不仅能捕获局部-全局上下文信息,还大幅提升了通道注意力的表达能力。
MSAM创新点到底在哪?
核心创新在MSAM.py,YAML只决定"怎么接、接在哪里"
这里我们澄清算法创新与工程集成的边界:MSAM.py是方法本体(真正的创新),而YAML负责把它接入到YOLOv8的哪些层、接入多少次以及以什么宽度接入。前者决定"能不能更强",后者决定"在哪儿最划算"。
1.为什么说 MSAM.py 才是"创新点主体"

图3 创新点主体代码部分截图
新机制:
(1)多尺度通道注意力(MSCA):通过4路深度可分离卷积(DWConv,k=5/7/11/21)并行汇聚,提取多尺度特征。
(2)带BN的空间注意力:结合均值池化和最大池化(Avg/Max),通过卷积、BN和Sigmoid生成空间注意力图。
(3)级联顺序:使用 y = SA(CA(x)),先进行通道注意力(CA),再进行空间注意力(SA),有效抑制噪声。
(4)可学习残差门控(γ):初始值为0,通过可学习的门控参数引入注意力,平滑学习过程。
(5)可选DropPath:通过DropPath正则化提升泛化能力,减少过拟合。
以上算法行为与增益来源全部在 MSAM.py 内实现。
可迁移性:同一 MSAM.py 可迁往 YOLOv5/YOLOv9/分类/分割等任务,说明它是 通用方法,不依赖特定 YAML。
可验证性:组件级消融(去 SA/γ、改核大小、关 DropPath)均可在 MSAM.py 内逐项验证,证据链清晰。
2.YAML的角色:把创新放到最"值"的地方
(1)插入位置:创新机制应放在最具价值的地方,如插入到SPPF后(P5 层),利用低分辨率获得更强全局信息,性价比高。
(2)插入次数/宽度:架构策略决定是否在P3/P4加轻量MSAM,以及是否缩通道(如 MSAM(ch/2))平衡性能与效率。
(3)可复现:通过YAML固化网络拓扑,保证训练和对照实验的公平性和可比性,提高复现性。
只有当YAML里的拓扑改动本身具有新颖性(比如设计了新颈部路径、新的多尺度融合拓扑),才可单列为方法创新;否则更偏工程集成。
3.核心创新点
MSAM.py代码而言,可归纳为3个创新点。
这些部分属于网络设计中的创新性改进,主要涉及模型能力的提升和新技术的应用:

表1 核心创新点
4.工程优化
MSAM.py代码而言,可归纳为3个工程优化。
这些部分是针对现有模型架构或训练过程中的优化,以提高模型在实际应用中的稳定性、效率和适应性:

表2 工程优化
三步接入MSAM到YOLOv8
1.MSAM加入ultralytics/nn/Addmodules/MSAM.py
在 ultralytics/nn 文件夹下创建一个名为 'AddModules' 的新目录(如果该目录已存在于现有的算法改进文件中,则无需重新创建)。在该目录内创建一个新的 Python 文件,并将核心代码复制并粘贴到该文件中。这样可以确保模块的组织结构清晰、便于维护,同时为后续代码扩展和调用提供便利。

2.在 'AddModules' 目录下创建一个新的 Python 文件,命名为 'init.py'(如果该目录已存在于现有的算法改进文件中,则无需重新创建)。在该文件内部导入所需的检测头模块,如下图所示。这一步骤是确保模块能够被正确加载和引用。

3.在 'ultralytics/nn/tasks.py' 文件中完成必要的导入和模块注册(如果该目录已存在于现有的算法改进文件中,则无需重新创建,可以跳过此步骤,直接进入第四步)。该步骤确保模块能够在系统中正确识别并顺利调用。

根据前述步骤,在 parse_model 函数中进行必要的修改。这一步骤确保新模块能够正确集成到现有的模型架构中,并与其他模块顺利协作,确保模型整体的协调性与功能性。

YAML模型文件
以 ultralytics/cfg/models/v8/yolov8.yaml 为基准,在同目录创建你的训练文件 yolov8_MSAM.yaml。该文件在 YOLOv8 基础结构上插入自研 MSAM 注意力模块,用于你的数据集训练与评测。
前置条件:确保 MSAM.py 已能被 Ultralytics 解析器发现(将 MSAM.py 放进 ultralytics/nn/addmodules/ 并在其 init.py 中 from .MSAM import *)。
成功运行

打印网络结构(Ultralytics 的构图输出)显示 ESAM 模块已被正确注册并插入到模型中;底部的 summary 给出总层数与参数量,说明模型可正常前向与训练。
数据集与验证
本研究采用"肺炎检测"数据集,共 4,194 张样本。基于随机划分原则,将数据集划分为训练集、验证集与测试集,比例约为 80% / 10% / 10%,对应数量如下:

表3 肺炎检测数据集划分情况
1.YOLOv8n模型性能评估

图4 YOLOv8 最终训练与验证结果(全类别性能表现)

图5 YOLOv8 模型各类别 Precision--Recall 曲线(mAP@0.5 = 0.971)
2.YOLOv8 MSAM模型性能评估

图6 YOLOv8 MSAM 最终训练与验证结果(全类别性能表现)

图7 YOLOv8 MSAM模型各类别 Precision--Recall 曲线(mAP@0.5 = 0.979)
模型改进对比分析
以下为YOLOv8n(原版)与YOLOv8 MSAM(改进版)的核心指标对比表:

表4 YOLOv8n与YOLOv8 MSAM在验证集上的主要检测指标对比
mAP50-95/mAP50:整体检测精度小幅提升约 0.8 个百分点。
Precision:几乎持平,说明误检控制保持稳定。
Recall:显著提升 ≈ 3 个百分点,说明模型对肺炎类目标的检出更全面,漏检率明显降低。
点评:MSAM模块改进的主要价值在于提高召回率,从而提升模型的临床可靠性。
模型改进效果分析与意义
从技术、工程和科研三个角度分析YOLOv8 MSAM改进的实际价值,可以更好地理解这一改进的意义及其广泛应用潜力。
- 技术角度
在高基线场景(mAP接近饱和,>0.95)下,取得稳定的 +0.5%~+1.0%提升本身就具有技术含金量。本工作在不显著增加推理延迟与算力开销的前提下,实现了mAP50-95 +0.8 个百分点、Recall +2.9个百分点的增益,表明改进并非随机波动,而是结构层面的有效增强。特别是在中低对比度特征的检测敏感性上,MSAM模块表现出了显著优势,这对于早期病灶检测(如肺炎)等场景尤为关键。由于该改进几乎没有增加推理延迟,证明了其在技术上的有效性和高效性。
- 工程角度
在实际应用中,召回率的提升直接关联到漏检率的显著降低。从6.5%降至3.6%的漏检率,在医疗图像分析、安防监控、缺陷检测等应用场景中,意味着系统更加可靠、更少漏报。此类提升对于提高系统的实际应用价值具有深远的意义。而最重要的是,这一改进并没有牺牲模型的速度和体积,这表明YOLOv8 MSAM模块不仅增强了性能,还保持了模型的高效性,适应了更为复杂和多样化的实际应用需求。
- 科研角度
本研究的创新点在于提出了一种基于多尺度注意力机制的模块(MSAM),其目标是提高YOLOv8模型在局部纹理信息捕获和低对比度目标检测上的能力。通过对比实验,研究证明了该模块能够在整体性能上实现稳健的提升,尤其是在召回率和mAP的提升上,证实了改进方法的有效性与可靠性。同时,该结构的计算复杂度和推理速度代价较低,展示了性能与效率的良好平衡。作为一种轻量级的结构性改进,MSAM模块不仅具备了合理的理论依据,而且在实验验证中得到了可复现的结果,符合科研领域对创新性、可验证性和应用价值的要求,因此具有较高的科研意义。