signed

QiShunwang

“诚信为本、客户至上”

OTA:目标检测中的最优传输分配

2021/6/9 0:38:39   来源:

 

该论文主要是关于目标检测中的标签分配问题,作者创新性地从全局的角度重新审视了该问题,并提出将标签分配问题看成是一个最优运输问题。要知道最优传输问题是当前最优化理论和GAN理论研究领域中的一个很火的研究课题。论文的实验效果俱佳,而且作者还提供了相应的源码。

图片

论文:https://arxiv.org/abs/2103.14259v1
代码:https://github.com/Megvii-BaseDetection/OTA

 

2 论文动机

 

 

 

当前基于卷积神经网络的目标检测器是通过预测一组预定义锚点的分类标签进行目标检测。经典的分配策略可以归结为两种:静态分配策略动态分配策略

静态分配策略通常采用预定义的规则来分配每个锚点所处的目标对象或背景,这种静态策略会存在一个问题,它会导致对于具有不同大小、形状或遮挡条件的目标对象的锚点划分边界会有所不同。

动态分配策略中每个锚点的预测置信度是一个动态分配的指标,高置信度的锚点可以容易地被网络学习,从而被分配给相关的目标对象,但是动态分配策略依然会有因为不能利用全局信息而会导致锚点分配模糊的问题。

一个更好的分配策略应该是摆脱传统的为每一个目标对象单独寻求最优分配的做法,由此启发,作者转向全局最优的思想,并将最优传输理论应用到目标检测中的标签分类问题中,目的是为图像中的所有目标找到全局高置信度分配方式。作者首先将目标检测的标签分配问题表述为一个最优运输问题,然后将求解最优传输问题转化为求解最优运输方案,进而可以利用现成的Sinkhorn-Knopp迭代快速高效地求解。

 

 3 论文模型

 

 

 

3.1 最优传输理论介绍

 

最优传输理论可以被描述为如下供需关系的形式:假定在一个区域内有个供应商和个需求方。第个供应商有个单元的货物,第个需求方需要单元的货物。从供应商到需求者的单位货物的运输成本为。最优传输问题的目标是找到一个最优传输方案使得供应商的所有货物可以以最低的运输成本运输给需求方:,

 

以上问题是一个可以在多项式时间内求解的线性规划问题。在目标检测中,这个线性规划问题的规模很大,作者通过采用Sinkhorn-Knopp快速迭代法求解这个线性规划问题。

 

3.2 最优传输和Sinkhorn迭代

 

将3.1中的线性规划问题转换为如下的增加熵的正则化项的凸非线性形式:

 

其中。是控制正则化项强度的超参数。根据拉格朗日数乘法,则有如下形式:

 

其中和是拉格朗日乘子。通过使优化目标的导数等于0,最优方案被求解为:

 

 

 

 

以上两个等式可以被同时满足,通过迭代如下公式求解v_i和u_j:

 

以上的迭代公式即为Sinkhorn-Knopp迭代。迭代次之后,即可得到近似最优方案:

图片

 

其中和在实际中被设置为和。

 

 

3.3 最优传输理论中的标签分配

 

在目标检测中,假定有个目标和个锚框。给定一张图片,将每个看作是一个有正标签的个单元的供应者(),将每个锚框看成是一个需要一个标签单元的需求者()。

从供应者到需求者的一个正标签单元的最优传输损失被定义为:

图片

 

其中是模型的参数。和表示的是的预测分数和检测框。和表示的是真实类别和bbox。和表示的是交叉熵和损失。是平衡系数。

在训练过程中,除了正标签分配之外,大量的锚框被视为负样本。由于最优传输方案涉及所有锚框,作者引入另一个供应商(即背景),它只提供负面标签。在一个标准的最优传输问题中,总供给必须等于总需求。因此作者将背景可以提供的负标签数量设置为。将一个单位的负标签从背景运输到的成本被定义为:

 

其中,表示的背景类。可以得到代价矩阵。供给向量可以被相应的更新为:

 

 

有了代价矩阵,成本向量,和需求向量,最优传输方案可以通过Sinkhorn-Knopp迭代求解而得。得到之后,可以通过将每个锚点分配给向其输送最大量标签的供应商来相应的进行标签分配。

 

 

3.4 方法改进

 

3.4.1中心先验 

理论上,OTA可以将盒子区域内的任何锚点指定为正样本;对于像COCO这样的一般检测数据集,作者发现中心先验有利于OTA的训练。强制检测器聚焦在潜在的阳性区域(即中心区域)可以帮助稳定训练过程,尤其是在训练的早期阶段,这将导致更好的最终表现。

因此,作者在成本矩阵之前加上一个中心。对于每个,作者根据锚和之间的中心距离,从每个FPN水平选择最接近的2个锚。

 

3.4.2 动态 估计 

一般情况下,每个的正锚的数量适当。基于许多因素,如对象的大小、比例和遮挡条件等。由于很难直接建立从这些因素到正锚点数量的映射函数模型,作者提出了一种简单但有效的方法,根据预测边界框和锚点之间的IoU值,粗略估计每个锚点的正锚点数量。

对于每个,作者根据IoU值选择前个预测。这些IoU值相加,代表估计正锚数。作者称这种方法为动态估计。

如下图所示为最优传输分配的示意图,代价矩阵由每个锚-对之间的成对和损失组成。将寻找最优标签分配的目标转化为解决最优传输方案,然后通过Sinkhorn-Knopp迭代以最小的运输成本将标签从供应商运输到需求方。

图片

 

最优传输分配算法(OTA)如下所示:

图片

 

4 实验结果 

 

 

 

作者在MS COCO 2017数据集上进行了广泛的实验,该实验分别包含大约118k、5k和20k的训练、验证和测试开发集图像。对于消融研究,作者在训练组上训练检测器,并在验证组上报告性能。与其他方法的比较是在测试开发集上进行的。作者还在CrowdHuman验证集上将OTA与其他方法进行了比较,以展示OTA在人群场景中的优势。

 

 

4.1消融研究和分析

 

单个组件的效果:如下表所示,当不采用辅助分支时,OTA的表现优于FCOS 0.9%。在将IoU 分支添加到两者后,这一差距几乎保持不变。动态将AP推向新的最先进的40.7%。可以发现OTA 可以应用于锚和无锚探测器,在所有特征地图上每个位置只有一个正方形锚点。OTA-FCOS 和OTA-RetinaNet的峰值完全相同,证明了OTA在锚基和无锚探测器上的适用性。

图片

 

的影响:“中心先验”的半径值用于控制每个的候选锚的数量。如下表所示,如果采用较小的,只有靠近对象中心的锚可以被指定为阳性,这有助于优化过程集中在更有可能提供信息的区域。随着的增加,候选数量也呈二次增加,导致优化过程中潜在的不稳定性。

模糊锚点处理:在不同下相应性能。模糊锚的数量随着从到的变化而大大增加。在PAA中,可以发现模糊锚的个数对不太敏感,但性能还是下降了0.8%。在OTA中,当多个倾向于将正标签传输到同一个锚时,OT算法将基于最小全局成本的原则自动解决它们的冲突。因此,OTA的模糊锚的数量仍然很低,并且随着从增加到几乎没有增加。

图片

 

如下图所示,红色箭头和虚线椭圆突出显示不明确的区域。由于缺乏上下文和全局信息,A-TSS和PAA在这些区域的性能较差,导致检测性能次优。相反,OTA在这些区域分配的积极锚要少得多,这是一种理想的结果。

图片

 

 

4.2方法比较 

 

如下表所示作者的方法优于所有其他方法。作者采用可变形卷积网络(DCN) ,这使模型的性能从47.0% 提高到49.2%,最后通过多尺度测试技术,最佳模型可以达到了51.5%的平均效率 

图片

 

 

4.3CrowdHuman数据集实验 

 

如下表所示,RetinaNet和FCOS分别只实现了58.8%和55.0%的MR,远不如fast R-CNN这样的两级探测器,揭示了一级探测器在人群场景中的困境。从FreeAnchor开始,通过动态标签分配策略,一级检测器的性能逐渐得到改善。一个TSS达到49.5%的MR,和fast R-CNN(48.7% AP)的性能非常接近。该论文的OTA通过将全局信息引入标签分配向前迈出了一步,将MR提高到46.6%。OTA的AP和召回也以明显的优势超过了其他现有的一级探测器。

图片