YOLOv8最新改进系列:融合DySample超轻量动态上采样算子,低延迟、高性能,目前最新上采样方法!!!遥遥领先!
详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!
YOLOv8最新改进系列:融合DySample超轻量动态上采样算子,低延迟、高性能,目前最新上采样方法!!!遥遥领先!
- YOLOv8最新改进系列:融合DySample超轻量动态上采样算子,低延迟、高性能,目前最新上采样方法!!!遥遥领先!
- 摘要
- [1 简介](#1 简介)
- [2 相关工作](#2 相关工作)
- 3.学习采样和上采样
- [4 结论](#4 结论)
- [9 修改步骤!](#9 修改步骤!)
-
- [4.1 修改YAML文件](#4.1 修改YAML文件)
- [4.2 新建.py](#4.2 新建.py)
- [4.3 修改tasks.py](#4.3 修改tasks.py)
- 三、验证是否成功即可
arge Separable Kernel Attention: Rethinking the
Large Kernel Attention Design in CNN(提出原文戳这)
详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!
截止到发稿时,B站YOLOv9最新改进系列的源码包,已更新了11种的改进!自己排列组合2-4种后,考虑位置不同后可排列组合上千种!!专注AI学术,关注B站博主:Ai学术叫叫兽er!
摘要
我们介绍DySample,一个超轻量和有效的动态上采样器。虽然最近基于内核的动态上采样器(如CARAFE、FADE和SAPA)的性能提升令人印象深刻,但它们带来了大量的工作负载,主要是由于耗时的动态卷积和用于生成动态内核的额外子网络。此外,对高特征指导的需求在某种程度上限制了它们的应用场景。为了解决这些问题,我们绕过动态卷积并从点采样的角度制定上采样,这更节省资源,并且可以很容易地使用PyTorch中的标准内置函数实现。我们首先展示了一个朴素的设计,然后演示了如何逐步加强其上采样行为,以实现我们的新上采样器DySample。与以前基于内核的动态上采样器相比,DySample不需要定制CUDA包,并且具有更少的参数、FLOPs、GPU内存和延迟。除了轻量级的特点,DySample在五个密集预测任务上优于其他上采样器,包括语义分割、目标检测、实例分割、全视分割和单目深度估计。
1 简介
特征上采样是密集预测模型中逐渐恢复特征分辨率的关键因素。最常用的上采样器是最近邻(NN)和双线性插值,它们遵循固定的规则来插值上采样值。为了增加灵活性,在一些特定任务中引入了可学习的上采样器,例如,实例分割中的去卷积[13]和图像超分辨率中的像素混洗场景(高分辨率功能必须可用)。与早期的普通网络不同,多尺度特征经常用于现代架构中;因此,作为上采样器输入的高分辨率特征可能不是必要的。例如,在特征金字塔网络(FPN)[23]中,高分辨率特征将在上采样后添加到低分辨率特征中。因此,我们认为设计良好的单输入动态上采样器就足够了。考虑到动态卷积引入的繁重工作量,我们绕过基于内核的范例并返回到上采样的本质,即,点采样,以重新制定上采样过程。具体来说,我们假设输入的功能是内插到一个连续的双线性插值,并产生内容感知的采样点重新采样的连续地图。从这个角度来看,我们首先提出了一个简单的设计,其中逐点偏移由线性投影生成,并用于使用PyTorch中的网格采样函数重新采样点值。然后,我们展示了如何通过i)控制初始采样位置,ii)调整偏移量的移动范围,iii)将上采样过程划分为几个独立的组来逐步改进它,并获得我们的新上采样器DySample。在每一步,我们解释为什么需要调整,并进行实验,以验证性能增益。与其他动态上采样器相比,DySample i)不需要高分辨率的引导功能作为输入,ii)也不需要PyTorch以外的任何额外CUDA包,特别是iii)具有更少的推理延迟,内存占用,FLOP和参数数量,如图1和图8所示。例如,在以MaskFormer-SwinB [8]为基线的语义分割上,DySample比CARAFE的性能提高了46%,但只需要CARAFE的3%的参数和20%的FLOP。由于高度优化的PyTorch内置函数,DySample的推理时间也接近双线性插值(6.2 ms vs. 1.6 ms,当对256 × 120 × 120特征图进行上采样时)。除了这些吸引人的轻量级特性外,DySample在五个密集预测任务(包括语义分割、对象检测、实例分割、全景分割和单眼深度估计)上的性能优于其他上采样器。简而言之,我们认为DySample可以安全地取代现有密集预测模型中的NN/双线性插值,不仅是有效性,而且是效率。
图1.比较不同上采样器的性能、推理速度和GFLOP。圆圈的大小表示GFLOP的成本。通过对尺寸为256×120×120的特征图进行×2上采样来测试推理时间。使用SegFormer-B1 [40]在ADE 20 K数据集[42]上测试mIoU性能和其他GFLOP。
2 相关工作
我们回顾了深度学习中的密集预测任务、特征上采样算子和动态采样。密集预测任务。密集预测是指需要逐点标签预测的任务的分支,例如语义/实例/全景分割[2,39,40,8,7,13,11,16,19],对象检测[33,4,24,36]和单眼深度估计[38,18,3,21]。不同的任务往往表现出不同的特点和困难。例如,在语义分割中很难预测平滑的内部区域和尖锐的边缘,在实例感知任务中也很难区分不同的对象。在深度估计中,具有相同语义含义的像素可能具有相当不同的深度,反之亦然。人们经常需要为不同的任务定制不同的架构。虽然模型结构各不相同,但上采样算子是密集预测模型中的重要组成部分。由于主干通常输出多尺度特征,因此低分辨率特征需要上采样到更高的分辨率。因此,一个轻量级的,有效的上采样器将有利于许多密集的预测模型。我们将展示我们新的上采样器设计为SegFormer [40]和MaskFormer [8]带来了一致的性能提升,用于语义分割,用于对象检测的Faster R-CNN [33],例如分割的Mask R-CNN [13],用于全景分割的Panoptic FPN [16],以及用于单目深度估计的DepthFormer [21],同时引入可忽略不计的工作量。功能上采样。常用的特征上采样器是NN和双线性插值。它们应用固定的规则来插值低分辨率特征,忽略了特征图中的语义含义。SegNet [2]在语义分割中采用了最大解池来保留边缘信息,但噪声和零填充的引入破坏了平滑区域的语义一致性。与卷积类似,一些可学习的上采样器在上采样中引入了可学习的参数。例如,反卷积以卷积的相反方式对特征进行上采样。Pixel Shuffle [34]使用卷积提前增加通道数,然后重塑特征图以提高分辨率。最近,一些动态上采样算子进行内容感知上采样。CARAFE [37]使用子网络来生成内容感知的动态卷积核来重新组装输入特征。FADE [29]提出将高分辨率和低分辨率特征联合收割机来生成动态内核,以便使用高分辨率结构。SAPA [30]进一步引入了点关联的概念,并计算高分辨率和低分辨率特征之间的相似性感知内核。作为模型插件,这些动态上采样器增加了比预期更多的复杂性,特别是对于需要高分辨率特征输入的FADE和SAPA。因此,我们的目标是提供一个简单,快速,低成本和通用的上采样器,同时保留动态上采样的有效性特征图,作为标准网格采样的替代。Dai等人。[9]和Zhu等人。[43]提出了可变形卷积网络,其中标准卷积中的矩形窗口采样被移位点采样取代。Deformable DETR [44]遵循这种方式,对与某个查询相关的关键点进行采样,以进行可变形注意。当图像被下采样到低分辨率时,也会发生类似的做法,用于内容感知的图像增强,也称为缝刻[1]。例如,在一个示例中,Zhang等人。[41]提出学习使用显着性指导对图像进行下采样,以保留原始图像的更多信息,Jin等人。[15]还设置了一个可学习的变形模块来对图像进行下采样。与目前基于核的上采样器不同,我们将上采样的本质解释为点重采样。因此,在特征上采样中,我们倾向于遵循与上述工作相同的精神,并使用简单的设计来实现强大而高效的动态上采样器。
3.学习采样和上采样
详细的方法介绍看全文即可,链接在文首!
4 结论
我们提出了DySample,一个快速,有效,通用的动态上采样器。与一般的基于核函数的动态上采样不同,DySample是从点采样的角度进行设计的。我们从一个简单的设计开始,并展示如何从我们对上采样的深刻见解中逐步提高其性能。与其他动态上采样器相比,DySample不仅报告了最佳性能,而且摆脱了定制的CUDA包,消耗了最少的计算资源,在延迟,训练内存,训练时间,GFLOPs和参数数量方面表现出优越性。对于未来的工作,我们计划将DySample应用于低级别任务,并研究上采样和下采样的联合建模。
9 修改步骤!
4.1 修改YAML文件
详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!
4.2 新建.py
详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽er 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!
4.3 修改tasks.py
详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽er 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!
三、验证是否成功即可
执行命令
python
python train.py
改完收工!
关注B站:Ai学术叫叫兽er
从此走上科研快速路
遥遥领先同行!!!!
详细的改进教程以及源码,戳这!戳这!!戳这!!!B站:AI学术叫叫兽er 源码在相簿的链接中,动态中也有链接,感谢支持!祝科研遥遥领先!