现有的物体检测算法均采用单独识别物体的方式,而没有利用物体之间的相互关系。近日,来自微软亚洲研究院视觉计算组的研究员们提出了物体关系模块(object relation module)。该模块通过建模物体间外观和几何的交互信息来首次实现了所有物体的联合推理学习。该模块可以用于提高物体识别的精度,也可以替代通常使用的非极大抑制(non-maximum suppression)后处理方法。在现今最好的物体检测框架下,利用该模块实现了首个完全端到端的物体检测系统。
链接:https://arxiv.org/pdf/1711.11575.pdf
目前最好的物体检测方法一般遵循单个区域分类的范式:给定一些候选区域(object proposal),对每个区域单独做分类和回归。此后,运行一个手工设计的启发式后处理方法去删除重复的检测框,称作非极大抑制。
微软亚洲研究院研究员们打破了这一范式,其中的关键是新提出的物体关系模块,这一模块使得所有物体能被联合推理,而不是像目前一般采用的范式那样对每个区域单独处理。如图 1 所示,研究员们将这一个模块应用到物体框识别(instance recognition)和重复框删除(duplicate removal)两个步骤中,物体的识别精度得到提升,同时,此前手工设计但不可或缺的非极大抑制也得以被一个可学习的模块所替换并提升,从而实现首个完全端到端的物体检测器。
图 1. 目前最好的物体检测器基于一个四步法的流程。物体关系模块(红色虚线框)能很方便地嵌入这个流程,用于提升物体框识别和重复框删除这两个步骤,最终得到一个完全端到端的物体检测器。
其中关键的物体关系模块本质上基于 attention 机制。Attention 机制在自然语言处理(NLP)领域已经有不少成功应用,它可以建模处于任意位置或者不同特征分布的元素之间的关系。NLP 中的词语是符合这样特点的元素,物体检测中的物体也是这样的元素,都很适合用 attention 机制来建模。与词语不同的是,物体位于二维的图像空间,不同的物体其尺度和长宽比会有较大差异。一般而言,物体的位置关系(或者几何特征)相比于一维句子中的词语位置会更复杂,并起到更重要的作用。基于此,提出的物体关系模块推广了原始的 attention 权重计算方法,新的 attention 权重将包含两项,一项是原始的权重,另一项是一个新的几何权重。几何权重建模了物体间的空间位置关系,具体来说它考虑相对位置,使得整个物体关系模块满足平移不变性(物体识别中很重要的一个性质)。实验表明这一新的几何权重对于物体关系模块非常重要。
这一新的物体关系模块可以处理任意数目的物体,这些物体是并行处理的(此前通常采用的序列关系建模方法),同时也是可微的,in-place 的(输入输出特征维度不变)。因此,它可以作为一个基本构件很方便地嵌入到任何网络框架中。事实上,在应用到物体检测时,原始的训练方法和超参数不用做任何改变,参数量和计算量也只有少量增加。同时,这一模块也是通用的,这个工作中展示了其在物体检测里的应用,但其应用并不局限于物体检测,事实上看不到任何妨碍其应用到其他诸多视觉问题的理由,例如物体分割,动作识别,视觉自动标题,视觉问答等等。
图 2. 左:物体关系模块;右:关系特征计算。f_A 表示输入的表观特征,f_G 表示输入的几何特征(4 维 bounding box),f_R 表示关系特征。该模块可以完全由现有深度学习框架中的基本操作来实现(例如 mxnet)。
图 3. 将物体关系模块应用到 a) 物体框识别(增强的 2fc head)和 b)重复检测框删除网络。在端到端检测系统中,b) 中红色箭头部分的梯度将会回传。
表 1. 应用到物体框识别(对应图 3a)的 ablation 实验(ResNet50 on COCO minival)。添加 {4, 4} 个模块可以带来 3.2 个点(mAP@all)的提升。为了效率,后面的实验采用 {1, 1} 个模块。
表 2. 比较不同的 head 在相同复杂度下的准确率。物体关系模块的提升不是由更多的参数和计算量来实现的(简单加深和加宽提升很小)。
表 3. 应用到重复检测框删除(对应图 3a)的 ablation 实验(none 表示不用相关的特征)。
表 4. 重复检测框删除网络和 NMS/SoftNMS 进行了比较。采用端到端训练以后,检测性能进一步提升(30.5->31.0)。
表 5. 从左到右依次是 2fc head+SoftNMS (baseline),2fc+RM head (应用物体关系模块到 2fc head) 和 2fc+RM head+端到端。基本网络是 ResNet101。训练过程中均采用了在线难样本挖掘(OHEM)。
图 4. 高相关权重的检测框对(代表性例子)。蓝色框是被影响的参考框,橙色框表示对其有较大贡献的检测框(左上角的数字显示具体的相关权重)。左图显示重叠的框对中心的框产生大的影响;有图显示人对手套产生较大影响。