Yolo算法的演进—YoloCS有效降低特征图空间复杂度(附论文下载)

news/2024/11/7 21:00:37/

点击蓝字 关注我们

关注并星标

从此不迷路

计算机视觉研究院

1bc4ca4f44686636633e878231fcfa4f.gif

4d94c44620e7b73a0bc4c0d8c1829838.gif

公众号ID计算机视觉研究院

学习群扫码在主页获取加入方式

cdc37857af0f3eab4afacbe6357c4966.png

论文地址:YOLOCS: Object Detection based on Dense Channel Compression for Feature Spatial Solidification (arxiv.org)

计算机视觉研究院专栏

Column of Computer Vision Institute

通过压缩特征图的空间分辨率,提高了对象检测的准确性和速度。本文的主要贡献在于引入了一种新的特征空间固化方法,能够有效地降低特征图的时空复杂度,提高对象检测的效率和准确性。

d8ede2e14458a4d98c743eb14f504282.gif

01

总  述

在今天分享中,研究者检查了在特征纯化和梯度反向传播过程中信道特征和卷积核之间的关联,重点是网络内的前向和反向传播。因此,研究者提出了一种称为密集通道压缩的特征空间固化方法。根据该方法的核心概念,引入了两个用于骨干网络和头部网络的创新模块:用于特征空间固化结构的密集通道压缩(DCFS)和非对称多级压缩解耦头部(ADH)。当集成到YOLOv5模型中时,这两个模块表现出非凡的性能,从而产生了一个被称为YOLOCS的改进模型。

fa3ee131281a2707a01266817b402d29.png  cea8dcc9021062aa311e88aea6fe255b.png

在MSCOCO数据集上评估,大、中、小YOLOCS模型的AP分别为50.1%、47.6%和42.5%。在保持与YOLOv5模型的推理速度显著相似的情况下,大、中、小YOLOCS模型分别以1.1%、2.3%和5.2%的优势超过YOLOv5的AP。

02

背  景

近年来,目标检测技术在计算机视觉领域受到了广泛关注。其中,基于单发多框算法的目标检测技术(Single Shot Multi Box Detector,SSD)和基于卷积神经网络的目标检测技术(Convolutional Neural Networks,CNN)是两种最常用的目标检测技术。然而,由于单发多框算法的精度较低,而基于卷积神经网络的目标检测技术的计算复杂度较高,因此,寻找一种高效且精度较高的目标检测技术成为了当前研究的热点之一。

1348f41b481947e8c9d66d3b4ce8c96c.png

Dense Channel Compression(DCC)是一种新型的卷积神经网络压缩技术,它通过对卷积神经网络中的特征图进行空间固化,从而实现对网络参数的压缩和加速。然而,DCC技术在目标检测领域的应用尚未得到充分的研究。

bec1b00682020ef21b742a51b59b70a0.png

因此,提出了一种基于Dense Channel Compression的目标检测技术,命名为YOLOCS(YOLO with Dense Channel Compression)。YOLOCS技术将DCC技术与YOLO(You Only Look Once)算法相结合,实现了对目标检测的高效且精度较高的处理。具体来说,YOLOCS技术通过DCC技术对特征图进行空间固化,从而实现对目标位置的精确定位;同时,YOLOCS技术利用YOLO算法的单发多框算法特点,实现对目标类别分类的快速计算。

03

新框架

  • Dense Channel Compression for Feature Spatial Solidification Structure (DCFS)

21cab30099885e31df6170ff66c65486.png

在提出的方法中(上图(c))中,研究者不仅解决了网络宽度和深度之间的平衡问题,还通过3×3卷积压缩了来自不同深度层的特征,在输出和融合特征之前将通道数量减少了一半。这种方法使研究者能够在更大程度上细化来自不同层的特征输出,从而在融合阶段增强特征的多样性和有效性。

此外,来自每一层的压缩特征都带有更大的卷积核权重(3×3),从而有效地扩展了输出特征的感受野。将这种方法称为特征空间固化的密集通道压缩。用于特征空间固化的密集通道压缩背后的基本原理依赖于利用较大的卷积核来促进通道压缩。该技术具有两个关键优点:首先,它扩展了前向传播过程中特征感知的感受域,从而确保了区域相关的特征细节被纳入,以最大限度地减少整个压缩阶段的特征损失。其次,误差反向传播过程中误差细节的增强允许更准确的权重调整。

为了进一步阐明这两个优点,使用具有两种不同核类型(1×1和3×3)的卷积来压缩两个通道,如下图:

11138c8ed172efbfd39eceafb64494ee.png

DCFS的网络结构如下图所示。采用三层瓶颈结构,在网络前向传播的过程中逐渐压缩信道。半通道3×3卷积应用于所有分支,然后是批处理归一化(BN)和激活函数层。随后,使用1×1卷积层来压缩输出特征通道,以匹配输入特征通道。

8859102ea8a1dac71cb050abc41e8aea.png

  • Asymmetric Multi-level Channel Compression Decoupled Head (ADH)

为了解决YOLOX模型中的解耦头问题,研究者进行了一系列的研究和实验。研究结果揭示了解耦头部结构的利用与相关损失函数之间的逻辑相关性。具体而言,对于不同的任务,应根据损失计算的复杂性调整解耦头的结构。此外,当将解耦的头部结构应用于各种任务时,由于最终输出维度的差异,将前一层的特征通道(如下图)直接压缩为任务通道可能会导致显著的特征损失。这反过来又会对模型的整体性能产生不利影响。

934c802405da79ecf5752e71d387f0b6.png

此外,当考虑提出的用于特征空间固化的密集通道压缩方法时,直接减少最终层中的通道数量以匹配输出通道可能会导致前向传播过程中的特征丢失,从而降低网络性能。同时,在反向传播的背景下,这种结构可能会导致次优误差反向传播,阻碍梯度稳定性的实现。为了应对这些挑战,引入了一种新的解耦头,称为非对称多级通道压缩解耦头(如下图(b))。

cdc6ba770c71369d56423dfe32aab9c6.png

具体而言,研究者深化了专用于目标评分任务的网络路径,并使用3个卷积来扩展该任务的感受野和参数数量。同时,沿着通道维度压缩每个卷积层的特征。该方法不仅有效地减轻了与目标评分任务相关的训练难度,提高了模型性能,而且大大减少了解耦头部模块的参数和GFLOP,从而显著提高了推理速度。此外,使用1卷积层来分离分类和边界框任务。这是因为对于匹配的正样本,与两个任务相关联的损失相对较小,因此避免了过度扩展。这种方法大大降低了解耦头中的参数和GFLOP,最终提高了推理速度。

04

实验可视化

Ablation Experiment on MS-COCO val2017

b98bc81cf01f8950c6bee5094decd1d6.png

Comparison of YOLOCS, YOLOX and YOLOv5- r6.1[7] in terms of AP on MS-COCO 2017 test-dev

d255e390adeb2b53d81cb122a489eb4f.png

16032ac149b7b0eb5e9ecd7e97e1ba95.png

© THE END 

转载请联系本公众号获得授权

f703b706823d07064f4eebe0a763530d.gif

计算机视觉研究院学习群等你加入!

ABOUT

计算机视觉研究院

计算机视觉研究院主要涉及深度学习领域,主要致力于目标检测、目标跟踪、图像分割等研究方向。研究院始终分享最新论文算法框架,平台着重”研究“和“实践”。后期会针对相应领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!

714b101ef4fb85cb4a7abf5e4a49ab26.png

fff35089a372c2cbe74b6c04968a3fb1.png

08356274e3a94fb82c70a17d91a71c90.png

1e7d898bff24d7e3d3e7c677830c1bcb.png

8bb1ee882cd3bcc762379a56b1a22fdd.png

点击“阅读原文”,立即合作咨询


http://www.ppmy.cn/news/339638.html

相关文章

android动态壁纸引擎,Android动态壁纸开发

新建一个Android项目: 完成下面步骤后,安装到手机,并设置动态壁纸才能看到效果。 res/xml/cube1.xml AndroidManifest.xml CubeWallpaper1.java package xiaoma.cube1; import android.graphics.Canvas; import android.graphics.Paint; impo…

Android 屏幕壁纸截取

// 获取壁纸管理器WallpaperManager wallpaperManager WallpaperManager.getInstance(this.getContext());// 获取当前壁纸Drawable wallpaperDrawable wallpaperManager.getDrawable();// 将Drawable,转成BitmapBitmap bmp ((BitmapDrawable) wallpaperDrawable).getBitmap…

C#屏幕壁纸

C#屏幕壁纸 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;namespace WindowsFormsApp1 {pub…

6月29日Mendix北京见面会,抓紧时间报名!

喜欢Mendix的小伙伴们,好消息来啦📢! 6月29日,Mendix北京社区活动将在这个炎热的夏日中隆重推出,一起来参加吧! 听说这次meet-up的嘉宾们都在用心准备内容中,这次不仅有MX首席架构师Matt、懂中…

调用阿里API实现手机号归属地查询

调用阿里API实现手机号归属地查询 1.作者介绍2.号码归属地介绍2.1 什么是手机号码归属地?2.2 为什么需要手机号码归属地?2.3 手机号码归属地查询对个人的运用 3.调用阿里API实现手机号归属地查询3.1阿里API调用3.2补充…

【Python从入门到人工智能】14个必会的Python内置函数(10)——序列反转 | 排序 | 可迭代对象(含综合应用场景)

春天不远了,不要失去发芽的心情。 🎯作者主页: 追光者♂🔥 🌸个人简介: 💖[1] 计算机专业硕士研究生💖 🌟[2] 2022年度博客之星人工智能领域TOP4🌟 🏅[3] 阿里云社区特邀专家博主🏅 🏆[4] CSDN-人工智能领域优质创作者🏆 📝[5] …

淘宝618每日一猜答案6月12日 源氏木语获得多少个奖项?

淘宝6月12日每日一猜答案是什么?,接下来也会给大家来介绍一下6月12日淘宝大赢家每日一猜的答案。 淘宝每日一猜6月12日答案分享 活动问题:源氏木语获得多少个奖项? 活动答案:【15】 注意是阿拉伯数字! …

华为OD机试真题 JavaScript 实现【食堂供餐】【2023 B卷 考生抽中题】,附详细解题思路

一、题目描述 某公司员工食堂以盒饭的方式供餐。 为将员工取餐排队时间降为0,食堂的供餐速度必须要足够快。 现在需要根据以往员工取餐的统计信息,计算出一个刚好能达到排队时间为0的最低供餐速度。 即,食堂在每个单位时间内必须至少做出…