RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 StarNet,超级精简高效的轻量化模块

简介: RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 StarNet,超级精简高效的轻量化模块

一、本文介绍

本文记录的是基于StarNet的RT-DETR轻量化改进方法研究StarNet设计简洁,没有复杂的设计和精细调整的超参数,仅是一个 4 阶段的分层架构。并且其中星操作能够在低维空间计算的同时考虑极高维的特征这一特性,进而提高模型精度。本文在替换骨干网络中配置了原论文中的starnet_s050starnet_s100starnet_s150starnet_s1starnet_s2starnet_s3starnet_s4七种模型,以满足不同的需求。

模型 参数量 计算量 推理速度
rtdetr-l 32.8M 108.0GFLOPs 11.6ms
Improved 18.8.7M 61.8GFLOPs 11.3ms

专栏目录:RT-DETR改进目录一览 | 涉及卷积层、轻量化、注意力、损失函数、Backbone、SPPF、Neck、检测头等全方位改进
专栏地址:RT-DETR改进专栏——以发表论文的角度,快速准确的找到有效涨点的创新点!

二、🌟

Rewrite the Stars

StarNet是一种基于星操作(star operation)的轻量化神经网络模型,以下是其相关介绍:

2.1 出发点

  • “星操作”的优势适配:研究发现“星操作”(element - wise乘法)在网络设计中具有潜力,它能在不增加网络宽度的情况下将输入映射到高维非线性特征空间,类似核技巧。这种特性使得基于“星操作”的网络可能更适合高效、紧凑的网络结构,而不是传统的大型模型,从而启发了StarNet的设计。
  • 现有高效网络的局限性:尽管已有多种提升网络效率的方法,如深度可分离卷积、特征复用和重参数化等,但“星操作”提供了一种新的思路,可以在低维空间计算的同时考虑极高维的特征,为高效网络设计提供了独特优势,促使研究人员探索基于“星操作”的轻量化模型。

2.2 原理

2.2.1 高维特征映射

  • 单一层的“星操作”:在神经网络的单一层中,“星操作”通常写为$(W{1}^{T}X + B{1})*(W{2}^{T}X + B{2})$,经过改写和分析,可以发现它能将输入特征在$d$维空间中通过计算高效的操作,实现到$\frac{(d + 2)(d + 1)}{2}\approx(\frac{d}{\sqrt{2}})^{2}$(考虑$d\gg2$)隐式维度特征空间的表示,每个项(除了部分特殊项)都与输入呈现非线性关联,即实现了高维特征映射。
  • 多层的“星操作”:当堆叠多层时,以初始网络层宽度为$d$为例,经过$l$层的“星操作”,可以隐式获得属于$\mathbb{R}^{(\frac{d}{\sqrt{2}})^{2^{l}}}$的特征空间。

例如,一个10层宽度为128的各向同性网络,通过“星操作”获得的隐式特征维度数近似为$901024$,可合理近似为无限维度,从而实现了指数级的隐式维度增加。

2.2.2 与核函数的类比

  • “星操作”实现非线性高维的方式与传统神经网络通过增加网络宽度不同,它类似于核函数(特别是多项式核函数)对不同通道特征进行成对乘法操作。这种类比进一步说明了“星操作”在特征空间变换上的原理优势。

2.3 结构

2.3.1 整体架构

StarNet是一个4阶段的分层架构。

在这里插入图片描述

2.3.2 下采样层

利用卷积层进行下采样。

2.3.3 特征提取模块

采用修改后的demo block进行特征提取。在每个block中,受MobileNeXt启发,在末尾包含深度可分离卷积;将demo block中的GELU激活函数替换为ReLU6,遵循MobileNetv2的设计;

网络宽度在每个阶段翻倍,通道扩展因子固定为4;同时,为了满足效率要求,用批归一化(Batch Normalization)替代层归一化(Layer Normalization),并放在深度可分离卷积之后(在推理时可融合)。

通过改变block数量和输入嵌入通道数来构建不同大小的StarNet

在这里插入图片描述

2.4 优势

  • 性能优异
    • 实验验证:在ImageNet - 1K验证集上,StarNet - S4相对于EdgeViT - XS在top - 1准确率上提高了$0.9\%$,同时在iPhone13和CPU上运行速度快$3$倍,在GPU上快$2$倍。与其他精心设计的高效模型相比,如MobileNetv3、EdgeViT、FasterNet等,StarNet在性能上也具有竞争力。
    • 设计简洁高效StarNet设计简洁,没有复杂的设计和精细调整的超参数,却能取得优异的性能,这体现了星操作在网络设计中的有效性,也证明了基于“星操作”的轻量化设计理念的优势。
  • 低延迟:在不同的硬件平台上,包括移动设备(如iPhone系列)和服务器端的CPU、GPU,StarNet都展现出了较低的延迟。例如在iPhone13上,StarNet - S1能在$0.7$秒内达到$73.5\%$的top - 1准确率,与MobileOne - S0相比,在相同延迟下准确率提高了$2.1\%$。这种低延迟特性使得StarNet在实际应用中具有很大的优势,特别是对于对实时性要求较高的任务。
  • 通用性和可扩展性StarNet的设计基于通用的神经网络架构原则,并通过星操作进行了优化。这种设计使得它具有较好的通用性,可以应用于各种计算机视觉任务。同时,通过调整模型的深度和宽度等参数,可以方便地对模型进行扩展,以适应不同的应用场景和性能需求。

论文:https://arxiv.org/pdf/2403.19967
源码:https://github.com/ma-xu/Rewrite-the-Stars

三、实现代码及RT-DETR修改步骤

模块完整介绍、个人总结、实现代码、模块改进、二次创新以及各模型添加步骤参考如下地址:

https://blog.csdn.net/qq_42591591/article/details/144208450

目录
相关文章
|
19小时前
|
机器学习/深度学习 计算机视觉
RT-DETR改进策略【模型轻量化】| GhostNetV2:利用远距离注意力增强廉价操作
RT-DETR改进策略【模型轻量化】| GhostNetV2:利用远距离注意力增强廉价操作
75 63
RT-DETR改进策略【模型轻量化】| GhostNetV2:利用远距离注意力增强廉价操作
|
19小时前
|
机器学习/深度学习 计算机视觉
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 MobileViTv1高效的信息编码与融合模块,获取局部和全局信息
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 MobileViTv1高效的信息编码与融合模块,获取局部和全局信息
74 62
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 MobileViTv1高效的信息编码与融合模块,获取局部和全局信息
|
19小时前
|
机器学习/深度学习 自动驾驶 计算机视觉
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 GhostNet V1 基于 Ghost Module 和 Ghost Bottlenecks的轻量化网络结构
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 GhostNet V1 基于 Ghost Module 和 Ghost Bottlenecks的轻量化网络结构
75 61
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 GhostNet V1 基于 Ghost Module 和 Ghost Bottlenecks的轻量化网络结构
|
19小时前
|
数据采集 搜索推荐 API
小红书笔记详情 API 接口的开发、应用与收益
小红书(RED)作为国内领先的生活方式分享平台,汇聚了大量用户生成内容(UGC),尤其是“种草”笔记。小红书笔记详情API接口为开发者提供了获取笔记详细信息的强大工具,包括标题、内容、图片、点赞数等。通过注册开放平台账号、申请API权限并调用接口,开发者可以构建内容分析工具、笔记推荐系统、数据爬虫等应用,提升用户体验和运营效率,创造新的商业模式。本文详细介绍API的开发流程、应用场景及潜在收益,并附上Python代码示例。
88 61
|
8天前
|
机器学习/深度学习 Python
哪些特征导致过拟合?使用ParShap 方法精准定位导致模型泛化能力下降的关键特征
本文探讨了如何识别导致模型过拟合的特征,提出了一种基于SHAP值和偏相关性的新方法——ParShap。通过分析德国健康登记数据集,作者展示了传统特征重要性无法准确反映特征在新数据上的表现,而ParShap能有效识别出过拟合特征。实验表明,移除这些特征可以显著减少过拟合现象,验证了该方法的有效性。
137 79
哪些特征导致过拟合?使用ParShap 方法精准定位导致模型泛化能力下降的关键特征
|
6天前
|
存储 安全 JavaScript
TypeScript-内置应用程序类型-Recode
通过使用 `Record` 类型,开发者可以显著提升代码的安全性和可维护性。无论是配置对象、字典结构还是动态表单,`Record` 类型都提供了一个简洁、类型安全的解决方案。
187 82
|
8天前
|
网络协议 网络安全 iOS开发
Mail Service and Protocol
Recently, I have been working on DNS of my domain name. And then I need to set up the mail service of my domain name. When I tried many times, I always failed to receive the mail on my phone. Suddenly, I remembered that I didn't set up IMAP service. So let's review the mail service and protocol.
185 78
|
2天前
|
前端开发 安全 开发工具
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
120 89
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
|
2天前
|
监控 物联网 数据处理
Pandas高级数据处理:数据流式计算
本文介绍了如何使用 Pandas 进行流式数据处理。流式计算能够实时处理不断流入的数据,适用于金融交易、物联网监控等场景。Pandas 虽然主要用于批处理,但通过分块读取文件、增量更新 DataFrame 和使用生成器等方式,也能实现简单的流式计算。文章还详细讨论了内存溢出、数据类型不一致、数据丢失或重复及性能瓶颈等常见问题的解决方案,并建议在处理大规模数据时使用专门的流式计算框架。
122 100
Pandas高级数据处理:数据流式计算
|
8天前
|
前端开发 安全 中间件
Thinkphp5跨域问题常见的处理方法
通过这些步骤,可以有效解决ThinkPHP5中的跨域问题,确保前后端分离架构下的正常通信。
117 84

热门文章

最新文章