论文地址:https://www.aaai.org/AAAI21Papers/AAAI-39.WanF.pdf
代码:https://github.com/WanFang13/NCE-Net
发表于:AAAI’21

Abstract

深度神经网络(DNN)已被广泛地应用于主动学习。尽管它很有效,但当标记集和未标记集之间存在明显的分布偏差时,判别性分类器(softmax分类器)的泛化能力是值得怀疑的。在本文中,我们试图用最近邻(NN)分类器取代深度神经网络中的softmax分类器,考虑到它在未知子空间中的渐进式泛化能力。我们提出的主动学习方法,即最近邻分类器嵌入式网络(NCE-Net),旨在减少过度估计未标记样本的风险,同时提高查询信息丰富样本的机会。NCE-Net在概念上很简单,但却出乎意料地强大,从子集信息的角度来看,它定义了一个量化模型在主动学习上泛化能力的指标。实验结果表明,通过基于rejection或confusion confidence的简单选择。NCE-Net在图像分类和目标检测任务中,以明显的优势改善了最先进的技术。

I. Motivation

本文是指出了这么个现象:

iOS Embedded Framework 作用 embedded net_Soft


虚线圈内的空心图案是我们已标注的样本。在这种情况下,我们可以拟合出一个分类边界如灰色的线所示。在这种情形下,利用一些主流的主动学习准则,我们可能会去选择m、p作为最有价值的样本;现在的问题在于,由于实际上的分类边界可能也属于红色这种情况,那么此时选择m、q会更为合适。这种情况在已标注样本数量较小,已标注未标注数据集之间分布差异较大时会更为明显。

II. Active Learning with Softmax Classifier

这里我们考虑传统的基于softmax的主动学习场景。以ResNet-18为例,其可以拆成为一个用于特征提取的backbone以及一个用于分类的softmax分类头(ave-pool + FC + softmax)。分类头可以简化为一个参数为iOS Embedded Framework 作用 embedded net_泛化_02iOS Embedded Framework 作用 embedded net_Soft_03的小网络,至此,输入图像iOS Embedded Framework 作用 embedded net_泛化_04,提取到了特征iOS Embedded Framework 作用 embedded net_样本集_05,在此特征基础上利用分类头进行分类得到的概率iOS Embedded Framework 作用 embedded net_样本集_06为:iOS Embedded Framework 作用 embedded net_Soft_07 这里的iOS Embedded Framework 作用 embedded net_划水_08指的是样本属于类别iOS Embedded Framework 作用 embedded net_划水_09的概率。最终网络的训练损失为:iOS Embedded Framework 作用 embedded net_泛化_10 iOS Embedded Framework 作用 embedded net_Soft_11表示样本iOS Embedded Framework 作用 embedded net_泛化_04的真实标签,iOS Embedded Framework 作用 embedded net_泛化_13为总类别数。

III. Soft Nearest Neighbor Classifier

基于softmax的主动学习大多有个如下隐藏假设,即在已标注小样本集上训练的softmax分类器,能够比较好的泛化到完整样本集上,也就是这么个意思:

iOS Embedded Framework 作用 embedded net_泛化_14


但这实际上是比较难成立的(如motivation中所述),为此,考虑直接把softmax分类头去掉,换成最近邻分类头(Soft Nearest Neighbor Classifier),如下:iOS Embedded Framework 作用 embedded net_Soft_15 这个思想简单来说其实就是KNN聚类。对于给定的一个未标注样本,如果其特征向量iOS Embedded Framework 作用 embedded net_样本集_16与类别iOS Embedded Framework 作用 embedded net_划水_09的已标注向量iOS Embedded Framework 作用 embedded net_样本集_18最近,那么我们将该样本iOS Embedded Framework 作用 embedded net_泛化_04预测为类别iOS Embedded Framework 作用 embedded net_划水_09iOS Embedded Framework 作用 embedded net_划水_21为激活函数,iOS Embedded Framework 作用 embedded net_划水_22为距离函数,可以选用欧氏距离或者余弦距离。

IV. Nearest Neighbor Classifier Embedded Network

本节我们继续对上节中所提到的SNN分类头进行分析。很容易发现SNN分类头有个问题,即在进行推理的时候,每个样本需要与所有已标注的样本进行比较,会非常消耗时间。为此,本文的解法是为每一类样本各学习iOS Embedded Framework 作用 embedded net_划水_23个原型向量,这iOS Embedded Framework 作用 embedded net_划水_23个原型向量将作为相应类的代表,到时候只需要将新样本的特征向量与原型向量进行比较即可:iOS Embedded Framework 作用 embedded net_样本集_25

V. Sample Selection

由于本文把softmax给直接搞掉了,所以之前的entropy之类的都没法用了…为此本文提出了两种新的样本选择策略:

Rejection Confidence

iOS Embedded Framework 作用 embedded net_划水_26

Confusion Confidence

iOS Embedded Framework 作用 embedded net_划水_27

这两种策略思想上与entropy都是比较接近的,算是SNN场景下的entropy。

VI. Experiment

iOS Embedded Framework 作用 embedded net_划水_28


这里有个比较神奇的实验结果,即使用本文的方法,在只进行随机初始化采样的情况下。本文的方法都能在softmax的基础上直接涨5%。不过该实验结果目前只在Cifar-10数据集上观察得到。

注: 主动学习在分类上的benchmark一般只在cifar-10/cifar-100上跑,不会去刷ImageNet这种。

Summary

简单来说本文的意思是,由于softmax分类器带来的分类边界本身不会很准,为此会拖累那些基于softmax的AL方法(entropy之类的)。为此本文把softmax分类器换成了soft nearest neighbor分类器,直接算距离来判别样本类别,避免了这一问题。