一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于元学习的少样本分类方法与流程

2021-10-24 07:40:00 来源:中国专利 TAG:样本 计算 方法 学习 分类


1.本发明涉及服务计算技术领域,具体涉及一种基于元学习的少样本分类方法。


背景技术:

2.目前有效的文本分类方法都是建立在具有大量的标签数据下的有监督学习,例如常见的textcnn,textrnn等,但是在很多场景下的文本分类是无法提供这么多训练数据的,比如对话场景下的意图识别,这个时候如果我们还以传统的深度学习模型 softmax的形式来分类的话,是极容易陷入过拟合的状态。因此就有很多人研究在少量样本下如何建模。one

shot learning,few

shot learning,甚至是zero

shot learning都是旨在解决这类的问题。
3.目前对于少样本的文本分类的做法主要分为以下几种:
4.2.1文本增强。
5.2.1.1无条件增强
6.词汇&短语替换:
7.基于词典:主要从文本中选择词汇或短语进行同义词替换,词典可以采取wordnet或哈工大词林等。著名的eda(easy dataaugmentation)就采用了这种方法。
8.基于词向量:在嵌入空间中找寻相邻词汇进行替换,我们所熟知的tinybert就利用这种技术进行了数据增强。
9.masked lm:借鉴预训练语言模型(如bert)中的自编码语言模型,可以启发式地mask词汇并进行预测替换。
10.tf

idf:实质上是一种非核心词替换,对那些low tf

idf scores进行替换,这一方法最早由google的uda提出。
11.随机噪音注入:
12.随机插入:随机插入一个词汇、相应的拼写错误、占位符等,uda则根据uni

gram词频分布进行了采样。
13.随机交换:随机交换词汇或交换shuffle句子。
14.随机删除:随机删除(drop)词汇或句子。
15.混合&交叉:
16.混合增强:起源于图像领域的mixup,这是一种表示增强方法,借鉴这种思想,后来提出了wordmixup和sentmixup将词向量和句向量进行mixup。
17.交叉增强:类似于“染色体的交叉操作”,是将相同极性的文本进行交叉
18.回译:基于机器翻译技术,例如从中文

英文

日文

中文;我们熟知的机器阅读理解模型qanet和uda都采用了回译技术进行数据增强。
19.句法交换:通过句法树对文本句子进行解析,并利用相关规则进行转换,例如将主动式变成被动式句子。
20.对抗增强:不同于cv领域利用gan生成对抗进行数据增强,nlp中通常在词向量上
添加扰动并进行对抗训练。
21.2.1.1条件增强
22.定义:所谓条件增强(conditional data augmentation),就是意味着需要强制引入「文本标签」信息到模型中再产生数据。
23.深度生成模型:既然条件增强需要引入标签信息进行数据增强,那么我们自然就会联想到conditional变分自编码模型(cvae),利用cva进行增强。想生成一个高质量的增强数据,往往需要充分的标注量,但这却与「少样本困境」这一前提所矛盾。这也正是gan或者cvae这一类深度生成模型在解决少样本问题时需要考虑的一个现状。
24.预训练语言模型:众所周知,bert等在nlp领域取得了巨大成功,特别是其利用大量无标注数据进行了语言模型预训练。如果我们能够结合标签信息、充分利用这一系列语言模型去做文本增强,也许能够克服深度生成模型在少样本问题上的矛盾。近来许多研究者对conditional pre

trained language models做文本增强进行了有益尝试。
25.contextual augment:这是这一系列尝试的开篇之作,其基于lstm进行bilm预训练,将标签信息融入网络结构进行finetune,是替换生成的词汇与标签信息兼容一致。
26.cbert:其主要思想还是借鉴了contextual augment,基于bert进行finetune,将segment embedding转换融入标签指示的label embedding(如果标签类别数目大于2类,则相应扩充)。
27.lambada:来自ibm团队,其基于gpt

2将标签信息与原始文本拼接当作训练数据进行finetune,同时也采用一个判别器对生成数据进行了过滤降噪。
28.2.2.半监督学习
29.监督学习往往需要大量的标注数据,而标注数据的成本比较高,因此如何利用大量的无标注数据来提高监督学习的效果,具有十分重要的意义。这种利用少量标注数据和大量无标注数据进行学习的方式称为半监督学习(semi

supervised learning,ssl)。在同等的少量标注样本下,半监督学习通常取得比监督学习较好的性能。进入深度学习时代以来,ssl如何在少量标注样本下达到或超越大量标注样本下监督学习的效果,ssl如何在大量标注样本下也不会陷入到“过拟合陷阱”,是ssl研究者面临的一个挑战。
30.近年来,半监督深度学习取得了长足的进展,特别是在cv领域;相关的研究主要着力于如何针对未标注数据构建无监督信号,与监督学习联合建模;简单地讲,就是如何在损失函数中添加针对未标注数据相关的正则项,使模型能够充分利用大量的未标注数据不断迭代,最终增强泛化性能。
31.总的来看,深度学习时代的半监督学习,主要针对未标注数据相关的正则化项进行设置,其通常有以下两种:
32.熵最小化(entropy minimization):根据半监督学习的cluster假设,决策边界应该尽可能地通过数据较为稀疏的地方(低密度区),以能够避免把密集的样本数据点分到决策边界的两侧。也就是模型通过对未标记数据预测后要做出低熵预测,即熵最小化。
33.一致性正则(consistency regularization):对于未标记数据,希望模型在其输入受到扰动时产生相同的输出分布。
34.2.3.uda
35.为克服这一限制,uda通过一致性训练框架,将有监督的数据增强技术的发展扩展
到了有大量未标记数据的半监督学习,尽可能的去利用大量未标记数据,这也正是论文名字——无监督数据增强(unsupervised dataaugmentation)的由来。
36.uda在六个文本分类任务上结合bert迁移学习框架进行了实验。迁移学习框架分别为:
37.(1)random:随机初始化的transformer;
38.(2)bert_base;
39.(3)bert_large;
40.(4)bert_finetune:基于bert_large在domain数据集上继续进行预训练;
41.在少样本场景下,uda相较于同等监督学习模型,性能明显提升;
42.在少样本场景下,uda能够逼近充分样本下的监督学习模型性能,特别地,在imdb上具有20个标注数据的uda[8]优于在1250倍标注数据上训练的sota模型。相较于2分类任务,5分类任务难度更高,未来仍有提升空间;
[0043]
uda兼容了迁移学习框架,进一步domain预训练后,性能更佳。
[0044]
2.4.迁移学习
[0045]
通过使用其他人预训练的权重,即使只有一个小的数据集,很可能得到很好的性能。在生物信息学和机器人技术等领域,由于数据采集和标注成本高,构建大规模的、注释良好的数据集非常困难,这限制了数据集的发展。迁移学习不要求训练数据必须与测试数据独立且同分布,激发了我们使用迁移学习来解决训练数据不足的问题,而且给出了相应的解决方法,并回顾了当前关于深度迁移学习各个类别的研究工作,并给出了每个类别的标准化描述和示意图。


技术实现要素:

[0046]
本发明公开了一种基于元学习的少样本分类方法,其结合lcm的元学习方法,训练过程主要有两个方面:attention和岭回归分类器,attention模块通过组合源池和支持集的分布统计信息来生成特定于类的注意力;岭回归分类器的目标是在从支持集学习之后,对查询集进行预测,由于测试阶段数据量较小,通过lcm试图挽救预测错误的标签,达到在低数据量下较高的分类准确度,从而可以有效解决背景技术中涉及的技术问题。
[0047]
为实现上述目的,本发明的技术方案为:
[0048]
一种基于元学习的少样本分类方法,其特征在于,该方法包括如下步骤:
[0049]
步骤一、构建数据集,在ytrain中选取n个类作为样本,从该n个类中抽取支持集和查询集,再使用来自其余类的示例形成源池;
[0050]
需要进一步说明的是,所述n为大于0的自然数。
[0051]
步骤二、对源池的文本经过wiki.en.vec后转化为词向量;
[0052]
步骤三、在源池中淡化常用的词,强化罕见的词,生成单词的重要性s(w),在supportset中找出支持集与查询集的区别性t(w);
[0053]
步骤四、将步骤三中得到的s(w)和t(w)通过bilstm连接起来,得到输出值attention(α);
[0054]
步骤五、将输出值attention(α)输送给岭回归分类器,得到一个标签分布预测,将lcm得到的模拟标签分布与元学习得到的标签分布预测通过kl散度计算loss,继续训练;
[0055]
步骤六、经过多次迭代计算,得到训练后的模型;
[0056]
步骤七、从ytest样本中选取n个新类,从该n个新类中选择支持集和查询集,使用来自ytrain的所有示例来形成源池,用支持集去调节模型参数,查询集测试模型效果;
[0057]
步骤八、实验结果及其讨论。
[0058]
根据权利要求1所述的一种基于元学习的少样本分类方法,其特征在于:在步骤三中,生成单词的重要性s(w)具体包括如下步骤:
[0059]
利用式(1)衡量一般的词的重要性
[0060][0061]
其中,ε=10
‑3,p(xi)代表一句话中第i个词xi在source中的统计概率;
[0062]
利用式(2)反映类特定词的重要性
[0063][0064]
其中,h(
·
)为熵算子,xi为特定词,y为标签。
[0065]
作为本发明的一种优选改进,在步骤五中,所述岭回归分类器为:
[0066][0067][0068][0069]
其中,w为权重矩阵,i为单位矩阵,a和b是通过元训练学习的元参数。
[0070]
作为本发明的一种优选改进,在步骤五中,所述lcm由一个标签编码器和一个模拟标签分配计算块构成,所述标签编码器采用深度神经网络来生成标签表示向量。
[0071]
作为本发明的一种优选改进,在步骤五中,所述模拟标签分布由相似层和模拟标签分布计算层组成,所述相似层以标签表示和当前实例表示为输入,通过点积计算它们的相似度值,然后应用softmax激活的神经网络得到标签混淆分布,该标签混淆分布通过计算实例和标签之间的相似性来捕获标签之间的依赖关系。
[0072]
作为本发明的一种优选改进,在步骤五中,所述模拟标签分布由真实标签的one

hot向量乘以系数α与lcd相加得到,所述模拟标签分布由式(3)表示:
[0073][0074][0075]
y
(s)
=softmax(αy
(t)
y
(c)
)
ꢀꢀꢀ
(3)
[0076]
其中,f
l
标签编码器,l1,l2,...l
c
标签,v
l
标签表示向量,y
(c)
为lcd,y
(s)
为模拟标签分布。
[0077]
作为本发明的一种优选改进,在步骤五中,kl散度是两个概率分布间差异的非对
称性度量,该kl散度由式(4)表示:
[0078][0079]
其中,y
(s)
为模拟标签分布,y
(p)
为标签分布预测。
[0080]
本发明的有益效果如下:
[0081]
1、第三步和第四步对文本数据添加了的注意力机制,降低常用词的重要性,提高区别词的重要性,对文本分类起着重要作用;
[0082]
2、第五步则是采用岭回归分类器进行分类,减少数据过少引起的过拟合,对相似度较高的标签采用lcm进行区分,挽回那些预测错误标签;
[0083]
3、采用结合lcm的元学习方法,元学习的方法提高了模型的泛化性,在小样本领域里有很强的分类能力;lcm则是提高了在文本标签有着较高相似度的情况下的准确度。
附图说明
[0084]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图,其中:
[0085]
图1为lstm流程图。
具体实施方式
[0086]
下面将结合本发明实施例对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0087]
本发明提供一种基于元学习的少样本分类方法,其特征在于,该方法包括如下步骤:
[0088]
步骤一、构建数据集,在ytrain中选取n个类作为样本,从该n个类中抽取支持集和查询集,再使用来自其余类的示例形成源池(source pool);
[0089]
步骤二、对源池的文本经过wiki.en.vec后转化为词向量;
[0090]
步骤三、在源池中淡化常用的词,强化罕见的词,生成单词的重要性s(w),在supportset中找出支持集与查询集的区别性t(w);
[0091]
需要进一步说明的是,生成单词的重要性s(w)具体包括如下步骤:
[0092]
利用式(1)衡量一般的词的重要性
[0093]
[0094]
其中,ε=10
‑3,p(xi)代表一句话中第i个词xi在source中的统计概率;
[0095]
利用式(2)反映类特定词的重要性
[0096][0097]
其中,h(
·
)为熵算子,xi为特定词,y为标签。
[0098]
步骤四、将步骤三中得到的s(w)和t(w)通过bilstm连接起来,得到输出值attention(α);
[0099]
需要进一步说明的是,所述bilstm就是双向的lstm,它将s(w)和t(w)拼接起来得到attention(α)。请参阅图1所示,可以看出,lstm区别于rnn的地方,主要就在于它在算法中加入了一个判断信息有用与否的“处理器”(图1中间的模块)。
[0100]
lstm中的重复模块包含四个相互作用的激活函数(三个sigmoid,一个tanh):图中每条线表示一个完整向量,从一个节点的输出到其他节点的输入。图1中间的模块,圆圈代表逐点操作,比如向量加法,而非圆圈表示门限激活函数。线条合并表示串联,线条分差表示复制内容并输出到不同地方。
[0101]
存储单元中管理向单元移除或添加的结构叫门限,有三种:遗忘门、输入门、输出门。门限由sigmoid激活函数和逐点乘法运算组成。前一个时间步骤的隐藏状态,一个送到遗忘门(输入节点),一个送到输入门,一个送到输出门。就前传递而言,输入门学习决定何时让激活传入存储单元,而输出门学习何时让激活传出存储单元。相应的,对于后传递,输出门学习何时让错误流入存储单元,输入门学习何时让它流出存储单元。
[0102][0103]
用输入x
t
,t

1次的输出h
t
‑1,计算遗忘率决定一个特征是否要遗忘,0代表完全遗忘,1代表全部记住。
[0104]
步骤五、将输出值attention(α)输送给岭回归分类器,得到一个标签分布预测(sld),将lcm得到的模拟标签分布(sld)与元学习得到的标签分布预测(pld)通过kl散度计算loss,继续训练;
[0105]
需要进一步说明的是,所述岭回归分类器为:
[0106][0107][0108][0109]
其中,w为权重矩阵,i为单位矩阵,a和b是通过元训练学习的元参数。
[0110]
所述lcm由一个标签编码器和一个模拟标签分配计算块构成,所述标签编码器采用深度神经网络来生成标签表示向量。
[0111]
所述模拟标签分布由相似层和模拟标签分布计算层组成,所述相似层以标签表示和当前实例表示为输入,通过点积计算它们的相似度值,然后应用softmax激活的神经网络得到标签混淆分布,该标签混淆分布通过计算实例和标签之间的相似性来捕获标签之间的依赖关系。
[0112]
所述模拟标签分布由真实标签的one

hot向量乘以系数α与lcd相加得到,所述模拟标签分布由式(3)表示:
[0113][0114][0115]
y
(s)
=softmax(αy
(t)
y
(c)
)
ꢀꢀꢀ
(3)
[0116]
其中,f
l
标签编码器,l1,l2,...l
c
标签,v
l
标签表示向量,y
(c)
为lcd,y
(s)
为模拟标签分布。
[0117]
kl散度是两个概率分布间差异的非对称性度量,该kl散度由式(4)表示:
[0118][0119]
其中,y
(s)
为模拟标签分布,y
(p)
为标签分布预测。
[0120]
步骤六、经过多次迭代计算,得到训练后的模型;
[0121]
步骤七、从ytest样本中选取n个新类,从该n个新类中选择支持集和查询集,使用来自ytrain的所有示例来形成源池(source pool),用支持集去调节模型参数,查询集测试模型效果;
[0122]
步骤八、实验结果及其讨论。
[0123]
本发明的有益效果如下:
[0124]
1、第三步和第四步对文本数据添加了的注意力机制,降低常用词的重要性,提高区别词的重要性,对文本分类起着重要作用;
[0125]
2、第五步则是采用岭回归分类器进行分类,减少数据过少引起的过拟合,对相似度较高的标签采用lcm进行区分,挽回那些预测错误标签;
[0126]
3、采用结合lcm的元学习方法,元学习的方法提高了模型的泛化性,在小样本领域里有很强的分类能力;lcm则是提高了在文本标签有着较高相似度的情况下的准确度。
[0127]
尽管本发明的实施方案已公开如上,但并不仅仅限于说明书和实施方案中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里所示出与描述的图例。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜