处方药可以做网站吗,合界科技网站建设,免费流量,香奈儿vi设计手册前言
时隔一年#xff0c;YOLOv8还没捂热#xff0c;YOLO系列最新版本——YOLOv9 终于闪亮登场#xff01; YOLOv9的一作和v7一样。v4也有他。
他于2017年获得台湾省National Central University计算机科学与信息工程博士学位#xff0c;现在就职于该省Academia Sinica的…
前言
时隔一年YOLOv8还没捂热YOLO系列最新版本——YOLOv9 终于闪亮登场 YOLOv9的一作和v7一样。v4也有他。
他于2017年获得台湾省National Central University计算机科学与信息工程博士学位现在就职于该省Academia Sinica的信息科学研究所。 悄悄说一句这篇文章的排版是我目前最喜欢的一篇强迫症福音 学习资料 论文题目《YOLOv9: 利用可编程梯度信息学习你想学习的内容》YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information论文链接YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information开源项目GitHub - WongKinYiu/yolov9: Implementation of paper - YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information YOLO论文系列前期回顾
【YOLO系列】YOLOv7论文超详细解读翻译 学习笔记
【YOLO系列】YOLOv6论文超详细解读翻译 学习笔记
【YOLO系列】YOLOv5超详细解读网络详解
【YOLO系列】YOLOv4论文超详细解读2网络详解
【YOLO系列】YOLOv4论文超详细解读1翻译 学习笔记
【YOLO系列】YOLOv3论文超详细解读翻译 学习笔记
【YOLO系列】YOLOv2论文超详细解读翻译 学习笔记
【YOLO系列】YOLOv1论文超详细解读翻译 学习笔记 目录
前言
Abstract—摘要
翻译
精读
1. Introduction—简介
翻译
精读
2. Related work—相关工作
2.1. Real-time Object Detectors—实时目标检测器
翻译
精读
2.2. Reversible Architectures—可逆结构
翻译
精读
2.3. Auxiliary Supervision—辅助监督
翻译
精读
3. Problem Statement—问题描述
翻译
精读
3.1. Information Bottleneck Principle—信息瓶颈原理
翻译
精读
3.2. Reversible Functions—可逆函数
翻译
精读 4. Methodology—方法
4.1. Programmable Gradient Information—可编程的梯度信息
翻译
精读
4.1.1 Auxiliary Reversible Branch—辅助可逆分支
翻译
精读
4.1.2 Multi-level Auxiliary Information—多级辅助信息
翻译
精读
4.2. Generalized ELAN—广义ELAN
翻译
精读
5. Experiments—实验
5.1. Experimental Setup—实验设置
翻译
精读
5.2. Implimentation Details—实现细节
翻译
精读
5.3. Comparison with state-of-the-arts—与最先进水平的比较
翻译
精读
5.4. Ablation Studies—消融实验
5.4.1 Generalized ELAN—广义ELAN实验
翻译
精读
5.4.2 Programmable Gradient Information—可编程梯度信息实验
翻译
精读
5.5. Visualization—可视化
翻译
精读
6. Conclusions—结论
翻译
精读 Abstract—摘要
翻译
当今的深度学习方法专注于设计最合适的目标函数以使模型的预测结果与实际情况最接近。同时必须设计一个合适的架构以便获取足够的信息进行预测。现有方法忽略了一个事实即当输入数据经过逐层特征提取和空间变换时大量信息将会丢失。本文将深入探讨当数据通过深度网络传输时的数据丢失重要问题即信息瓶颈和可逆函数。我们提出了可编程梯度信息PGI的概念以处理深度网络所需的各种变化以实现多个目标。PGI可以为目标任务提供完整的输入信息来计算目标函数从而获得可靠的梯度信息以更新网络权重。此外基于梯度路径规划设计了一种新的轻量级网络架构——广义高效层聚合网络GELAN。GELAN的架构证实了PGI在轻量级模型上取得了优异的结果。我们在基于MS COCO数据集的目标检测上验证了提出的GELAN和PGI。结果显示GELAN仅使用常规卷积算子即可实现比基于深度卷积开发的最先进方法更好的参数利用率。PGI可用于各种模型从轻量级到大型。它可用于获取完整信息使得从头开始训练的模型可以获得比使用大型数据集预训练的最先进模型更好的结果比较结果如图1所示。源代码可在以下网址找到https://github.com/WongKinYiu/yolov9。 精读
传统深度学习方法的不足
深度网络输入数据在逐层进行特征提取和空间变换时会丢失大量的信息。
本文主要解决问题
针对数据在传输时的信息丢失问题研究问题如下
1提出了可编程梯度信息(PGI)的概念以应对深度网络实现多个目标所需的各种变化。
2设计了一种新的基于梯度路径规划的轻量级网络结构——广义高效层聚合网络(GELAN)。
本文取得成果
1在基于MS COCO数据集的目标检测上验证了提出的GELAN和PGI。
2GELAN仅使用常规卷积算子可以获得更好的参数利用率。
3PGI可用于从轻型到大型的各种模型并且可以用来获取完整的信息使得从头开始训练的模型比使用大数据集预训练的最先进的模型获得更好的结果。 图1.MS COCO数据集上实时目标检测器的比较。基于GELAN和pgi的目标检测方法在目标检测性能上超越了以往所有从头开始训练的方法。在精度方面新方法优于大数据集预训练的RT DETR[43]在参数利用率方面也优于基于深度卷积的设计YOLO MS[7]。 1. Introduction—简介
翻译
基于深度学习的模型在各个领域如计算机视觉、语言处理和语音识别等方面已经展示出远远优于过去人工智能系统的性能。近年来深度学习领域的研究人员主要关注如何开发更强大的系统架构和学习方法例如CNNs、Transformers、Perceivers和Mambas等。此外一些研究人员尝试开发更通用的目标函数如损失函数、标签分配和辅助监督等。上述研究都试图精确地找到输入和目标任务之间的映射关系。然而大多数过去的方法忽视了在前向传播过程中输入数据可能会存在大量信息丢失的事实。这种信息丢失会导致偏倚的梯度流随后用于更新模型。上述问题可能导致深度网络建立目标与输入之间的错误关联使得训练模型产生不正确的预测。
在深度网络中输入数据在前向传播过程中丢失信息的现象通常被称为信息瓶颈其示意图如图2所示。目前主要可以缓解这一现象的方法有1使用可逆架构该方法主要使用重复的输入数据并以显式方式保留输入数据的信息2使用掩模建模主要利用重构损失采用隐式方式最大化提取的特征并保留输入信息3引入深度监督概念利用未丢失太多重要信息的浅层特征预先建立特征到目标的映射以确保重要信息能够传递到更深层。然而以上方法在训练和推理过程中存在不同的缺点。例如可逆架构需要额外的层来结合重复输入数据这会显著增加推理成本。此外由于输入数据层到输出层不能有太深的路径这一限制会使训练过程中难以建模高阶语义信息。至于掩模建模其重构损失有时会与目标损失冲突。此外大多数掩模机制还会与数据产生不正确的关联。对于深度监督机制来说它会产生误差累积如果浅监督在训练过程中丢失信息后续层将无法检索所需信息。以上现象在困难任务和小模型上会更显著。
为了解决上述问题我们提出了一个新概念即可编程梯度信息PGI。该概念通过辅助可逆分支生成可靠的梯度使深层特征仍然保持执行目标任务的关键特性。辅助可逆分支的设计可以避免传统深度监督过程可能导致的语义丢失这种过程集成了多路径特征。换句话说我们正在在不同语义层次上编程梯度信息传播从而实现最佳的训练结果。PGI的可逆架构建立在辅助分支上因此没有额外的成本。由于PGI可以自由选择适合目标任务的损失函数它也克服了掩模建模遇到的问题。所提出的PGI机制可应用于各种规模的深度神经网络比深度监督机制更通用后者只适用于非常深的神经网络。
在本文中我们还基于ELAN设计了广义ELANGELANGELAN的设计同时考虑了参数数量、计算复杂性、准确性和推理速度。这种设计允许用户随意选择适合不同推理设备的计算块。我们将提出的PGI和GELAN结合起来然后设计了一个新一代的YOLO系列目标检测系统我们称之为YOLOv9。我们使用了MS COCO数据集进行实验并实验结果验证了我们提出的YOLOv9在所有对比中均取得了最佳性能。
我们总结本文的贡献如下
我们从可逆功能的角度对现有深度神经网络架构进行了理论分析在这一过程中成功解释了许多过去难以解释的现象。我们还根据这一分析设计了PGI和辅助可逆分支并取得了出色的结果。我们设计的PGI解决了深度监督只能用于极深神经网络架构的问题从而使新的轻量级架构能够真正应用于日常生活。我们设计的GELAN只使用传统卷积以实现比基于最先进技术的深度卷积设计更高的参数使用率同时显示出轻量、快速和准确的巨大优势。结合所提出的PGI和GELANYOLOv9在MS COCO数据集上的目标检测性能在各个方面大大超过了现有的实时目标检测器。 精读
研究背景1目标检测
基于GELAN和PGI的目标检测方法逐渐流行超越了传统方法。在精度方面新方法优于大数据集预训练的RT DETR。在参数利用率方面也优于基于深度卷积的设计YOLO MS。
存在的问题
过去的大部分方法忽略了在前馈过程中输入数据可能存在的信息损失。这种信息丢失可能导致梯度流的偏差并且可能会导致深度网络在目标和输入之间建立不正确的关联从而导致训练模型出现不正确的预测。 研究背景2信息瓶颈
目前解决方法
可逆架构掩模建模引入深度监督概念
存在的问题
可逆架构——需要额外的层来组合重复输入的数据这将增加推理成本并且在训练过程中难以对高阶语义信息进行建模。掩模建模——重建损失有时与目标损失相冲突。此外大多数掩码机制也会与数据产生不正确的关联。深层监督机制——会产生误差积累。 可编程梯度信息(PGI)
思想 通过辅助可逆分支生成可靠的梯度使深层特征仍能保持关键特征以执行目标任务。
目的 辅助可逆分支的设计可以避免传统的多路径特征融合深度监督过程可能造成的语义损失。 广义ELAN (GELAN)
思想 GELAN的设计同时考虑了参数数量、计算复杂度、精度和推理速度。
目的 这种设计允许用户为不同的推理设备任意选择合适的计算块。 本文主要贡献
通过对现有深度神经网络架构进行理论分析从可逆函数的角度解释了许多以前难以理解的现象。通过引入PGI和辅助可逆支路实现了良好的效果。
PGI解决了深度监督只适用于极深度神经网络架构的限制使新的轻量级架构真正适用于日常生活中。结合PGI和GELANYOLOv9在MS COCO数据集上在实时目标检测方面在各个方面都明显超过了现有的目标检测器。GELAN是一种仅使用常规卷积的设计具有比基于最先进技术的深度卷积设计更高的参数利用率并显示出轻量、快速和准确的巨大优势。 2. Related work—相关工作
2.1. Real-time Object Detectors—实时目标检测器
翻译
当前主流的实时目标检测器是YOLO系列[2, 7, 13–15, 25, 30, 31, 47–49, 61–63, 74, 75]其中大多数模型使用CSPNet [64]或ELAN [65]及其变体作为主要计算单元。在特征集成方面改进的PAN [37]或FPN [35]经常被用作工具然后改进的YOLOv3头部[49]或FCOS头部[57, 58]被用作预测头部。最近一些实时目标检测器如RT DETR [43]其基础是DETR [4]也已经被提出。然而由于DETR系列目标检测器极其难以在没有相应的领域预训练模型的情况下应用于新领域目前最广泛使用的实时目标检测器仍然是YOLO系列。本文选择了YOLOv7 [63]作为基础因为它已在各种计算机视觉任务和各种场景中被证明是有效的以开发提出的方法。我们使用GELAN来改进架构和训练过程并提出的PGI。上述新颖方法使得提出的YOLOv9成为新一代顶级实时目标检测器。 精读
YOLO系列YOLOv1—v8DETR系列 2.2. Reversible Architectures—可逆结构
翻译
可逆架构的操作单元[3, 16, 19]必须保持可逆转换的特性以确保每个操作单元层的输出特征图能够保留完整的原始信息。在此之前RevCol [3]将传统的可逆单元泛化至多个层级从而可以扩展不同层单元所表达的语义层级。通过对各种神经网络架构的文献综述我们发现有许多具有不同程度可逆属性的高性能架构。例如Res2Net模块[11]以分层方式将不同的输入分区与下一个分区组合然后将所有转换后的分区连接在一起反向传递。CBNet [34, 39]通过复合主干重新引入原始输入数据以获得完整的原始信息并通过各种组合方法获得不同级别的多级可逆信息。这些网络架构通常具有出色的参数利用率但额外的复合层会导致推理速度较慢。DynamicDet [36]将CBNet [34]和高效实时目标检测器YOLOv7 [63]结合起来以在速度、参数数量和准确性之间取得很好的平衡。本文将DynamicDet架构引入作为设计可逆分支的基础。此外可逆信息还进一步引入到提出的PGI中。提出的新架构在推理过程中不需要额外的连接因此能充分保留速度、参数数量和准确性的优势。 精读
RevColRes2NetCBNetDynamicDet 2.3. Auxiliary Supervision—辅助监督
翻译
深度监督[28, 54, 68]是最常见的辅助监督方法通过在中间层插入额外的预测层进行训练。特别是在基于Transformer的方法中引入多层解码器的应用最为常见。另一种常见的辅助监督方法是利用相关的元信息指导中间层生成的特征图并使其具有目标任务所需的属性[18, 20, 24, 29, 76]。这种类型的示例包括使用分割损失或深度损失来增强目标检测器的准确性。最近文献中有很多关于使用不同的标签分配方法生成不同的辅助监督机制以加快模型收敛速度并同时提高鲁棒性的报道[53, 67, 82]。然而辅助监督机制通常仅适用于大型模型因此当应用于轻量级模型时很容易导致欠参数化现象使性能变差。我们提出的PGI设计了一种重新编程多层语义信息的方式这种设计使得轻量级模型也能从辅助监督机制中受益。 精读
深度监督 3. Problem Statement—问题描述
翻译
通常人们将深度神经网络收敛问题的困难归因于诸如梯度消失或梯度饱和等因素这些现象在传统深度神经网络中确实存在。然而现代深度神经网络通过设计各种规范化和激活函数已经从根本上解决了上述问题。尽管如此深度神经网络仍然存在收敛速度慢或收敛结果差的问题。
在本文中我们进一步探讨上述问题的本质。通过深入分析信息瓶颈我们推断出这个问题的根本原因是最初来自非常深层网络的初始梯度在传递后很快失去了实现目标所需的许多信息。为了证实这一推断我们使用具有初始权重的不同架构的前馈深度网络然后在图2中将它们可视化和说明。显然PlainNet在深层中已经丢失了进行目标检测所需的许多重要信息。至于ResNet、CSPNet和GELAN能够保留的重要信息比例确实与训练后可以获得的准确性相关。我们进一步设计了基于可逆网络的方法来解决上述问题的根源。在本节中我们将详细阐述我们对信息瓶颈原理和可逆函数的分析。 精读
主要解决问题
深度神经网络存在收敛速度慢或收敛效果差的问题。
推断
这个问题的根本原因是原本来自非常深的网络的初始梯度在传输后不久就丢失了大量实现目标所需的信息。
可视化分析 图2.不同网络架构随机初始权值输出特征图的可视化结果:(a)输入图像(b) PlainNet (c) ResNet (d) CSPNet (e)提议的GELAN。从图中可以看出在不同的体系结构中提供给目标函数计算损失的信息都有不同程度的丢失我们的体系结构可以保留最完整的信息为计算目标函数提供最可靠的梯度信息。 3.1. Information Bottleneck Principle—信息瓶颈原理
翻译
根据信息瓶颈原理我们知道数据 X 在经过转换时可能会引起信息损失如下所示的方程式 其中I 表示互信息f 和 g 是转换函数θ 和 ϕ 分别是 f 和 g 的参数。
在深度神经网络中fθ(·) 和 gϕ(·) 分别代表深度神经网络中两个连续层的操作。从方程式 1 中我们可以预测随着网络层的增加原始数据更有可能丢失。然而深度神经网络的参数是基于网络输出以及给定目标然后通过计算损失函数生成新的梯度更新网络。可以想象深层神经网络的输出能力较低无法完整地保留有关预测目标的信息。这将导致在网络训练过程中使用不完整信息导致不可靠的梯度和收敛困难。
解决上述问题的一种方法是直接增加模型的大小。当我们使用大量参数构建模型时它更有能力对数据进行更完整的转换。上述方法即使在数据前馈过程中丢失信息仍有机会保留足够信息进行映射到目标。上述现象解释了为什么在大多数现代模型中宽度比深度更重要。然而上述结论并不能根本解决非常深的神经网络中不可靠梯度的问题。接下来我们将介绍如何使用可逆函数来解决问题并进行相关分析。 精读
公式1数据X在进行变换时可能会造成信息丢失 X输入数据I互信息f和g变换函数θ和φf和g的参数fθ(·)和gϕ(·)表示深度神经网络中连续两层的操作
预测结果随着网络层数的加深原始数据丢失的可能性也会增大。
信息瓶颈原理
网络在训练中使用信息得到的输入信息是不完整的从而导致梯度不可靠收敛性差。
方法尝试
直接增加模型的大小。
不足不能从根本上解决极深神经网络中梯度不可靠的问题。 3.2. Reversible Functions—可逆函数
翻译
当一个函数 r 具有反向转换函数 v 时我们称这个函数为可逆函数如方程式 2 所示 其中ψ 和 ζ 分别是 r 和 v 的参数。数据 X 经可逆函数转换后不会丢失信息如方程式 3 所示 当网络的转换函数由可逆函数组成时可以获得更可靠的梯度来更新模型。几乎所有当今流行的深度学习方法都符合可逆性质如方程式 4 其中 l 表示 PreAct ResNet 的第 l 层f 是第 l 层的变换函数。PreAct ResNet 通过明确的方式将原始数据 X 重复传递给后续层。尽管这样的设计可以使具有超过一千层的深度神经网络非常好地收敛但它破坏了我们需要深度神经网络的一个重要原因。即对于困难问题我们难以直接找到简单的映射函数将数据映射到目标。这也解释了为什么在层数较少时PreAct ResNet 的表现不如 ResNet。
此外我们尝试使用允许变压器模型取得重大突破的蒙版建模。我们使用近似方法如方程式 5试图找到函数 r 的反向转换 v使得转换后的特征能够保留足够的信息使用稀疏特征。方程式 5 的形式如下 其中 M 是一个动态二进制蒙版。常用于执行上述任务的其他方法包括扩散模型和变分自动编码器它们都有找到逆函数的功能。然而当我们将上述方法应用于轻量级模型时会出现缺陷因为轻量级模型将对大量原始数据进行下参数化。由于上述原因将数据 X 映射到目标 Y 的重要信息 I(Y,X) 也会面临同样的问题。针对这个问题我们将探讨采用信息瓶颈概念。信息瓶颈的公式如下 一般来说I(Y,X) 在 I(X,X) 中仅占很小一部分。但它对于目标任务至关重要。因此即使在前向传播阶段丢失的信息量不大只要涵盖了 I(Y,X)训练效果将受到极大影响。轻量级模型本身处于下参数化状态因此在前向传播阶段很容易丢失大量重要信息。因此我们对于轻量级模型的目标是如何准确地从 I(X,X) 中过滤出 I(Y,X)。至于完全保留 X 的信息那是难以实现的。根据以上分析我们希望提出一种新的深度神经网络训练方法既能生成可靠的梯度更新模型也适用于浅层和轻量级神经网络。 精读
公式2可逆函数原理 r可逆函数v逆变换函数ψ和ζ分别是r和v的参数
公式3数据X用可逆函数变换不丢失信息 公式4一个符合可逆性质的架构的深度学习网络的栗子 PreAct ResNet以显式的方式将原始数据X反复传递给后续层lPreAct ResNet的第l层f第l层的变换函数
公式5试图找到r的逆变换v使变换后的特征可以使用稀疏特征保留足够的信息 M动态二进制掩码
不足轻量级模型将被参数化为大量的原始数据。
公式6信息瓶颈的计算公式 I(Y,X)只占I(X,X)的很小一部分但对目标任务至关重要。 思路
即使前馈阶段丢失的信息量并不显著但只要覆盖了I(Y,X)训练效果就会受到很大影响。
目标
轻量级模型的目标如何准确地从I(X,X)中过滤出I(Y,X)。
本文目标
提出一种新的深度神经网络训练方法既能生成可靠的梯度来更新模型又能适用于浅层和轻量级神经网络。 4. Methodology—方法
4.1. Programmable Gradient Information—可编程的梯度信息
翻译
为了解决前述问题我们提出了一个名为可编程梯度信息PGI的新辅助监督框架如图 3d所示。PGI 主要包括三个组件分别是主分支、辅助可逆分支和多级辅助信息。从图 3d中可见PGI 的推理过程只使用主分支因此不需要额外的推理成本。至于另外两个组件它们用于解决或减缓深度学习方法中的几个重要问题。其中辅助可逆分支设计用于处理由神经网络加深引起的问题。网络加深将导致信息瓶颈这将使损失函数无法生成可靠的梯度。至于多级辅助信息它设计用于处理深度监督造成的错误累积问题特别适用于多个预测分支的架构和轻量级模型。接下来我们将逐步介绍这两个组件。 精读
可编程梯度信息(Programmable Gradient Information, PGI) 图3.PGI和相关的网络体系结构和方法。(a)路径聚合网络(PAN) [37] (b)可逆列(RevCol) [3] (c)常规深度监督(d)我们提出的可编程梯度信息(PGI)。PGI主要由三个部分组成:(1)主分支:用于推理的架构;(2)辅助可逆分支:生成可靠的梯度为主分支提供反向传输;(3)多级辅助信息:控制主分支学习可规划的多级语义信息。 PGI主要包括三个部分即
(1)主分支用于推理过程
(2)辅助可逆分支用于解决神经网络深度化带来的问题
(3)多级辅助信息用于处理深度监督带来的误差积累问题特别是针对多预测分支的架构和轻量化模型。 4.1.1 Auxiliary Reversible Branch—辅助可逆分支
翻译
在 PGI 中我们提出了辅助可逆分支以生成可靠的梯度并更新网络参数。通过提供从数据到目标的映射信息损失函数可以提供指导并避免在不完整的前馈特征中找到与目标不相关的虚假相关性的可能性。我们通过引入可逆架构来保持完整信息但是将主分支添加到可逆架构中将消耗大量推理成本。我们分析了图 3b的架构发现当添加从深层到浅层的附加连接时推理时间将增加 20%。当我们将输入数据重复添加到网络的高分辨率计算层黄色框时推理时间甚至会超过两倍。
由于我们的目标是使用可逆架构获取可靠的梯度“可逆”并非推理阶段的唯一必要条件。基于这一点我们将可逆分支视为深度监督分支的扩展然后设计辅助可逆分支如图 3d所示。至于由于信息瓶颈而可能丢失重要信息的主分支深层特征它们将能够从辅助可逆分支接收可靠的梯度信息。这些梯度信息将推动参数学习帮助提取正确和重要的信息上述操作可以使主分支获得更有效的适用于目标任务的特征。此外可逆架构在浅层网络上的表现不如一般网络因为复杂任务需要在更深的网络中进行转换。我们提出的方法不会强制主分支保留完整原始信息而是通过辅助监督机制生成有用的梯度进行更新。这种设计的优势在于所提出的方法也适用于较浅的网络。
最后由于辅助可逆分支可以在推理阶段移除因此可以保留原始网络的推理能力。我们还可以在 PGI 中选择任何可逆架构来担当辅助可逆分支的角色。 精读
引入可逆体系结构的不足 在可逆体系结构中增加主干会消耗大量的推理成本推理时间将增加20%。
可逆结构在浅层网络上的表现比一般网络差。
本文做法
将可逆分支作为深度监管分支的扩展然后设计辅助可逆分支如图3 (d)所示。 优点1 在一些主要分支中可能因信息瓶颈的bug而丢失重要信息而本文的方法能够从辅助可逆分支接收驱动参数学习帮助提取正确的重要信息。优点2 不强制主分支保留完整的原始信息而是通过辅助监督机制生成有用的梯度来更新原始信息。所提的方法也可以应用于较浅的网络。优点3 辅助可逆分支可以在推理阶段去除因此可以保留原始网络的推理能力。优点4 可以在PGI中选择任意可逆体系结构来充当辅助可逆分支的角色。 4.1.2 Multi-level Auxiliary Information—多级辅助信息
翻译
在本节中我们将讨论多层次辅助信息的工作原理。深度监督架构包括多个预测分支如图 3c所示。对于目标检测可以使用不同的特征金字塔执行不同的任务例如它们可以一起检测不同大小的物体。因此在连接到深度监督分支之后浅层特征将被引导学习用于小物体检测所需的特征此时系统将将其他大小物体的位置视为背景。然而上述做法将导致深层特征金字塔丢失预测目标对象所需的大量信息。针对这个问题我们认为每个特征金字塔都需要接收有关所有目标对象的信息以便后续的主分支可以保留完整信息来学习各种目标的预测。
多层次辅助信息的概念是在辅助监督的特征金字塔层级和主分支之间插入一个集成网络然后使用它来结合不同预测头返回的梯度如图 3d所示。多层次辅助信息是为了汇总包含所有目标对象的梯度信息并将其传递给主分支然后更新参数。这时主分支的特征金字塔层次的特征将不会被某些特定对象的信息所主导。因此我们的方法可以缓解深度监督中的信息丢失问题。此外任何集成网络都可以用于多层次辅助信息。因此我们可以规划所需的语义级别以指导不同大小的网络架构的学习。 精读 深度监督分支工作原理
目标检测中可以使用不同的特征金字塔来执行不同的任务例如它们可以一起检测不同大小的对象。
不足:
会导致深层特征金字塔丢失大量预测目标物体所需的信息
多级辅助信息的概念
在辅助监督的特征金字塔层次和主分支之间插入一个集成网络然后利用它来组合不同预测头返回的梯度。多级辅助信息将包含所有目标对象的梯度信息聚合传递给主分支再更新参数。
优点:
该方法可以缓解深度监督中的信息破碎问题。任何集成网络都可以使用多层次的辅助信息。 4.2. Generalized ELAN—广义ELAN
翻译
在这一部分中我们描述了提出的新网络架构 - GELAN。通过结合两种神经网络架构即带有梯度路径规划的 CSPNet 和 ELAN我们设计了考虑轻量化、推理速度和准确性的广义高效层聚合网络GELAN。其整体架构如图 4 所示。我们将 ELAN 的能力进行了泛化原本只使用卷积层堆叠的 ELAN可以使用任何计算块的新架构。 精读 图 4. GELAN 的架构: (a) CSPNet [64], (b) ELAN [65], 和 (c) 提出的 GELAN。我们模仿了 CSPNet 并将 ELAN 扩展为支持任何计算块的 GELAN。 作者把 CSPNet、 ELAN 这两种神经网络架构结合起来从而设计出兼顾轻量级、推理速度和准确性的通用高效层聚合网络generalized efficient layer aggregation network GELAN。
将最初仅使用卷积层堆叠的 ELAN 的功能泛化到可以使用任何计算块的新架构。 5. Experiments—实验
5.1. Experimental Setup—实验设置
翻译
我们使用 MS COCO 数据集验证了提出的方法。所有实验设置都遗传自 YOLOv7 AF [63]数据集为 MS COCO 2017。所有提到的模型都是使用从头开始训练的策略进行训练总训练次数为 500 个 epochs。在设置学习率时我们在前三个 epochs 中使用线性预热随后的 epochs 根据模型规模设置相应的衰减方式。至于最后的 15 个 epochs我们关闭了马赛克数据增强。更多设置请参考附录。 精读
数据集 MS COCO 2017拆分实验设置 遵循YOLOv7 AF训练次数 500学习率 前3个epoch采用线性预热之后的epoch根据模型尺度设置相应的衰减方式。对于最后15个epoch我们关闭马赛克数据增强。 5.2. Implimentation Details—实现细节
翻译
我们基于 YOLOv7 [63] 和 Dynamic YOLOv7 [36] 分别构建了 YOLOv9 的一般和扩展版本。在网络架构设计中我们使用带有 CSPNet 块的 GELAN 替换了 ELAN [65]并将计划的 RepConv [63] 作为计算块。我们还简化了下采样模块并优化了无锚点预测头部。至于 PGI 的辅助损失部分我们完全遵循了 YOLOv7 的辅助头部设置。更多细节请参考附录。 精读
基础构件 分别基于YOLOv7和Dynamic YOLOv7构建了通用版和扩展版yolov9。
网络架构设计 使用CSPNet块和计划的RepConv作为计算块将ELAN替换为GELAN。 5.3. Comparison with state-of-the-arts—与最先进水平的比较
翻译
表格1列出了我们提出的 YOLOv9 与其他从头开始训练的实时物体检测器的比较。总体而言在现有方法中表现最好的方法分别是轻量级模型 YOLO MS-S [7]中等模型 YOLO MS [7]通用模型 YOLOv7 AF [63]和大模型 YOLOv8-X [15]。与轻量级和中等模型 YOLO MS [7]相比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 预训练模型包括在比较中结果显示在图5中。我们分别基于参数和计算量进行比较。在参数数量方面表现最佳的大模型是 RT DETR [43]。从图5中可以看出使用传统卷积的 YOLOv9 在参数利用率上甚至比使用深度卷积的 YOLO MS 更好。对于大型模型的参数利用率它也远远超过了使用 ImageNet 预训练模型的 RT DETR。更好的是在深度模型中YOLOv9 显示出使用PGI的巨大优势。通过精确保留和提取将数据映射到目标所需的信息我们的方法只需要64%的参数来保持与RT DETR-X相同的准确性。
在计算量方面从最小到最大的最佳现有模型分别为 YOLO MS [7]、 PP YOLOE [74] 和 RT DETR [43]。从图5中可以看出YOLOv9 在计算复杂性方面远远优于从头开始训练的方法。此外如果与基于深度卷积和基于 ImageNet 预训练模型的方法进行比较YOLOv9 也具有很强的竞争力。 精读
表1最先进的实时目标探测器的比较 与轻量化和中型型号YOLO MS相比参数减少约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%。
图5加入了ImageNet预训练模型进行比较 图5.最先进的实时目标探测器的比较。参与比较的方法均使用ImageNet作为预训练权值包括RT DETR[43]、RTMDet[44]、PP-YOLOE[74]等。使用从头开始训练方法的YOLOv9的性能明显优于其他方法。 参数利用率方面使用常规卷积的YOLOv9甚至比使用深度卷积的yoloms更好。在大型模型的参数利用率方面大大超过了使用ImageNet预训练模型的RT - DETR。 5.4. Ablation Studies—消融实验
5.4.1 Generalized ELAN—广义ELAN实验
翻译
对于 GELAN我们首先对计算块进行了消融研究。我们分别使用了 Res 块 [21]、Dark 块 [49] 和 CSP 块 [64] 进行实验。如表2所示在用不同的计算块替换 ELAN 中的卷积层后系统仍能保持良好性能。用户确实可以随意替换计算块并在各自的推断设备上使用它们。在不同的计算块替换中CSP 块表现特别出色。它们不仅减少了参数的数量和计算量还提高了 AP 0.7%。因此我们选择将 CSP-ELAN 作为 YOLOv9 中 GELAN 的组件单元。
接下来我们对不同大小的 GELAN 进行 ELAN 块深度和 CSP 块深度实验并在表3中展示结果。我们可以看到当将 ELAN 的深度从 1 增加到 2 时准确性显著提高。但当深度大于或等于 2 时无论是增加 ELAN 的深度还是增加 CSP 的深度参数数量、计算量和准确性始终呈现线性关系。这意味着 GELAN 对深度不敏感。换句话说用户可以任意组合 GELAN 中的组件来设计网络架构而无需特殊设计即可获得稳定性能的模型。在表3中对于 YOLOv9-{S,M,C}我们设置 ELAN 深度和 CSP 深度的配对为{{2, 3}, {2, 1}, {2, 1}}。 精读
表2不同计算块的消融研究 在不同的计算块替换中CSP块执行得特别好。它们不仅减少了参数和计算量而且使AP提高了0.7%。
表3ELAN和CSP深度的消融研究 GELAN对深度不敏感。换句话说用户可以任意组合GELAN中的组件来设计网络架构无需特别设计就能得到性能稳定的模型。 5.4.2 Programmable Gradient Information—可编程梯度信息实验
翻译
关于 PGI我们对主干和颈部进行了辅助可逆分支和多层次辅助信息的消融研究。我们设计了辅助可逆分支 ICN使用 DHLC [34] 连接获得多级可逆信息。至于多层次辅助信息我们使用 FPN 和 PAN 进行消融研究而 PFH 的作用相当于传统的深层监督。所有实验结果列在表4中。从表4中可以看出PFH 只在深度模型中有效而我们提出的 PGI 可以在不同组合下提高准确性。特别是在使用 ICN 时我们获得了稳定且更好的结果。我们还尝试将 YOLOv7 [63] 中提出的前导头引导分配方法应用于 PGI 的辅助监督结果表现更加优秀。
我们进一步将 PGI 和深层监督的概念应用于不同大小的模型并比较了结果这些结果显示在表5中。正如在开始时分析的那样引入深层监督会导致浅层模型的精度损失。对于一般模型引入深层监督会导致性能不稳定并且深层监督的设计概念只能在极深模型中带来增益。提出的 PGI 可以有效处理信息瓶颈和信息中断等问题并全面提高不同大小模型的准确性。PGI 的概念带来了两个有价值的贡献。第一个贡献是使辅助监督方法适用于浅层模型而第二个贡献是使深度模型训练过程获得更可靠的梯度。这些梯度使深度模型能够使用更准确的信息建立数据和目标之间的正确关系。
最后我们在表格中展示了从基准 YOLOv7 逐渐增加组件到 YOLOv9-E 的结果。我们提出的 GELAN 和 PGI 给模型带来了全面的改进。 精读
表4主干及颈部PGI的消融研究 PFH仅在深度模型中有效而我们提出的PGI在不同组合下都可以提高精度。
表5PGI的消融研究 所提出的PGI能够有效处理信息瓶颈、信息破碎等问题全面提高不同尺寸模型的精度。 5.5. Visualization—可视化
翻译
这一部分将探讨信息瓶颈问题并对其进行可视化。此外我们还将展示提出的 PGI 如何利用可靠的梯度来找到数据和目标之间的正确关系。在图 6 中我们展示了在不同架构下使用随机初始权重作为前向传播获取到的特征图的可视化结果。我们可以看到随着层数的增加所有架构的原始信息逐渐减少。例如在 PlainNet 的第 50 层很难看出物体的位置在第 100 层所有可分辨的特征都会丢失。至于 ResNet虽然在第 50 层仍然能看到物体的位置但边界信息已经丢失。当深度达到第 100 层时整个图像变得模糊。无论是 CSPNet 还是提出的 GELAN 都表现出色它们都能保持特征以支持对物体的清晰识别直到第 200 层。在比较中GELAN 的结果更稳定边界信息更清晰。 图 7 用于展示 PGI 是否能在训练过程中提供更可靠的梯度以便用于更新的参数能够有效捕获输入数据和目标之间的关系。
图 7 显示了在 PAN 偏置预热中GELAN 和 YOLOv9GELAN PGI的特征图的可视化结果。通过比较图 7(b) 和 (c)我们可以清楚地看到 PGI 准确简洁地捕捉到包含物体的区域。至于不使用 PGI 的 GELAN我们发现在检测对象边界时存在发散并且在某些背景区域还产生了意料之外的响应。这个实验证实了 PGI 确实能够提供更好的梯度来更新参数并使主分支的前向传播阶段保留更多重要特征。 精读
图6在不同架构下使用随机初始权重作为前馈得到的特征图的可视化结果 图6.PlainNet、ResNet、CSPNet、GELAN在不同深度随机初始权值输出的特征图(可视化结果)。在100层之后ResNet开始产生前馈输出足以混淆对象信息。我们提出的GELAN到150层仍然可以保留相当完整的信息到200层仍然具有足够的判别能力。 随着层数的增加所有架构的原始信息逐渐减少。在比较中GELAN的结果更稳定边界信息更清晰。
图7PGI在训练过程中是否能够提供更可靠的梯度 图7.偏置预热一历元后GELAN和YOLOv9 (GELAN PGI)的PAN特征图(可视化结果)。GELAN原本有一些分歧但在加入PGI的可逆分支后它更能聚焦于目标物体。 本实验证实了PGI确实可以提供更好的梯度来更新参数使主分支的前馈阶段保留更重要的特征。 6. Conclusions—结论
翻译
在这篇论文中我们提出使用 PGI 来解决信息瓶颈问题以及深度监督机制不适用于轻量级神经网络的问题。我们设计了 GELAN一个高效且轻量级的神经网络。在目标检测方面GELAN 在不同的计算块和深度设置下表现出强大且稳定的性能。它确实可以被广泛扩展为适用于各种推断设备的模型。针对以上两个问题引入 PGI 使得轻量级模型和深度模型在准确性上都取得了显著改进。通过将 PGI 和 GELAN 结合设计的 YOLOv9 在 MS COCO 数据集上表现出强大的竞争力。它的优秀设计使得与 YOLOv8 相比深度模型的参数数量减少了 49%计算量减少了 43%但在 MS COCO 数据集上仍然有 0.6% 的平均准确率提升。 精读
本文设计了一种高效、轻量级的神经网络GELAN。在目标检测方面在不同的计算块和深度设置下GELAN具有强大而稳定的性能。
它确实可以广泛地扩展成适用于各种推理装置的模型。由PGI和GELAN联合设计的YOLOv9表现出了很强的竞争力。
与YOLOv8相比其出色的设计使深度模型的参数数量减少了49%计算量减少了43%但在MS COCO数据集上仍有0.6%的AP改进。