该论文主要是关于目标检测中的标签分配问题,作者创新性地从全局的角度重新审视了该问题,并提出将标签分配问题看成是一个最优运输问题。要知道最优传输问题是当前最优化理论和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和召回也以明显的优势超过了其他现有的一级探测器。

OTA:目标检测中的最优传输分配相关推荐

  1. 目标检测中的Tricks

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 来自 | 知乎    作者 | roger 链接 | https: ...

  2. 综述:解决目标检测中的样本不均衡问题

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨SFXiang 来源丨AI算法修炼营 编辑丨极市平台 极市导 ...

  3. 目标检测中的分类和定位冲突问题

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:steven Li | 来源:知乎 https://zhuanlan.zhihu.com/p/1 ...

  4. 堪比Focal Loss!解决目标检测中样本不平衡的无采样方法

    训练目标检测模型的一个难点是样本不均衡,特别是正负样本比例严重失衡.目前解决这类问题主要是两种方案(见综述Imbalance Problems in Object Detection: A Revie ...

  5. 检测到目标服务器启用了trace方法_综述:目标检测中的多尺度检测方法

    ↑ 点击蓝字 关注极市平台作者丨SFXiang来源丨AI算法修炼营编辑丨极市平台 极市导读 本文从降低下采样率与空洞卷积.多尺度训练.优化Anchor尺寸设计.深层和浅层特征融合等多个方面入手,对目标 ...

  6. 目标检测中的anchor-base与anchor-free

    前言 本文参考目标检测阵营 | Anchor-Base vs Anchor-Free 如何评价zhangshifeng最新的讨论anchor based/ free的论文? - 知乎 基础知识 | 目 ...

  7. 目标检测中的Anchor-free回顾

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 Anchor-free 的检测算法可分为anchor-point的算法和key-point的算法.An ...

  8. CVPR2020 | MAL:联合解决目标检测中的定位与分类问题,自动选择最佳anchor

    点击上方"AI算法修炼营",选择"星标"公众号 精选作品,第一时间送达 本文是收录于CVPR2020的工作,其实文章在去年就挂在了网上,整体思路还算不错.具体来 ...

  9. 综述 | 目标检测中的多尺度检测方法

    本文从降低下采样率与空洞卷积.多尺度训练.优化Anchor尺寸设计.深层和浅层特征融合等多个方面入手,对目标检测中的多尺度检测方法进行了全面概述,并介绍了多尺度检测相关方法. 前面的话 传统卷积网络通 ...

最新文章

  1. 转]网络上收集的Visual Studio 2008的一些小技巧
  2. ERP项目成败的三个因素
  3. 一行代码搞定Python逐行内存消耗分析
  4. 【转】坐标系变换矩阵推导
  5. UVA - 227 Puzzle
  6. Multiple substitutions specified in non-positional format; did you mean to add the formatted=false
  7. Cinemachine教程 | Unity中如何快速制作相机切换动画?
  8. html中的灵动标签,《帝国网站管理系统》一招鲜吃天遍天系列教程之 灵动标签使用...
  9. 最佳实践 —— 单元测试
  10. 《python核心编程》笔记——系统限制
  11. android 自定义控件之下拉刷新源码详解
  12. 黑苹果 hackintosh 安装初体验
  13. JS new一个对象的过程
  14. 搜集各种稀奇古怪的编码
  15. 《大明王朝》掠之于官
  16. CS上线Linux--坑太多了
  17. 看尚c49s电视恢复出厂设置后无法注册问题
  18. 亲身实践已解决:Mysql Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT
  19. 一文掌握 JVM 面试要点
  20. 因果系列文章(4)——拨开混杂的迷雾

热门文章

  1. 使用Nessus漏扫
  2. RASPBERRY PI 3 MODEL B 安装使用
  3. 关于sql注入之cookie注入
  4. 驱动开发中使用安全字符串函数
  5. FreeLibraryAndExitThread DLL中线程的安全退出
  6. OD里alt+F9和Ctrl+F9和shift+F9的区别
  7. BIOS-SMI Introduction
  8. linux共享内存通信方式,linux下进程通信方式--共享内存
  9. 曙光i620c20用户手册_曙光天阔I620-G20服务器技术白皮书.pdf
  10. 计算机专业知识考试 一,计算机专业知识试题(事业单位计算机专业知识考试试卷)(1)...