RT-DETR改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能

简介: RT-DETR改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能

一、本文介绍

本文记录的是利用Conv2Former优化RT-DETR的目标检测网络模型Transformer通过自注意力机制能够获取全局信息,但资源占用较大。卷积操作资源占用较少,但只能根据卷积核的大小获取局部信息。Conv2Former==通过卷积调制操作简化了自注意力机制,更有效地利用了大核卷积,在视觉识别任务中表现出较好的性能。==


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

二、Conv2Former介绍

Conv2Former: A Simple Transformer-Style ConvNet for Visual Recognition

Conv2Former是一种用于视觉识别的新型卷积网络架构,其设计的原理和优势如下:

2.1 原理

2.1.1 整体架构

Conv2Former采用金字塔结构,与ConvNeXtSwin Transformer网络类似,共四个阶段,每阶段特征图分辨率不同,连续阶段间使用patch embedding块(通常为步长2的2×2卷积)降低分辨率,不同阶段有不同数量的卷积块,构建了Conv2Former-NConv2Former-TConv2Former-SConv2Forme -BConv2Former-L五种变体。

2.1.1 卷积调制块

  • Self-Attention:对于输入令牌序列X,Self-Attention首先通过线性层生成键K、查询Q和值V,输出为值的加权平均,基于相似性得分矩阵A,A通过Softmax(QK⊤)计算,矩阵A的形状为R ^ {N×N},使得自注意力的计算复杂度随序列长度N的增加而呈二次方增长。
  • 卷积调制:输入令牌X ∈ R ^ {H×W×C},使用核大小为k×k的简单深度卷积和哈达玛积计算输出z,具体为Z = A ⊙ V,A = DConv(k×k)(W1X),V = W2X,其中⊙是哈达玛积,w1和w2是两个线性层的权重矩阵,DConv(k×k)表示核大小为k×k的深度卷积。这样使得每个空间位置(h, w)与以(h, w)为中心的k×k方形区域内的所有像素相关联,通过线性层实现通道间的信息交互,每个空间位置的输出是该方形区域内所有像素的加权和。

在这里插入图片描述

2.2 优势

  • 与Self - attention对比:利用卷积建立关系,在处理高分辨率图像时比Self-Attention更节省内存。
    • 与经典残差块对比:由于调制操作,能够适应输入内容。
    • 对大核卷积的利用:ConvNeXt受益于将卷积核大小从3增大到7,但进一步增加核大小几乎没有性能增益且带来计算负担,而Conv2Former随着核大小从5×5增加到21×21,性能有持续提升,且默认将核大小设置为11×11以考虑模型效率。
    • 加权策略:将深度卷积的输出作为权重来调制线性投影后的特征,且在哈达玛积之前不使用激活或归一化层(如Sigmoid或Lp归一化),这是获得良好性能的关键因素,例如添加Sigmoid函数会使性能下降超过0.5%。
    • 实验结果:在ImageNet分类、COCO对象检测和ADE20k语义分割等任务中,Conv2Former的性能优于之前流行的ConvNets和大多数基于Transformer的模型。

论文:https://arxiv.org/pdf/2211.11943
源码: https://github.com/HVision-NKU/Conv2Former

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

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

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

目录
相关文章
|
20小时前
|
机器学习/深度学习 计算机视觉 网络架构
RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 StarNet,超级精简高效的轻量化模块
RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 StarNet,超级精简高效的轻量化模块
74 63
RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 StarNet,超级精简高效的轻量化模块
|
4天前
|
缓存 负载均衡 Java
2025春招 SpringCloud 面试题汇总
大家好,我是V哥。SpringCloud是面试中的重点,涵盖基础概念、组件细节、高级特性及性能优化等内容。为帮助大家更好地准备2025年的Spring Cloud面试,我整理了一系列常见面试题及答案,涉及服务注册与发现(Eureka)、配置管理(Spring Cloud Config)、负载均衡(Ribbon)、断路器(Hystrix)、微服务网关(Spring Cloud Gateway)等关键知识点。此外,还包括分布式事务管理、链路追踪(Sleuth+Zipkin)、安全性(OAuth2)以及性能优化和实践经验。希望这些内容能助你一臂之力,顺利通过面试。欢迎关注威哥爱编程,全栈之路就你行。
120 24
|
2天前
|
监控 物联网 数据处理
Pandas高级数据处理:数据流式计算
本文介绍了如何使用 Pandas 进行流式数据处理。流式计算能够实时处理不断流入的数据,适用于金融交易、物联网监控等场景。Pandas 虽然主要用于批处理,但通过分块读取文件、增量更新 DataFrame 和使用生成器等方式,也能实现简单的流式计算。文章还详细讨论了内存溢出、数据类型不一致、数据丢失或重复及性能瓶颈等常见问题的解决方案,并建议在处理大规模数据时使用专门的流式计算框架。
122 100
Pandas高级数据处理:数据流式计算
|
11天前
|
存储 Java 程序员
菜鸟之路Day10一一集合进阶(三)
《菜鸟之路Day10——集合进阶(三)》由blue编写,发布于2025年1月28日。文章基于黑马程序员教程,介绍了Java中双列集合的特点、体系结构及Map接口的常见API和遍历方式。重点讲解了HashMap、LinkedHashMap和TreeMap的特性与应用场景,并通过多个实例演示了它们的使用方法,帮助读者深入理解集合类的高级用法。
125 73
|
6天前
|
物联网 数据处理 C#
C#实现上位机开发,串口通信,读写串口数据并处理16进制数据
C#实现上位机开发,串口通信,读写串口数据并处理16进制数据。在自动化、物联网以及工业控制行业中,上位机开发是一项重要的技能。本教程主要介绍使用C#进行上位机开发,重点在于串口通信和数据处理。
146 82
|
12天前
|
人工智能 自然语言处理 Java
Spring AI,搭建个人AI助手
本期主要是实操性内容,聊聊AI大模型,并使用Spring AI搭建属于自己的AI助手、知识库。本期所需的演示源码笔者托管在Gitee上(https://gitee.com/catoncloud/spring-ai-demo),读者朋友可自行查阅。
943 41
Spring AI,搭建个人AI助手
|
13天前
|
存储 数据挖掘 数据处理
Pandas高级数据处理:内存优化
Pandas 是流行的数据分析库,但随着数据量增加,内存使用问题日益突出。本文介绍常见内存优化问题及解决方案,包括选择合适数据类型(如 int8、float32)、使用 category 类型减少字符串内存开销、分块读取大文件避免 MemoryError 等。通过代码示例详细讲解如何优化内存使用,提高程序性能并避免错误。掌握这些技巧可显著提升 Pandas 数据处理效率。
88 58
|
7天前
|
机器学习/深度学习 人工智能 算法
o3-mini:OpenAI 发布最新推理模型,强大的STEM推理能力,灵活调整推理强度
OpenAI o3-mini是OpenAI推出的全新推理模型,专为科学、数学和编程等技术领域优化,支持三种推理强度,灵活调整性能。
121 25
o3-mini:OpenAI 发布最新推理模型,强大的STEM推理能力,灵活调整推理强度
|
6天前
|
NoSQL Java API
Redisson分布式锁使用详解
通过以上内容,您可以全面了解如何在Java项目中使用Redisson实现分布式锁,并根据不同的业务需求选择合适的锁机制。
64 33
|
6天前
|
运维 应用服务中间件 nginx
docker运维查看指定应用log文件位置和名称
通过本文的方法,您可以更高效地管理和查看Docker容器中的日志文件,确保应用运行状态可控和可监测。
66 28

热门文章

最新文章