首页 » 软件优化 » 从v1到v7(二)(演进系列训练精度用于)

从v1到v7(二)(演进系列训练精度用于)

南宫静远 2024-11-17 15:59:28 0

扫一扫用手机浏览

文章目录 [+]

编译:ronghuaiyang

导读

在上一部分中,我们研究了最古老的三种架构:YOLO,YOLOv2,YOLOv3。
今天,我们将处理接下来的六种结构。

从v1到v7(二)(演进系列训练精度用于) 软件优化
(图片来自网络侵删)

YOLOv4, Scaled YOLOv4作者

Alexey Bochkovskiy, Chien-Yao Wang, Hong-Yuan Mark Liao

Joseph Redmon 出于道德原因退出了YOLO的进一步发展。

主要论文

“YOLOv4: Optimal Speed and Accuracy of Object Detection”, https://arxiv.org/pdf/2004.10934.pdf, publication date 2020/04

“Scaled-YOLOv4: Scaling Cross Stage Partial Network”, https://arxiv.org/pdf/2011.08036.pdf, publication date 2020/11

代码仓库https://github.com/AlexeyAB/darknet, 20.4k/19.6k, all-permissive licensehttps://github.com/Tianxiaomo/pytorch-YOLOv4, 1.4k/4.1k, Apache-2.0 licensehttps://github.com/WongKinYiu/ScaledYOLOv4, 549/1.9k, GPL-3.0 license性能比较

YOLOv4和其他最先进的物体检测器的比较。
YOLOv4 的运行速度比 EfficientDet 快两倍,性能相当。
将 YOLOv3 的 AP 和 FPS 分别提高 10% 和 12%。

结构特点

让我们仔细看看构成 v4 的部分。

Backbone

在 v4 中,比 v3 更强大的 CSPDarknet53 网络作为骨干。
CSP意味着跨阶段部分连接的存在 :网络非相邻层之间的一种连接。
同时,层数保持不变。
SPP 模块已添加到其中。

(a)CSPDarknet53和(b)CSPDarknet53-tiny 的结构

Neck

由一个 PANet 模块组成。
代替 FPN,它用于路径聚合,即用于连接(而不是求和)来自不同尺度的激活。

Heads

在这里,概念保持不变,带有锚框。

除了体系结构更改之外,还对学习过程进行了许多改进。

应用SAT( (Self-Adversarial Training))——一种由两个阶段组成的增强方法。
在第一阶段,目的是修改图片的状态,当网络认为所需目标不在图上时,将图片修改为这样的状态,而不是去更新参数的权重。
在第二阶段,网络用第一阶段更改的图片中的目标进行训练。

增加感受野并使用注意力机制。

许多其他类型的增强和类别平衡。

Backbone改进:

用于训练:CutMix + Mosaic 增强、DropBlock 正则化、类标签平滑用于推理:Mish激活、跨级部分连接 (CSP)、多输入加权残差连接 (MiWRC)

检测器改进:

用于训练:CIoU-loss,CmNN,DropBlock,Mosaic,SAT,消除网格灵敏度,单个GT的多个锚框,余弦退火学习率策略,最佳超参数,训练期间的随机形状。
用于推理:Mish,SPP块(空间金字塔池),SAM块(空间注意力模块),PAN,DIoU-NMS。

对网络的训练的更新,不会影响 FPS,但会提高准确性。

Mosaic代表一种新的数据增强方法

应用的不同类型的增强

修改版的SAM

修改版的PAN

Scaled YOLOv4

在 v4 上的第一篇文章发表六个月后,作者发布了另一篇文章,其中他们发布了扩展网络架构的机制。
该机制不仅包括缩放输入分辨率、网络宽度和深度,还包括缩放网络结构本身。

YOLOv4和其他最先进的物体检测器的比较。
虚线仅表示模型推理的延迟,而实线表示模型推理和后处理。

YOLOv4-large 的体系结构,包括 YOLOv4-P5、YOLOv4-P6 和 YOLOv4-P7。
虚线箭头表示将相应的 CSPUp 块替换为 CSPSPP 块。

优点

v4不仅比竞争对手更快,更准确,而且还可以在相对较弱的设备(例如1080Ti)上进行训练。
相比之下,EfficientDet 需要在 v3–32 TPU 类型 (v3):32 个 TPU v3 内核,512 GiB 总 TPU 内存上进行训练,以达到可接受的精度。
v4内置于OpenCV中,因此可以直接调用而无需darknet。
许可证允许任意使用不受限制。
YOLOv5作者

Glenn Jocher

由于作者没有参与以前版本的 YOLO 架构的开发,而只是参与实施,因此从道德角度来看,使用名称“YOLOv5”的合法性似乎值得怀疑。
互联网上对此进行了不少讨论,但目前这个名字已经确定。

主要论文

在arxiv.org上没有官方的论文。

代码仓库https://github.com/ultralytics/yolov5, 10.7k/29.8k, GPL-3.0 license性能比较

结构特点

它是在 v3(不是 v4)上的发展,在 v4 发布近 2 个月后发布。

性能优于 v3,但比 v4 差。

Yolov5的网络架构。
它由三部分组成:(1)Backbone:CSPDarknet,(2)Neck:PANet,(3)Head:Yolo层。
数据首先输入到CSPDarknet进行特征提取,然后馈送到PANet进行特征融合。
最后,Yolo 图层输出检测结果(类、分数、位置、大小)。

增强:缩放、色彩空间调整、马赛克。

在 v5 中,与在 v4 中一样,实现了:

CSP bottleneck来进行特征提取PANet用于特征聚合优点精心设计的代码库,能够部署到移动和低功耗设备。
训练速度快缺点在某些测试上比v4差GPL-3.0 许可证有义务公开源代码YOLOX作者

Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, Jian Sun

Megvii Technology, Ltd., China

主要论文

“YOLOX: Exceeding YOLO Series in 2021”, https://arxiv.org/pdf/2107.08430.pdf, publication date 2021/07

代码仓库

https://github.com/Megvii-BaseDetection/YOLOX, 1.7k/7.2k, Apache-2.0 license

性能对比

精确模型的速度-精度权衡,(左)移动设备上精简模型的尺寸-精度曲线,(右)和其他最先进的物体检测器的比较。

COCO 2017测试中不同的检测器的速度和精度比较。
所有模型都在 300 个 epoch 上进行训练,以便进行公平比较。

结构特点

就像 v5 一样,它不是架构的官方开发。

该模型基于 YOLOv3-Darknet53。

创新:

解耦头:通过拆分分支解决分类和回归问题之间的冲突

YOLOv3 head与提出的解耦head之间的区别图示。
对于每一级别的FPN特征,我们首先采用1x1的conv层将特征通道减少到256个,然后添加两个平行分支,每个分支有两个3x3的conv层,分别用于分类和回归任务。
将IoU 分支添加到回归分支中。

增强:马赛克,混合,随机水平翻转,颜色抖动。
事实证明,ImageNet 上的预训练没有任何优势,因此所有模型都是从头开始训练的。
无anchor检测器。
Anchor有自己的问题,例如,需要进行初步聚类分析以确定最佳anchor。
Ancor还增加了检测头的复杂性和每个图像的预测数量。
摆脱anchor降低了GFLOP并增加了mAP。
多正样本。
在没有anchor的情况下,只应从整个图片中选择一个正样本,这可能会导致忽略其他高质量的预测。
但是,使用此类预测可以产生有用的梯度,从而减少训练期间正采样和负采样的不平衡。
因此,YOLOX 在中心有一个 3x3 区域用于正采样,这也提高了网络的精度。
SimOTA,高级标签分配(为每个GT定义正样本和负采样)。
用于特殊算法选择样本可加快学习速度。
其他特点:用于更新权重的指数移动平均,余弦学习率策略,回归分支的IoU损失,类分支的BCE损失,SGD优化器。

YOLOX-Darknet53在COCO验证集上的指标。
所有模型均在 640x640 分辨率下进行了测试,在 Tesla V100 上,用FP16 精度和 batch=1 。
此表中的延迟和 FPS 是在未进行后处理的情况下测量的。

优点发布时的检测精度高于竞争对手发布时的检测率高于竞争对手Apache-2.0开放许可证PP-YOLOv1/v2/E作者

来自百度。

主要论文“PP-YOLO: An Effective and Efficient Implementation of Object Detector”, https://arxiv.org/pdf/2007.12099.pdf, publication date 2020/07“PP-YOLOv2: A Practical Object Detector”, https://arxiv.org/pdf/2104.10419.pdf, publication date 2021/04“PP-YOLOE: An evolved version of YOLO”, https://arxiv.org/pdf/2203.16250.pdf, publication date 2022/03代码仓库

https://github.com/PaddlePaddle/PaddleDetection, 2.1k/8.3k, Apache-2.0 license

该模型是中国公司百度的非官方开发,在其并行分布式深度学习(PADDLE)框架上编写。

性能比较

PP-YOLOE与其他先进型号的比较。
PP-YOLOE在COCO测试集中实现了51.4 mAP,在Tesla V100上实现了78.1 FPS,与PP-YOLOv2相比,获得了1.9 AP和9.2 FPS的改进。

结构特点PP-YOLO

作者没有寻找合适的骨干,也没有进行各种增强,也没有通过NAS优化超参数。

他们没有使用Darknet-53,而是将通常的ResNet50-vd作为骨干,并用可变形的卷积层替换了一些卷积层。
对于数据增强,使用了基本的MixUp 。

YOLOv3 的网络架构。
为简洁起见,省略了激活层。

技巧:

批次从 64 增加到 192,相应地更正了 LR;网络权重的指数移动平均 (EMA):lambda = 0.9998。

DropBlock 是一种 dropout 变体,其中特征图区域被放在一起丢弃。
仅适用于 FPN,因为用于主干会导致性能下降。
IoU 损失 — 在 YOLOv3 中有 L1,但这不是 bbox 最有效的损失。
作者使用了基本的IoU损失。
IoU Aware — 在 YOLOv3 中,对于置信度值,类概率乘以置信度值,这并没有提高定位精度。
为了解决这个问题,增加了一个 IoU 预测分支来测量定位精度。
当训练 IoU 感知时,损失参与 IoU 预测分支的训练。
通过推理,预测的 IoU 乘以类概率和客观性,从而提供更好的定位精度。
在这种情况下,计算复杂度实际上不会增加。
Grid sensitiveMatrix NMSCoordConv — 增加SPP(空间金字塔池)卷积的通道数量图像网络预训练蒸馏模型

PP-YOLOv2

与PP-YOLO相比的变化:

FPN被PANet取代Mish激活增加了输入图像的大小更改了IoU aware损失:

MS-COCO的消融研究。
“+”表示结果包括边界框解码时间(1–2ms)

PP-YOLOv2检测Neck的架构。

尝试过但没有工作:

余弦学习率衰减在再训练期间冻结Backbone权重会降低 mAPPP-YOLOE

改进:

无anchorCSPRepResNet骨干网络任务分配学习:一种用于高效选择批次样本的算法高效的任务对齐头部(ET-head),一种解耦head损失的替代方案。
VFL = vari focal loss,DFL = distribution focal loss

PP-YOLOE在COCO val上的消融研究.作者使用640x640分辨率作为FP32精度的输入,并在Tesla V100上进行了测试,没有需后处理。

PP-YOLOE的模型架构。
骨干是CSPRepResNet,Neck是路径聚合网络(PAN),Head是高效任务对齐头(ET-head)。

优点在TensorRT上部署的能力性能好Apache-2.0开放许可证缺点非标准框架需要大量的显卡(PP-YOLO:8x V100 GPU)

在下一部分中,我们将考虑 YOLOR、YOLOv6,最后是 YOLOv7。

—END—

英文原文:https://medium.com/deelvin-machine-learning/the-evolution-of-the-yolo-neural-networks-family-from-v1-to-v7-96d0687b4dce

标签:

相关文章

PE协议软件,技术创新引领信息安全新篇章

在信息时代,网络安全问题日益凸显,各类安全威胁层出不穷。为了保障信息安全,我国政府和企业高度重视网络安全技术的研究与应用。PE协议...

软件优化 2024-12-25 阅读0 评论0

职场进化路(职场在职场上场中成功)

职场进化路是指随着时间的推移,越来越多的人开始选择进入职场。这种趋势可能会对职场产生一定影响。1:职场的定义职场,是指在某个特定领...

软件优化 2024-12-24 阅读314 评论0

数控编程培训(位置指定编程数控曲面)

大家好,今天来学习一下UG曲面加工指定下刀位置。这里有一个程序,可以看到它在下刀位置是在下面进行下刀的,然后往上进行加工,这样是不...

软件优化 2024-12-24 阅读299 评论0