深度学习(十一):YOLOv9之最新的目标检测器解读

YOLOv9

  • 1.YOLOv9:物体检测技术的飞跃发展
    • 1.1 YOLOv9 简介
    • 1.2YOLOv9 的核心创新
      • 1.2.1信息瓶颈:神经网络在抽取相关性时的理论边界
      • 1.2.2可逆函数:保留完整的信息流
      • 1.2.3对轻型模型的影响:解决信息丢失
      • 1.2.4可编程梯度信息 (PGI):解决信息瓶颈
      • 1.2.5通用高效层聚合网络(GELAN):实现更高的参数利用率和计算效率
      • 1.2.6结论:合作与创新
  • 2.代码

1.YOLOv9:物体检测技术的飞跃发展

YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information
有关YOLOv9的论文和代码
代码
论文
深度学习(十一):YOLOv9之最新的目标检测器解读_第1张图片

YOLOv9 引入了可编程梯度信息 (PGI) 和广义高效层聚合网络 (GELAN) 等开创性技术,标志着实时目标检测领域的重大进步。该模型在效率、准确性和适应性方面都有显著提高,在 MS COCO 数据集上树立了新的标杆。

1.1 YOLOv9 简介

在追求最佳实时物体检测的过程中,YOLOv9 以其创新的方法克服了深度神经网络固有的信息丢失难题,脱颖而出。通过整合 PGI 和多功能 GELAN 架构,YOLOv9 不仅增强了模型的学习能力,还确保了在整个检测过程中保留关键信息,从而实现了卓越的准确性和性能。

1.2YOLOv9 的核心创新

1.2.1信息瓶颈:神经网络在抽取相关性时的理论边界

信息瓶颈理论认为,网络像把信息从一个瓶颈中挤压出去一般,去除掉那些含有无关细节的噪音输入数据,只保留与通用概念最相关的特征

2015年,Tishby和他的学生Noga Zaslavsky假设深度学习是一个信息瓶颈过程,尽可能地压缩噪声数据,同时保留数据所代表的信息 。Tishby和Shwartz-Ziv对深度神经网络的新实验揭示了瓶颈过程如何实际发生的。在一种情况下,研究人员使用小型神经网络,使用随机梯度下降和BP,经过训练后,能够用1或0(也即“是狗”或“不是狗”)标记输入数据,并给出其282个神经连接随机初始强度,然后跟踪了网络在接收3000个样本输入数据集后发生了什么。

实验中,Tishby和Shwartz-Ziv跟踪了每层网络保留了多少输入中的信息和输出标签中的信息。结果发现,信息经过逐层传递,最终收敛到信息瓶颈的理论边界:也就是Tishby、Pereira和Bialek在他们1999年论文中推导出的理论界限,代表系统在抽取相关信息时能够做到的最好的情况。在这个边界上,网络在没有牺牲准确预测标签能力的情况下,尽可能地压缩输入。

论文

I(X, X) >= I(X, f_theta(X)) >= I(X, g_phi(f_theta(X)))

其中 I 表示互信息,而 f 和 g 表示带参数的变换函数 theta 和 phi分别为YOLOv9 通过实施可编程梯度信息(PGI)应对了这一挑战,PGI 有助于保留整个网络深度的重要数据,确保更可靠的梯度生成,从而提高模型的收敛性和性能。

1.2.2可逆函数:保留完整的信息流

可逆函数的概念是 YOLOv9 设计的另一个基石。如果一个函数可以在不丢失任何信息的情况下被反转,那么这个函数就被认为是可逆的:

X = v_zeta(r_psi(X))

与 psi 和 zeta 分别作为可逆函数及其反函数的参数。这一特性对深度学习架构至关重要,因为它能让网络保留完整的信息流,从而更准确地更新模型参数。YOLOv9 在其架构中加入了可逆函数,以降低信息退化的风险,尤其是在较深的层中,从而确保为物体检测任务保留关键数据。

似乎不好理解为什么要引入可逆函数?

简而言之,其目的是为了让网络保留完整的信息流

什么样的神经网络不丢失信息

  1. 变量离散
    互信息公式
    I ( X ; Y ) = E X , Y log ⁡ P ( X , Y ) P ( X ) P ( Y ) = E X , Y log ⁡ P ( X ∣ Y ) P ( X ) I(X;Y)=E_{X,Y}\log\frac{P(X,Y)}{P(X)P(Y)}=E_{X,Y}\log\frac{P(X|Y)}{P(X)} I(X;Y)=EX,YlogP(X)P(Y)P(X,Y)=EX,YlogP(X)P(XY)
    如果神经网络是可逆的, 因为一个X只对应一个Y,那么 P ( X ∣ Y ) = 1 P(X|Y)=1 P(XY)=1
    如果神经网络不可逆,因为多个X会对应同一个Y,就会有 P ( X ∣ Y ) < 1 P(X|Y)<1 P(XY)<1
    也就是说, 如果神经网络是可逆的, 那么X和Y的互信息是最大的.
  2. 变量连续
    根据Physical Review E的一篇文章"Estimating mutual information"的一个结论, 如果我们对于变量的变换是平滑(smooth)的, 并且是可逆(invertible)的, 那么互信息可以保持不变性。也就是说:
    I ( X ; Y ) = I ( f ( X ) ; g ( Y ) ) I(X;Y)=I(f(X);g(Y)) I(X;Y)=I(f(X);g(Y))
    在这里 f f f g g g都是连续可逆函数。那么, 如果函数 f ( X ) = X f(X)=X f(X)=X , 该函数可逆, 函数 g ( X ) g(X) g(X)则为我们的神经网络, 也是可逆的, 我们有:
    I ( X ; X ) = I ( f ( X ) ; g ( X ) ) = I ( X ; Y ) I(X;X)=I(f(X);g(X))=I(X;Y) I(X;X)=I(f(X);g(X))=I(X;Y)
    结果说明:输出 Y Y Y有输入 X X X所有的信息。
    这篇文章在这里。
    论文

1.2.3对轻型模型的影响:解决信息丢失

解决信息丢失问题对于轻量级模型尤为重要,因为轻量级模型通常参数化不足,在前馈过程中容易丢失大量信息。YOLOv9 的架构通过使用 PGI 和可逆函数,确保即使是精简的模型,也能保留并有效利用准确检测物体所需的基本信息。

1.2.4可编程梯度信息 (PGI):解决信息瓶颈

PGI 是 YOLOv9 为解决信息瓶颈问题而引入的一个新概念,可确保在深层网络中保留重要数据。这样就可以生成可靠的梯度,促进模型的准确更新,提高整体检测性能。

深度学习(十一):YOLOv9之最新的目标检测器解读_第2张图片

PGI主要包括三个组成部分,即==(1)主分支,(2)辅助可逆分支,(3)多级辅助信息。==从图 (d) 中我们可以看到,PGI 的推理过程仅使用 main 分支,因此不需要任何额外的推理成本。至于其他两个组件,它们用于解决或减缓深度学习方法中的几个重要问题。其中,辅助可逆分支旨在处理神经网络深化带来的问题。网络深化会造成信息瓶颈,使损失函数无法生成可靠的梯度。对于多级辅助信息,旨在处理深度监管导致的误差累积问题,特别是针对多预测分支的架构和轻量级模型。

1.2.5通用高效层聚合网络(GELAN):实现更高的参数利用率和计算效率

GELAN 是一项战略性的架构进步,使 YOLOv9 能够实现更高的参数利用率和计算效率。它的设计允许灵活集成各种计算模块,使 YOLOv9 能够适应广泛的应用,而不会牺牲速度或精度。
深度学习(十一):YOLOv9之最新的目标检测器解读_第3张图片

我们将介绍拟议的新网络架构 – GELAN。通过结合两种神经网络架构,CSPNet[64]和
ELAN[65],采用梯度路径规划设计,我们设计了考虑轻量级、推理速度和准确性的广义高效层聚合网络 (GELAN)。其整体架构如图 4
所示。我们推广了ELAN的能力[65],最初只使用卷积层的堆叠,到可以使用任何计算块的新架构。

1.2.6结论:合作与创新

YOLOv9 代表了实时目标检测领域的关键发展,在效率、准确性和适应性方面都有显著提高。通过 PGI 和 GELAN 等创新解决方案解决关键挑战,YOLOv9 为该领域的未来研究和应用开创了新的先例。随着人工智能领域的不断发展,YOLOv9 充分证明了合作与创新在推动技术进步方面的力量。

2.代码

在下一篇。

你可能感兴趣的:(深度学习,深度学习,人工智能)