YOLO26 改进、魔改| 部分通道注意力模块PAT,以轻量化并行结构融合局部卷积与增强型通道注意力,提升小目标、遮挡目标的检测效果。

PAT(Partial Channel-Attention block)是一款专为神经网络高效特征提取设计的轻量化模块,其诞生源于计算机视觉任务中 "性能提升" 与 "效率优化" 的核心矛盾。在深度学习模型不断向深层、密集化发展的趋势下,传统卷积虽能捕捉特征但计算冗余严重,单纯的轻量化卷积又易丢失全局信息;而常规通道注意力机制仅依赖单一统计信息,特征挖掘不够充分。为解决这一痛点,PAT创新性地将 "部分通道计算" 与 "增强型注意力机制" 结合,既规避了全量计算的高成本,又弥补了传统注意力的信息短板,适配目标检测、分割等对速度与精度均有要求的实际场景。
基础模型
改进后的

1.PAT原理

PAT的核心逻辑是 "分流处理、优势互补":它不采用对所有通道统一操作的模式,而是先将输入特征的通道按比例拆分,让不同通道承担不同功能 ------ 一部分通道专注于局部特征提取(通过常规卷积),另一部分通道专注于全局关联建模(通过改进型注意力)。关键在于,其注意力机制并非仅依赖通道均值,而是利用特征映射的高斯分布特性,同时融入均值与方差两类统计信息,能更全面地捕捉通道间的潜在关联;两部分通道的处理过程并行进行,无需等待单一分支完成,既保证了特征的丰富性,又避免了额外的时间延迟,最终通过融合实现 "局部细节不遗漏、全局关联不缺失" 的特征增强效果。

PAT_ch 的结构围绕 "分流 - 处理 - 融合" 的核心逻辑搭建,整体简洁且高效:

  1. 通道拆分模块:作为整个模块的入口,它根据预设比例(可灵活调整)将输入特征图的通道分成两个独立分支,一个用于卷积运算,一个用于注意力计算,实现特征的并行分流,为后续高效处理奠定基础;

  2. 双功能处理模块:卷积分支通过 3×3 卷积核提取局部空间特征,搭配批归一化和激活函数,确保特征的局部辨识度;注意力分支则嵌入高斯增强型 SE 模块,先对特征进行全局池化获取均值与方差,再通过简单的全连接层转化为注意力权重,筛选出对任务更有价值的特征;

  3. 特征融合模块:将经过不同处理的两个分支特征,通过通道拼接的方式重新整合为完整通道维度,输出兼具局部与全局特性的增强特征,整个结构无复杂冗余组件,轻量化设计贯穿始终。

2. YOLO与 PAT的结合

将 PAT融入YOLO 模型,能实现 "速度与性能的双向升级":一方面,PAT_ch 的轻量化设计与 YOLO 的实时检测定位高度契合,可在不降低推理速度的前提下,替代传统卷积层减少模型冗余;另一方面,其增强型注意力机制能强化 YOLO 对多尺度目标的特征捕捉能力,尤其提升小目标、遮挡目标的检测效果,让模型在复杂场景下的泛化能力更优。

3. PAT代码部分

YOLO11|YOLO12|YOLO26|改进| 部分注意力卷积PAT,部分通道分割与并行算子分配,高效融合卷积特征,提升对小目标、密集目标的检测能力_哔哩哔哩_bilibili

YOLO12模型改进方法,快速发论文,总有适合你的改进,还不改进上车_哔哩哔哩_bilibili

代码获取: YOLOv8_improve/YOLOV12.md at master · tgf123/YOLOv8_improve · GitHub

4. PAT引入到YOLO26中

第一: 先新建一个change_model,如下图如所示。

将代码复制到change_model里面

第二:在task.py中导入

​​​

第三:在task.py中的模型配置部分下面代码

​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​ ​​​​​​​​​​​​​​

第四:将模型配置文件复制到YOLOV11.YAMY文件中

​​​​​​​​​​​​​​​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

​​​​​​​ ​​​​​​​​​​​​​​ ​​​​​​​ ​​​​​​​​​​​​​第五:运行代码

python 复制代码
from ultralytics.models import NAS, RTDETR, SAM, YOLO, FastSAM, YOLOWorld

if __name__=="__main__":

    # 使用自己的YOLOv12.yamy文件搭建模型并加载预训练权重训练模型
    model = YOLO(r"/home/tgf/tgf/yolo/model/YOLO26/ultralytics/cfg/models/26/yolo26_PAT.yaml")
        # .load(r'E:\Part_time_job_orders\YOLO_NEW\YOLOv12\yolo12n.pt')  # build from YAML and transfer weights

    results = model.train(data=r"/home/tgf/tgf/yolo/model/YOLO26/ultralytics/cfg/datasets/VOC_my.yaml",
                          epochs=300,
                          imgsz=640,
                          batch=32,
                          optimizer="MuSGD",
                          # cache = False,
                          # single_cls = False,  # 是否是单类别检测
                          # workers = 0,
                         # resume=r'D:/model/yolov8/runs/detect/train/weights/last.pt',
                          amp = True
                          )
相关推荐
guo_xiao_xiao_14 小时前
YOLOv11室内地面塑料袋目标检测数据集-30张-Plastic-Bag-1
yolo·目标检测·目标跟踪
探物 AI15 小时前
【感知·yolov11】YOLOv11 部署踩坑录:为什么 INT8 量化后精度往往被直接“腰斩”??
yolo
guo_xiao_xiao_19 小时前
YOLOv11室内果蔬摆放香蕉目标检测数据集-4187张-banana-1_4
yolo·目标检测·目标跟踪
guo_xiao_xiao_19 小时前
YOLOv11室内办公环境包目标检测数据集-1832张-bag-1_2
yolo·目标检测·目标跟踪
AIDF202621 小时前
手把手教你分析深度学习目标检测模型——以YOLOv5为例
深度学习·yolo·目标检测
AI棒棒牛2 天前
YOLOv13最新创新改进系列:YOLOv13特征可视化,特征提取图,科技感满满,丰富实验神器!!!
人工智能·科技·yolo·目标检测·计算机视觉
钓了猫的鱼儿2 天前
【数据集】红外无人机目标检测数据集VOC+YOLO格式10000张1类别
yolo·目标检测·无人机
輕華2 天前
YOLOv5 实战:从 GitHub 拉取到自定义数据集训练
yolo·github
guo_xiao_xiao_2 天前
YOLOv11城市道路自行车目标检测数据集-999张-Bicycle-1
人工智能·yolo·目标检测
guo_xiao_xiao_2 天前
YOLOv11机场跑道大型客机-飞机目标检测数据集-201张-Airplane-1_2_2
人工智能·yolo·目标检测