新框架优于基于单模型的方法,并且以一小部分计算成本与基于多模型的方法相媲美!
论文:Active Learning for Deep Object Detection via Probabilistic Modeling
链接:https://arxiv.org/abs/2103.16130
1
概括
主动学习旨在通过仅选择数据集上信息量最大的样本来降低标记成本。现有的工作很少涉及对象检测的主动学习。这些方法中的大多数基于多个模型或者是分类方法的直接扩展,因此仅使用分类头来估计图像的信息量。
在今天分享中,研究者提出了一种用于目标检测的新型深度主动学习方法。新提出的方法依赖于混合密度网络,该网络估计每个定位和分类头输出的概率分布。研究者在单个模型的单个前向传递中明确地估计了任意和认知的不确定性。新方法使用一个评分函数来聚合两个头部的这两种不确定性,以获得每张图像的信息量分数。
最后证明了新提出的方法在PASCAL VOC和MSCOCO数据集中的有效性。新方法优于基于单模型的方法,并且以一小部分计算成本与基于多模型的方法相媲美。
2
背景
新方法在单个模型的单个前向传递中预测定位和分类头的任意和认知不确定性。提出了一个评分函数,将来自两个头部的认知和任意不确定性聚合为单个值。然后,那些具有前K个分数的数据点被发送以进行标记。
先简单介绍下主动学习:
主动的学习(Active learning or query learning)作为机器学习的一个分支其主要是针对数据标签较少或打标签“代价”较高这一场景而设计的,在统计学中主动学习又被称为最优实验设计(optimal experimetal design)。其主要方式是模型通过与用户或专家进行交互,抛出"query"(unlabel data)让专家确定数据的标签,如此反复,以期让模型利用较少的标记数据获得较好“性能”。一般情况下,模型抛出的未标注数据为“hard sample”(对于“hard sample”的不同定义可以衍生出一大堆的方法,如可以是ambiguous sample,即模型最难区分的样本;可以是对模型提升(改变)最大的样本,如梯度提升最大;可以是方差减小等等),相比与有监督学习,主动学习通过让模型更多的关注或学习“hard sample”,以期在较少的训练样本下获得较好的模型。如下所示:
可以看出active learning与passive learning最大的不同是passive learning或supervised learning其首先就需要大量的专家标注样本训练模型,而active learning则是利用少量标注样本,大量未标注样本训练模型,然后由learner选择样本返回给Oracle打标签,进而不断迭代以获得较好的模型,该过程必须要有专家的参与,这也是active learning区别于semi-supervised learning的不同之处。
3
新框架
用于目标检测的深度主动学习最近引起了人们的兴趣。 [Scalable active learning for object detection]的工作训练神经网络的集合,然后选择由某个获取函数定义的具有最高分数的样本,即熵或互信息。并发工作探索了类似的方向,但通过 MC-dropout来近似不确定性。[Active learning for deep detection neural networks]的工作提出了一种计算像素分数并使用它们来选择信息样本的方法。另一种方法[Deep active learning for object detection]提出了通过committee paradigm的查询来选择要查询的图像集。[Active learning for convolutional neural networks: A core-set approach]的工作使用特征空间来选择数据集中的代表性样本,在目标检测中达到了良好的性能。[Localization-aware active learning for object detection]给出了不同的解决方案,其中作者定义了两个不同的分数:定位紧密度,即区域候选和最终预测之间的重叠比;当输入图像被噪声破坏时,基于预测目标位置的变化的定位稳定性。在所有情况下,选择得分最高的图像进行标记。[Learning loss for active learning]的最先进方法提供了一种启发式但优雅的解决方案,同时优于其他基于单一模型的方法。在训练期间,该方法学习预测每个样本的目标损失。在主动学习阶段,它选择标记具有最高预测损失的样本。
上述大多数方法需要多个模型或多个前向传递来计算图像的信息量分数,导致计算成本很高。此外,所有这些研究,尽管专注于目标检测的主动学习,要么依赖启发式方法来估计定位不确定性,要么根本无法估计。因此 ,虽然给出了有希望的方向,但它们在准确性和计算成本方面并不令人满意。与这些方法相比,今天分享的方法估计并利用定位和分类的不确定性来达到高精度,同时使用单个模型的单次前向传递,显着降低了计算成本。
新提出的方法的关键新颖之处在于设计神经网络的输出层来预测概率分布,而不是预测网络的每个输出的单个值(见上图a)。为此,建议使用混合密度网络,其中网络的输出由GMM的参数组成。
为了预测输出值的概率分布,新方法涉及修改网络的最后一层,因此导致参数数量增加,尤其是在分类头中。研究者专注于通过减少分类头中的参数数量来提高算法的效率,如上图b。
4
实验及可视化
与原始SSD网络相比,新方法的不同实例的mAP(以%为单位)。SGM和MDN是指单个和多个高斯模型,将它们应用于定位(Loc)、分类(Cl)及其组合(Loc Cl)。
不准确检测和认知不确定性示例。从左上角开始,顺时针方向:Person是误报;人物边界框不正确;一只羊被错误地归类为一只鸟;一只羊被错误地归类为一头牛。
a) 与使用单一评分模型的已发表作品进行比较;b) 与多种基于模型的方法、集成和MC-dropout的比较。