前言本文介绍了新型视觉适配器微调方法Mona并将其集成到YOLOv11中。传统全参数微调成本高、存储负担重且有过拟合风险现有PEFT方法性能落后。Mona仅调整5%以内的骨干网络参数在多个视觉任务中超越全参数微调。其核心亮点包括参数效率高、性能突破和即插即用。适配器模块包含降维、多认知视觉滤波器等单元通过深度可分离卷积和多尺度卷积核处理视觉信号还加入分布适配层优化输入分布。我们将Mona集成到YOLOv11经注册和配置yaml文件后进行实验展现出良好效果。文章目录 YOLOv11改进大全卷积层、轻量化、注意力机制、损失函数、Backbone、SPPF、Neck、检测头全方位优化汇总专栏链接: YOLOv11改进专栏介绍摘要MonaMulti-cognitive Visual Adapter是一种新型视觉适配器微调方法旨在打破传统全参数微调full fine-tuning在视觉识别任务中的性能瓶颈。Mona 方法通过引入多认知视觉滤波器和优化输入分布仅调整 5% 的骨干网络参数就能在实例分割、目标检测、旋转目标检测等多个经典视觉任务中超越全参数微调的效果显著降低了适配和存储成本为视觉模型的高效微调提供了新的思路。文章链接论文地址论文地址代码地址代码地址基本原理Mona是由清华大学、国科大、上海交大、阿里巴巴联合提出的新型视觉适配器微调方法相关论文《5%100%: Breaking Performance Shackles of Full Fine-Tuning on Visual Recognition Tasks》已被CVPR2025收录其核心目标是打破传统全参数微调的性能与成本枷锁为视觉大模型高效微调提供新方案。一、提出背景传统全参数微调的痛点成本极高需更新模型全部参数以早期BERT为例单卡训练100万数据需5-7小时万亿级参数模型的微调对硬件和时间要求更苛刻存储负担重多任务场景下需为每个任务保存完整模型副本存在过拟合风险大模型直接微调易因数据分布差异出现性能下降。现有PEFT方法的局限参数高效微调PEFT虽能仅调整少量参数实现模型适配但视觉领域的多数PEFT方法性能仍落后于全参数微调无法兼顾效率与效果。二、核心亮点参数效率极高仅调整5%以内的骨干网络参数远低于传统PEFT方法的参数改动占比大幅降低适配和存储成本性能突破枷锁在实例分割、目标检测、图像分类等多类视觉任务中首次实现小于5%参数成本下超越全参数微调的性能即插即用特性可便捷嵌入现有视觉模型架构如Swin-Transformer无需大规模重构模型。三、方法架构与核心设计1. 整体模块结构Mona的适配器模块包含降维、多认知视觉滤波器、激活函数、升维等单元并内置跳跃连接Skip-Connections可无缝集成至Swin-Transformer等主流视觉骨干网络整体流程为输入特征经LayerNorm处理后先降维至内部维度再通过多认知滤波器增强特征表达经GELU激活和dropout后升维还原最终与原始特征残差连接输出。2. 两大核心创新设计多认知视觉滤波器这是Mona的核心模块通过深度可分离卷积和多尺度卷积核3×3、5×5、7×7实现对二维视觉信号的精准处理与传统线性适配器不同其专门针对视觉任务设计可完成多尺度特征融合提升模型对视觉信息的理解能力具体是将3种尺度卷积的输出均值后与原始特征残差连接再经1×1卷积投影优化。输入分布优化在适配器前端加入分布适配层Scaled LayerNorm通过可学习参数gamma和gammax调整输入特征分布使预训练特征更适配适配器的处理逻辑提升微调效率。核心代码class Mona(BaseModule): def __init__(self, in_dim, factor4): super().__init__() self.project1 nn.Linear(in_dim, 64) self.nonlinear F.gelu self.project2 nn.Linear(64, in_dim) self.dropout nn.Dropout(p0.1) self.adapter_conv MonaOp(64) self.norm nn.LayerNorm(in_dim) self.gamma nn.Parameter(torch.ones(in_dim) * 1e-6) self.gammax nn.Parameter(torch.ones(in_dim)) def forward(self, x, hw_shapesNone): identity x x self.norm(x) * self.gamma x * self.gammax project1 self.project1(x) b, n, c project1.shape h, w hw_shapes project1 project1.reshape(b, h, w, c).permute(0, 3, 1, 2) project1 self.adapter_conv(project1) project1 project1.permute(0, 2, 3, 1).reshape(b, n, c) nonlinear self.nonlinear(project1) nonlinear self.dropout(nonlinear) project2 self.project2(nonlinear) return identity project2实验脚本import warnings warnings.filterwarnings(ignore) from ultralytics import YOLO # if __name__ __main__: # 修改为自己的配置文件地址 model YOLO(./ultralytics/cfg/models/11/yolov11-Mona.yaml) # 修改为自己的数据集地址 model.train(data./ultralytics/cfg/datasets/coco8.yaml, cacheFalse, imgsz640, epochs10, single_clsFalse, # 是否是单类别检测 batch8, close_mosaic10, workers0, optimizerSGD, ampTrue, projectruns/train, nameMona, )结果
YOLOv11 改进 - SPPF模块 替代SPPF, Mona多认知视觉适配器(CVPR 2025):打破全参数微调的性能枷锁:即插即用的提点神器
前言本文介绍了新型视觉适配器微调方法Mona并将其集成到YOLOv11中。传统全参数微调成本高、存储负担重且有过拟合风险现有PEFT方法性能落后。Mona仅调整5%以内的骨干网络参数在多个视觉任务中超越全参数微调。其核心亮点包括参数效率高、性能突破和即插即用。适配器模块包含降维、多认知视觉滤波器等单元通过深度可分离卷积和多尺度卷积核处理视觉信号还加入分布适配层优化输入分布。我们将Mona集成到YOLOv11经注册和配置yaml文件后进行实验展现出良好效果。文章目录 YOLOv11改进大全卷积层、轻量化、注意力机制、损失函数、Backbone、SPPF、Neck、检测头全方位优化汇总专栏链接: YOLOv11改进专栏介绍摘要MonaMulti-cognitive Visual Adapter是一种新型视觉适配器微调方法旨在打破传统全参数微调full fine-tuning在视觉识别任务中的性能瓶颈。Mona 方法通过引入多认知视觉滤波器和优化输入分布仅调整 5% 的骨干网络参数就能在实例分割、目标检测、旋转目标检测等多个经典视觉任务中超越全参数微调的效果显著降低了适配和存储成本为视觉模型的高效微调提供了新的思路。文章链接论文地址论文地址代码地址代码地址基本原理Mona是由清华大学、国科大、上海交大、阿里巴巴联合提出的新型视觉适配器微调方法相关论文《5%100%: Breaking Performance Shackles of Full Fine-Tuning on Visual Recognition Tasks》已被CVPR2025收录其核心目标是打破传统全参数微调的性能与成本枷锁为视觉大模型高效微调提供新方案。一、提出背景传统全参数微调的痛点成本极高需更新模型全部参数以早期BERT为例单卡训练100万数据需5-7小时万亿级参数模型的微调对硬件和时间要求更苛刻存储负担重多任务场景下需为每个任务保存完整模型副本存在过拟合风险大模型直接微调易因数据分布差异出现性能下降。现有PEFT方法的局限参数高效微调PEFT虽能仅调整少量参数实现模型适配但视觉领域的多数PEFT方法性能仍落后于全参数微调无法兼顾效率与效果。二、核心亮点参数效率极高仅调整5%以内的骨干网络参数远低于传统PEFT方法的参数改动占比大幅降低适配和存储成本性能突破枷锁在实例分割、目标检测、图像分类等多类视觉任务中首次实现小于5%参数成本下超越全参数微调的性能即插即用特性可便捷嵌入现有视觉模型架构如Swin-Transformer无需大规模重构模型。三、方法架构与核心设计1. 整体模块结构Mona的适配器模块包含降维、多认知视觉滤波器、激活函数、升维等单元并内置跳跃连接Skip-Connections可无缝集成至Swin-Transformer等主流视觉骨干网络整体流程为输入特征经LayerNorm处理后先降维至内部维度再通过多认知滤波器增强特征表达经GELU激活和dropout后升维还原最终与原始特征残差连接输出。2. 两大核心创新设计多认知视觉滤波器这是Mona的核心模块通过深度可分离卷积和多尺度卷积核3×3、5×5、7×7实现对二维视觉信号的精准处理与传统线性适配器不同其专门针对视觉任务设计可完成多尺度特征融合提升模型对视觉信息的理解能力具体是将3种尺度卷积的输出均值后与原始特征残差连接再经1×1卷积投影优化。输入分布优化在适配器前端加入分布适配层Scaled LayerNorm通过可学习参数gamma和gammax调整输入特征分布使预训练特征更适配适配器的处理逻辑提升微调效率。核心代码class Mona(BaseModule): def __init__(self, in_dim, factor4): super().__init__() self.project1 nn.Linear(in_dim, 64) self.nonlinear F.gelu self.project2 nn.Linear(64, in_dim) self.dropout nn.Dropout(p0.1) self.adapter_conv MonaOp(64) self.norm nn.LayerNorm(in_dim) self.gamma nn.Parameter(torch.ones(in_dim) * 1e-6) self.gammax nn.Parameter(torch.ones(in_dim)) def forward(self, x, hw_shapesNone): identity x x self.norm(x) * self.gamma x * self.gammax project1 self.project1(x) b, n, c project1.shape h, w hw_shapes project1 project1.reshape(b, h, w, c).permute(0, 3, 1, 2) project1 self.adapter_conv(project1) project1 project1.permute(0, 2, 3, 1).reshape(b, n, c) nonlinear self.nonlinear(project1) nonlinear self.dropout(nonlinear) project2 self.project2(nonlinear) return identity project2实验脚本import warnings warnings.filterwarnings(ignore) from ultralytics import YOLO # if __name__ __main__: # 修改为自己的配置文件地址 model YOLO(./ultralytics/cfg/models/11/yolov11-Mona.yaml) # 修改为自己的数据集地址 model.train(data./ultralytics/cfg/datasets/coco8.yaml, cacheFalse, imgsz640, epochs10, single_clsFalse, # 是否是单类别检测 batch8, close_mosaic10, workers0, optimizerSGD, ampTrue, projectruns/train, nameMona, )结果