【YOLOv12改进trick】StarBlock引入YOLOv12,创新涨点优化,含创新点Python代码,方便发论文
🍋改进模块🍋:StarBlock
🍋解决问题🍋:采用StarBlock将输入数据映射到一个极高维的非线性特征空间,生成丰富的特征表示,使得模型在处理复杂数据时更加有效。
🍋改进优势🍋:简单粗暴的星型乘法涨点却很明显
🍋适用场景🍋:目标检测、语义分割、自然语言处理等多种场景高效紧凑的模型,不适用于大模型
🍋思路来源🍋:CVPR2024《Rewrite the Stars》
目录
🔔🔔1.设计动机
🍉🍉2.启发来源
🏆🏆3.将StarBlock引入YOLOv12de python代码修改
🍂修改处一
🍂修改处二
🍂修改处三
🍂修改处四
👍👍4.成功训练后的网络结构截图
整理不易,欢迎一键三连!!!送你们一条美丽的--分割线--
🔔🔔1.设计动机
无需加宽网络下,星型乘法就将输入映射到高维非线性特征空间的能力。基于此提出了StarNet
,在紧凑的网络结构和较低的能耗下展示了令人印象深刻的性能和低延迟。
增加通道数的传统神经网络不同,star operation
类似于在不同通道上进行成对特征乘法的核函数,特别是多项式核函数。当应用到神经网络中并通过多层堆叠时,每一层都会带来隐式维度复杂性的指数增长。只需几层,star operation
就可以在紧凑的特征空间内实现几乎无限的维度。在紧凑的特征空间内计算,同时受益于隐含的高维度,这就是star operation
的独特魅力所在。
🍉🍉2.启发来源
star operation
本质上更适合高效、紧凑的网络,而不是常规使用的大型模型。因此,论文提出StarNet
作为概念验证模型,特点是极其简约的设计和显著减少的人为干预。尽管StarNet
很简单,但它展示了卓越的性能,强调了star operation
的功效。
StarNet
采用 4 级分层架构,利用卷积层进行下采样,并使用修改后的demo block
进行特征提取。为了满足效率的要求,将Layer Normalization
替换为Batch Normalization
,并将其放置在深度卷积之后(可以在推理时融合)。受到MobileNeXt
的启发,论文在每个块的末尾加入了一个深度卷积。通道扩展因子始终设置为 4,网络宽度在每个阶段加倍。遵循MobileNetv2
设计,demo block
中的GELU
激活被替换为ReLU6
。其网络结构如下图所示。
🏆🏆3.将StarBlock引入YOLOv12de python代码修改
考虑到论文中提出的StarNet是一个骨干网络,因此我们只取其中的StarBlock模块进行YOLOv12的改进和优化ÿ