Pedro 路参与

「分段映射」帮助利用少量样本习得新类别细粒度分类器

近日,来自南京大学、旷视和阿德莱德大学的研究者在 arXiv 上发布论文,提出一种利用少量样本学习新类别细粒度分类器的新方法 FSFG 模型,该方法包含两个模块:双线性特征学习模块和分类器映射模块。后者中的「分段映射」功能是该模型的关键部分,它通过一种参数更少的方式学习一组相对易实现的子分类器,进而生成决策边界

细粒度图像识别是一个重要的计算机视觉问题。得益于复杂深层网络结构的应用,该问题解决方案的表现也越来越好。训练这种分类算法所需的大规模细粒度数据量限制了其应用范围(例如对于稀有鸟类,可收集的训练样本较少),而人类却能够在缺乏监督的条件下学习新的细粒度概念。为了模仿人的这种能力,本论文在少样本的设置下研究细粒度图像识别问题,也就是说,本论文的研究目标是从数量极少的训练样本中学习新型细粒度类别的分类器(样本(sample)又叫范例(exemplar),数量通常为 1 或 5)。

图 1:少样本的细粒度图像识别(FSFG)任务图示。任务目标是从少数范例中学习得到细粒度类别分类器(本示例中是从少量范例中学习得到鸟类品种分类器)。研究者使用辅助数据集 B 训练得到范例到分类器的映射,并在另一个数据集 N 上测试 FSFG 的性能。这两个数据集间没有类别重叠。

如何基于少量训练样本学习得到细粒度类别分类器是个难题,因为我们对学得分类器的期望是:能够捕获类别之间的细微差别,并且可泛化至有限监督之外。为了实现这样的范例到分类器映射,本论文研究者提出一个为 FSFG 任务量身定制的端到端可训练网络,该网络受当前最优的细粒度识别模型的启发。具体而言,该网络由双线性特征学习模块和分类器映射模块组成。前者将样本图像的分类信息编码为特征向量,而后者是整个网络的关键部分,它将中间图像特征映射到类别级别决策边界。这种映射存在两个问题。一方面,图像级别表征的分布可能很复杂,会对后续映射造成困难。另一方面,双线性池化生成的特征维数非常大,它可能造成的参数爆炸进一步阻碍了后续映射

本文提出模型的新颖之处在于分类器映射模块中的「分段映射」功能,该功能用一种参数更少的方式学习一组相对易实现的子分类器,进而生成决策边界。由于双线性池化中的外积计算,其获得的特征本质上可以看作是一组子向量,每个子向量都隐性地表示图像的一部分。研究者使用高度非线性映射来执行子向量到子分类器的映射。然后,将这些子分类器重新组合为全局分类器,这样就能给样本分类了。直观来看,研究者利用隐性表示「部分」的子向量学习得到了特征到分类器的映射,子向量可以编码更简单纯粹的信息,最终使分类变得更容易。此外,分段映射显著减少了模型参数的数量,使计算更加高效。研究者用元学习的方式借助辅助数据集学习得到范例到分类器的映射,如图 1 所示。元学习过程的目的是学习得到一个「映射原型」,研究者希望这个原型能泛化至新的类别。

实验中,研究者在三个细粒度基准数据集(CUB Birds [23]、Stanford Dogs [9] 和 Stanford Cars [11])上运行上述 FSFG 方法。实证结果表明,FSFG 模型显著优于其他基线方法。

本论文的主要成果如下:

  • 研究了少样本条件下细粒度图像识别问题,并提出一种新型元学习策略来解决这个问题。

  • 设计了一种名为分段映射的新型范例到分类器映射方法,它采用双线性 CNN 特征的特殊结构,利用相对较少的参数学习得到分类器。

  • 利用三个细粒度基准数据集进行了全面的实验,发现 FSFG 模型的性能比其他所有的解决方案都要好。

图 2:FSFG 模型的思路。在每个 episode 中,研究者从 B 中抽取样本集合 E,它由一个类别子集(本例中一共有三个类别)组成,每个类别包含很少的范例(红色边框的图像)。研究者希望学习得到映射 M,它可以将这些范例映射到相应的类别分类器(虚线)。学习得到的映射参数能够使这些分类器准确地区分待识别图像(黄色边框图像)。

图 3:FSFG 模型的架构图示。左边是表征学习的第一个组件(双线性池化模块)。右边是第二个组件(分类器映射模块),它将中间图像特征映射到类别分类器。

表 2:三个细粒度数据集上的对比结果(平均值 ± 标准差)。每列的最大平均精度用粗体标出。「•/◦」表示 FSFG 模型优于/差于其他方法(通过置信水平为 0.05 的成对 t 检验来比较)。「FB」表示使用完全双线性池化表征,「CB」表示使用紧凑双线性池化

表 3:全局映射和分段映射的对比结果。每列的最大平均精度用粗体标出。「•」表示分段映射性能优于全局映射(通过置信水平为 0.05 的成对 t 检验来比较)。

图 4:全局映射和分段映射生成的类别分类器利用 t-SNE [21] 得到的二维可视化结果。每个点表示一个生成的分类器,不同的颜色表示不同的类别。每个类别显示五十个分类器,每个分类器都是通过学习随机抽样的五个范例获得的。该可视化基于 CUB Birds 数据集。

图 5:不同层数的模型简化测试。在每个子图中,横轴代表层数,纵轴代表准确率

论文:Piecewise classifier mappings: Learning fine-grained learners for novel categories with few examples


论文链接:https://arxiv.org/pdf/1805.04288.pdf

摘要:人类能够在缺乏监督的情况下学习新的细粒度概念,而最好的深度学习系统却需要成百上千的标注数据来训练。我们试图通过研究少样本条件下的细粒度图像识别问题(FSFG)来缩小人类与深度学习系统之间的上述差距。FSFG 要求学习系统利用少量样本(只有一个样本或者样本数小于 5)为新的细粒度类别构建分类器。为解决上述问题,我们提出了一个为 FSFG 任务量身定制的端到端可训练深度网络。

具体而言,我们的网络由双线性特征学习模块和分类器映射模块组成:前者将示例图像的分类信息编码为特征向量,后者将中间特征映射到新类别的决策边界。模型的新颖之处在于分类器映射模块中的「分段映射」功能,该功能通过一种参数更少的方式学习一组相对易实现的子分类器,进而生成决策边界。基于辅助数据集我们用元学习的方式学习范例到分类器的映射,它可以泛化至新类别中。我们在三个细粒度基准数据集上进行了相关测试,实验结果表明,我们的 FSFG 模型显著优于其他方法。

理论论文图像分类器少样本学习分段映射南京大学旷视科技
相关数据
计算机视觉技术
Computer Vision

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

决策边界技术
Decision boundary

在具有两类的统计分类问题中,决策边界或决策曲面是一个超曲面,它将底层的向量空间分成两组,每组一个。分类器会将决策边界一侧的所有点分为属于一个类,而另一侧属于另一个类。也即二元分类或多类别分类问题中,模型学到的类别之间的分界线。

基准技术
baseline

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

映射技术
Mapping

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

元学习技术
Meta learning

元学习是机器学习的一个子领域,是将自动学习算法应用于机器学习实验的元数据上。现在的 AI 系统可以通过大量时间和经验从头学习一项复杂技能。但是,我们如果想使智能体掌握多种技能、适应多种环境,则不应该从头开始在每一个环境中训练每一项技能,而是需要智能体通过对以往经验的再利用来学习如何学习多项新任务,因此我们不应该独立地训练每一个新任务。这种学习如何学习的方法,又叫元学习(meta-learning),是通往可持续学习多项新任务的多面智能体的必经之路。

池化技术
Pooling

池化(Pooling)是卷积神经网络中的一个重要的概念,它实际上是一种形式的降采样。有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见的。它是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。直觉上,这种机制能够有效的原因在于,在发现一个特征之后,它的精确位置远不及它和其他特征的相对位置的关系重要。池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,这在一定程度上也控制了过拟合。通常来说,CNN的卷积层之间都会周期性地插入池化层。

参数技术
parameter

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

t分布随机邻嵌入技术
t-SNE

t分布随机邻嵌入(t-SNE)是由Geoffrey Hinton和Laurens van der Maaten 开发的一种降维的机器学习算法。 这是一种非线性降维技术,特别适合将高维数据嵌入到二维或三维空间,然后可以在散点图中将其可视化。 具体来说,它通过二维或三维点对每个高维对象进行建模,使得类似的对象由附近的点建模,不相似的对象由远点建模。

深度学习技术
Deep learning

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法。观测值(例如一幅图像)可以使用多种方式来表示,如每个像素强度值的向量,或者更抽象地表示成一系列边、特定形状的区域等。而使用某些特定的表示方法更容易从实例中学习任务(例如,人脸识别或面部表情识别)。 近年来监督式深度学习方法(以反馈算法训练CNN、LSTM等)获得了空前的成功,而基于半监督或非监督式的方法(如DBM、DBN、stacked autoencoder)虽然在深度学习兴起阶段起到了重要的启蒙作用,但仍处在研究阶段并已获得不错的进展。在未来,非监督式学习将是深度学习的重要研究方向,因为人和动物的学习大多是非监督式的,我们通过观察来发现世界的构造,而不是被提前告知所有物体的名字。 至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

准确率技术
Accuracy

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

表征学习技术
Representation learning

机器之心
机器之心

机器之心编辑

推荐文章
机器学习研究者必知的八个神经网络架构 机器学习研究者必知的八个神经网络架构
机器之心机器之心
11
六种改进均未超越原版:谷歌新研究对GAN现状提出质疑六种改进均未超越原版:谷歌新研究对GAN现状提出质疑
机器之心机器之心
2
从感知机到深度神经网络,带你入坑深度学习从感知机到深度神经网络,带你入坑深度学习
李亚洲李亚洲
4
返回顶部