APP下载

基于特征解耦的开放世界目标检测

2023-11-15李林轩白传澳

重庆理工大学学报(自然科学) 2023年10期
关键词:检测器示例标签

田 霖,李 华,李林轩,白传澳

(长春理工大学 计算机科学技术学院,长春 130022)

0 引言

传统目标检测算法[1-3]是在一个封闭的集合下进行的,即假设在检测过程中遇到的所有类别都在训练集中得到了正确标注。然而,这种设定应用于现实世界受到很大的限制,一方面需要大量的人力进行标注,另一方面人类无法提前预知所有可能遇到的目标。尤其在自动驾驶、机器人等领域,检测器经常会遇到训练集中未涵盖的目标。在这种情况下,传统的目标检测算法很容易忽略那些未知目标。

开放世界目标检测最早由Joseph等[4]提出,其设定更贴近于真实世界。检测模型可以识别已知类并标记未知类,将这些未知类呈递给人类后,人类用户选择感兴趣的部分给予注释,最后逐步学习未知类。目前,开放世界目标检测主要面临着两大问题:一是检测器容易将未知类忽略,错分为背景,这源于传统目标检测器的强监督性,它们只会根据先验知识进行识别;二是检测器容易将未知类和已知类混淆,这源于潜在空间中的特征纠缠,已知类和未知类通常是纠缠在一起的。此外,未知类检测效果的提升通常会导致已知类检测效果的略微下降,这也是一个值得关注的问题。

研究通过引入退火调度模块[5],对已知特征和未知特征进行解耦,并以标签转移学习的方式协调未知特征和已知特征的学习,指导检测器的检测。同时引入ECA(efficient channel attention)模块[6],在保留原网络性能的同时,降低模型的复杂度,进而提高分类精度。

1 相关工作

开放世界目标检测由Joseph等提出,可分为开放集目标检测和增量学习2个部分。

开放集分类与检测:在开放集的设置下,通过训练集获得的知识是不完整的。Scheirer等[7]提出了开集分类器,该分类器可衡量在标记一个远离已知类样本时的性能和风险(开放空间风险)。Liu等[8]考虑到长尾识别在目标检测中的应用,开发了一个度量学习框架,将不可见类识别为未知类。类似的,分布外目标检测[9]和新颖类检测[10]也都曾应用于开放集分类中。

Dhamija等[11]开始了开放集目标检测任务,并提出了开放集目标检测协议。Opendet[12]从密度特征角度来分离已知类和未知类,即未知类通常分布在潜在空间的低密度区域。

增量学习:在标记未知后,人类用户可以根据感兴趣的类提供一些未知类的训练实例,开放世界目标检测器的一个关键是能够学习新的类。从头开始重新训练的方案并不可行,这会花费大量时间,且此阶段不存在先前的类。而只使用新类实例进行训练会导致模型大量遗忘先前的类[13]。目前,有很多方法都可用来缓解这种遗忘,包括参数正则化[13]、示例重放[14]、动态扩展网络[15]和元学习[16]等。

开放世界目标检测:Joseph等[4]提出了ORE(towards open world object detection),通过基于RPN自动标记未知、能量模型以及对比聚类,赋予模型检测未知的能力。随后又提出了OW-DETR[17],通过可变形transformer,添加基于注意力驱动的伪标记、新颖性分类和目标性得分3部分解决了这一问题,大幅提高了对未知类的检测能力。Wu等[18]通过聚类等方法来让检测器区分不同的未知类。Prob[19]提出了一种目标性概率框架,使检测器能够对不同提议给出未知目标概率。

2 实验方法

2.1 开放世界设置

遵循ORE中的开放世界设置,对任意时间t,认为已知类目标集合为Kt={1,2,3,…,C}⊂N+,N+是正整数集。为了模拟真实世界的情况,假定未知类集合U={C+1,…},已知目标类Kt在数据集Dt={Xt,Yt}中被标记,Xt表示输入图像,Yt表示标签。输入图像包含M个训练图像,即Xt={I1,…,IM},每个图像对应标签集Yt={Y1,…,YM}。每个Yi={y1,y2,…,yK}用它们的标签和位置编码一组K个目标实例,即yk=[lk,xk,yk,wk,hk],分别表示边界框的中心坐标、宽度和高度。

开放世界目标检测模型Mc可以检测所有已遇到的目标类,并标记未知类传递给人类用户,人类用户可以选择感兴趣的类并提供训练示例,模型增量地添加新类并更新模型,无需在整个数据集上重新训练。如此循环往复,检测器不断用新的知识更新自己,如图1所示。

图1 开放世界设定示意图

2.2 开放世界目标检测面对的挑战

目前,开放世界目标检测主要面对着以下2种挑战。

一是模型存在“忽视”错误,即对未知类的泛化能力较差,容易将未知类错误分类为背景或已知类。这种情况下,模型可能无法准确识别并处理未曾见过的目标类别,如图2(a)所示。

图2 开放世界目标检测可能出现的2种错误

二是模型存在“傲慢” 错误,即容易过度自信地将未知类推断为已知类。这种情况下,模型可能会产生误导性的输出结果,导致错误的决策,如图2(b)所示。

Joseph等提出的ORE模型很大程度缓解了2个问题,但其中的能量模型存在未知数据泄露的可能。

2.3 基于特征解耦的开放世界目标检测

2.3.1基于RPN自动标记未知

在基础的检测器选择上,使用了Faster R-CNN[2],Dhamija等[11]发现与单阶段的YOLO检测器[1]相比,它具有更好的开集性能。Faster R-CNN是一种两阶段目标检测器:在第一阶段,由区域提议网络(region proposal network,RPN)生成提议框;在第二阶段,由感兴趣区域(region of interest,RoI)头部中对第一阶段生成的边界框进行分类和回归。RPN可以分离前景和背景,这为筛选未知类提供了基础条件。

对于给定的输入图像,RPN生成前景和背景实例的一组边界框预测以及相应的目标得分。将那些具有高目标得分但与地面真值不重叠的目标标记为潜在的未知目标。总而言之,按目标得分排序,选择前k个背景区域作为未知目标。

2.3.2对比聚类

分离潜在空间中的类是开放世界目标检测的一种基础方法。实现这一点主要使用的是对比聚类。对比聚类会将同一类的实例聚在一起,而不同类的实例则会被推远,如图3所示。

图3 特征空间聚类示意图

对于已知的i∈Kt,定义对比损失为:

(1)

式中:pi为原型向量;fc∈RD为特征向量;c为类别。

1)l(fc,pi)可表示为:

(2)

2)D代表任意距离函数,Δ为相似类和不相似类的接近程度。最大限度地减少这种损失,以确保潜在空间中不同类进行有效分离。聚类损失会在一定的迭代次数后开始计算,计算出的聚类损失被添加到标准检测损失中,并反向传播以端到端的方式学习网络。

2.3.3缓解遗忘

检测器对未知类进行增量学习后会产生灾难性的遗忘。在少样本目标检测的相关研究中,存储少量示例进行回放是有效的[20]。少样本目标检测与开放世界的设置有很多相似之处,因此选择了示例重放的方法来缓解这种遗忘。存储一组平衡的示例,并在每个增量任务步骤后对模型进行微调,如表1所示。其中,t2表示示例回放前,t2_ft表示示例回放后。

表1 微调结果

2.3.4基于退火算法的标签转移学习

退火算法源于物理中退火的概念。物理中的退火指的是指物体逐渐降温的物理现象,温度越低,物体的能量状态越低,最终呈结晶态。大自然可在缓慢降温时找到最低能量状态,即结晶。但如果温度骤降,就会形成不是最低能态的非晶形。

受到Kirkpatrick等[21]和Ma等[5]的启发,提出了模拟退火算法最优化算法,它在搜索过程引入了随机因素。模拟退火算法以一定的概率来接受一个比当前解要差的解,从而跳出局部最优解,得到全局的最优解。

由退火算法的分离过程可联想到了开放世界的未知目标和已知目标。神经网络在学习一张图片时,未知目标经常与多个目标纠缠在一起,称为目标级特征纠缠。与已知的真值框相匹配的提议框既包含已知的类特定特征,也包含有利于未知识别的潜在未知信息,从而导致已知类错分为未知类。大多数图像同时包含了已知类和未知类,因此要想提高检测精度,需要对未知类和已知类进行特征解耦。

基于此,提出的网络结构如图4所示,模型在锯齿退火调度策略下进行标签转移学习。标签转移学习可以引导模型区分已知和潜在的未知信息,以推进未知学习;而退火调度策略可以通过修改解纠缠度来调整学习过程,以达到未知和已知学习之间的平衡。整个标签转移学习过程可以被视为2个连续的阶段,即形成阶段和扩展阶段,分别具有不同的解纠缠度。

语用学家除了关心人们的语言表达和产出,还关心人们对语言的理解和感知:人们如何评价交际活动中的语用策略及其语言实现形式是否恰当、礼貌、有助于人际关系的维护;人们如何评价影响策略和形式选择的语境因素的价值和重要性,例如交际双方的相对权势、社会距离、言语行为的强加程度等。前者涉及了语言语用问题,后者涉及了社会语用问题。为了研究清楚这两方面的问题,研究人员设计了元语用评价(metapragmatic assessments)工具,包括分级、卡片分类等具体形式,用以了解被试的元语用知识。

图4 网络结构图

在形成阶段,模型同时学习已知和未知。在扩展阶段,将解纠缠度调整为锯齿形,以在考虑未知对象的情况下重建已知的决策边界。最终形成了未知类和已知类的决策边界,使模型具有未知识别能力。目标级的特征纠缠可表示为:

(3)

式中:λ为解纠缠度;x′为第i个已知类(未知类)的信息。为了促进未知分类,并引导模型区分未知和已知,设置了一个相关的热标签来转移学习未知类。标签转移修改可以表示为:

(4)

分类正则化可表示为:

(5)

标签转移学习可以鼓励模型探索未知特征,从而在无监督的情况下推广到未知类。较大的解纠缠度会造成已知类检测性能下降,锯齿退火调度策略可以确保未知和已知学习的相互推进。相较于文献[5]中的方法,形成阶段在一个开放集合下进行。在形成阶段,模型已经具有一定的未知目标检测能力;在扩展阶段,未知检测能力会得到一定的提高,不过相对而言,已知目标检测能力会有所下降。扩展阶段mAP变化如图5所示。

图5 扩展阶段mAP变化示意图

整个训练过程可以分为形成阶段和扩展阶段。以p表示迭代次数,Pf表示形成阶段的迭代次数,则锯齿退火调度表示为:

(6)

式中,τ为表示退火速度的一个常数,随着迭代次数的增加调整。

2.3.5ECA模块

由于退火模块的引入,未知类检测精度得到了很大提高,但已知类精度略有下降,因此考虑加入ECA模块[6],如图6所示。

图6 ECA模块示意图

ECA模块只引入了少量参数,同时带来明显的性能增益。通过对SE模块[22]分析,发现避免降维对于学习通道注意力很重要,适当的跨通道互动可以在显著降低模型复杂度的同时保持性能。ECA提出了一种不降维的局部跨通道交互策略,该策略可以通过一维卷积有效地实现。表2展示了不同注意力机制下任务1的实验结果。

表2 不同注意机制下任务1的评估指标

3 实验

3.1 数据集与评估指标

实验选用的数据集为Joseph等[4]提出的开放世界数据集。其中包括Pascal VOC和MS-COCO中的类。将任务分为4组,特定感兴趣的类在时间点t加入系统,将VOC中的类和数据分组为第1个任务T1。MS-COCO的其余60类被分为3个连续的任务,并在每个任务中保留1 000张图片进行验证。评估指标上,使用WI(wilderness impact)[11]描述未知类混淆为已知类的现象:

(7)

式中:PK为在已知类上评估精度;PK∪U为在已知和未知类上的评估精度(召回水平0.8)。除WI外,还使用了A-OSE(absolute open-set error)[4]表示被错分为已知类的未知类数量;使用mAP(mean average precise)来衡量已知类精度和增量学习能力。

(8)

(9)

此外,还可计算出未知类精度U-ap和未知类召回率U-recall。

3.2 实验结果与可视化分析

主干网络选择了Resnet50,基础检测器选择了Faster R-CNN,Oracle为ORE在理想情况下的设置,WI和A-OSE值越低,对未知类效果检测越好,mAP越高,对已知类的检测效果越好。实验结果如表3—表5所示,可以看出所提方法在大多数评估指标上要比ORE要好。

表3 任务1的实验结果

表4 任务2的实验结果

表5 任务3及任务4的实验结果(任务4已全部学会,无未知类)

对部分图片进行了可视化,图7和图8展示了所提方法与Faster-RCNN、ORE的可视化对比以及增量学习的效果。

图7 所提方法与Faster-RCNN、ORE的可视化效果图

图8 其他可视化效果图

Faster-RCNN的方法只能检测已标注的目标,未知的目标有时会错分为已知,有时会忽略为背景。ORE的方法有时会产生过多的框,有时也会产生错误检测;此外,所提方法相较于ORE,可以检测到更多的目标,可以在增量学习后正确识别出未知目标。

3.3 消融实验

为了研究每个组件在网络中的贡献,进行了消融实验。将各个组件分别加入网络中,在任务1下得到了如表6的结果。可以看出,所提方法的每部分在网络中都有一定的贡献。

表6 消融实验结果

4 结论

开放世界的目标检测能够识别已学习过的已知类并标记未知类提供给人类用户,接受注释后再进行增量学习。所提方法能够缓解开放世界目标检测遇到的两大问题,在以前的基准上略有提升,希望研究成果能对开放世界的目标检测有所贡献。

猜你喜欢

检测器示例标签
大还是小
2019年高考上海卷作文示例
常见单位符号大小写混淆示例
“全等三角形”错解示例
无惧标签 Alfa Romeo Giulia 200HP
不害怕撕掉标签的人,都活出了真正的漂亮
车道微波车辆检测器的应用
标签化伤害了谁
一种雾霾检测器的研究与设计
基于多进制查询树的多标签识别方法