
一、本文介绍本文记录的是利用DynamicConv优化YOLOv12的目标检测网络模型。 在大规模训练中,模型的参数数量越多,FLOP也越高,但在一些对计算资源有限制的场景下,需要低FLOP的模型同时又希望模型能从大规模预训练中受益。传统的方法很难在增加参数的同时保持低FLOP,因此Dynamic convolution模块应运而生。本文详细研究了Dynamic convolution模块的运行原理,并将其加入到YOLOv12中进行二次创新。专栏目录:YOLOv12改进目录一览 | 涉及卷积层、轻量化、注意力、损失函数、Backbone、SPPF、Neck、检测头等全方位改进专栏地址:YOLOv12改进专栏——以发表论文的角度,快速准确的找到有效涨点的创新点!文章目录一、本文介绍二、动态卷积介绍2.1 设计出发点2.2 原理2.3 结构三、DynamicConv的实现代码四、创新模块4.1 改进点1⭐4.2 改进点2⭐五、添加步骤5.1 修改一5.2 修改二5.3 修改三六、yaml模型文件6.1 模型改进版本16.2 模型改进版本2⭐七、成功运行结果二、动态卷积介绍2.1 设计出发点在大规模视觉预训练中,通常模型的性能受到数据、参数和FLOP三个关键因素的影响。一般来说,模型的参数数量越多,FLOP也越高,但在移动设备等对计算资源有限制的场景下,需要低FLOP的模型同时又希望模型能从大规模预训练中受益。传统的方法很难在增加参数的同时保持低FLOP,因此需要一种新的设计来解决这个问题,Dynamic convolution模块应运而生。2.2 原理Dynamic convolution模块基于动态系数生成的原理来工作。对于输入X XX,首先应用全局平均池化将信息融合成一个向量,然后使用一个两层的带有softmax激活的MLP模块来动态地产生系数