本发明涉及自然语言处理,尤其涉及一种基于自然语言表示学习的语义检索方法、装置和终端设备。
背景技术:
1、自然语言表示学习是指将自然语言转换为机器可以理解和处理的向量表示,从而使机器能够理解和处理自然语言。自然语言表示学习是自然语言处理中的一个重要方向,其目的是更好地应用于如检索、分类等各类下游任务。
2、目前主要有两种自然语言表示学习方法:有监督学习和基于对比学习的自然语言表示学习。而基于对比学习的自然语言表示学习成为自然语言表示学习方向的主流方法。此类方法可通过对比学习的方式,自监督或有监督地训练自然语言编码器。
3、然而,现有的基于对比学习的自然语言表示学习只提取对比样本间的关系,并使用样本间关系作为监督信号进行编码器或进行模型训练,而对于样本本身语义并不进行建模和提取,从而使得在使用训练好的编码器对需要检索的文本进行语义表示和检索时,不能准确地得到该文本的语义向量表示,从而使得在进行语义检索时检索的结果不够准确。
技术实现思路
1、本发明实施例提供了一种基于自然语言表示学习的语义检索方法、装置和终端设备,通过引入噪声数据和解码器的去噪学习,可以使得在编码器的训练过程中还可以使用样本内的语义作为监督信号,进行训练对样本间语义的提取能力,从而可以使得编码器在进行语义检索时,能够更加准确地理解和表达文本的语义,能有效解决现有技术中不能准确地得到该文本的语义向量表示,从而使得在进行语义检索时检索的结果不够准确的问题。
2、本发明一实施例提供了一种基于自然语言表示学习的语义检索方法,包括:
3、获取当前输入的待检索文本;
4、将所述待检索文本输入到预设的编码模型中,以使所述编码模型根据所述待检索文本,生成对应的语义向量;
5、计算所述语义向量与预设数据集中的各个文本分别对应的相似度,并将最高相似度对应的文本作为检索结果;
6、其中,所述编码模型的训练过程,包括:
7、对包含有若干文本的样本数据引入噪声,生成对应的噪声数据;
8、通过所述编码模型的编码器对所述噪声数据中的第一自然语言进行编码,生成对应的样本向量;
9、对所述编码器进行对比学习,以使所述编码器提取所述样本向量中的样本语义向量;
10、对所述编码模型的解码器进行去噪学习,以使所述解码器将噪声数据还原成对应的原始数据;
11、在对解码器进行去噪学习的过程中,从噪声数据和原始数据中提取出对应的语义特征,并将所述语义特征作为编码器进行对比学习时的监督信号;
12、在判定对比学习达到对应的终止条件时,生成已训练的编码器,并将已训练的编码器作为编码模型。
13、优选地,所述对包含有若干文本的样本数据引入噪声,生成对应的噪声数据,包括:
14、通过预训练的自然语言翻译模型将各个文本中的第一自然语言进行翻译后,得到第二自然语言;其中,所述第一自然语言与所述第二自然语言对应的语言种类不同;
15、对各文本中的第二自然语言进行回译,生成语言种类为第一自然语言的文本后,得到具有离散噪声的样本数据;
16、对于具有离散噪声的样本数据,根据预设比例将各文本对应的编码向量中的若干元素进行置零,生成具有离散噪声且具有连续噪声的噪声数据。
17、优选地,对所述编码器进行对比学习,以使所述编码器提取所述样本向量中的样本语义向量,包括:
18、通过所述编码模型的编码器将具有离散噪声的样本数据中各个文本的第一自然语言进行编码,生成对应的噪声向量;
19、以噪声向量作为对比学习的正样本,以与噪声向量具有相反语义或与噪声向量无关的数据作为对比学习的负样本,同时基于样本向量对编码器进行对比学习,以使所述编码器提取所述样本向量中的样本语义向量;
20、其中,所述编码器的对比学习的目标为:在语义空间中显式地拉近样本表示和正样本表示之间的距离,且推远样本表示和负样本表示之间的距离。
21、优选地,所述从噪声数据和原始数据中提取出对应的语义特征,包括:
22、通过交叉注意力操作,从噪声数据和原始数据中提取出对应的语义特征。
23、优选地,根据如下公式,得到所述编码器所对应的对比学习的目标:
24、
25、其中,lcontrastive为对比学习的目标,sim为余弦相似度,z,z+,分别为样本数据、正样本和负样本对应的表示向量,n为对比学习的迭代次数。
26、优选地,根据如下公式,得到所述解码器所对应的去噪学习的目标:
27、
28、其中,ldenoising为去噪学习的目标,si为语料数据中的语句,s为语句数量,tj为语句中的词元,为带噪声的词元,θ为解码器的模型参数。
29、优选地,根据如下公式计算在进行交叉注意力操作时对应的交叉注意力:
30、
31、其中,crossattention(zx,zy)为交叉注意力,zx∈r1×d为编码器对所述噪声数据进行编码生成的样本向量,zy∈rn×d为解码器中对噪声数据进行还原后的原始数据对应的向量表示,n为原始数据的序列长度,d为样本向量对应的长度。
32、在上述的方法实施例的基础上,本发明对应提供了装置项实施例。
33、本发明一实施例提供了一种基于自然语言表示学习的语义检索装置,包括:检索文本获取模块、语义向量生成模块以及检索结果生成模块;
34、所述检索文本获取模块,用于获取当前输入的待检索文本;
35、所述语义向量生成模块,用于将所述待检索文本输入到预设的编码模型中,以使所述编码模型根据所述待检索文本,生成对应的语义向量;
36、所述检索结果生成模块,用于计算所述语义向量与预设数据集中的各个文本分别对应的相似度,并将最高相似度对应的文本作为检索结果;
37、其中,所述编码模型的训练过程,包括:
38、对包含有若干文本的样本数据引入噪声,生成对应的噪声数据;
39、通过所述编码模型的编码器对所述噪声数据中的第一自然语言进行编码,生成对应的样本向量;
40、对所述编码器进行对比学习,以使所述编码器提取所述样本向量中的样本语义向量;
41、对所述编码模型的解码器进行去噪学习,以使所述解码器将噪声数据还原成对应的原始数据;
42、在对解码器进行去噪学习的过程中,从噪声数据和原始数据中提取出对应的语义特征,并将所述语义特征作为编码器进行对比学习时的监督信号;
43、在判定对比学习达到对应的终止条件时,生成已训练的编码器,并将已训练的编码器作为编码模型。
44、优选地,所述对包含有若干文本的样本数据引入噪声,生成对应的噪声数据,包括:
45、通过预训练的自然语言翻译模型将各个文本中的第一自然语言进行翻译后,得到第二自然语言;其中,所述第一自然语言与所述第二自然语言对应的语言种类不同;
46、对各文本中的第二自然语言进行回译,生成语言种类为第一自然语言的文本后,得到具有离散噪声的样本数据;
47、对于具有离散噪声的样本数据,根据预设比例将各文本对应的编码向量中的若干元素进行置零,生成具有离散噪声且具有连续噪声的噪声数据。
48、在上述的方法实施例的基础上,本发明对应提供了终端设备项实施例。
49、本发明另一实施例提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的一种基于自然语言表示学习的语义检索方法。
50、通过实施本发明具有如下有益效果:
51、本发明实施例提供了一种基于自然语言表示学习的语义检索方法、装置和终端设备,本发明在对编码模型进行训练时,首先可以通过对比学习使得编码器能够学习到自然语言数据的内在结构和语义信息,从而在生成语义向量的过程中可以更加准确地获取文本的语义向量;然后通过去噪学习使得解码器能够从噪声数据中恢复出原始数据,使得解码器具有更强的语义表达和语义特征提取能力,从而在将从噪声数据和原始数据中提取出的语义特征被用作编码器进行对比学习的监督信号时,使得编码器在训练时的监督信号来源于样本数据内的语义,从而可以使得编码器在训练的过程(对比学习的过程)中能够更好地理解文本的语义,从而提高后续通过编码器进行语义检索的准确性。与现有技术相比,本发明通过结合对比学习和去噪学习,不仅只使用样本间关系的依赖进行编码器的对比学习,本发明通过引入噪声数据和解码器的去噪学习,可以使得在编码器的训练过程中还可以使用样本内的语义作为监督信号,进行训练对样本间语义的提取能力,从而可以使得编码器在进行语义检索时,能够更加准确地理解和表达文本的语义,即可以准确地得到文本的语义向量表示,从而也提高了在进行语义检索时得到最终的检索结果的准确性。
1.一种基于自然语言表示学习的语义检索方法,其特征在于,包括:
2.如权利要求1所述的一种基于自然语言表示学习的语义检索方法,其特征在于,所述对包含有若干文本的样本数据引入噪声,生成对应的噪声数据,包括:
3.如权利要求2所述的一种基于自然语言表示学习的语义检索方法,其特征在于,对所述编码器进行对比学习,以使所述编码器提取所述样本向量中的样本语义向量,包括:
4.如权利要求3所述的一种基于自然语言表示学习的语义检索方法,其特征在于,所述从噪声数据和原始数据中提取出对应的语义特征,包括:
5.如权利要求4所述的一种基于自然语言表示学习的语义检索方法,其特征在于,根据如下公式,得到所述编码器所对应的对比学习的目标:
6.如权利要求5所述的一种基于自然语言表示学习的语义检索方法,其特征在于,根据如下公式,得到所述解码器所对应的去噪学习的目标:
7.如权利要求6所述的一种基于自然语言表示学习的语义检索方法,其特征在于,根据如下公式计算在进行交叉注意力操作时对应的交叉注意力:
8.一种基于自然语言表示学习的语义检索装置,其特征在于,包括:检索文本获取模块、语义向量生成模块以及检索结果生成模块;
9.如权利要求8所述的一种基于自然语言表示学习的语义检索装置,其特征在于,所述对包含有若干文本的样本数据引入噪声,生成对应的噪声数据,包括:
10.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的一种基于自然语言表示学习的语义检索方法。
