跳转至

摘要

近些年来,因为弱监督目标检测仅需要图片分类级别的 label 受到了人们广泛的关注,其代价是准确率一定程度的下降。本文提出了一个简单而有效的弱监督协作目标检测框架,基于共享部分特征增强预测相关性来同时训练强,弱监督两个检测网络。弱监督目标检测网络采取类似 WSDDN 的结构,强监督目标检测网络采取类似 Faster-RNN 的结构。最终在数据集上证明了框架的有效性

补充 WSDDN

WSDDN 全称是 Weakly Supervised Deep Detection Network,即弱监督深度检测网络。

只依靠 image 级别的 label 来对其训练

在这里插入图片描述

整个结构主要是以图像分类和目标检测这两个框架

左边是一个预训练好的 CNN

右边则是一个类似 FasterRCNN 结构,通过感兴趣池化以及 SPP 空间金字塔池化,得到区域 (region) 级别的特征

然后分支成两个数据流,其中一个数据流使用之前预训练好的 CNN 做一个分类,另外一个数据流则做检测任务

其中分类的结果使用的 softmax,形式如下,表示每个区域各个类别的概率

在这里插入图片描述

而检测流中也用的是 softmax,形式如下,表示每个类别中更具有信息的是哪个区域

在这里插入图片描述

最后得到了分类和检测结果,通过矩阵内积 (即对应元素相乘) 将两个 softmax 结果融合

在这里插入图片描述

在这里插入图片描述

1-n 代表图片级别的 label 个数,1-C 代表是类别个数,Φk 的值域在 (0, 1) 之间,可以认为是类别 K 出现在 image_xi 中的概率,如果大于 0.5 则表示出现,因此后面减了个 ½。最后对所有 loss 求和

整体构造

在这里插入图片描述

我们分别有弱检测器记为 Dw,强检测器 Ds

Dw 通过弱监督,如右上角的图片分类任务进行训练,由于 Ds 没有直接的监督所以不能直接训练。因此我们要求 Ds, Dw 需要输出相似的锚框预测

通过最后的 cosistency Loss 来约束两个检测器的预测。另外由于两个检测器的目标任务相同,我们在中间共享了提取的特征。

在这里插入图片描述

上图是更为详细的结构

整体网络基于 VGG16 搭建

然后分支成两条路,红色的是强监督检测器,蓝色的是弱监督检测器

红色的支路则是类似 FasterRCNN 结构最终输出分类和回归框

蓝色的支路先经过 Selective Search Window 算法,将图片划分成各个小区域。送入 SPP 金字塔池化结构,后续的全连接层通过两个分支,分别得到分类和回归框结果。这里要注意的是 FC6 和 FC7 这两个是共享网络参数的。这两个支路结果融合,并与上面红色支路,做了一个 Prediction Consistency Loss,进一步约束两者输出相同的预测。另外还需要根据图片 label,得到图片级别的分类损失,对整个弱监督网络进行优化

损失计算

相较于 WSDDN,该文章的一个创新点也是增强了一个 Loss 计算来约束两个检测器

首先弱监督检测网络最后对目标输出一个图片类别预测,这里没有采取 WSDDN 中使用预训练 CNN 对其进行判别。而是直接通过给定的图像标签来计算损失,损失函数也是使用二分类交叉熵损失函数

在这里插入图片描述

第二就是文章里提到的 consistency loss 了,训练整个框架的一大难点是在不需要检测标签情况下,为强检测器定义一个 loss 来帮助优化。考虑到 Ds,Dw 两个检测器最终的目标是输出预测框及类别,我们提出使用输出的一致性来训练 Ds 检测器

而 cosistency loss 又由三部分组成

在这里插入图片描述

第一部分 CPinter 表示 Dw 和 Ds 对框类别预测的交叉熵损失函数,其中 pjc 表示 Dw 输出,pic 表示 Ds 输出

第二部分 CPinner 表示 Ds 对框类别预测的损失函数,由于训练前期,Dw 是一个弱检测器,会引来部分噪声。所以引入一个 CPinner 对前期训练做一个约束,两者分配的比例通过β来控制,β默认设置为 0.8

第三部分 CLinter 则是通过 Smooth L1 Loss 来对回归框预测进行并赋予权重 Pj

整个 loss 前面还有一个 Iij 系数,如果两者预测框的 IOU 大于 0.5 则置为 1,其他情况则置为 0,进一步刻画两个检测器输出一致性

实验结果

实验采取的是 SGD 优化器,以及β=0.8 的超参数设置

在 PASCAL VOC 2007 数据集上进行实验

在这里插入图片描述

Iw 指的是初始弱检测器

CLw 指的是经过这一框架训练的弱检测器

CLs 指的是经过这一框架训练的强检测器

CSs 指的是强监督下的强检测器

可以看到通过弱监督得到的强检测器效果提升还是很明显的,mAP 一下涨了好几个点,并且弱检测器的性能也不差,得到了很大的提升

以下是效果图

在这里插入图片描述

总结

WSCL 的整体框架思路还是很清晰明了的。沿用了上一代 WSDDN 大部分的结构。去除了预训练 CNN,统一使用图像标签,并引入了一个 Prediction Consistency Loss,巧妙的将强,弱两个检测器结合起来,形成监督。考虑到前期弱检测器因性能不够引入噪声,也对其中的权重做出了适当的调整。最后的实验结果也是能看的出来弱监督对检测器带来的提升是挺不错的


本文总阅读量13