基于分布表示和分布度量的小样本学习方法与流程

文档序号:18555098发布日期:2019-08-30 22:29阅读:455来源:国知局
基于分布表示和分布度量的小样本学习方法与流程

本发明属于计算机应用技术领域,涉及的是如何在样本量稀少(小样本)的情况下训练出泛化性能较好的分类器的小样本学习技术。包括了特征提取、分布表示、近似沃瑟斯坦(wasserstein)分布度量、对比分布度量和分类。



背景技术:

在机器学习领域中,随着更多应用场景的出现,人们越来越面临着样本数量不足的问题。人类可以从少数样本中快速学习,很容易地区分出未见过的样本。而机器学习特别是深度学习,却需要大量的数据才能建立起一个比较好的模型。因此,如何在小样本情况下进行有效地学习,成为了一个重要的研究方向。

当前很多国家展开了小样本学习的研究,方法主要集中在基于度量学习的方法、基于元学习的方法、基于生成的方法,其中基于度量学习的方法表现得尤为突出。基于度量学习的方法主要是学习一个泛化性能较好的特征嵌入。它的一般框架可以分为特征嵌入、特征表示、特征度量与分类三个部分,每一部分的好坏都能很大程度上影响最后分类的效果。但是一般的基于度量学习的方法是基于全局特征来对图像进行表示,这在小样本场景中会导致特征稀疏问题,很难对类别进行有效地表示。同时,现有的度量方法一般也是基于这种全局特征的方法,很难对特征进行较好地度量。

基于局部描述子的局部特征表示和度量方法,相比于全局特征,能够充分利用样本丰富的局部信息,更加精细地表示数据,在小样本分类和细粒度分类任务上均取得了较好的效果。因此,基于局部描述子的小样本学习方法将会是未来小样本学习研究的一个重要方向。

本发明进一步在局部特征描述子特征表示的基础上,创新性的提出了基于局部特征描述子的分布表示以及基于分布表示的距离度量方法,在小样本学习问题上取得了优异的效果。



技术实现要素:

本发明针对小样本学习中特征表示不充分和特征度量判别力不足等问题,设计了一种基于分布的特征表示和度量方法。我们基于局部描述子利用丰富的局部特征信息来充分地表示图像,同时设计了一种新的针对图像局部分布的度量,它利用对比信息来使学到的度量更加具有判别力。我们的方法在小样本场景下能够获得良好的分类效果,它具体包括:利用深度网络提取高层局部描述子特征、基于局部描述子对查询样本和各个类别分别进行分布表示、基于近似沃瑟斯坦(wasserstein)距离,分别计算查询样本与各个类别的分布之间的距离、构造分布三元组,分别计算查询样本与各个类别的对比分布距离并据此进行分类。这四个部分可分别概括为特征提取、分布表示、近似沃瑟斯坦分布度量、对比分布度量和分类,下面对它们进行具体说明:

1.特征提取

我们常用深度网络来对输入的图像提取特征,假设我们基于深度学习的图像特征嵌入模块为ψ(·),给定一张图像x,输入到深度特征提取网络得到特征ψ(x),它是一个c×h×w的张量,其中h、w、c分别是特征图的高、宽、通道数,则该张量可以看作是由h×w个c维的局部特征描述子构成的。

2.分布表示

大部分的小样本学习方法是基于图像级的特征,特征数和样本量直接相关,这样在小样本场景下会导致特征非常稀疏。而最近有研究表明将类别表示成分布,能够充分利用更丰富的局部信息从而获得更好的特征。我们在此更进一步,将查询样本也表示成分布,进一步挖掘了局部信息的表示能力。

具体地,每张样本图片经深度网络提取得特征是由通道数个特征图组成。每个特征图可看成是多个局部描述子的集合,它们共同构成了该样本的局部特征分布。

对于查询样本,直接由该样本的局部描述子来表示其分布。而对于类别,由于可能存在多个该类别的样本,我们就用所有同类别的样本的所有局部描述子来代表该类的局部特征分布。

3.近似沃瑟斯坦分布度量

分类一般是基于查询样本和各个类别的距离或相似性,这里我们将特征表示成分布,就需要设计一种分布的度量来衡量查询样本和各个类别的距离或相似性。这里我们考虑使用经典的分布度量二阶沃瑟斯坦(2-wasserstein)距离来度量查询样本和任意一个类的分布距离。然而,原始的二阶沃瑟斯坦距离计算非常复杂和耗时,因此,我们可以使用一种形式较为简单且容易计算的度量来近似二阶沃瑟斯坦距离。有了这样的近似度量,我们就能计算出查询样本与各个类别之间的距离。

4.对比分布度量和分类

为了使得分布距离更加具有判别性,我们引入对比信息来进一步改进近似沃瑟斯坦分布度量。

这样我们设计出一种对比分布度量,它巧妙地将近似沃瑟斯坦分布度量和三元组结合起来。具体来说,它基于分布级别的三元组,是指查询样本和当前类别的距离减去查询样本和其他类别之间的距离。这样在目标函数的优化过程中,不断拉近同类样本之间的分布距离,同时也拉大非同类样本之间的分布距离,使得该度量比沃瑟斯坦距离更加具有判别能力。

基于计算出的对比分布距离,选取与查询样本距离最小的那个类别,从而完成对查询样本的分类。

附图说明

图1为基于分布表示和分布度量的小样本分类整体流程示意图。

图2为基于cdm-avg的对比分布距离计算示意图。

表1为特征提取网络结构以及参数设置。

表2为在miniimagenet数据集上的分类准确率。

具体实施方式

下面结合附图和具体实例,进一步阐明本发明,应理解这些实例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。

本发明包含特征提取、分布表示、近似沃瑟斯坦分布度量、对比分布度量和分类四个部分,其总体流程如图1所示。

1.数据集与数据预处理实施过程

我们采用miniimagenet数据集来阐述我们的方法。该数据集中含有100个类别且每个类别含有600个样本。我们首先将这100个类别按照64、16、20个类别划分出训练集、验证集、测试集。每个图像在输入网络前被缩放到84×84大小并归一化到[-1,1]区间。

2.特征提取的实施过程

我们采用小样本学习中常用的四层卷积网络作为我们的特征提取网络。表1给出了我们使用的网络结构,它一共包含四个卷积模块,前两个模块各包一个卷积层(卷积核大小是3×3,数量是64)、一个批规范化层、一个非线性整流函数层以及一个最大值池化层。后两个模块除了没有最大值池化层之外,其他和前两个模块相同。只使用两个最大值池化层的原因是为了获得足够多的局部描述子来表示局部特征分布。

在每一轮的训练中,查询集中每类含有15个样本,5个类共有75个样本,均输入到特征提取网络中提取特征,得到75个64×21×21的特征图。在5-way5-shot设定下,支撑集共有25个样本,经特征提取网络得到得到25个64×21×21的特征图。而在5-way1-shot设定下,支撑集共有5个样本,经特征提取网络得到5个64×21×21的特征图。

表1特征提取网络结构示意图

3.分布表示的实施过程

(1)查询样本的分布表示

每个查询样本经第一步提取得特征q∈r64×21×21,它可看作是由21×21个局部描述子组成,每个局部描述子是一个64维向量,代表着样本的一个局部特征。这些局部描述子共同构成了这个查询的局部特征分布,即:

q={q1,q2,...,q441}∈r441×64

其中qi代表特征图q上的第i个局部描述子,i∈{1,2,...,441}。

(2)类的分布表示

我们在做了两种小样本分类任务,一种是5-way1-shot的小样本分类任务,一种是5-way5-shot的小样本分类任务。

对于5-way1-shot的小样本分类任务,每个类只有一个样本,那么每个类别的分布可以由其仅有的那个样本的分布来进行表示,其表示过程和查询样本的表示过程相同,即每个类表示成一个大小为441×64的二维矩阵。

对于5-way5-shot的小样本分类任务,每个类别有5个样本,则我们将该类所有样本的所有局部描述子组成的分布作为该类的分布表示。用si,j表示第i个类的第j个样本图像的深度特征,则第i个类的局部特征分布可由第j类的各个样本的局部描述子共同表示,即:

其中si,j,k∈r64,是第i个类的第j个样本的第k个局部描述子,i∈{1,2,3,4,5},j∈{1,2,3,4,5},k∈{1,2,...,441}。进一步地,将所有的局部描述子组成一个集合作为第i类的分布表示,即每个类可表示为一个如下的二维矩阵:

其中si,j∈r64,是该类局部描述子集合中的第j个局部描述子,且j∈{1,2,...,2205}。

4.近似沃瑟斯坦距离的实施过程

经过步骤3,我们得到了查询样本的分布和类别的分布。接着我们就来度量查询样本的分布和各个类别分布的距离。

我们首先尝试使用二阶沃瑟斯坦(2-wasserstein)距离来衡量查询样本分布和类别分布间的距离。它是一个比较经典的计算分布距离的度量,其定义为:给定两个正态分布u=n(mu,cu)和v=n(mv,cv),其中mu∈rd和mv∈rd分别是两个分布的均值。cu∈rd×d和cv∈rd×d分别是两个分布的协方差矩阵。u和v的二阶沃瑟斯坦距离可以表示如下:

其中trace(·)是计算矩阵的迹的操作。可以看出,二阶沃瑟斯坦距离同时采用均值信息(第一项)和协方差信息(第二项)来计算两个分布的距离。然而,上式的计算过程实现起来是非常复杂的且用于训练时是非常费时的。因此,仿照之前的工作,我们使用下面的形式作为其近似:

注意该公式中,如果仅保留第一项,这个距离度量就退化成最大均值差异(maximummeandiscrepancy,mmd)。如果我们只保留第二项,该距离就变成相关性对齐距离。实践中,我们也尝试了将第一项与第二项通过一定的系数进行结合。但总的来说,系数影响不大,所以我们在实现时仍然采用直接相加的形式来计算分布距离。该公式即为近似的沃瑟斯坦距离,这样最终我们就用这个距离来度量查询样本分布和类分布的距离。

具体度量查询样本和类分布的距离时,对于每个查询样本以及每个类别,我们先求出它们各自的均值和协方差矩阵,然后代入近似沃瑟斯坦距离公式,求出每个查询样本和各个类别的分布距离。

5.对比分布距离实施过程

接着我们来计算查询样本分布与类分布的对比分布距离,该距离是我们基于三元组设计的,能进一步增强近似沃瑟斯坦距离度量的判别力。

我们的对比分布距离形式化为:给定一个分布级的三元组,即一个查询样本分布q,一个我们想要匹配的类别分布si,以及一个其他类的分布这里n是支撑集中的类别数。另外,这里的第三个类别分布可以看作是对比的类别分布。对于一个n-wayk-shot的小样本分类问题,假设查询分布是q=n(mq,cq),支撑集的类别分布是我们可以定义一种对比分布距离cdm-avg,其计算公式如下:

在这个度量函数中,虽然我们想要衡量的只是q和si之间的距离,但我们也将q和其他所有类别之间的距离参与到计算中。假设si和q是同一个类,则第一项是q和si之间的距离,它们属于同类,距离较小。第二项是q和其他类之间的距离,他们都属于不同类,所以距离较大,所以公式最终输出的距离会很小。在这种情况下,即使第一项学的不好,那么第二项也可以帮助拉大不同类之间的距离,从而提高分类准确率。因为额外考虑到了类别之间的关系,该对比分布距离比沃瑟斯坦距离更加具有判别能力。注意公式第二项的定义,我们使用的是q和其他类别之间的平均距离。然而,我们也可以基于难样本挖掘的思想定义一个稍微不同的对比分布距离cdm-hard,它的计算公式如下:

thard(q,si)=w2(q,si)2-min{w2(q,sj)2|j≠i}

其中用来表示q和其他类别之间距离的最小值,换句话说,该距离度量采用的是那个和查询样本最相似的对比类别来构造三元组,进而计算出对比分布距离。

有了步骤4计算出的查询样本与各个类别的近似沃瑟斯坦距离,对每个查询样本,我们使用cdm-avg公式和cdm-hard公式分别计算出与每个类的两种对比分布距离。图2可视化了对比分布距离cdm-avg的计算过程。

6.分类实施过程

将每种对比分布距离,分别送入到分类器中对查询样本进行分类,并计算分类损失,进行反向梯度更新,重复上述步骤直至模型收敛。这里我们采用交叉熵损失函数来训练分类器,优化算法为adam,初始学习率设为1×10-3并且每100,000轮将学习率乘以0.05。在测试阶段,我们的测试结果在随机采样的10,000个任务上取平均。这样就基于两种对比分布距离训练出了两种小样本分类模型,即cdm-avg模型和cdm-hard模型,我们可以使用这两种模型来对新的样本进行预测。

通过在miniimagenet数据集上的实验,证明本发明的方法是正确且有效的,具体的基于两种对比分布距离分类器分类结果见表2。

表2在miniimagenet数据集上的分类准确率

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1