------------------------分割线-------------------------------------
一觉起来又多了一周假,崩溃ing–
------------------------分割线-------------------------------------
回归主题,这是一篇AAAI2020的弱监督目标检测文章,着力点在于挖掘出训练样本中大量被忽视的正样本,显著提高了性能。并改进了OICR损失函数来平衡最高置信度候选框和其他候选框对损失函数的贡献。
作者在实验中发现了一个问题:对于具有来自同一类别的多个目标实例的图像,具有较低类别特定分数的目标实例(在强监督中用边界框注释)可能被视为背景区域。而在voc数据集中,这种没有被挖掘出来的正样本是大量的(差不多一半)。这也是作者认为性能能再度提高的地方。
基于此,作者提出了一个端到端的object instance mining(OIM)框架来解决这个问题,该框架基于两个假设:
这个问题在前面的博客中都提过了。简单来说,就是对于一些非刚性物体(人、动物等),检测器倾向于检测出该物体最有区别性的部分(人脸),而不是整个物体(人)。
为了缓解以上两个问题,作者做出了以下两个贡献:
1.提出了一个基于空间图和外观图模型的网络框架
2.提出了目标实例权重重调损失函数
如图即为框架的总体架构,由两部分组成。第一部分是多实例检测器(MID),类似于WSDDN,他主要进行候选区域的选择和分类。
然后第二部分集成候选框的特征和第一部分的检测结果,以使用空间图和外观图从每个图像中的同一类别中搜索所有可能的对象实例。 此外,实例重加权损失旨在学习每个对象的较大部分。
定义:输入图像为 I I I拥有标签为 c c c的类别,区域候选框 P = { p 1 , . . . , p n } P=\{p_1,...,p_n\} P={ p1,...,pn}及其置信度 X = { x ! , . . . , x n } X=\{x_!,...,x_n\} X={ x!,...,xn}, P i c P_{ic} Pic 为置信度最高的候选框,其置信度为 X i c X_{ic} Xic,所以空间图可以定义为 G i c s = ( V i c s , E i c s ) G_{i_c}^s=(V_{i_c}^s,E_{i_c}^s) Gics=(Vics,Eics) ,
V i c s V_{i_c}^s Vics 表示与其有重叠的且IOU大于阈值T的候选框, E i c s E_{i_c}^s Eics 表示他们的空间相似性。
同样,我们定义每个候选框的特征向量为 F = { f 1 , . . . , f n } F=\{f_1,...,f_n\} F={ f1,...,fn}。这些特征向量代表了候选框的外观,所以我们定义外观图为 G a = ( V a , E a ) G^a=(V^a,E^a) Ga=(Va,Ea) ,其中每个 V a V^a Va为与最高置信度候选框有着高度相似的候选框, E a E^a Ea为其相似性。相似性由欧氏距离表示:
D i c = ∣ ∣ f i C − f i ∣ ∣ 2 D_{i_c}=||f_{i_C}-f_i||_2 Dic=∣∣fiC−fi∣∣2
外观相似性的阈值为空间图中所有候选框与最高置信度候选框的外观相似性的均值:
D a v g = 1 M ∑ k D i c , k D_{avg}=\frac{1}{M}\sum_kD_{i_c,k} Davg=M1k∑Dic,k,
s . t . I o U ( p i c , p k ) > T . s.t.\quad IoU(p_{i_c},p_k)>T. s.t.IoU(pic,pk)>T.
基于这来挖掘出尽可能多的正样本,示意图:
上图中,d的蓝框即为置信度最高的候选框,a-c即为找出所有满足条件候选框的步骤。
为了缓解对于非刚性目标学习到目标实例最明显部分为不是整个目标实例,作者为各个候选框分配不同的候选框权重来平衡置信度最高的候选框的权重和区别度不是很高的候选框的权重。
L = − 1 ∣ P ∣ ∑ j = 1 ∣ P ∣ ∑ c = 1 C + 1 w j y c , j log x c , j s L=-\frac{1}{|P|}\sum_{j=1}^{|P|}\sum_{c=1}^{C+1}w_jy_{c,j}\log x_{c,j}^s L=−∣P∣1j=1∑∣P∣c=1∑C+1wjyc,jlogxc,js
这是OICR中损失函数,可以看到,空间图中的每个候选框对损失函数的贡献均等,这就导致了其他得分较低的候选框很难被学习到。
所以作者引入了该损失函数来平衡这个情况:
L = − 1 ∣ P ∣ ∑ j = 1 ∣ P ∣ ∑ c = 1 C + 1 w j y c , j ( 1 + z j s ) log x c , j s L=-\frac{1}{|P|}\sum_{j=1}^{|P|}\sum_{c=1}^{C+1}w_jy_{c,j}(1+z_j^s)\log x_{c,j}^s L=−∣P∣1j=1∑∣P∣c=1∑C+1wjyc,j(1+zjs)logxc,js
z j s = { β , j ≠ i c β − 1 , j = i c z_j^s=\left\{ \begin{array}{rcl} \beta,& & {j \ne i_c}\\ \beta-1, & & {j = i_c}\\ \end{array} \right. zjs={ β,β−1,j=icj=ic
简单来说,就是降低了置信度最高候选框的损失