APP下载

小样本学习综述

2023-11-13王圣杰梁秋金金渝皓

空间控制技术与应用 2023年5期
关键词:类别记忆样本

王圣杰, 王 铎, 梁秋金, 金渝皓, 刘 磊, 张 涛*

1. 清华大学,北京 100084

2. 北京控制工程研究所,北京 100094

0 引 言

深度学习方法利用多层神经网络构建的特征学习,使得其对比于传统的机器学习方法具有更好的表征空间.其在图像的分类[1-2]、物体检测[3]、分割[4]、重识别[5]、检索[6]和配准[7]等诸多领域取得了非常不错的效果.可以说,深度学习已经成为智能识别与感知领域非常流行和普遍的方法.

但是由于神经网络参数数量巨大,其充分训练依赖于大规模数据.获取充足的训练数据并且对其进行准确完善的标注对于某些应用场合是十分困难的,往往需要花费大量的时间和成本,有时甚至是不可能的.例如对于医学领域的应用[8],数据往往产生于对患者的诊断治疗过程中,并且对医学图像的标注还需要具备特定知识和技能的专业人员才能完成,而对相关人员的培训往往需要投入大量的成本.因此,深度学习模型的训练对于大量样本尤其是大量标记样本的依赖越来越成为制约其广泛应用的重要因素[9].

事实上,人类具有强大的学习能力,相关经验以及认知学研究工作表明[10],只需提供很少量的样本作为范例,或者不需要样本,只需提供目标任务的描述性信息,人类便可对相关概念建立起全面充分的理解并灵活运用.参考人类的学习过程,主流小样本学习方法的思路可以描述为:借助一个类别不相关但数量充足的大规模数据集,利用此数据集并结合专家对识别任务的理解提取类别无关或部分可共享的先验知识并对其进行建模,将其迁移至新类别小样本学习任务.此外,小样本学习对新概念的推理泛化能力也有一定的提升,因此也为人工智能技术从对大数据的拟合迈向强人工智能的提供坚实支撑[9].

在本文中,从知识和数据两个层面总结了现在的小样本学习方法.常用的小样本学习方法可以分为度量模型、记忆模型、参数更新模型和样本扩充模型.此外,不同于之前的文献综述仅仅针对某一个应用领域的总结[10-14],本文概述了现有方法在图像分类、目标检测、语义分割和故障诊断4个典型领域的应用情况.这有助于将小样本学习思路或框架进行应用拓展,并根据不同领域的背景知识、数据特性和应用需求作出改进.最后,讨论了现有小样本学习的存在的问题以及未来的几个发展方向.

1 小样本学习方法

1.1 度量模型

度量模型解决小样本学习的思路是学习一个与类别无关的特征空间,使得不同类别的样本在此空间内的特征具有类内集中而类间发散的特性,特征空间以深度神经网络表征,利用测试样本特征与训练样本的相似性将训练样本的标签信息传播到测试样本以实现测试样本类别的推断.

孪生网络(siamese network) 以样本对作为输入,通过参数共享的两个神经网络分支分别提取特征,顶端计算特征对的加权一范数距离的 Sigmoid 函数响应作为输入样本对的相似度量[15].网络的训练以最小化核对损失函数进行,以二元交叉熵作为损失函数.利用训练好的孪生网络计算测试样本与每一类训练样本的相似度,以此实现类别预测.孪生网络是深度学习与小样本学习结合的首次尝试.YE等[16]将输入样本对扩展为三元组,其中包含两个来自同一类别的样本和一个来自不同类别的样本.他们构建了一个排名hinge损失函数来训练网络,确保来自同一类别的样本特征之间的距离小于来自不同类别的样本特征之间的距离.MEHROTRA等[17]对孪生网络进行了修改,使用了类似残差网络的结构来通过多次交替前馈计算样本对之间的相似性.这加深了样本特征的融合,从而实现更强的表达和自适应能力的度量学习.

匹配网络(matching networks, MN)将元学习引入了深度小样本学习的研究中,其学习过程基于从大规模辅助数据集中随机构建的小规模小样本学习任务进行的情节式训练[18].在这个过程中,测试样本的类别预测是训练样本标签的加权和,权重是通过测试样本特征与每个训练样本特征之间的余弦相似性(欧氏距离或余弦距离)获得的,随后进行归一化处理.

原型网络(prototypical networks, PN)与匹配网络(matching networks)有相似之处,但不同之处在于测试样本的类别预测是通过将它们与每个类别的原型特征进行比较而得到的[19].原型特征是属于该类别的所有训练样本的平均值,相似性度量采用欧氏距离.

关系网络(relation networks, RN)用参数化的度量计算网络取代匹配网络和原型网络中的非参数度量方法[20].它们将样本对的特征图连接起来作为输入,并输出它们的相似性.此外,YE等[20]利用Transformer模块强大的特征提取能力来转换支持样本特征,增强了它们的可辨识性[21].为了解决一次性目标检测问题,ELI等[22]提出了一种基于代表性的度量学习模型(如图1所示),其中同时学习骨干网络参数、嵌入空间和类别分布.

图1 基于代表性的度量学习模型

图2 Sinkhorn 度量流程示意图

图3 多尺度正样本细化结构

1.2 记忆模型

传统的基于梯度的网络需要大量数据进行训练和广泛的迭代训练.因此,当遇到新数据时,模型必须低效地重新学习其内部参数以整合新信息.为了解决这个问题,基于记忆模型的网络添加外部内存块来存储先前训练过的任务样本信息,并通过从内存块中快速检索信息来辅助快速推理,通过将先前的信息转化为有用的知识,从而有效地解决了上述问题.

谷歌提出了MANN(memory-augmented neural networks)[23]模型,该模型首次将记忆模块引入到小样本学习领域.在该论文中,使用带有外部记忆模块的神经图灵机作为MANN的实现结构[24],主要包括控制器、外部记忆模块、写入模块和读取模块.控制器使用前向反馈网络或LSTM,并通过写入模块控制输入信息的编码与外部记忆模块交互,并通过读取模块检索记忆块的内容.加载的每个记忆项被用作下一个控制器的附加输入,以实现对记忆模块的循环更新,同时采用最近最少使用(LRU)原则进行信息存储.该模型通过梯度下降成功地获得了长期存储的有效表示,同时通过外部记忆模块快速将少量新表示整合到短期存储中.然而,该模型的记忆模块存在信息遗忘的问题,无法用于对稀有信息的长期存储.

为了解决这个问题,KAISER等[24]使用了快速最近邻算法来提高记忆检索效率,从而实现更大的记忆空间.同时,他们构建了一个键-值对的记忆模块,其中键是指定层的激活,值是给定样本的真值.最后,通过输入和过去激活之间的相似性进行预测.这样的改进使得模型在面对罕见信息时也能够更有效地进行长期存储和检索.

MM-NET将记忆模块与匹配网络相结合,利用记忆模块从过去的先验信息和支持集样本中读取和写入压缩信息作为特征输入进行推理[25].同时,将记忆块与循环神经网络(RNN)相结合,获得一个上下文学习机器,用于预测特征提取网络参数[26].MUNKHDALAI等[27]提出了Meta-Net,它由基础学习器、元学习器和外部记忆块组成.基础学习器学习任务特定的知识并将其转移到元学习器,而元学习器则从不同任务中学习元知识.记忆块存储快速权重和样本表示.在训练过程中,快速权重是通过损失梯度获得的,而慢速权重是通过SGD梯度下降获得的.这两种权重结合用于分类任务.在推理过程中,模型提取查询输入表示向量,并使用记忆块实现整个模型的参数更新,最终从基础学习器获得输出.后来,作者基于样本特征转换的视角提出了CSN记忆模型[28],可以通过根据任务的变化来修改网络激活,从而快速调整模型.记忆增强的小样本学习方法将训练和支持集信息外部存储,为后续的预测提供更多先验知识,从而导致模型更新和预测更加快速.然而,存储信息的选择和方法直接影响模型的性能,并且这类模型的设计通常较为复杂.目前,尚无统一的理论来解决这些问题.

1.3 参数更新模型

参数更新模型主要利用支持集来更新模型参数,通常采用元学习策略.根据元学习器的建模方法,这些模型可以分为两个方面:基于参数优化和基于参数生成.

基于参数优化主要是首先在训练集上获得一个更好的预训练模型,然后根据少量支持集样本优化元学习器的参数,使其更好地适应新任务.RAVI等[28]首次将“学会学习梯度下降”的思想应用于小样本学习领域.他们选择了基础学习器上的支持集损失函数和梯度作为输入,并根据LSTM细胞状态确定参数更新大小.然后,他们计算下一步的损失函数和梯度,直到过程停止,得到最终的基础学习器,用于预测.接着,根据这个基础学习器来进一步优化LSTM参数.为解决直接使用梯度输入会增加参数数量的问题,采用了参数共享机制[29].然而,这导致了额外的模型引入和增加了计算成本.

MAML(model-agnostic meta-learning)通过移除LSTM模型,并将元学习的优化目标改为基础学习器的初始参数,来优化上述优化过程[30].MAML的优点在于具有强解释性和易于实现,但它的优化过程需要二阶可微性,因此有一定的局限性.随后,出现了一系列相应的改进方法.MAML++ 在 MAML 中改进了学习率和批归一化(BN)层参数的细节[31].Meta-SGD 同时学习了学习器的更新方向和学习率,提高了灵活性[32].DEML 在预训练特征提取网络获得的特征空间中执行元学习[32].

为了解决模型不确定性问题,LLAMA提出了构建一个层次贝叶斯元学习框架[33].LLAMA利用最大似然函数更新初始参数值,然后在同一模型上使用不同数据进行训练,持续重构模型,以得到一个稳健的元学习模型[34].为了解决模型对特定任务的偏见问题,导致泛化性能降低,JAMAL等[35]提出了TAML,通过引入正则化损失来有效限制模型参数更新的特定任务倾向.为了解决MAML中固定参数搜索空间的问题,MT-net通过添加与任务相关的转换矩阵,将参数搜索空间映射到任务特定的子空间,扩展参数搜索空间,使模型对任务变化更加敏感[36].

基于参数生成的主要思想是训练一个网络来预测另一个网络的参数,从而实现用一个简单模型来优化复杂模型的效果.BERTINETTO等[37]提出了Learnet,通过在离线预训练集上训练生成参数,并在在线阶段根据样本生成另一个网络的参数.DCNN由DyConNet和CondiNet组成[38].通过后者的训练,预测前者的动态卷积层和卷积核,从而得到最终的模型.为了解决微调导致的遗忘问题,GIDARIS提出了结合图神经网络、去噪自编码器和注意机制来生成分类器参数[39].当然,一些研究者也使用传统的机器学习方法,如岭回归,来进行参数生成和优化方法设计.

参数更新模型有效地解决了大多数模型面临的使用少样本进行调整的困难.与记忆增强的方法相比,这些方法需要更少的内存空间,但在任务类别数量可变的情况下并不适用.

1.4 样本扩充模型

样本增强模型通过训练样本生成模块来增加目标任务的有效支持样本数量,从而提高对查询样本的识别性能.根据不同的样本生成方法,相关研究可分为4类:采样生成、样本多样性建模、样本融合和辅助信息引导方法.

采样生成方法直接利用现有有限数据生成额外的样本[40].ANTONIOU等[40]使用条件生成对抗网络(CGAN)在现有样本的条件下进行样本增强.LI等[41]在CGAN中添加了一个基于生成特征差异和输入随机噪声差异比率的正则化项,以解决生成单调模式的问题.LIU等[42]通过旋转增加了基础类别的数量.

样本多样性建模方法假设类内样本的多样性在不同类别之间是相似或可转移的[43-44].它们将来自大规模辅助数据的多样性转移到小样本类别中进行样本增强.该模型使用来自不同类别的特征对生成新样本,旨在最小化差异并实现有效的样本增强.GAO等[45]考虑到并非所有基础类别都对新类别有帮助.他们利用类别原型特征之间的相似性选择相关的基础类别.他们使用带有基础类别数据特征的CGAN生成样本,并通过循环一致性生成目标函数有效地传递多样性.这确保了新类别样本具有与基础类别样本类似的多样性分布.

样本融合方法将辅助样本引入到小样本类别中,并通过将它们与现有样本融合来生成增强样本.CHEN等[46]利用一个额外的无监督大规模辅助数据集,对类似于训练样本的辅助图像进行采样,然后通过将这些图像拼接在一起来生成增强样本.在他们的后续研究中,他们通过在辅助图像和训练图像之间的拼接层级上进行线性融合来改进拼接方法[47].线性融合权重由一个额外的参数网络生成,该网络与原型网络一起进行联合训练.为了减少对无监督数据集的依赖,筒井等[48]在小样本条件下微调了在其他领域数据上训练的生成对抗网络(GAN),然后将生成的样本与训练样本进行融合.

辅助信息引导方法利用样本之外的信息来扩展样本.一些研究人员使用词向量或语义属性信息构建语义子空间,并设计编码器-解码器结构来处理图像特征.编码器输出的中间特征被映射到语义子空间,并使用高斯模型或选择邻近语义特征来采样额外特征,然后由解码器解码[49].

2 典型场景应用

2.1 图像分类

在深度学习时代,小样本图像分类主要采用判别方法,并遵循元学习的原则[50].王铎等[51]提出了一种新颖且改进的启发式异构匹配机制,用于基于局部特征的小样本学习,以实现更高的图像分类准确性.元学习的研究思想是从大规模辅助数据集中基于目标小样本学习任务的数据结构,随机构造一系列与目标任务具有相同结构的小规模学习任务.构造过程涉及从类别空间中随机采样相同数量的类别,记为N,然后从每个类别中随机选择K个支持样本和Q个查询样本,分别形成支持集和查询集.由于辅助大规模数据集是完全标记的,人工构建的小样本学习任务的所有类别都是已知的.一些研究将小样本学习纳入多任务学习框架,通过与其他任务联合训练来提高模型性能[52-58].Meta GAN将小样本学习的元学习任务与生成对抗网络(GANs)的训练相结合,引入条件生成器,在任务的条件下生成伪样本[53].小样本模型在分类样本的同时判别生成样本的真实性.此外,一些文献探讨了基础类别数据分布和构建模拟小样本任务的采样方法对模型泛化能力的影响[59-61].此外,CAO等[62]从传统机器学习理论的角度分析了样本数(shot)与识别性能之间的关系.

2.2 目标检测

由于目标检测中存在目标定位问题,小样本条件下的训练变得尤为具有挑战性,并且在小样本目标检测(FSOD)[63-64]方面的研究相对较少.因此,用于FSOD的方法必须适应处理特定目标的定位.由于数据不足以提供可靠的假设,小样本模型需要利用先验知识[65].在文献[66]中,作者通过生成多尺度正样本并在不同尺度上改进预测来解决FSOD中的多尺度变化问题.文献[67]提出了一个将SSD和Faster R-CNN相结合的框架,以解决少样本目标检测中的迁移学习挑战.该工作证明了使用两阶段训练计划和有效地微调深度检测器可以成功解决FSOD问题[68].

2.3 语义分割

语义分割是将图像中的每个像素分配给预定义的对应语义类别的过程.在许多缺乏训练样本的应用场景中,利用小样本学习来完成语义分割具有重要的应用价值.

在文献[69]中,AMIRREZA首次将小样本学习应用于语义分割,通过使用全卷积网络(FCN)对新的语义类别的测试图像进行密集的像素级预测.此外,PA-net通过学习原型网络表示并通过点对点匹配来进一步改善泛化性能[70].PFE-net提出了一种生成无训练先验掩码和特征增强模块的方法,以克服支持集和查询集空间之间不一致的问题[75].GEN等提出了ASG-net,用于多原型提取和分配,并且适应对象的几何变换和位移[72].还有一些研究将新的结构,如Transformer和GNNs,引入到小样本学习中,也取得了更好的结果.

2.4 故障诊断

少样本故障诊断是利用有限的机器故障样本来建立智能诊断模型,用于识别和诊断未来潜在的故障.目前,少样本故障诊断的研究主要基于CWRU轴承数据集进行验证.ANSI等[73]使用孪生神经网络从相同或不同类别的样本对中学习,实现了轴承在数据有限情况下的故障诊断.类似地,WANG[72]等基于孪生网络提出了FCDNN模型,在轴承数据集上取得了最好的结果.WU等[74]设计了一个基于一维卷积神经网络的统一少样本迁移学习框架,解决了两种典型的迁移情况:工况迁移和人工到自然迁移.LI等[75]从元学习的角度引入了无关模型元学习方法,并提出了元学习故障诊断模型(MLFD),通过优化初始参数进行故障多分类任务,实现了更快速和更准确的故障诊断[76].当然,在许多情况下,收集所有可能的故障样本非常困难,因此许多研究都集中在零样本学习上,以提高模型对未知故障的检测能力.由于空间限制,在此不会详述零样本学习的内容.

3 面临的挑战和发展趋势

小样本学习现有方法的研究思路整体上分为知识层面和数据层面研究.上文介绍的度量模型、记忆模型以及参数更新模型属于知识层面的研究,通过从辅助 数据集中提取不同形式的类别无关的先验知识为小样本条件下模型的学习提供额外支撑.数据层面研究即样本扩充方法,通过生成更多的数据以提高模型的泛化能力.

知识层面的各类方法中,度量模型作为非参数模型,对任务类别数量不敏感,适用于任务类别数量可变的情形,灵活性强,然而度量模型在利用辅助数据训练完成后往往直接应用于新类别小样本任务,对不同任务的自适应性较差.参数更新模型其分类器结构与任务类别数量相关联,不适用于任务类别数量可变的情形.记忆模型带有额外的记忆模块,设计较为复杂,其对测试数据的类别推断过程需要与记忆模块进行多次交互,效率较低,同时部分模型的结构同样与任务类别数量相关联而对任务类别数量可变的情形不可用.样本扩充方法主要基于对可用的少量数据进行变换得到新样本,其多样性和对模型效果提升的有效性无法保证,因而只能作为一种辅助的思路.

因此总的来说,现有方法虽然在数据条件有约束的情况下,取得了一定的成果.但是还存在一些问题和方向需要继续深入研究,具体如下:

1)数据的低依赖性:目前大部分小样本学习技术是建立在一个具有相关性的大规模标注的辅助数据集上的.但是在一些场景下,大规模辅助数据集数据分布和模态与目标任务空间存在较大差距,导致目标任务仍然难以完成.因此,无监督学习[77]、跨模态迁移学习[78]、长尾学习[79]和联邦学习[80]等相关技术引入小样本学习领域来降低相关方法对数据的依赖是未来的研究工作之一.

2)学习的高效化:虽然现有小样本学习算法在识别准确率上已经取得了很大的突破,但是对数据的特征提取仍然依赖于深度神经网络模型.特别是基于局部特征度量学习的小样本学习模型,识别过程涉及特征组的相似性计算,算法时间、空间复杂度更高.事实上,并非输入数据的所有特征都对小样本识别有帮助,因此,拟引入基于强化学习的特征挑选或注意力模块,对数据不同区域或局部特征进行筛选,可有效降低计算规模[81].

3)模型的鲁棒性:通常小样本学习方法基于理想的数据假设,这在实际应用场景中可能难以满足.在许多实际应用中,小样本学习理想的设置条件可能会因不确定性干扰的存在而被破坏.在这种条件下小样本学习模型如何能够有效地克服数据异常的影响并仍然保持足够的泛化能力仍然是有待解决的问题.此外,研究针对小样本学习模型的对抗训练技术,提高小样本学习模型对于对抗攻击的适应性也具有重大研究价值.

4 结 论

小样本学习方法缓解了深度学习中获取大量训练样本的困难,利用大规模辅助数据中的先验知识帮助目标任务的实现.本文总结了主流的小样本学习方法,分别介绍了知识层面的度量模型、记忆模型、参数更新模型以及数据层面的样本扩充模型.此外,根据具体的应用领域,阐述了现有小样本学习方法在图像分类、目标检测、语义分割和故障诊断4个典型领域的应用情况.最后,从数据的依赖性,学习的高效性以及模型的鲁棒性出发,总结了现在小样本学习方法存在的局限性和未来的发展趋势.

猜你喜欢

类别记忆样本
用样本估计总体复习点拨
推动医改的“直销样本”
记忆中的他们
随机微分方程的样本Lyapunov二次型估计
儿时的记忆(四)
儿时的记忆(四)
记忆翻新
村企共赢的样本
服务类别
论类别股东会