一种基于合成数据的无监督句子表征学习方法
未命名
08-22
阅读:135
评论:0
1.本发明涉及基于对比学习的无监督句子表征学习技术领域,尤其是一种基于合成数据的无监督句子表征学习方法。
背景技术:
2.过去几年里,无监督句子表征学习这个研究方向取得了不错的进展。然而,目前的模型大都是以真实数据集作为训练语料来进行训练,比如bert-ct是在english wikipedia语料上训练得到的;clear、cline、coco-lm、bert-flow和simcse等是在bookcorpus和english wikipedia两种语料上训练得到的;declutr以openwebtext作为训练语料的;is-bert是以自然语言推理数据集snli和multinli数据集的无标注文本作为训练语料的,使得它们在实际场景下面临诸多挑战。
3.首先,真实数据经常包含着诸如社会偏见、个人隐私之类的冗余信息,使得编码得到的表示也会学习到这些冗余信息。这些含有冗余信息的表示不仅会在下游任务上散播,还会放大这些带有歧视的决策。这个问题已经引起了来自学术界、政府和工业界的越来越多的重视,同时也阻碍了模型的实际应用。其次,真实数据往往会倾向于某一类型,然而,现实世界的下游任务多种多样,测试集分布的范围也是千变万化。尽管现有训练集的覆盖范围已经相当之广,然而与真实测试集的分布还是有不小的差距,在多样性上存在诸多不足。再次,通过人工等方式来收集更多数据集以扩充训练集的范围固然是一个选择,但必然面临着时间、精力成本昂贵等缺点。尤其,模型训练往往需要大量高质量的数据,而在现实中收集庞大且高质量的数据是十分艰难的,尤其是在某些特定领域、语言和地区。高质量数据的稀缺直接影响着这些模型的有效性。近些年来,大规模预训练模型,如gpt3、clip,在各类下游任务上成绩斐然,然而这些模型仅以接口的方式向群众开放,这也就限制了人们获取高质量预训练数据集的来源。
4.目前,真实数据集存在的偏见、数据稀缺等问题,已经吸引了很多研究的关注,并提出了诸多方法来解决,这些工作可大致被分为两类:1)专注于具体任务的方法。针对偏见,这类方法会将模型在下游任务上微调时去除冗余信息,并要求对数据的敏感属性进行注释;针对数据稀缺,这类方法通过数据增强和人工收集来获得更多的数据。2)专注于通用任务的方法。针对偏见,这类方法直接通过提升句子表示的质量来解决这个问题;针对数据稀缺,这类方法通过迁移学习来缓解该问题。然而,这些工作都严重依赖于人工设计,并且不能彻底地从数据层面来解决问题。
5.针对真实数据的以上种种缺陷,另一个可行的方法是使用合成数据集作为训练数据。已有的研究表明,生成模型产生的数据比原始的真实数据包含更少的社会偏见、个人隐私等冗余信息,这就使得在合成数据基础之上训练得到的模型更容易为人们所接受,在实际场景中发挥更大的作用。同时,利用生成模型,可以使用较少的成本与精力去生成更多样化的数据,这十分有利于扩展训练数据的分布。此外,合成数据去除了一定程度上的社会偏见、个人隐私等冗余信息,基于合成数据训练得到的模型在理论上的表现比基于真实数据
训练得到模型效果更好。
6.现有的语言生成模型研究已经有丰富的成果。然而,使用当前的方法构造输入的正样本经常会破坏句子的句法结构。相比之下暂退掩码方法了发挥相对较好的性能,但是也被质疑其限制了构造出的正样本的多样性。因此,基于给定的输入,如何构造有效的正样本并使得其句法结构不被破坏,也是一个技术难点。
7.现有技术的句子表示模型受真实数据集限制而带来的应用局限,无监督句子表征学习模型(如bert-flow和simcse)大都是在真实数据上训练得到的,这些真实数据包含着社会偏见、个人隐私等各类问题,且难以收集,而语言生成模型语使用当前的方法构造输入的正样本经常会破坏句子的句法结构。
技术实现要素:
8.本发明的目的是针对现有技术的不足而提供的一种基于合成数据的无监督句子表征学习方法,采用合成数据集作为训练数据,并分别在离散空间和连续空间上做数据增强,构造正负样本来训练模型,据此进行无监督句子表征学习模型构建。在不同空间中,使用数据增强得到的正负样本来进行模型训练,结合对比学习方法来进行句子表示,避免了对于真实数据的过度依赖,学习到的句子表示与从真实数据学习到的句子表示的性能相当甚至更好,与此同时,使用两个数据增强构建得到的正样本比已有的数据增强取得了更好的效果,训练愈加高效的句子表征学习模型,以支持句子表征模型在实际场景中的落地,方法简便,使用效果好,有效解决了真实数据训练集的种种缺点,对提升模型性能有极大的帮助,具有良好应用前景。
9.本发明的目的是这样实现的:一种基于合成数据的无监督句子表征学习方法,其特点采用生成模型,将生成器的输出样本而非真实数据作为数据来源,同时引入离散空间和连续空间的数据增强来构建正样本,结合对比学习方法来进行句子表示,具体包括以下步骤:
10.(1)使用语言生成模型lstm-vae生成合成数据
11.使用lstm-vae模型作为生成器生成合成数据,基于语言生成模型lstm-vae作为生成器得到合成数据集,该生成器由一个编码器和一个解码器所组成,输入端的编码器和输出端的解码器都是由lstm构成,将数据输入编码器得到中间隐藏向量,然后将隐藏向量传入解码器,得到最终输出。
12.在维基百科语料采样得到的数据集上训练lstm-vae模型,使用训练好的生成器来生成合成数据集。具体来说,从维基百科数据集的106条句子中,随机采样3000条句子,作为生成器的训练数据,批量大小设置为1,训练迭代次数为40,使用lstm-vae模型(生成器)来生成和维基百科的106句子不同的另外106条句子。
13.(2)正样本的构造
14.在合成数据集的基础上,通过连续空间数据增强和离散空间数据增强来构造正样本,以及两种空间的变换来得到输入的不同视角。
15.step 1,连续空间上的数据增强
16.当句子被输入到有多层神经网络所构成的编码器中,各个层的神经元被随机丢弃,这导致了即使相同的句子输入编码器,得到的句子表示也会不同。本发明把这种数据增
强称为连续空间上的数据增强。对于连续空间上的数据增强
17.,采用暂退掩码作为默认的数据增强方法,暂退掩码由下述(a)式表示为:
18.z=f(x)
ꢀꢀꢀ
(a)。
19.其中,x、f和z分别表示输入,开启暂退机制的编码器和句子表示。
20.使用暂退掩码作为t
x
,基于lstm-vae模型(生成器)的输出来构建正样本,然后训练模型来学习句子表示,将把这种设置下的句子表征学习模型视作gencse其中的一个版本,即gencse(t
x
)。
21.step 2,离散空间上的数据增强
22.为了不破坏文本原来的句法和流畅性,采用基于被遮蔽的单词内容来生成正样本,以保持句法的完整。本发明提出一个新的离散空间数据增强方法tz,maskpred,随机地将输入句子中的单词进行遮蔽,然后使用一个额外的预测器来预测被遮蔽的单词。最后,由一个判别器被用来判断预测结果是否正确。maskpred的机制可以由下述(b)式的数学语言表示为:
23.z=f(p(x
′
))
ꢀꢀꢀ
(b)。
24.其中,x
′
是指x中的单词被随机地屏蔽之后得到的句子;p、f和z分别代表预测器,开启暂退机制的嵌入函数和句子表示。
25.(3)使用t
x
和tz构建不同视角的正样本给定生成器生成的长度为t的句子x=[x1,x2,
…
,x
t
],使用离散空间和连续空间上的数据增强方法来构建不同视角的正样本,所述离散空间的数据增强步骤如下:
[0026]
3-1:以40%遮蔽比率随机遮蔽句子中的单词并得到句子x
′
=[x1,x
《maxsk1》
,
…
,x
《mask2》
,
…
,x
t
]。
[0027]
3-2:使用预测器p预测被遮蔽的单词,得到预测器的输出x
″
。
[0028]
3-3:使用判别器d来判别句子中的每个单词是否被替换了。
[0029]
所述连续空间上的数据增强是将输入数据重复输入编码器,对于一个句子x,判别单词是否被替换的交叉熵损失函数由下述(c)式表示为:
[0030][0031]
3-4:使用暂退掩码作为默认的数据增强方法来构建正样本,将一个小批量样本中其它的句子视作负样本,则一个小批量样本的训练目标ld通过公式(d)计算:
[0032][0033]
其中,n指的是批量大小(batch size)。
[0034]
(4)基于对比学习的模型训练
[0035]
对比学习通过拉近正样本、拉开负样本之间的距离来学习有效的句子表示。使用infonce函数作为目标函数,计算公式如下述(e)式所示:
[0036][0037]
假设一个成对样例的集合xi和是语义相关的。此处,让hi和分别代表xi和的句子表示,代表其它句子的表示;τ是温度系数;sim(h1,h2)是cosine相似度xi和是对同一个句子的两种不同变换,也即离散空间和连续空间的数据增强;是随机选择的其它的不同句子。一个小批量的训练目标如下述(f)式所示:
[0038][0039]
其中,n指的是批量大小(batch size)。
[0040]
总的训练目标l由下述(g)式表示为:
[0041]
l=ls+α*ldꢀꢀꢀ
(g)。
[0042]
其中,α为超参数。
[0043]
本发明与现有技术相比具有提升模型性能,避免了对于真实数据的过度依赖,有效解决了真实数据训练集的种种缺点,学习到的句子表示与从真实数据学习到的句子表示的性能相当甚至更好,与此同时,使用两个数据增强构建得到的正样本比已有的数据增强取得了更好的效果,训练愈加高效的句子表征学习模型,以支持句子表征模型在实际场景中的落地。本发明在十四种下游任务上进行了模型验证,实验结果显示,gencse学习到的句子表示与从真实数据学习到的句子表示的性能相当甚至更好,使用两个数据增强构建得到的正样本比已有的数据增强取得了更好的效果,为之后在无监督场景下生成数据出发去提升句子表质量提供了技术依据,对提升模型性能有极大的帮助,具有良好应用前景。
附图说明
[0044]
图1为基于真实数据和合成数据的句子表征学习模型;
[0045]
图2为lstm-vae模型结构示意图;
[0046]
图3为基于合成数据的句子表征学习模型gencse结构示意图。
具体实施方式:
[0047]
参阅图1-图3,本发明的具体实现步骤如下:
[0048]
(1)基于lstm-vae的合成数据生成
[0049]
使用lstm-vae模型作为生成器来生成合成数据,该生成器由一个编码器和一个解码器所组成。输入端的编码器和输出端的解码器都是由lstm构成。输入传入编码器得到中间隐藏向量,然后将隐藏向量传入解码器,得到最终输出。
[0050]
在维基百科语料采样得到的数据集上来训练lstm-vae,并使用训练好的生成器来生成合成数据集。具体来说,从维基百科数据集的106条句子中,随机采样3000条句子,作为生成器的训练数据,批量大小设置为1,训练迭代次数为40。使用lstm-vae生成器来生成和维基百科的106句子不同的另外106条句子。
[0051]
(2)连续空间上的数据增强
[0052]
当句子被输入到有多层神经网络所构成的编码器中,各个层的神经元被随机丢弃,这导致了即使相同的句子输入编码器,得到的句子表示也会不同。本发明把这种数据增强称为连续空间上的数据增强,对于连续空间上的数据增强t
x
,采用暂退掩码作为默认的
数据增强方法,所述暂退掩码工作原理由下述(a)式表示为:
[0053]
z=f(x)
ꢀꢀꢀꢀꢀꢀ
(a)。
[0054]
其中,x、f和z分别表示输入,开启暂退机制的编码器和句子表示。
[0055]
参阅图2,使用暂退掩码作为t
x
,基于lstm-vae生成器的输出来构建正样本,然后训练模型来学习句子表示,将把这种设置下的句子表征学习模型视作gencse其中的一个版本,即gencse(t
x
)。
[0056]
(3)离散空间上的数据增强
[0057]
为了不破坏文本原来的句法和流畅性,采用基于被遮蔽的单词内容来生成正样本,以保持句法的完整。本发明提出一个新的离散空间数据增强方法tz,maskpred,随机地将输入句子中的单词进行遮蔽,然后使用一个额外的预测器来预测被遮蔽的单词。最后,一个判别器被用来判断预测结果是否正确。
[0058]
参阅图3,图中的模型上分支展示了离散空间数据增强,maskpred的机制可以由下述(b)式的数学语言表示为:
[0059]
z=f(p(x
′
))
ꢀꢀꢀꢀꢀꢀ
(b)。
[0060]
其中,x
′
是指x中的单词被随机地屏蔽之后得到的句子;p、f和z分别代表预测器,开启暂退机制的嵌入函数和句子表示。
[0061]
(4)使用t
x
和tz去训练模型,构建不同视角的正样本
[0062]
参阅图3,给定由生成器生成的长度为t的句子x=[x1,x2,
…
,x
t
],使用离散空间和连续空间上的数据增强方法来构建正样本。其中,离散空间数据增强的运行机制分三步:1)以特定的遮蔽比率随机遮蔽句子中的单词并得到句子x
′
=[x1,x
《mask1》
,
…
,x
《mask2》
,
…
,x
t
];2)随后预测器p将被用来预测被遮蔽的单词并得到预测器的输出x
″
;3)最后,借用一个判别器d来判别句子中的每个单词是否被替换了。使用预测器p和判别器d推荐使用electra的差别预测目标的条件版本。连续空间上的数据增强t
x
的工作原理是将输入重复输入编码器。对于一个句子x,判别单词是否被替换的交叉熵损失函数由下述(c)式表示为:
[0063][0064]
训练过程中,一个小批量样本的训练目标ld由下述(d)式表示为:
[0065][0066]
其中,n为批量大小。
[0067]
(5)基于对比学习的模型训练
[0068]
对比学习通过拉近正样本、拉开负样本之间的距离来学习有效的句子表示。使用infonce函数作为目标函数,计算公式如公式(e)所示:
[0069][0070]
假设一个成对样例的集合xi和是语义相关的。此处,让hi和分别代表i和的句子表示,代表其它句子的表示;τ是温度系数;sim(h1,h2)是
cosine相似度xi和是对同一个句子的两种不同变换,也即离散空间和连续空间的数据增强;是随机选择的其它的不同句子。一个小批量的训练目标如下述(f)式所示:
[0071][0072]
其中,n指的是批量大小(batch size)。
[0073]
总的训练目标l由下述(g)式表示为:
[0074]
l=lc+α*ldꢀꢀ
(g)。
[0075]
其中,α为超参数。
[0076]
当前的无监督句子表征学习模型(如bert-flow和simcse)大都是在真实数据上训练得到的,这些真实数据包含着社会偏见、个人隐私等各类问题,且难以收集。本发明创新之处在于,针对目前无监督句子表征学习研究中普遍使用的真实数据训练集的种种缺点,首次提出使用合成数据集作为训练数据,并分别在离散空间和连续空间上做数据增强构造正负样本来训练模型,基于此来进行无监督句子表征学习模型构建。在不同空间中,使用数据增强得到的正负样本来进行模型训练,结果证明,本发明学习到的句子表示与从真实数据学习到的句子表示的性能相当甚至更好;与此同时,使用两个数据增强构建得到的正样本比已有的数据增强取得了更好的效果。
[0077]
以上实施例只是对本发明做进一步说明,并非用以限制本发明专利,凡为本发明等效实施,均应包含于本发明专利的权利要求范围之内。
技术特征:
1.一种基于合成数据的无监督句子表征学习方法,其特征在于,采用生成模型lstm-vae,将生成器输出样本的非真实数据作为数据来源,同时引入离散空间和连续空间的数据增强来构建正样本,结合对比学习方法进行句子表示,具体包括以下步骤:(1)基于模型lstm-vae生成合成数据1-1:使用lstm-vae模型作为生成器生成合成数据,所述生成器由编码器和解码器组成,输入端的编码器和输出端的解码器均为lstm构成,输入数据经过编码器得到中间隐藏向量,然后将隐藏向量输入解码器,得到最终输出数据;1-2:在维基百科语料采样得到的数据集上训练lstm-vae模型,并使用训练好的生成器生成合成数据集,所述生成器从维基百科数据集的106条句子中,随机采样3000条句子,作为生成器的训练数据,批量大小设置为1,训练迭代次数为40,使用训练好的生成器生成和维基百科的106句子不同的另外106条句子;(2)连续空间上的数据增强给定生成器生成的长度为t的句子x=[x1,x2,...,x
t
],使用连续空间上的数据增强方法构建正样本,所述连续空间上的数据增强t
x
,采用暂退掩码作为默认的数据增强方法,所述暂退掩码由下述(a)式表示为:z=f(x)
ꢀꢀ
(a);其中,x、f和z分别表示输入,开启暂退机制的编码器和句子表示;使用暂退掩码作为t
x
,基于lstm-vae生成器的输出来构建正样本,然后训练模型来学习句子表示,将把这种设置下的句子表征学习模型视作gencse其中的一个版本,即gencse(t
x
);(3)离散空间上的数据增强给定生成器生成的长度为t的句子x=[x1,x2,...,x
t
],使用离散空间上的数据增强方法构建正样本,使用maskpred随机地将输入句子中的单词进行遮蔽作为离散空间数据增强t
z
,以40%的遮蔽比率随机遮蔽句子中的单词,得到句子x
′
=[x1,x
<mask1>
,...,x
<mask2>
,...,x
t
],然后使用预测器预测被遮蔽的单词,得到预测器的输出x
″
,使用判别器判别句子中的每个单词是否被替换,即判断预测结果是否正确;所述maskpred机制由下述(b)式的数学语言表示为:z=f(p(x
′
))
ꢀꢀꢀꢀ
(b);其中,x
′
为x中的单词被随机地屏蔽之后得到的句子;p、f和z分别为预测器,开启暂退机制的嵌入函数和句子表示;(4)构建不同视角的正样本使用t
x
和t
z
构建不同视角的正样本给定生成器生成的长度为t的句子x=[x1,x2,...,x
t
],使用离散空间和连续空间上的数据增强方法来构建不同视角的正样本,所述离散空间的数据增强步骤如下:4-1:以40%遮蔽比率随机遮蔽句子中的单词并得到句子x
′
=[x1,x
<mask1>
,...,x
<mask2>
,...,x
t
];4-2:使用预测器p预测被遮蔽的单词,得到预测器的输出x
′′
;4-3:使用判别器d来判别句子中的每个单词是否被替换了;所述连续空间上的数据增强是将输入数据重复输入编码器,对于一个句子x,判别单词
是否被替换的交叉熵损失函数由下述(c)式表示为:4-4:使用暂退掩码作为默认的数据增强方法来构建正样本,将一个小批量样本中其它的句子视作负样本,则一个小批量样本的训练目标l
d
由下述(d)计算:其中,n指的是批量大小(batch size);(5)基于对比学习的模型训练对比学习通过拉近正样本、拉开负样本之间的距离来学习有效的句子表示,使用infonce函数作为目标函数,计算如下述(e)式所示:假设一个成对样例的集合x
i
和是语义相关的,让h
i
和分别代表x
i
和的句子表示,代表其它句子的表示;τ是温度系数;sim(h1,h2)是cosine相似度x
i
和是对同一个句子的两种不同变换,即离散空间和连续空间的数据增强;是随机选择的其它不同句子;一个小批量的训练目标由下述(f)式表示为:其中,n指的是批量大小;总的训练目标l由下述(g)式表示为:l=l
c
+α*l
d
ꢀꢀ
(g);其中,α为超参数。2.根据权利要求1所述的基于合成数据的无监督句子表征学习方法,其特征在于,所述生成模型将生成器输出样本的非真实数据作为数据来源,同时引入离散空间和连续空间的数据增强来构建正样本,结合对比学习方法进行句子表示。3.根据权利要求1所述的基于合成数据的无监督句子表征学习方法,其特征在于,所述预测器和判别器使用electra的差别预测目标的条件版本。
技术总结
本发明公开了一种基于合成数据的无监督句子表征学习方法,其特点是使用生成模型LSTM-VAE,将生成模型的输出样本而非真实数据作为数据来源,同时引入离散空间和连续空间的数据增强来构建正样本,结合对比学习方法来进行句子表示,具体包括:合成数据生成、连续空间和离散空间上的数据增强和构建不同视角的正样本等步骤。本发明与现有技术相比,提升了模型性能,避免了对于真实数据的过度依赖,实验结果显示,GenCSE学习到的句子表示与从真实数据学习到的句子表示的性能相当甚至更好,与此同时,使用两个数据增强构建得到的正样本比已有的数据增强取得了更好的效果,为无监督场景下生成数据出发去提升句子表质量提供了技术依据具有良好应用前景。依据具有良好应用前景。依据具有良好应用前景。
技术研发人员:孙玉灵 陈少斌
受保护的技术使用者:华东师范大学
技术研发日:2023.05.16
技术公布日:2023/8/21
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
