本文经自动驾驶之心公众号授权转载,转载请联系出处。
如今的深度学习方法专注于设计最适合的目标函数,以使模型的预测结果与实际情况最接近。同时,必须设计一个合适的架构,以便为预测获取足够的信息。现有方法忽略了一个事实,即当输入数据经过逐层特征提取和空间变换时,大量信息将会丢失。本文将深入探讨数据通过深度网络传输时的重要问题,即信息瓶颈和可逆函数。基于此提出了可编程梯度信息(PGI)的概念,以应对深度网络实现多目标所需的各种变化。PGI可以为目标任务提供完整的输入信息,以计算目标函数,从而获得可靠的梯度信息以更新网络权重。此外设计了一种新的轻量级网络架构——基于梯度路径规划的广义高效层聚合网络(GELAN)。
GELAN的架构证实了在轻量级模型上使用PGI取得了优越的结果。在MS COCO数据集上对所提出的GELAN和PGI进行了验证,结果显示GELAN仅使用传统卷积算子就能实现比基于深度卷积的最先进方法更好的参数利用率。PGI可以用于各种模型,从轻量级到大型模型都可以。它可以用于获取完整的信息,使得从头开始训练的模型可以比使用大型数据集预训练的最先进模型取得更好的结果。
文章地址:https://arxiv.org/pdf/2402.13616
代码链接:https://github.com/WongKinYiu/yolov9
优秀的性能
如下图所示,在MS COCO数据集上实时目标检测器的比较中,基于GELAN和PGI的目标检测方法在目标检测性能方面超越了所有先前的从头开始训练的方法。在准确性方面,新方法优于使用大型数据集预训练的RT DETR,同时也优于基于深度卷积设计的YOLO MS在参数利用方面的表现。
本文贡献
- 从可逆函数的角度理论分析了现有的深度神经网络架构,通过这一过程,成功解释了过去难以解释的许多现象。还基于这一分析设计了PGI和辅助可逆分支,并取得了优秀的结果。
- 设计的PGI解决了深度监督只能用于极深的神经网络架构的问题,从而使得新的轻量级架构真正能够应用于日常工作。
- 设计的GELAN仅使用传统卷积就能实现比基于最先进技术的深度卷积设计更高的参数使用率,同时表现出轻巧、快速和准确的巨大优势。
- 将所提出的PGI和GELAN结合起来,YOLOv9在MS COCO数据集上的目标检测性能在各个方面都大大超过了现有的实时目标检测器。
方法
PGI及相关的网络架构和方法
如下图所示,(a) 路径聚合网络(PAN),(b) 可逆列(RevCol),(c) 传统的深度监督,以及 (d) YOLOv9提出的可编程梯度信息(PGI)。
PGI主要由三个组成部分组成:
- 主分支:用于推理的架构;
- 辅助可逆分支:生成可靠的梯度以供主分支向后传输;
- 多级辅助信息:控制主分支学习可规划的多级语义信息。
GELAN的架构
如下图所示,(a) CSPNet ,(b) ELAN,以及 (c) YOLOv9提出的GELAN。模仿了CSPNet,并将ELAN扩展为GELAN,可以支持任何计算块。
结果对比
与现有技术的比较
下表列出了YOLOv9与其他从头开始训练的实时目标检测器的比较。总体而言,在现有方法中表现最佳的方法是轻量级模型的YOLO MS-S,中等模型的YOLO MS ,通用模型的YOLOv7 AF,以及大型模型的YOLOv8-X。与轻量级和中等模型的YOLO MS相比,YOLOv9的参数减少约10%,计算减少5∼15%,但在AP方面仍有0.4∼0.6%的改善。与YOLOv7 AF相比,YOLOv9-C的参数减少了42%,计算减少了21%,但达到了相同的AP(53%)。与YOLOv8-X相比,YOLOv9-X的参数减少了15%,计算减少了25%,并且AP有显著提高,提高了1.7%。上述比较结果表明,YOLOv9在各个方面都比现有方法有了显著改进。
与最先进的实时目标检测器进行比较
参与比较的方法都使用ImageNet作为预训练权重,包括RT DETR 、RTMDet 和PP-YOLOE等。使用从头开始训练方法的YOLOv9显然超过了其他方法的性能。
可视化结果
特征图(可视化结果): 由PlainNet、ResNet、CSPNet和GELAN在不同深度上的随机初始权重输出。在100层后,ResNet开始产生足够混淆目标信息的前馈输出。这里提出的GELAN在第150层仍然可以保留相当完整的信息,并且在第200层仍然具有足够的区分能力。
GELAN和YOLOv9(GELAN + PGI)的PAN特征图(可视化结果):在进行一轮偏置预热后。GELAN最初存在一些分歧,但在添加了PGI的可逆分支后,它更能够集中注意力于目标对象。
不同网络架构的随机初始权重输出特征图的可视化结果: (a)输入图像,(b)PlainNet,(c)ResNet,(d)CSPNet 和(e)提出的 GELAN。从图中可以看出,在不同的架构中,提供给目标函数计算损失的信息程度不同,而我们的架构可以保留最完整的信息,并为计算目标函数提供最可靠的梯度信息。
结论
本文提出使用PGI来解决信息瓶颈问题以及深度监督机制不适用于轻量级神经网络的问题。设计了GELAN,这是一个高效且轻量级的神经网络。在目标检测方面,GELAN在不同的计算模块和深度设置下表现出强大而稳定的性能。它确实可以广泛扩展为适用于各种推断设备的模型。针对上述两个问题,引入PGI使得轻量级模型和深度模型都能在准确性方面取得显著改善。通过结合PGI和GELAN设计的YOLOv9表现出了强大的竞争力。其优秀的设计使得深度模型在与YOLOv8相比,参数数量减少了49%,计算量减少了43%,但在MS COCO数据集上仍然实现了0.6%的AP改善。
原文链接:https://mp.weixin.qq.com/s/nP4JzVwn1S-MeKAzbf97uw