前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >华中科大提出YOLOOC | 源于 YOLO又高于YOLO,任何类别都不在话下,误检已是过往

华中科大提出YOLOOC | 源于 YOLO又高于YOLO,任何类别都不在话下,误检已是过往

作者头像
集智书童公众号
发布2024-04-12 20:06:21
3650
发布2024-04-12 20:06:21
举报
文章被收录于专栏:集智书童集智书童

由于在实际应用中的重要性,开集物体检测(OWOD)最近受到了很多关注。挑战在于模型如何检测新类别,并在不遗忘先前已知类别的情况下增量地学习它们。 先前的方法依赖于强监督或弱监督的新类别数据来进行新类别检测,这并不适用于实际应用。 我们构建了一个新的基准,其中新类别仅在推理阶段遇到。并且我们提出了一种基于YOLO架构但适用于开集设置的新型OWOD检测器YOLOOC。 我们引入了标签平滑技术,以防止检测器过于自信地将新类别映射到已知类别,并发现新类别。在我们更为现实的设置上进行的广泛实验证明了我们方法在新的基准中发现新类别时的有效性。

1 Introduction

物体检测在计算机视觉中具有基础性作用。它旨在定位并识别图像中的物体。近年来,深度模型极大地推进了其进展。大多数先前的工作都是为闭集检测而设定的,其中所有需要在训练阶段检测的类别都是可用的。尽管现有模型在闭集设置中表现良好,但当面对新物体类别(即开集、开类或开放世界物体检测,OWOD)时,其性能会显著下降。

如图1所示,模型倾向于将新物体错误地分类为已知类别。OWOD设置比现有的闭集设置更现实,最初在[14]中提出,但尚未明确定义。在它们的问题设置中存在两个问题:

  1. 训练集中出现了一些新类别;
  2. 由于缺乏真实标签,出现了一些假阳性。

这两种情况都是不现实的。

为了解决第一个问题,我们提出了一个更合理的OWOD设置,其中新类别只会在测试集中出现,即在推断阶段,或者可以说是对新类别的无监督。至于VOC中缺少真实标签的问题,我们仅在Microsoft COCO数据集[17]上进行基准测试。

如图2所示,开放世界识别总是涉及

n+1

个类别:识别

n

个已知类别的物体以及发现作为单个训练集外类别的novel类别。值得注意的是,随着检测器在开放世界中看到越来越多的类别,

n

会随着时间的推移而增长,就像人类一样。总之,我们提出的设置有两个关键特点:

  1. 总有可能出现训练集中未见的类别在测试集中出现;
  2. 一旦被注释,类别就会逐渐添加到训练标签集中,以便检测器能够随时间演变。它们分别对应于开集学习和类别增量学习。

为了解决我们设定的问题,我们将一个实时的一阶段基于的检测器扩展为发现新类别(即塑性)同时保持其对先前已知类别的识别精度(即稳定性)。使用哪个检测骨干网络并不重要,因为新设置面临的挑战在于识别部分。确切地说,模型学习的特征是与一键编码标签类别最匹配的。新类别被错误识别的原因是与已知类别共享相似的特征。此外,硬一键编码标签使得模型过于自信地适应所学习的特征(对已知类别特征过拟合)。尽管新类别只与已知类别部分相似,它们仍然可能被错误识别。标签平滑可以软化一键编码标签,以降低用于识别的所有特征的权重。由于只与已知类别部分相似,新类别对权重降低的敏感性高于已知类别,这可以防止对已知类别特征的过拟合,从而发现新类别。总之,我们的贡献如下。

  • 我们提出了一个新的OWOD基准,其中新类别仅在推断阶段遇到,并可能逐渐添加到训练标签集中,这是使OWOD成为一个现实世界问题的关键。
  • 我们提出了一种新的OWOD检测器YOLOOC,基于YOLO架构但适用于开类设置。我们引入了标签平滑,以防止检测器过于自信地将新类别映射到已知类别。与基于RCNN的检测器[14, 32]和基于DETR的检测器[8]不同,我们的检测器仅使用已知类别样本来检测已知类别和新类别。在新基准上的大量实验证明了其在发现新类别方面的有效性。

2 Related Work

概率图模型的研究在人工智能和机器学习领域已经持续了几十年,一直是核心议题。马尔可夫网络和贝叶斯网络作为两种最为突出的代表,已经被广泛应用于各个领域。马尔可夫网络,也称为马尔可夫随机场,是无向图模型,通过势函数来表示一组变量的联合概率分布。相比之下,贝叶斯网络是有向图模型,它使用有向无环图来表示一组变量之间的条件独立性关系。

Object Detection

两阶段方法首先生成提案,然后对提案进行回归和分类。RCNN [7] 使用选择性搜索 [27] 来收集提案,然后将这些提案重新缩放到固定大小的图像,并送入 AlexNet [15] 提取特征。SPPNet [11] 中的空间金字塔池化(SPP)层允许 CNN 生成一个与输入图像/感兴趣区域的尺寸无关的固定长度表示。Fast RCNN [6] 通过在同一网络配置下同时学习分类器和边界框回归器,增强了 RCNN 和 SPPNet。Faster RCNN [25] 用区域提案网络(RPN)替换了选择性搜索,充分利用了深层特征。

两阶段方法优先考虑检测精度,而单阶段方法优先考虑推断速度 [22, 23, 24, 1, 18, 16]。YOLO [22] 将对象检测视为一个回归问题,它预测网格单元的边界框和相关的类概率。SSD [18] 引入了多参考和多分辨率检测技术,显著提高了小对象的检测精度。RetinaNet [16] 发现了在密集检测器训练过程中遇到的极端前景-背景类不平衡问题。这种不平衡导致单阶段检测方法的准确性降低。因此,他们提出了焦点损失(Focal Loss)来解决这种不平衡问题。所提出的方法达到了与两阶段检测器相当的性能。

这些模型都设置为闭集检测,作为开集对象检测和 OWOD 的检测基础。大多数工作为了更好的性能起点,使用了 Faster RCNN [14, 32]。与此不同,我们使用了一个单阶段的实时检测基础模型。

Open-Set Object Detection

随着深度学习的发展,目标检测模型的性能取得了巨大提升,但是,大多数现有的深度学习模型基于封闭世界假设[31],它们的测试集只包含训练集对象(即已知类别),不能可靠地处理测试集中存在非训练集对象(即未知类别)的情况,即开放集。现实应用场景中的模型经常遇到未知类别,基于封闭世界假设的模型会自信地将未知类别识别为已知类别[2]。自动驾驶和机器人等应用严重依赖视觉感知,错误的检测结果可能导致不可预测的情况,比如汽车撞人,机器人失控等。在开放集场景中提高目标检测模型的可靠性至关重要。Dhamija等人[2]首次形式化了开放集目标检测,并通过他们的分类器提出了一些典型检测器。

当新颖类别在推理时出现时,带有背景类别的分类器[25]性能优于一对多[16]和基于对象性的分类器[22]。一系列研究[20, 19, 21]专注于在目标检测器中生成不确定性度量,以排除新颖类别。Miller等人[20]首次研究了在SSD中使用Dropout Sampling进行开放集目标检测的效用。[19]中,作者对各种关联和合并策略对Monte Carlo Dropout[5]与SSD的影响进行了首次全面研究。GMM-Det[21]训练检测器以产生结构化的对数空间,该空间通过类特定的高斯混合模型建模,并通过所有高斯混合模型下的低对数概率识别开放集类别。Han等人[10]提出了一种在潜在空间中区分高/低密度区域的方法,基于一个共识,即新颖对象通常分散在低密度潜在区域,以检测新颖类别。

在开放类别环境中的性能下降是由于过度拟合已知类别特征。我们引入标签平滑来软化硬性的一热标签,以防止检测骨干网络过度拟合已知类别特征。

Open-World Object Detection

图2:我们的开放世界目标检测基准。在每次增量时间内,都有一些之前检测到的新的类别用于训练。需要注意的是,训练图像中只会有已知类别的实例。在测试时,模型应能检测到所有已知类别和新的类别,同时不遗忘之前的类别。

Joseph等人[14]首次正式化了开放世界目标检测(OWOD)问题。他们提出了一种基于RCNN的检测器ORE,该检测器具有对比聚类、新颖类别感知的提议网络和基于能量的新颖标识器。OW-DETR[8]提出了一种基于Transformer的检测器,具有注意力驱动的伪标签生成、新颖类别分类和对象性评分。RE-OWOD[32]提出了一种基于Faster RCNN的检测器,具有辅助提议顾问和一个类别特定的驱逐分类器。基于能量的新颖标识器[14]依赖于带有强新颖对象监督的保留验证数据。[8, 32]依赖于训练集中未标记的弱监督新颖实例。然而,在现实世界中,新颖类别可能不会出现在训练集中。因此,与其他OWOD基准[14, 8, 32]不同,我们构建了一个新的基准,其中新颖类别仅在推断阶段遇到。

防止检测器出现误报的方法。 Miller等人[20]使用dropout采样来估计模型推断的不确定性。Dhamija等人[2]首次正式定义了开放集目标检测问题,并分析了一些检测器的性能。Miller等人[21]为每个已知类别构建了高斯混合模型,以防止模型将未知类别误分类到低概率区域。

Novel Class Discovery

新颖类别发现[34, 4, 26, 28, 3]是一个近期热门的研究课题,正受到广泛关注,但在对象检测的情境中对其进行探讨却相对罕见:

新颖类别感知检测器。 Xiong等人[30]提出了一种基于原型学习的一阶段开放集对象检测方法。Han等人[10]通过基于共识的对比学习提高了类内紧凑性和类间分离性,该共识认为新颖类别通常分布在低密度潜在区域,从而扩展了新颖类别的识别区域。Hosoya等人[12]提出了一种简单的基线方法,该方法通过最高类别得分与次高类别得分的比例来识别新颖类别。

新颖实例感知检测器。 这一系列工作[14, 9, 32, 29]基于人在环中。在训练集中对新颖类别实例进行伪标记后,模型在测试时被要求检测新颖类别,并逐步学习人类提供的新颖类别数据。这个循环在整个检测器生命周期内持续进行。

3 Proposed Approach

为了防止基于封闭世界假设的模型在实际世界中受到误检的限制,并提高模型的鲁棒性,本节分析了现有经典目标检测模型的机制,并指出了它们对新型类别误检的原因。针对实际应用,重建了一个在训练集中不存在新型类别的数据集,设定了评估指标,引入了标签平滑,提出了阈值校准方法以校正新型类别的误检,将YOLOv5扩展到开放世界目标检测(OWOD),验证了所提模型和模块的有效性。

Problem Definition

在给定任务

\mathbf{t}

的情况下,设

\mathcal{K}^{\mathbf{t}}=\{1,2,\cdots,C\}

为已知的类别集合,考虑数据集

\mathcal{D}^{\mathbf{t}}=\{\mathcal{X}^{\mathbf{t}},\mathcal{Y}^{\mathbf{t}}\}

,其中包含

N

张图像

\mathcal{X}^{\mathbf{t}}=\{I_{1},\cdots,I_{N}\}

及其标签

\mathcal{Y}^{\mathbf{t}}=\{Y_{1},\cdots,Y_{N}\}

。这里,每个

Y_{i}=\{y_{1},\cdots,y_{K}\}

表示图像

I_{i}

中一组

K

个对象的标签,这些对象的标注为

y_{K}=[t_{l},t_{x},t_{y},t_{w},t_{h}]

,其中

t_{l}

是边界框

t_{b}

\mathcal{K}^{\mathbf{t}}

的一热类别标签,由

t_{x},t_{y},t_{w},t_{h}

表示。此外,设

\mathcal{U}^{\mathbf{t}}=\{C+1,\cdots\}

表示在测试阶段才会遇到的新类别集合。

在 OWOD 设置中,模型

\mathcal{M}^{\mathbf{t}}

在时间

\mathbf{t}

需要检测到之前遇到过的已知类别以及新类别。由

\mathcal{M}^{\mathbf{t}}

检测到的一组新实例

U^{\mathbf{t}}\in\mathcal{U}^{\mathbf{t}}

由人类进行标注,并形成新的训练集

\mathcal{D}^{\mathbf{t}+1}

。然后,模型将这一组新类别增加到已知类别中,以从

\mathcal{M}^{\mathbf{t}}

适应到

\mathcal{M}^{\mathbf{t}+1}

。在增量训练阶段,只能在受限制的内存中保存之前类别

\mathcal{K}^{\mathbf{t}}

的少量示例,模拟真实场景中的隐私约束、有限的计算和内存资源。然后,在不从整个数据集重新训练的情况下,

\mathcal{M}^{\mathbf{t}}

通过增量训练提供一个更新后的模型

\mathcal{M}^{\mathbf{t}+1}

,该模型能够检测到所有类别

\mathcal{K}^{\mathbf{t}+1}

中的对象以及

\mathcal{U}^{\mathbf{t}+1}

中的新类别。这个循环在整个检测器的生命周期中持续进行,使它在每个周期适应新知识,同时不忘记迄今为止已知的类别(图2)。

Model Architecture

我们遵循基于单阶段的检测器架构。该架构包含三个模块:骨干网、颈部和头部。骨干网首先提取输入图像的分层特征图。颈部收集并融合来自不同特征级别的特征图。头部使用来自颈部的特征进行预测,损失函数为

\mathcal{L}=\lambda_{1}\mathcal{L}_{bbx}+\lambda_{2}\mathcal{L}_{obj}+\lambda_{3}\mathcal{L}_{cls}, \tag{1}

其中

\mathcal{L}_{bbx}

\mathcal{L}_{obj}

\mathcal{L}_{cls}

分别是边界框、对象性和分类损失。

\lambda_{1}

\lambda_{2}

\lambda_{3}

是在边界框、对象性和分类之间权衡的缩放参数。边界框损失是通过预测边界框

b_{bbx}

和边界框标签

t_{b}

之间的 CIOU [33] 计算的:

\mathcal{L}_{bbx}=1-CIOU(b_{bbx},t_{b}). \tag{2}

预测对象性

p_{obj}

的目标是预测边界框

b_{bbx}

和边界框标签

t_{b}

之间的 CIOU:

\mathcal{L}_{obj}=BCE(p_{obj},CIOU(b_{bbx},t_{b})) \tag{3}

如文献 [24] 所述,良好的性能并不需要 Softmax,相反,独立的逻辑分类器更适合处理复杂领域(包括许多重叠标签)。此外,在推断过程中,边界框内可能存在多个类别。因此,我们对

\mathcal{K}^{\text{t}}

中的每个类别使用二元交叉熵(BCE)。对于预测概率

p_{cls}

,分类损失表述如下:

\mathcal{L}_{cls}=\sum_{i}^{C}BCE(p_{cls}^{i},t_{l}^{i}). \tag{4}

Label Smoothing for Novel Class Discovery

使用一键式标签训练的模型往往对学到的特征赋予较高的权重。这些权重使得模型对与已知类别共享相似特征的新类别产生激活,并将它们自信地映射到已知类别。可以使用阈值来区分已知类别和新兴类别,从而发现新兴类别。然而,仅凭阈值会将许多新兴类别划分为已知类别。标签平滑可以软化一键式标签,这使得已知类别和新兴类别更容易分离。从方程式4可以得知,BCE(二元交叉熵)被表述为

BCE(p,t)=t\cdot\log(p)+(1-t)\cdot\log(1-p), \tag{5}

最小化BCE等同于最大化对应标签的预测逻辑值。这意味着分类预测

p

,即sigmoid函数的输出,将接近1。sigmoid函数的输入,即所有加权特征的和,将非常高以使

p

接近1。特征的高权重使得模型自信地将新兴类别映射到已知类别(如图1所示),尤其是对于那些与已知类别共享相似特征的新兴类别。

在训练阶段,我们使用标签平滑来平滑分类的一键式标签,以减少特征的权重,防止模型对已知类别特征过拟合

t_{l}^{i}=\begin{cases}1-\lambda\varepsilon&\text{如果 }i=c\\ \lambda\varepsilon&\text{其他情况},\end{cases} \tag{6}

其中

t_{l}^{i}

是索引

i

的标签,

\lambda

是一个缩放参数,

\varepsilon

是一个很小的常数,

c\in\mathcal{K}^{\text{t}}

是类别标签。在推断阶段,我们可以通过使用校准函数

\Phi(p_{cls})

的预测

p_{cls}

来区分已知类别和新兴类别

\Phi(p_{cls})=\mathcal{I}(p_{cls}<\varphi), \tag{7}

其中

\mathcal{I}

在条件成立时等于1,否则为0。如果校准函数的值为1,我们将预测的分类校准为“新兴”,如果校准函数的值为0,则不做任何处理。算法1提供了在NMS中使用校准函数的概述。

4 Experiments

New Benchmark: Data Split

为了具体实现OWOD设置,我们将来自COCO的数据类别根据其粗略分类划分为四个连续的任务。基准构建基于三个核心原则。首先,尽可能在每个任务中包含更多的训练图像。其次,每个任务的训练图像逐渐减少,以模拟现实世界中的长尾数据分布。第三,所有任务都具有平衡的类别数量。所有训练图像都使用COCO 2017训练集创建,并且从每个任务的训练图像中保留1k图像用于验证。我们使用COCO 2017验证集作为每个任务的测试图像(见表2)。需要注意的是,训练和验证划分只包含当前已知的类别,而新类别(即除了已知类别之外的类别)仅在测试集中遇到。由于训练数据中只存在已知类别的限制,因此相比于其他OWOD基准,训练数据较少。

Evaluation Metrics

对于已知类别,我们在IoU阈值为0.5时使用标准的平均精度均值(mAP)。对于新颖类别,我们使用召回率,因为mAP对缺失注释敏感,而且在COCO中有些新颖类别没有进行注释(例如,图0(b)中的犀牛)。

Implementation Details

我们在采用标签平滑的YOLOv5 [13] 架构 n, s, m, l, 和 x 上进行实验。与 [14, 8, 32] 不同,我们不使用任何预训练权重,相反,我们从零开始训练以防止信息泄露。我们从零开始在任务1上训练模型。然后,我们连续在任务2上训练模型。任务3和任务4也是如此。我们设置

\lambda_{1}

= 0.05,

\lambda_{2}

= 1,

\lambda_{3}

= 0.5 * nc / 80(

nc

是当前已知的类别数量),

\varepsilon

= 0.5,

\lambda

= 0.1,

\varphi

= 0.2。

在新型OWOD基准测试上的性能

我们尝试了新型OWOD基准测试,该测试要求模型仅用已知类数据通过标签平滑发现新类别。YOLOOC使用带有校准的标签平滑。表1展示了在我们的数据分割和评估中,YOLOOC,ORE [14](没有依赖带有强烈新对象监督的留出验证数据的能量基新识别器),和OW-DETR [8]的性能。我们将YOLOv5s,YOLOv5s + 微调(ft),以及YOLOv5s + 微调 + 校准函数(cali)作为基线报告性能。YOLOv5s仅在每个任务上使用训练图像,而其他模型使用相同的训练和微调图像。为了模拟现实场景中的隐私约束、有限的计算和内存资源,我们将微调的每个已知类别保留最多100个实例。对于t2,t3和t4的微调,分别有1477,2201和2868张图像。在完成每个任务学习后,使用已知类的mAP和新类别的召回率(U-Recall)来评估性能。在任务4中,仅评估已知类的mAP,因为所有80个类别都已知晓。

组件消融研究。 在YOLOv5s,YOLOv5s + ft,YOLOv5s + ft + cali,和YOLOOC

{}_{s}

之间进行比较,由于只有当前可用的类别,YOLOv5s检测器在当前已知类别中保持最佳的mAP,而先前已知类别和所有已知类别的mAP最差。当部分先前已知类别的图像可用时,YOLOv5s + ft检测器总是在先前和所有已知类别中获得最佳的mAP。由于YOLOv5只能将对象映射到已知类别,因此U-Recall不适用于YOLOv5s和YOLOv5s + ft。经过校准后,YOLOv5s + ft + cali可以在牺牲已知类别轻微性能下降的代价下发现新类别。在已知类别性能略有下降的情况下,YOLOOC

{}_{s}

在这四个检测器中拥有最大的U-Recall,将U-Recall从1.5,2.4,2.1增加到2.9,5.2,5.3。一些低置信度的已知类别预测将被错误校准,降低已知类别的mAP。当模型与已知类别拟合良好,以至于所有已知类别都具有高置信度时,这种影响可以显著降低。

新类别发现。 对于基于感知的系统,只有在新类别被检测到之后,它们才能被增量学习。将U-Recall与所有最先进的OWOD检测器进行比较,包括ORE [14],OW-DETR [8],YOLOOC(3.9,4.8,6.1)始终优于ORE(0.7,0.1,2.5)和OW-DETR(3.9,4.0,5.1),显著优于ORE,略优于OW-DETR。YOLOOC在任务1上的mAP低于其他原因可能是,与两阶段检测器相比,一级检测器通常性能较低。YOLOOC在其他任务上的mAP低于其他原因可能是由于ImageNet预训练权重,这使得模型的微调能够恢复得更好。YOLOOC在新类别发现方面表现良好,需要在增量学习中提高已知类别的性能并保持该性能。

Performance on Open-Set Setup

此外,我们还进行了开放集实验。与关注发现新类别的开放词汇不同,开放集关注的是它感兴趣的对象(即已知类别)。YOLOOC在没有校准的情况下使用标签平滑。具体来说,我们遵循[2]的协议,该协议在闭集(VOC 2007测试集)和开放集设置(将数量相等的来自COCO 2017训练集的图像添加到闭集中)上评估模型。在开放集设置中,有20个来自VOC 2007测试集的已知类别和60个来自COCO 2017训练集的新类别。性能通过在0.5阈值下的平均精度(mAP)来衡量。理想的模型是在闭集设置中性能高(即100),并且在开放集设置中性能没有下降(即0)。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-04-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 集智书童 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 Introduction
  • 2 Related Work
  • Object Detection
  • Open-Set Object Detection
  • Open-World Object Detection
  • Novel Class Discovery
  • 3 Proposed Approach
  • Problem Definition
  • Model Architecture
  • Label Smoothing for Novel Class Discovery
  • 4 Experiments
  • New Benchmark: Data Split
  • Evaluation Metrics
  • Implementation Details
    • 在新型OWOD基准测试上的性能
    • Performance on Open-Set Setup
    相关产品与服务
    腾讯云服务器利旧
    云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档