基于多角度学生子注意力网络的小样本学习

2022-07-26 07:05王彩玲魏清晨蒋国平
关键词:分支样本注意力

王彩玲,魏清晨,仇 真,蒋国平

(1.南京邮电大学 自动化学院、人工智能学院,江苏 南京 210023 2.苏州科技大学 电子与信息工程学院,江苏 苏州 215000)

深度神经网络(DNN)在广泛的应用中取得了显著的成果,如图像分类[1]、机器翻译[2]、目标检测[3]等。 深度学习模型在大量已标注样本中进行学习,利用梯度更新策略不断更新网络权重的参数,网络模型利用从图像上学习到的表征知识,用于图像识别和分类任务。 但是从大规模数据集上训练深度模型存在着一些问题,例如模型训练不仅需要大量的已标注的训练样本,并且每次训练新的模型需要很大的时间成本。 另外,已训练好的模型不能识别新类,即模型面对新的分类任务时,往往需要重新训练适合于当前任务的模型。 而在实际情况下,无法获得大量标注好的样本,或者获得所需样本的代价过高。 由于传统的图像分类任务存在以上的局限性,受到人类能够快速适应少量样本学习能力的启发,研究人员开始逐渐关注小样本学习(Few⁃shot Learning)[4]。 小样本学习的研究缓解了上面出现的问题,网络模型从少量的样本中快速地抽象出图像中具有代表性的特征,并使得网络模型在遇见相似任务时能够快速地对比出图像的重要信息,从而完成对新类别的分类,不需要重新训练模型。 具体而言,小样本学习也是图像分类问题的一个分支,首先在具有相似任务的大量样本上预训练深度网络,使模型不断学习图像的公共知识,然后利用已训练好的模型对当前小样本任务进行微调,考虑到训练样本与当前任务分布的不平衡性,并具有很大的差异性,所以在训练中需要快速地提高模型的适应能力。

小样本学习方法与传统的深度学习不同的是,该方法对包含少量类别的样本数据也能获得较好的分类结果,而不需要对大规模的标注标签样本进行训练,小样本学习关注的是图像之间的通用特征,因此能够更好地适应新的分类任务。 对于小样本学习任务,迁移学习(Transfer Learning)[5-6]是比较常用的方法,即神经网络在大量样本上进行训练,最后再迁移到当前任务的数据集上,通过微调训练好的网络,最终得到一个能够快速适应目标任务的模型。然而,由于实际小样本分类任务中目标样本集中每类的样本数量较少,无法很好地利用模型微调方法[7]来学习实际样本中的类别信息。

据此小样本领域出现了很多常用的方法,例如数据增强(Data Augmentation)[8]、元学习(Meta Learning)[9]、度量学习(Metric Learning)[5]。 针对小样本分类任务中样本不足的问题,最直接的方式是对图像进行旋转、加噪、裁剪、压缩等[10]来扩充样本的数量,以此来达到扩充样本的目的。 为了更好地使数据样本服从真实的样本分布,利用生成对抗网络(Generative Adversarial Nets, GAN)[11]来增加目标数据集的样本,GAN 主要分为生成器网络和鉴别器网络两部分。 主要思想就是利用生成器不断模仿已知样本,生成与真实样本无法区分的样本。 鉴别器则用来区分输入样本中的生成样本和真实样本。 虽然上述方法都在一定的程度上扩充了训练样本,但是当前任务的数据分布较少,即可学习的样本数很少,导致可扩充的样本空间比较有限,使得增强的样本仍然不能够覆盖真实的样本分布,从而很难从根本上解决因训练样本不足带来的过拟合现象。元学习的方法是让网络模型从少量的标签样本中学习任务之前的共性,确保元学习能够快速地解决新任务的能力,这种方法比较适合小样本的训练任务,受到研究者的青睐。 模型利用学习好的模型权重,对任务层面上的模型更新策略[12]或者RNN(Recurrent Neural Network)[13]构建外部记忆存储器(External Memory)[14]来学习大量样本的经验,以此在测试时比对出真实的类别信息。 元学习模型(Model⁃Agnostic Meta⁃Learning,MAML)[15]提 出 的是一种与模型无关的元学习方法。 元学习网络通过构建元学习器和基学习器(基学习器用于预测,元学习器用于训练基学习器)使得模型训练出一组初始化参数。 通过大量的先验知识不断修正初始化的参数,使其能够在不同种类的样本上快速收敛。 度量学习[16]的方法主要是在学习样本数据和网络所提取特征之间的映射关系,将样本数据特征向量映射到特征空间上。 训练过程使得相同类别的样本之间距离不断缩小,不同类别之间的样本距离逐渐增大,最后利用距离函数计算图像数据之间相似度,并根据相似度将查询集样本划分到正确的支持集中。

基于度量学习在小样本分类任务上取得了很好的效果,本文也采用基于度量学习方法,主要采用episode 方法来模拟小样本学习[16-17]。 图像在分类过程中使用顶层的特征进行度量学习,从特征提取的角度来看,顶层的样本特征分辨率较低,图像的通道信息和位置信息等细节信息基本丢失,导致小样本分类的精度较差[18]。 因此如何能够丰富图像的顶层特征,使之能够更好地融合图像的位置信息和通道信息成为了研究的重点。

本文主要的贡献:

(1) 分析了小样本学习的现状,提出了一种基于多角度学生子注意力网络框架MCP。 从不同的角度出发构建不同的学生分支,迫使网络关注图像的全局表征信息。 验证了MCP 能够挖掘出图像的细节信息,增强了网络的特征提取能力,有利于提升小样本的分类准确性。

(2) 本文将互学习思想应用到网络模型中。迫使两个分支预测的概率分布能够相互监督,相互学习,防止单角度的注意力网络过早地出现过拟合。

(3) 在多个基准测试集上进行了大量实验,实验结果优于已有算法,验证了框架的有效性。

1 相关工作

1.1 问题定义

小样本学习方法在训练阶段构造出多个不同的元任务,通过在这些元任务上的学习,学习到一个能够快速适应新任务的模型。 与传统的分类任务不同,小样本学习的训练集Dtrain和测试集Dtest由来自同一类的样本组成,小样本学习旨在解决Dtrain和Dtest之间标签空间不相交的问题。 遵循Vinyals 等人定义的标准N⁃way k⁃shot 分类场景来研究少镜头学习问题。 为了能够构建不同的新任务,支持集和查询集都会随机产生不同类别组合,通过不断进行周期性迭代训练的方式,使之任务更加具有普遍性,使得网络能够提取出图像之间的通用特征,更能适应新的测试任务。

支持集和查询集的公式定义为

式中,Ssupport表示支持集,Squery表示查询集,x与y分别表示支撑集中图像以及其对应的标签,N×K与C分别表示支撑集与查询集中图像的总数量。

每次从目标数据集合Cbase中随机选出N个类别,再从已有的N个类别中随机选取k个样本作为支持集Ssupport,即为N⁃way k⁃shot 再从已选的N个类别中随机选出m个样本组成查询集Squery,一组查询集和一组支持集组成一个task 任务。 学习不同的task 分类,不同的task 之间类别不同,训练任务与测试的类别不相交。

1.2 相关理论

注意力机制(Attention Mechanism)[19]的提出是源自于人类着重关注视觉场景中的一部分,使网络在全面观察整张图像时快速关注图像的重点区域,把主要的视觉资源投入到图像的重点区域中,对图像的焦点区域信息着重处理,从而加强网络的特征提取能力。

通道注意力机制:通道注意力机制在SENet[20]网络中被提出,关注图像的通道信息旨在找出图像每个通道之间的内部依赖性,通过给图像不同的通道赋予不同的注意力权重的方式,得到通道注意力权重向量,从而丰富了图像的全局信息。

位置注意力机制:关注图像中位置信息,对图像每一个位置的特征进行加权聚合得到位置注意力权重向量,使之能够更加关注图像的特征分布。

互学习[21]是近年来在许多领域兴起的一种新的蒸馏模式,它打破了传统的“师生”结构,即固定的监督方向。 通过对不同的分支子网络采用随机初始化,利用KL(Kullback⁃Leibler)散度使分支间预测的差异性减小。 网络在初期阶段监督损失较大,分支间的交互损失较小,每个分支都受到监督损失和其余分支之间的交互损失的约束。

2 本文方法

2.1 整体架构

在实际的生活中,不同的人面对相同的问题,由于考虑的角度不同,解决问题的方法也不会相同。受到此现象的启发,我们提出了一种基于多角度学生子注意力分支网络的互学习网络以便于从不同的注意力角度来求解小样本分类问题。 如图1 所示,多角度学生子注意力网络框架MCP 主要包含3 个部分:基础特征提取器、多角度学生子注意力模块、互监督学习模块。

图1 多角度学生子注意力网络架构示意图(MCP)

在MCP 中将Conv64 所提取的特征视为后续子注意力分支学习网络的先验知识,进而利用通道注意力和位置注意力着重从不同的角度关注图像的全局信息,并生成两个学生分支,最后利用不同角度的注意力预测的概率分布进行互监督学习,迫使分支网络能够相互模仿,相互学习,从而抑制网络在训练过程中出现过拟合现象。

2.2 多角度学生子注意力模块

多角度学生子注意力模块包含了位置局部子注意力学生分支以及通道局部子注意力学生分支。

2.2.1 位置局部子注意力分支

图像中的物体是由各个位置的像素点拼接而成,提取越丰富的图像细节信息对于图像分类的准确性越重要,考虑到高维图像特征的位置细节信息逐渐丢失,不利于图像的分类,使用的局部特征不能使网络关注图像的位置信息。 为了在图像局部特征上建立丰富的上下文关系模型,考虑到注意力可能会集中于不重要的对象特征上,我们添加了一个位置注意力模块,能够从全局的角度适应地整合图像的相似信息,着重关注图像的位置信息,作为分类的参考依据。 对于特定位置的特征进行加权求和,有选择地聚合每一位置的特征,相似的特征彼此相互关联,根据两个位置之间的相似度来确定权重,能够在一定的程度上解决上述问题。 如图2 所示,图像的位置空间上下文信息获取包含以下步骤:

图2 位置局部子注意力流程

给定一个局部特征B∈RC×H×W,首先将其输入到卷积层中,分别生成新的特征图矩阵C、D和E,对特征图矩阵C进行调整使得m=H×W,然后与特征图矩阵D进行矩阵乘法,接着再通过softmax得到位置注意力图Q即

由式(4)可知,最终的输出特征是原始特征和注意力图的加权和,因此生成的特征图B′具有上下文信息的全局视图,根据位置注意力矩阵可以选择性地聚合上下文信息,使得图像相似的语义特征相互促进,从而丰富了图像的表征信息。

2.2.2 通道局部子注意力分支

图像的高维特征都可以看作是类的响应,图像经过卷积运算后都会产生新的特征图,每个新的通道特征向量都是局部区域特征的表达,我们构建了一个通道全局子注意模块来对图像通道信息进行建模。 从通道信息的角度出发,关注图像之间的通道依赖关系,作为另一个求解问题的判别方法。 本文采用压缩的方式对图像进行全局池化,把每一个通道的特征向量映射成全局特征向量,以此获得全局的图像描述特征,在经过激发后,可以进一步抓取通道之间的关系,网络能够获得各个通道之间的非线性关系,保证通道之间的关系不互斥。 我们利用特征图在各个通道的信号来获取通道信息的映射,采用的全局池化去除了空间的影响,让网络只关注通道间的依赖信息。 对图像的每一个通道赋予一个权重来代表该通道与关键信息的相关程度,通过网络学习出的权重来表示图像的相关性大小。 通道全局子注意力模块的结构如图3 所示。

图3 通道局部子注意力流程

通道注意力模块与位置注意力模块的计算方式不同,直接对输入的初始特征A∈RC×H×W进行计算获得通道注意力图X,通道注意力矩阵依靠通道之间的依赖关系生成。 注意力矩阵X通过一个softmax 计算生成,即

式(4)中的系数β从0 开始逐渐学习,生成的E′就是全局通道的上下文信息的特征图。 每个通道获得的特征来自于通道注意力特征和原始特征的加权和,这有助于提高通道全局子注意力对图像信息的表征能力。

2.3 互学习模块

互学习模块通过位置子注意力分支和通道子注意力分支进行互监督学习来抑制单个网络容易出现的过拟合现象。 在其一个分支中,利用图像的监督信息计算出该分支的分类损失,同时利用两个分支各自的网络预测概率分布之间的KL 散度来使得两个分支互相模拟对方网络的概率分布,从而增加自身模型的鲁棒性。 将位置注意力分支预测的概率分布记为Pposition,另一个分支预测的概率分布记为Pchannel,分支在计算自己监督损失的同时,也会受到其余分支对它的约束,即需要衡量两个分支之间对同一种样本的预测值之间的距离,则互监督损失记为

式中,LSSL表示小样本分类的监督损失,LKL则表示不同分支之间的互监督损失。

多角度学生子注意力网络的核心在于多角度学生子注意力模块和互学习模块,其中不同的注意力从不同的角度提取图像表征,使得提取的特征富含了不同角度的信息。 融入位置和通道注意力的特征还能从不同的粒度上反映图像的潜在特征,丰富了图像特征的表达[7]。 网络将特征映射到高维空间,对不同的角度注意力所提取的特征进行了相似性度量,查询集和支持集之间的距离越小,表明两者同属于一个类别。 考虑到添加的注意力会使得图像出现过拟合,引入互学习模块,让单一分支受到其余分支的监督,最终的分类结果受到分类和互监督共同作用,进一步提升了网络的分类能力。

3 实验与分析

我们在常用的数据集Mini⁃ImageNet 和Tiered⁃ImageNet 上对设计的网络框架在解决小样本分类问题上的性能进行了实验验证并和先进的方法进行比较。 同时,进行了消融实验,验证了模型中相关模块的有效性。

3.1 数据集介绍

Mini⁃ImageNet 是ImageNet 的子集,常用于小样本分类任务中。 它包含100 个类,每个类别包含600张图像,把样本集分为64,16 和20 个类,分别用于训练、验证和测试。 Tiered⁃ImageNet 总共有608 个类别,每个类有1 281 图像。 在该数据集上,对它进行了拆分,对351、97 和160 个类分别用于小样本学习的训 练、验 证 和 测 试。 对Mini⁃ImageNet 和Tiered⁃ImageNet,所有图像的分辨率都调整为84×84。

3.2 实验细节与实验设置

本文所有的实验均在Ubuntu18 的环境下测试,由于深度学习的特点,模型的性能很大程度上取决于网络结构的设计和参数的初始化。 为了公平,选择了Conv64 作为特征提取器。 在训练和测试阶段按照标准的元学习方法,即在训练和测试的每一个任务中,数据严格按照N⁃way k⁃shot 形式。 小样本分类任务的目标是判断查询集图像和支持集中的哪一张图像属于同一类别。 和其他论文一样,均采用5⁃way 1⁃shot 和5⁃way 5⁃shot 的形式来衡量模型的准确率。 在训练过程中,本文选用Adam 作为优化器,设置网络学习率为0.001,每训练10 000 次,学习率减半。 参数采用Normal 方式进行初始化,其余参数都采用默认方式。 从训练集中随机抽取10 000 个任务作为一个Epoch,训练50 个epoch。 每次新任务都随机抽取5个类别,每个类别的训练数据只有1 个样本,再从已选择的每个类别中随机抽取15 张作为支持集,共75张支持集即组成一个5⁃way 1⁃shot 任务,判断这75 张图片所属于5 个类别中的哪一类。 5⁃way 5⁃shot 和5⁃way 1⁃shot 类似,不同的是每个随机抽取的5 个类别都有5 个样本,在测试过程中,在测试数据集中随机抽取600 个任务,以top1 的平均准确率作为当次的模型准确率,并重复5 次,最终5 次的平均值记为最后的模型精度。

3.3 实验结果与分析

对提出的MCP 方法和当前最先进的小样本学习方法在Mini⁃ImageNet 和Tiered⁃ImageNet 上进行了对比,结果分别如表1 和表2 所示。 实验结果表明,与其他的先进方法相比,本文在分类任务上的准确率有较大的提升,说明本文模型能够更加有效地用于小样本的分类任务。 遵循上述实验设置的描述,本文对5⁃way 1⁃shot 和5⁃way 5⁃shot 这两个规模进行了比较,准确率是3 000 个任务的场景的平均值。

3.3.1 Mini⁃ImageNet 数据集

为了评估模型的性能,将MCP 模型与其他的优秀的小样本分类模型在Mini⁃ImageNet 数据集上进行比较,本文模型在5⁃way 1⁃shot、5⁃way 5⁃shot 任务上都获得了不错的表现,实验结果如表1 所示。

表1 Mini⁃ImageNet 上的5⁃way 任务的分类精度

续表

从表1 中可以发现,本文提出的基于多角度学生子注意力网络MCP 与其他的小样本分类方法相比,在Mini⁃ImageNet 数据集上的精度提升比较显著。 在5⁃way 1⁃shot 任务上,与ATLNet 相比,准确率 提 高 了2. 24%。 在5⁃way 5⁃shot 任 务 上, 比ATLNet 准确率提高0.65%。 由于Mini⁃ImageNet 是一个多种类的数据集,所以在该数据集上有好的效果,可以从侧面验证本文的模型具有较好的鲁棒性。

3.3.2 Tiered⁃ImageNet 数据集

为了验证模型的泛化能力,将基于多角度学生子注意力网络MCP 模型在Tiered⁃ImageNet 数据集上采取了5⁃way 1⁃shot、5⁃way 5⁃shot 两种实验方式,实验结果如表2 所示。

表2 Tiered⁃ImageNet 上的5⁃way 任务的分类精度

从表2 中可以看出,基于多角度学生子注意力网络MCP 在5⁃way 1⁃shot、5⁃way 5⁃shot 任务上,与其他的小样本分类方法相比,MCP 在Tiered⁃ImageNet数据集上取得了较好的效果。 在5⁃way 1⁃shot 任务上,与ADM 相比,准确率提高了3.51%。 在5⁃way 5⁃shot 任务上比ADM 准确率提高了2.78%。 通过分析可知,本文提出的基于多角度学生子注意力网络从不同角度上提取图像更细致的特征信息,利用互学习的方法使各个子分支网络相互监督学习,此举能够有效地缓解网络在训练过程中出现过拟合现象,在不同数据集中仍然具有较强的表示能力,使模型具有良好的泛化能力。

3.4 消融实验

为了分析每个模块对网络模型产生的影响,本文使用控制变量法在Mini⁃ImageNet 数据集上进行了消融实验:我们的模型MCP 消去位置注意力分支仅保留通道注意力分支,与消去通道注意力分支仅保留位置注意力分支和MCP。 消融实验的最终结果如表3 所示。

表3 提出的网络在单一注意力网络下的情况

结果表明,同时使用两个不同角度的学生子注意力模块对于模型的分类精度会有很大程度的提升;若仅仅使用单一注意力,会导致模型对于图像的抗噪声能力较弱,模型的分类精度不高。 因此,本文在5⁃way 1⁃shot、5⁃way 5⁃shot 任务上引入互监督学习方法,将同时使用两个模块使得网络的提升作用更大,从而极大地抑制了网络的过拟合现象。

4 结束语

在实际的生活中,不同的人面对相同的问题,由于考虑的角度不同,解决问题的方法也不会相同。本文提出的多角度学生子注意力网络框架MCP,从不同角度来求解小样本的分类问题;学生子注意力网络从位置和通道特性角度出发,有针对性地提取图像之间的位置和通道信息,丰富了网络提取图像特征的能力;引入了互学习的思想,有效地抑制了子注意力分支网络在训练过程中出现的过拟合现象,提高了小样本分类的准确率。 在未来的研究中,可以考虑添加不同的提取图像特征的角度,构建多组学生分支,通过更多角度的学生分支来提升分类的准确率。

猜你喜欢
分支样本注意力
让注意力“飞”回来
一类离散时间反馈控制系统Hopf分支研究
软件多分支开发代码漏合问题及解决途径①
规划·样本
含有二阶幂零鞍点的双同宿环附近的极限环分支
随机微分方程的样本Lyapunov二次型估计
A Beautiful Way Of Looking At Things
基于支持向量机的测厚仪CS值电压漂移故障判定及处理
硕果累累
“官员写作”的四个样本