小凡 · 2020年05月18日

目标检测领域中的数据不均衡问题综述

作者: Tom Hardy
首发:3D视觉工坊微信公众号

参考:Imbalance Problems in Object Detection

============================================

paper链接:https://arxiv.org/abs/1909.00...

主要内容和相关背景

本文主要介绍了目标检测领域的八个数据不平衡问题,并将这些问题分类为四种主要类型:类别不平衡、规模不平衡、空间不平衡和目标不平衡。

image.png

当与不同类别相关的示例数量之间存在显著的不平等时,就会出现类别不平衡。虽然这方面的经典例子是前景到背景的不平衡,但前景(正)类之间也存在不平衡。当对象具有不同的比例和属于不同比例的不同数量的示例时,就会出现比例不平衡。空间不平衡是指与bounding box的空间特性有关的一组因素,比如回归惩罚、定位和IoU相关。最后,当存在最小化多个损失函数时,会出现客观不平衡(各个损失函数的权重不均衡),这在OD中通常是如此(例如分类和回归损失)。

image.png

现主要有两种目标检测方法:自上而下和自下而上。尽管自上而下和自下而上的方法在深度学习时代之前都很流行,但目前,对象检测方法的大多数都遵循自上而下的方法;自下而上的方法是最近才提出的。本文围绕这两类思路,开展了研究讨论。

目标检测中的四大类数据不均衡问题

主要几种在类别不均衡、尺度不均衡、空间不均衡、优化目标不均衡,详细如下图所示,基于四大类不均衡问题又扩展成8类子问题:前景背景类别不均衡、前景和前景类别不均衡、物体/box尺度上的不均衡、特征层的不均衡、回归损失下的不均衡、IOU分布不均衡、物体位置的不均衡、优化目标的不均衡。

image.png

1、类别不均衡

这个问题可以表现为“前景-背景不平衡”,其中背景实例的数量明显超过正实例;或者“前景-前景不平衡”,其中通常只有一小部分类占整个数据集的一大部分。类不平衡通常在检测pipelines中的“采样”阶段处理。

2、尺度不均衡

当对象实例具有不同的比例和与不同比例相关的不同数量时,可以观察到尺度比例不平衡。这个问题是物体在本质上具有不同维度这一事实的自然结果。规模也可能导致特征级别的不平衡(通常在“特征提取”阶段处理),不同抽象层(即高级别和低级别)的贡献不平衡。尺度不平衡问题表明,单一尺度的视觉处理不足以检测不同尺度的目标。

3、空间不均衡

空间不平衡是指与bounding box的空间属性相关的一组因素。基于这些空间性质,我们确定了三种空间不平衡的亚类型:(i)“回归损失不平衡”是关于个别例子对回归损失的贡献,与损失函数设计有关(ii)“IoU分布不平衡”(iii)“物体位置不平衡”

4、优化目标不均衡

当有多个目标(损失函数)要最小化时(每个目标用于特定任务,例如分类和框回归),就会出现目标不平衡。由于不同的目标在其范围和最佳解决方案方面可能不兼容,因此必须制定一个平衡的策略,以找到一个所有目标都可接受的解决方案。

类别不均衡及解决方法

1、 前景背景不均衡

在前景背景类不平衡的情况下,过表示类和欠表示类分别是背景类和前景类。这种类型的问题是不可避免的,因为大多数边界框被边界框匹配和标记模块标记为背景(即负)类。前景背景不平衡问题发生在训练期间,并且不依赖于数据集中每个类的示例数,因为它们不包括背景上的任何注释。

我们可以将背景类不平衡的解决方案分为四类:(i)硬采样方法,(ii)软采样方法,(iii)无采样方法和(iv)生成方法,详细方法汇总如下图所示:

image.png

硬采样的思路:设置指定数量或者比例的正负样本(RCNN系列)。

软采样的思路:软抽样通过对训练过程的相对重要性来调整每个样本的贡献(设定样本损失权重)。

无采样方式:设立新的分支,根据前面的样本,预测后面样本的权重。

生成方法:主要基于GAN。

2、前景前景不均衡

主要集中在数据集上的类别不均衡,和每个bacth内的类别不均衡。

基于类别不均衡,论文阐述此情况不可避免,可以通过生成新的图像和类别进行解决。

基于batch内的类别不均衡:可以使用在线前景均衡(OFB)抽样,通过给每个要抽样的bounding box分配概率,可以在批处理级别上缓解前景类不平衡问题,从而使批处理中不同类的分布是均匀的。换言之,该方法旨在提升抽样过程中阳性样本数较少的类。虽然该方法是有效的,但性能改善并不显著。

尺度不均衡及解决方法

object/box级别的比例不平衡,主要包括物体和输入box的比例分布不平衡以及特征不平衡(分析了特征提取层存在的问题,并对金字塔特征提取方法进行了研究)

1、基于box/物体尺度的不均衡问题

当对象或输入bounding box的某些大小在数据集中过度表示时,会发生尺度平衡。已经证明,这会影响总体检测性能。下图显示了MS-COCO数据集中对象的相对宽度、高度和面积;

image.png

解决方法主要包括:基于backbone特征层次的预测方法、基于特征金字塔的方法、图像金字塔方式、图像金字塔与特征金字塔相结合的方法。

2、特征层次的不平衡

针对FPN结构中的特征层次,有几种方法可以解决FPN体系结构中的不平衡问题,从设计改进的自顶向下通道连接到完全新颖的体系结构。论文考虑了使用新的架构来缓解特征级不平衡问题的方法,根据它们作为基础的用途将它们分为两类:使用金字塔或backbone特征作为bias。

image.png
空间不均衡及解决方法

=================

尺寸、形状、位置(相对于图像或另一个框)和IoU是边界框的空间属性。这些属性的任何不平衡都可能影响训练和泛化性能。例如,如果不采用适当的损失函数,位置的轻微变化可能导致回归(局部化)损失的剧烈变化,从而导致损失值的不平衡。在这一部分中,我们将具体讨论这些空间属性和回归损失问题。

image.png

1、回归损失的不均衡

目标检测的回归损失主要有两类:第一类是基于Lp-norm-based(例如L1,L2)的损失函数,第二个是基于IoU的损失函数。上表显示了广泛使用的回归损失函数的比较。(不断解决了各类损失函数优化问题)

2、IoU分布的不均衡

image.png

解决方式:Cascade R-CNN、Hierarchical Shot Detector (HSD)、IoU-uniform R-CNN、pRoI Generator

3、物体位置的不均衡

主要从anchor的尺寸和位置着手优化。

image.png

优化目标不均衡及解决方法

===================

目标不平衡是指在训练过程中最小化的目标(损失)函数。通过定义,目标检测需要多任务丢失,以便同时解决分类和回归任务。然而,不同的任务可能会导致不平衡,这是因为以下的差异:(i)梯度的规范对于任务可能是不同的,并且一个任务可以支配训练。(二)不同任务的损失函数范围不同,影响任务的一致性和均衡性优化。(iii)任务的难度可能不同,这会影响学习任务的速度,从而阻碍训练过程。

解决方法:最常见的解决方案是任务权重,它通过一个额外的超参数作为权重因子来平衡损失项。使用验证集选择超参数。当然,增加任务的数量,就像两级检测器一样,会增加权重因子的数量和搜索空间的维度(注意,两级检测器中有四个任务,一级检测器中有两个任务)。由多任务性质引起的一个问题是不同的函数之间可能存在一致性。对于例如,在AP损耗中,smooth L1(由于损耗的输入通常在应用对数变换后提供)与[0,∞)一起用于回归,而LAP∈[0,1]。另一个例子是GIoU loss,它在[-1,1]范围内,与交叉熵损失一起使用。作者将GIoU loss的权重因子设为10,并利用正则化方法来平衡这种幅度差异,保证训练的均衡性。

本文仅做学术分享,如有侵权,请联系删文。

推荐阅读


重点介绍:1、3D视觉算法;2、vslam算法;3、图像处理;4、深度学习;5、自动驾驶;6、技术干货。博主及合伙人分别来国内自知名大厂、海康研究院,深研3D视觉、深度学习、图像处理、自动驾驶、目标检测、VSLAM算法等领域。
欢迎关注微信公众号
3D与Slam 二维码 极术.jpg
推荐阅读
关注数
1100
内容数
100
专注于3D视觉,Vslam,图像处理等,欢迎关注
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息