基于知识表示增强的低资源跨语言文本检索方法及装置

未命名 09-07 阅读:131 评论:0


1.本发明涉及基于知识表示增强的低资源跨语言文本检索方法及装置,属于自然语言处理技术领域。


背景技术:

2.跨语言文本检索是使用一种语言进行查询,并从另一种语言文档集中获取相关文档的过程。在低资源跨语言检索任务中,中文与越南语、泰语、缅甸语等低资源跨语言检索的标注数据稀缺,并且存在明显的语言差异,导致查询和文档匹配对齐难度较大。传统的基于机器翻译和预训练语言模型的方法在中-英、中-法等富资源语言上已经取得了不错的效果,但是针对越南语、泰语、缅甸语等低资源语言来说,由于其翻译性能受限,导致基于机器翻译的方法在低资源跨语言检索上效果不佳。此外,由于跨语言预训练语言模型在低资源语言的对齐效果不好,基于预训练语言模型的跨语言检索方法也受到限制,为此,近年来,引入知识图谱来丰富查询语义信息对检索的性能也取得了明显提升,但当前模型对外部知识进行特征提取和融合时不充分,导致其在低资源语言下的检索性能并不理想。为解决此问题,本发明提出了一种基于知识表示增强的低资源跨语言文本检索方法来提高模型对低资源跨语言文本检索的性能。


技术实现要素:

3.本发明提供了基于知识表示增强的低资源跨语言文本检索方法及装置,以用于解决中文与低资源跨语言文本检索标记数据稀缺、语言差异较大,在小规模训练数据训练无法有效的对低资源跨语言数据进行表示对齐的问题,以及引入外部知识后融合效果差的问题。
4.本发明的技术方案是:第一方面,本发明提供基于知识表示增强的低资源跨语言文本检索方法,包括:
5.步骤1、对中文查询-低资源语言候选文档及外部知识数据进行预处理:构建中文查询与越南语、泰语、缅甸语候选文档的跨语言检索数据集并进行预处理,并利用多语言知识图谱对查询中的实体进行外部知识扩展;
6.步骤2、基于表示对齐增强和外部知识融合的低资源跨语言文本检索模型构建:构建了包含知识互注意力特征融合模块和知识监督对比学习模块的低资源跨语言文本检索模型;
7.步骤3、基于表示对齐增强和外部知识融合的低资源跨语言文本检索模型训练:设置输入的中文查询、低资源语言候选文档和外部知识信息,通过对知识监督对比学习和知识互注意力模块的联合训练,计算深度学习网络的损失值,来优化模型可学习参数和权重;
8.步骤4、对中文-低资源跨语言文本进行检索:通过训练好的低资源跨语言文本检索模型,输入中文查询-低资源语言候选文档并计算匹配分数,通过匹配分数对候选文档进行排序,从而获得最终的检索结果。
9.作为本发明的进一步方案,所述步骤1的具体步骤为:
10.步骤1.1、构建模型训练的数据集,对公开数据集cltrmatrix进行预处理,筛选字符长度大于200的候选文档,分别得到中文-越南语、中文-泰语、中文-缅甸语的训练集、验证集和测试集;
11.步骤1.2、构建外部知识库,对标注样本查询扩展外部知识信息,其中包括查询实体的源语言和目标语言的相关实体、别名、实体描述信息;首先通过多语言实体链接模型mgenre来标注中文查询中相关实体对应的维基百科查询id,即qid, 然后利用维基百科多语言知识图谱api 通过qid查询该实体源语言和目标语言的别名、相关实体、实体描述信息,最终得到多语言的外部知识库。
12.作为本发明的进一步方案,所述步骤2的具体步骤为:
13.步骤2.1、首先需要对模型输入的中文查询、低资源语言候选文档以及外部知识进行特征编码,包含两个编码器:查询文档编码器enc
qd
和知识编码器enck;所使用的编码器都是基于预训练语言模型mbert-base;
14.步骤2.2、构建知识互注意力特征融合模块,该模块充分挖掘外部知识和低资源语言的特征,并与查询文档特征进行融合;在知识互注意力特征融合模块中包含两个部分:知识互注意力模块和知识聚合器。
15.步骤2.3、构建知识监督对比学习模块,在跨语言文本检索cltr任务中使用了监督对比学习;与传统的对比方法不同,针对每个查询设置了多个正例和负例样本,并构建了两种监督对比目标:文档监督对比学习dscl和知识监督对比学习kscl。
16.作为本发明的进一步方案,所述步骤2.1的具体步骤为:
17.步骤2.1.1、利用特殊标记符[cls]和[sep]将查询和文档拼接成一个句子序列,其中在每个句子序列前加上[cls]特殊标记符,并使用[sep]作为查询和文档分隔的特殊标记符,然后通过查询文档编码器计算得到查询q-文档d的语义特征向量表示:
[0018][0019]
其中enc
qd
(
·
)是查询文档编码器,{
·
,
·
}表示将两个输入序列拼接起来;
[0020]
步骤2.1.2、利用知识编码器是对查询实体的源语言和目标语言相关实体、别名、实体描述信息进行编码,得到知识特征向量;知识编码器编码时也使用了特殊标记符[cls]和[sep],将每个实体/别名前加上[cls]特殊标记符,并使用[sep]作为实体/别名和对应的实体描述信息分隔的特殊标记符,通过知识编码器获得实体外部知识的特征向量表示:
[0021][0022]
其中enck(
·
)是知识编码器;c∈{s,t},s表示源语言,t表示目标语言;为查询实体和其别名的信息;为实体描述信息;和分别是查询实体的相关实体和对应的实体描述信息;和分别是实体及别名和相关实体的知识嵌入信息,他们将作为知识互注意力特征融合模块的输入;在模型训练前保存了所有实体相关的知识嵌入。
[0023]
作为本发明的进一步方案,所述步骤2.2的具体步骤为:
[0024]
步骤2.2.1、知识互注意力模块包含知识互注意力机制和语言融合机制,该模块能让模型学习源语言和目标语言的混合语言知识信息;在知识互注意力机制中将同种语言的
实体知识信息和相关实体知识信息聚合在一起作为知识互注意力的输入,其中c∈{s,t},s表示源语言,t表示目标语言;在语言融合机制中计算得到知识互注意力模块的最终特征表示;
[0025]
在知识互注意力机制中,采用多头注意力机制以更好地学习潜在的语义信息:为了使模型学习到混合语言信息,把源语言和目标语言特征向量矩阵、经过线性变换得到的、分别作为q或者k、v输入到多头注意力中,将自注意力转换为知识互注意力,其中q、k、v为多头注意力输入的特征向量矩阵;
[0026]
步骤2.2.2、利用知识聚合器是将知识互注意力模块的最终特征表示与查询q和文档d的特征向量表示融合,知识聚合器是由一个线性变换层组成,其中,使用tanh作为激活函数,生成最终的统一表示。
[0027]
作为本发明的进一步方案,所述步骤2.2.1中包括如下:
[0028]
步骤2.2.1.1、知识互注意力特征融合模块的训练,首先需要对实体知识信息和相关实体知识信息聚合在一起作为知识互注意力的输入,其中dim表示维度的大小,r表示实数域:
[0029][0030]
其中操作符是将行向量堆叠成一个矩阵的操作;n为实体描述信息的个数;包含了源语言或者目标语言的所有实体和实体描述信息;
[0031]
所使用到的注意力表示为:
[0032]
其中()为一个激活函数,为注意力机制,多头注意力表示为:
[0033][0034]
其中为线性变换层的参数矩阵;i2表示第i2个头;p为头的数量;表示第i2个头的注意力矩阵;为第p个头的注意力矩阵;layernorm()表示归一化操作;使用[
·
]表示向量的拼接操作;
[0035]
步骤2.2.1.2、将自注意力转换为知识互注意力,具体公式为:
[0036][0037]
其中和表示源语言和目标语言的知识互注意力,、分别为源语言和目标语言特征向量矩阵、经过线性变换得到的结果,和分别为源语言和目标语言的外部知识特征表示;然后,使用一个由线性变换层组成的语言融合器来计算知识互注意力模块的最终特征表示:
[0038][0039]
其中是一个参数矩阵;是一个dim维向量;tanh是一个常用的激活函数。
[0040]
作为本发明的进一步方案,所述步骤2.2.2的具体步骤包括:
[0041]
步骤2.2.2.1、通过知识聚合器对外部知识特征和查询-文档特征进行融合,生成的最终统一表示为:
[0042][0043]
其中和为参数;为最终的外部知识统一特征表示。
[0044]
作为本发明的进一步方案,所述步骤2.3的具体步骤为:
[0045]
步骤2.3.1、文档监督对比学习的对比目标是目标语言候选文档,对于每个查询i,将其候选文档按照相似度进行排序,选取前t个最相关的候选文档作为dscl的正例样本,同时随机选择t个相似度为0的候选文档作为负例样本;当正负例样本数量不足t个时,采取随机复制的方式进行补充,每个查询i的对比样本数量为i ≡ {1...2t};由于gpu硬件的限制,将t设为4,对应的对比标签为{1,1,1,1,0,0,0,0};
[0046]
步骤2.3.2、知识监督对比学习的对比数据包括源语言查询、目标语言候选文档以及双语外部知识;与文档监督对比学习dscl类似,知识监督对比学习kscl中也分别设置了4个正负例样本;具体来说,将查询i的实体和双语别名作为一个正例,相关双语实体作为一个正例,选取查询i最相关的两个候选文档作为两个正例;同时,随机选择一个查询作为负例查询,并使用构建正例样本相同的方式生成4个负例样本;查询i的kscl对比标签和dscl一致。
[0047]
作为本发明的进一步方案,所述步骤3的具体步骤为:
[0048]
步骤3.1、文档监督对比学习的训练是对低资源语言候选文档进行的监督对比学习,其训练损失如下所示:
[0049][0050]
其中表示dscl查询i的正负例样本集合,j表示锚实例,是与查询i相关度最高的文档;pd(i)≡{p∈ad(i)}表示查询i文档对比的正样本集合;|pd(i)|表示查询i正例样本的数量;,∈{,,,,},是查询文档编码器;符号
·
表示内积,τ∈r+是一个控制样本之间距离的温度系数;
[0051]
步骤3.2、知识监督对比学习是对查询文档和外部知识进行的监督对比学习,其训练损失如下所示:
[0052][0053]
其中ak(i)和pk(i)分别表示kscl中查询i的正负例样本集合和正例样本集合;
[0054]
步骤3.3、得到模型训练的总损失loss,具体的:将和拼接输入查询-文档匹配模块中,计算对应查询-文档的相关度分数:
[0055][0056]
其中表示查询-文档之间的相关度分数,和为参数,softmax()为一个激活函数;
[0057]
通过得到的相关度分数,使用了标准成对hinge损失来对模型进行训练,如下所示:
[0058][0059]
和是查询q相关文档和不相关文档的集合,max{0,

}表示取最大值,最后将、和相加作为模型最终损失;
[0060]

[0061]
作为本发明的优选方案,所述步骤4的具体步骤为:
[0062]
步骤4.1、将训练好的模型保存为“.pth”文件,通过flask框架将模型加载于内存中,避免请求结果带来频繁的模型加载过程,提高检索模型的运行速率;
[0063]
步骤4.3、利用flask框架将模型部署为一个api接口,进而实现web端口多并发请求的功能;
[0064]
步骤4.4、在web端调用部署到服务器端的低资源跨语言检索模型,来测试输入中文查询,得到越南语或者泰语和缅甸语的检索排序结果并将其展示到前端界面。
[0065]
第二方面,本发明还提供基于表示对齐增强和外部知识融合的低资源跨语言文本检索装置,该装置包括用于执行上述第一方面的方法的模块。
[0066]
本发明的有益效果是:
[0067]
1、解决了中文与越南语、泰语、缅甸语等低资源语言对标注数据稀缺、语言差异大、查询和文档匹配对齐难度较大等问题;
[0068]
2、首先引入多语言知识图谱来丰富查询的知识信息,在此基础上,通过文档-文档和实体文档-外部知识两方面构建了两种监督对比目标,最后提出了一种知识互注意力机制,促进融合不同语言对之间的外部知识特征;
[0069]
3、本发明所提方法能够有效地利用外部知识丰富查询文本的知识信息,增强对低资源跨语言文本的表示对齐能力和知识特征融合能力,从而达到提升低资源跨语言文本检索模型性能目的,对低资源跨语言文本检索具有重要的理论和实际应用价值。
附图说明
[0070]
图1为本发明中低资源跨语言文本检索装置模型架构图;
[0071]
图2为流程框图。
具体实施方式
[0072]
下面结合附图,对本发明的实施例进行描述。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0073]
需要说明的是,本发明实施例的执行主体可以为各种类型的终端,终端例如可以是计算机、智能手机、平板电脑、可穿戴设备、个人数字助理(英文:personal digital assistant,缩写:pda)、移动互联网设备(英文:mobile internet device,缩写:mid)等可进行文本处理的终端,本发明对此不作任何限制。
[0074]
如图1-图2所示,为本发明中低资源跨语言文本检索装置模型架构图和流程框图,基于知识表示增强的低资源跨语言文本检索方法,包括:
[0075]
步骤1、对中文查询-低资源语言候选文档及外部知识数据进行预处理:构建中文
查询与越南语、泰语、缅甸语候选文档的跨语言检索数据集并进行预处理,并利用多语言知识图谱对查询中的实体进行外部知识扩展;
[0076]
在一些可行的实施方式中,所述步骤1的具体步骤为:
[0077]
步骤1.1、构建模型训练的数据集,对公开数据集cltrmatrix进行预处理,筛选字符长度大于200的候选文档,分别得到中文-越南语、中文-泰语、中文-缅甸语的训练集、验证集和测试集;其中训练集包含5000、3000和1000个三种不同大小的训练样本,验证集和测试集样本数量均为1000个,所有查询的候选文档数均为100个;
[0078]
步骤1.2、构建外部知识库,对标注样本查询扩展外部知识信息,其中包括查询实体的源语言和目标语言的相关实体、别名、实体描述信息;首先通过多语言实体链接模型mgenre来标注中文查询中相关实体对应的维基百科查询id,即qid, 然后利用维基百科多语言知识图谱api 通过qid查询该实体源语言和目标语言的别名、相关实体、实体描述信息,最终得到多语言的外部知识库。
[0079]
步骤2、基于表示对齐增强和外部知识融合的低资源跨语言文本检索模型构建:构建了包含知识互注意力特征融合模块和知识监督对比学习模块的低资源跨语言文本检索模型;实现提高中文对低资源跨语言文本检索的准确率;
[0080]
在一些可行的实施方式中,所述步骤2的具体步骤为:
[0081]
步骤2.1、首先需要对模型输入的中文查询、低资源语言候选文档以及外部知识进行特征编码,包含两个编码器:查询文档编码器(enc
qd
)和知识编码器(enck);所使用的编码器都是基于预训练语言模型mbert-base;
[0082]
步骤2.2、构建知识互注意力特征融合模块,该模块充分挖掘外部知识和低资源语言的特征,并与查询文档特征进行融合;在知识互注意力特征融合模块中包含两个部分:知识互注意力模块和知识聚合器。
[0083]
步骤2.3、构建知识监督对比学习模块,为了增强模型在低资源跨语言的表示对齐能力,学习语言无关特征,在跨语言文本检索cltr任务中使用了监督对比学习;与传统的对比方法不同,针对每个查询设置了多个正例和负例样本,并构建了两种监督对比目标:文档监督对比学习(dscl)和知识监督对比学习(kscl)。
[0084]
在一些可行的实施方式中,所述步骤2.1的具体步骤为:
[0085]
所述步骤2.1的具体步骤为:
[0086]
步骤2.1.1、利用特殊标记符[cls]和[sep]将查询和文档拼接成一个句子序列,其中在每个句子序列前加上[cls]特殊标记符,并使用[sep]作为查询和文档分隔的特殊标记符,然后通过查询文档编码器计算得到查询q-文档d的语义特征向量表示:
[0087][0088]
其中enc
qd
(
·
)是查询文档编码器,{
·
,
·
}表示将两个输入序列拼接起来;
[0089]
步骤2.1.2、利用知识编码器是对查询实体的源语言和目标语言相关实体、别名、实体描述信息进行编码,得到知识特征向量;知识编码器编码时也使用了特殊标记符[cls]和[sep],将每个实体/别名前加上[cls]特殊标记符,并使用[sep]作为实体/别名和对应的实体描述信息分隔的特殊标记符,通过知识编码器获得实体外部知识的特征向量表示:
[0090]
[0091]
其中enck(
·
)是知识编码器;c∈{s,t},s表示源语言,t表示目标语言;为查询实体和其别名的信息;为实体描述信息;和分别是查询实体的相关实体和对应的实体描述信息;和分别是实体及别名和相关实体的知识嵌入信息,他们将作为知识互注意力特征融合模块的输入;在模型训练前保存了所有实体相关的知识嵌入。
[0092]
在一些可行的实施方式中,所述步骤2.2的具体步骤为:
[0093]
步骤2.2.1、知识互注意力模块包含知识互注意力机制和语言融合机制,该模块能让模型学习源语言和目标语言的混合语言知识信息;在知识互注意力机制中将同种语言的实体知识信息和相关实体知识信息聚合在一起作为知识互注意力的输入,其中c∈{s,t},s表示源语言,t表示目标语言;在语言融合机制中计算得到知识互注意力模块的最终特征表示;
[0094]
在知识互注意力机制中,采用多头注意力机制以更好地学习潜在的语义信息:为了使模型学习到混合语言信息,把源语言和目标语言特征向量矩阵、经过线性变换得到的、分别作为q或者k、v输入到多头注意力中,将自注意力转换为知识互注意力,其中q、k、v为多头注意力输入的特征向量矩阵;
[0095]
步骤2.2.2、利用知识聚合器是将知识互注意力模块的最终特征表示与查询q和文档d的特征向量表示融合,知识聚合器是由一个线性变换层组成,其中,使用tanh作为激活函数,生成最终的统一表示。
[0096]
在一些可行的实施方式中,所述步骤2.2.1的具体步骤为:
[0097]
步骤2.2.1.1、知识互注意力特征融合模块的训练,首先需要对实体知识信息和相关实体知识信息聚合在一起作为知识互注意力的输入,其中dim表示维度的大小,r表示实数域:
[0098][0099]
其中操作符是将行向量堆叠成一个矩阵的操作;n为实体描述信息的个数;包含了源语言或者目标语言的所有实体和实体描述信息;
[0100]
所使用到的注意力表示为:
[0101]
其中()为一个激活函数,为注意力机制,多头注意力表示为:
[0102][0103]
其中为线性变换层的参数矩阵;i2表示第i2个头;p为头的数量;表示第i2个头的注意力矩阵;为第p个头的注意力矩阵;layernorm()表示归一化操作;使用[
·
]表示向量的拼接操作;
[0104]
步骤2.2.1.2、将自注意力转换为知识互注意力,具体公式为:
[0105][0106]
其中和表示源语言和目标语言的知识互注意力,、分
别为源语言和目标语言特征向量矩阵、经过线性变换得到的结果,和分别为源语言和目标语言的外部知识特征表示;然后,使用一个由线性变换层组成的语言融合器来计算知识互注意力模块的最终特征表示:
[0107][0108]
其中是一个参数矩阵;是一个dim维向量;tanh是一个常用的激活函数。
[0109]
在一些可行的实施方式中,所述步骤2.2.2的具体步骤为:
[0110]
步骤2.2.2.1、通过知识聚合器对外部知识特征和查询-文档特征进行融合,生成的最终统一表示为:
[0111][0112]
其中和为参数;为最终的外部知识统一特征表示;
[0113]
在一些可行的实施方式中,所述步骤2.3的具体步骤为:
[0114]
步骤2.3.1、文档监督对比学习的对比目标是目标语言候选文档,对于每个查询i,将其候选文档按照相似度进行排序,选取前t个最相关的候选文档作为dscl的正例样本,同时随机选择t个相似度为0的候选文档作为负例样本;当正负例样本数量不足t个时,采取随机复制的方式进行补充,每个查询i的对比样本数量为i ≡ {1...2t};由于gpu硬件的限制,将t设为4,对应的对比标签为{1,1,1,1,0,0,0,0};
[0115]
步骤2.3.2、知识监督对比学习的对比数据包括源语言查询、目标语言候选文档以及双语外部知识;与文档监督对比学习dscl类似,知识监督对比学习kscl中也分别设置了4个正负例样本;具体来说,将查询i的实体和双语别名作为一个正例,相关双语实体作为一个正例,选取查询i最相关的两个候选文档作为两个正例;同时,随机选择一个查询作为负例查询,并使用构建正例样本相同的方式生成4个负例样本;查询i的kscl对比标签和dscl一致。
[0116]
步骤3、基于表示对齐增强和外部知识融合的低资源跨语言文本检索模型训练:设置输入的中文查询、低资源语言候选文档和外部知识信息,通过对知识监督对比学习和知识互注意力模块的联合训练,计算深度学习网络的损失值,来优化模型可学习参数和权重,进而提升低资源跨语言文本检索的准确性。
[0117]
在一些可行的实施方式中,所述步骤3的具体步骤为:
[0118]
步骤3.1、文档监督对比学习的训练是对低资源语言候选文档进行的监督对比学习,其训练损失如下所示:
[0119][0120]
其中表示dscl查询i的正负例样本集合,j表示锚实例,是与查询i相关度最高的文档;pd(i)≡{p∈ad(i)}表示查询i文档对比的正样本集合;|pd(i)|表示查询i正例样本的数量;,∈{,,,,},是查询文档编码器;符号
·
表示内积,τ∈r+是一个控制样本之间距离的温度系数;
[0121]
步骤3.2、知识监督对比学习是对查询文档和外部知识进行的监督对比学习,其训
练损失如下所示:
[0122][0123]
其中ak(i)和pk(i)分别表示kscl中查询i的正负例样本集合和正例样本集合;
[0124]
步骤3.3、得到模型训练的总损失loss,具体的:将和拼接输入查询-文档匹配模块中,计算对应查询-文档的相关度分数:
[0125][0126]
其中表示查询-文档之间的相关度分数,和为参数,softmax()为一个激活函数;
[0127]
通过得到的相关都度分数,使用了标准成对hinge损失来对模型进行训练,如下所示:
[0128][0129]
和是查询q相关文档和不相关文档的集合,max{0,

}表示取最大值,最后将、和相加作为模型最终损失;
[0130]

[0131]
步骤4、对中文-低资源跨语言文本进行检索:通过训练好的低资源跨语言文本检索模型,输入中文查询-低资源语言候选文档并计算匹配分数,通过匹配分数对候选文档进行排序,从而获得最终的检索结果。
[0132]
在一些可行的实施方式中,所述步骤4的具体步骤为:
[0133]
步骤4.1、将训练好的模型保存为“.pth”文件,通过flask框架将模型加载于内存中,避免请求结果带来频繁的模型加载过程,提高检索模型的运行速率;
[0134]
步骤4.3、利用flask框架将模型部署为一个api接口,进而实现web端口多并发请求的功能;
[0135]
步骤4.4、在web端调用部署到服务器端的低资源跨语言检索模型,来测试输入中文查询,得到越南语或者泰语和缅甸语的检索排序结果并将其展示到前端界面。
[0136]
下面为本发明装置实施例,本发明装置实施例用于执行本发明方法第一实施例实现的方法,为了便于说明,仅示出了本发明实施例相关的部分,具体未揭示的部分,请参照本发明第一实施例。
[0137]
本发明实施例还提供基于表示对齐增强和外部知识融合的低资源跨语言文本检索装置,该装置包括:
[0138]
预处理模块:用于对中文查询-低资源语言候选文档及外部知识数据进行预处理,具体包括用于构建中文查询与越南语、泰语、缅甸语候选文档的跨语言检索数据集并进行预处理,并利用多语言知识图谱对查询中的实体进行外部知识扩展;
[0139]
构建模块:用于构建基于表示对齐增强和外部知识融合的低资源跨语言文本检索模型,具体包括用于构建包含知识互注意力特征融合模块和知识监督对比学习模块的低资源跨语言文本检索模型;
[0140]
训练模块:用于训练基于表示对齐增强和外部知识融合的低资源跨语言文本检索
模型,具体包括用于设置输入的中文查询、低资源语言候选文档和外部知识信息,通过对知识监督对比学习和知识互注意力模块的联合训练,计算深度学习网络的损失值,来优化模型可学习参数和权重;
[0141]
检索模块:用于对中文-低资源跨语言文本进行检索,具体包括用于通过训练好的低资源跨语言文本检索模型,输入中文查询-低资源语言候选文档并计算匹配分数,通过匹配分数对候选文档进行排序,从而获得最终的检索结果。
[0142]
在一种可行的实施方式中,所述预处理模块还具体包括用于实现如下功能:
[0143]
构建模型训练的数据集,对公开数据集cltrmatrix进行预处理,筛选字符长度大于200的候选文档,分别得到中文-越南语、中文-泰语、中文-缅甸语的训练集、验证集和测试集;
[0144]
构建外部知识库,对标注样本查询扩展外部知识信息,其中包括查询实体的源语言和目标语言的相关实体、别名、实体描述信息;首先通过多语言实体链接模型mgenre来标注中文查询中相关实体对应的维基百科查询id,即qid, 然后利用维基百科多语言知识图谱api 通过qid查询该实体源语言和目标语言的别名、相关实体、实体描述信息,最终得到多语言的外部知识库。
[0145]
在一种可行的实施方式中,所述构建模块还具体包括用于实现如下功能:
[0146]
首先需要对模型输入的中文查询、低资源语言候选文档以及外部知识进行特征编码,包含两个编码器:查询文档编码器enc
qd
和知识编码器enck;所使用的编码器都是基于预训练语言模型mbert-base;
[0147]
构建知识互注意力特征融合模块,该模块充分挖掘外部知识和低资源语言的特征,并与查询文档特征进行融合;在知识互注意力特征融合模块中包含两个部分:知识互注意力模块和知识聚合器。
[0148]
构建知识监督对比学习模块,在跨语言文本检索cltr任务中使用了监督对比学习;与传统的对比方法不同,针对每个查询设置了多个正例和负例样本,并构建了两种监督对比目标:文档监督对比学习dscl和知识监督对比学习kscl。
[0149]
为了说明本发明的效果,本发明进行了如下实验:
[0150]
我们的实验是基于pytorch框架实现的,使用adam作为本文模型的优化器,batch_size设置16,mbert学习率设为1e-5,adam的学习率设为1e-3,为了防止过拟合,在部分地方使用dropout技术。随机抽取1600个查询-文档对作为每个epoch的训练数据。实验的详细参数指标如下表1所示:
[0151]
表1 实验参数设置
[0152]
[0153]
实验中严格按照标准评价指标ndcg (normalized discounted cumulative gain)和map (mean average precision)来评估模型的性能。具体公式如下所示:
[0154][0155][0156][0157]
其中k表示有k个候选文档的集合;ri表示候选文档中第i个文档和查询的相关度。idcg@k的计算方法与dcg@k类似,它是根据候选文档的相关度从大到小进行排序后计算的理想dcg@k结果;r表示与查询相关的候选文档个数;position(i)表示在检索结果列表中第i个相关文档在列表中的位置;map指的是对多个查询的ap求平均值。
[0158]
为了验证本文提出的方法在低资源语言检索的有效性,本文与现有的跨语言检索方法进行对比实验,并验证了本发明在中文与缅甸语、泰语、越南语三种低资源语言和三种低资源场景(训练集分别为5000、3000、1000)下的性能。另外还设置了消融实验验证了所提出方法中各个模块对模型性能的影响。对比模型包括:vanilla bert、cedr-drmm、cedr-pacrr、cedr-knrm、hike。
[0159]
实验一:不同模型实验结果对比
[0160]
本实验的训练集为5000,评价指标设为@1、@5、@10、map,其中@k即为ndcg@k,k取1、5、10,对比实验结果如表2所示:
[0161]
表2 不同模型实验结果对比(单位:%)
[0162][0163]
从表2的对比实验结果可以看出,本文模型的检索性能在四种评价指标上都显著优于其他对比模型。相比于基线模型hike:在中文-越南语上分别提高了3.85%、3.16%、3.2%、3.04%;在中文-泰语上分别提高了3.55%、0.33%、0.9%、0.93%;在中文-缅甸语上分别提高了4.11%、6.03%、4.79%、5.74%。这得益于本文模型通过知识监督对比充分学习了维基百科多语言知识图谱外部知识信息,弥补了中文与低资源语言标注数据稀缺的问题,从而增强模型对低资源跨语言的表示对齐能力;并且提出的知识互注意力机制让模型在语义层面上深度融合不同语言的外部知识特征,而不是仅仅关注单一语种信息,最终提高了低资源跨语言文本检索的性能。
[0164]
实验二:不同训练集大小的实验结果对比
[0165]
为了验证本文模型在低资源场景下的性能,我们从训练集中随机抽选3000条和1000条作为低资源场景训练数据集,测试集和验证集保持不变,评价指标为ndcg@10。各模
型的实验对比如表3所示:
[0166]
表3 不同低资源场景下实验结果对比 (单位:%)
[0167][0168]
从表3可以看出,本文提出的模型在训练数据集为3000、1000的低资源场景下,性能均得到了提升。其中在训练数据为1000条时,中文-越南语的效果最好,相比于基线模型hike提升了2.81%;在训练数据为3000条时,中文-缅甸语的效果最好,相比于基线模型hike提升了4.68%。该实验结果表明,本文模型在不同低资源场景下也能够保持稳定的性能。此外,还可以发现在低资源场景下,中文-泰语的性能低于中文-越南语和中文-缅甸语的性能,与vanilla bert基线模型的结果相近。
[0169]
实验三:消融实验
[0170]
为了验证各模块对检索性能的影响,本文在训练集为5000、评价指标为ndcg@10上设计了4种消融实验:1)w/o kscl:移除知识监督对比模块;2)w/o dscl:移除文档监督对比模块;3)w/o kco-attention:移除知识互注意力模块,使用基线模型方法融合外部知识信息;4)w/o alias:和基线模型一样,不加入查询别名信息。具体消融实验结果如表4所示:
[0171]
表4 消融实验(单位:%)
[0172][0173]
从消融实验可以看出:1)在移除四种模块任何一个后,模型性能都有所下降,这说明了本文提出的各个模块对我们模型在低资源cltr任务上的性能都有一定程度的贡献;2)移除dscl模块后模型的性能在中-越、中-泰两种跨语言上表现最差,分别降低了1.52%、0.94%;移除kscl后模型在中-缅上的性能最差,降低了4.61%。这表明模型跨语言表示对齐能力和提取语言无关特征的能力对检索性能影响很大,更加验证了本文监督对比模型的有效性;3)移除知识互注意模块,使用基线模型融合方法后,中文与三种低资源语言的检索性能平均降低了0.97%,这说明了本文融合外部知识信息的方法优于基线模型,可以更加充分的挖掘不同语言之间的语义信息。4)移除别名信息后检索性能也有所下降,验证了实体别名信息的有效性。但性能下降幅度没有其他模块明显,这是因为在实际情况中,并非每个相
关文档都包含查询实体的别名信息。
[0174]
上面结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

技术特征:
1.基于知识表示增强的低资源跨语言文本检索方法,其特征在于,包括:步骤1、对中文查询-低资源语言候选文档及外部知识数据进行预处理:构建中文查询与越南语、泰语、缅甸语候选文档的跨语言检索数据集并进行预处理,并利用多语言知识图谱对查询中的实体进行外部知识扩展;步骤2、基于表示对齐增强和外部知识融合的低资源跨语言文本检索模型构建:构建了包含知识互注意力特征融合模块和知识监督对比学习模块的低资源跨语言文本检索模型;步骤3、基于表示对齐增强和外部知识融合的低资源跨语言文本检索模型训练:设置输入的中文查询、低资源语言候选文档和外部知识信息,通过对知识监督对比学习和知识互注意力模块的联合训练,计算深度学习网络的损失值,来优化模型可学习参数和权重;步骤4、对中文-低资源跨语言文本进行检索:通过训练好的低资源跨语言文本检索模型,输入中文查询-低资源语言候选文档并计算匹配分数,通过匹配分数对候选文档进行排序,从而获得最终的检索结果。2.根据权利要求1所述的基于知识表示增强的低资源跨语言文本检索方法,其特征在于:所述步骤1的具体步骤为:步骤1.1、构建模型训练的数据集,对公开数据集cltrmatrix进行预处理,筛选字符长度大于200的候选文档,分别得到中文-越南语、中文-泰语、中文-缅甸语的训练集、验证集和测试集;步骤1.2、构建外部知识库,对标注样本查询扩展外部知识信息,其中包括查询实体的源语言和目标语言的相关实体、别名、实体描述信息;首先通过多语言实体链接模型mgenre来标注中文查询中相关实体对应的维基百科查询id,即qid, 然后利用维基百科多语言知识图谱api 通过qid查询该实体源语言和目标语言的别名、相关实体、实体描述信息,最终得到多语言的外部知识库。3.根据权利要求1所述的基于知识表示增强的低资源跨语言文本检索方法,其特征在于:所述步骤2的具体步骤为:步骤2.1、首先需要对模型输入的中文查询、低资源语言候选文档以及外部知识进行特征编码,包含两个编码器:查询文档编码器enc
qd
和知识编码器enc
k
;所使用的编码器都是基于预训练语言模型mbert-base;步骤2.2、构建知识互注意力特征融合模块,该模块充分挖掘外部知识和低资源语言的特征,并与查询文档特征进行融合;在知识互注意力特征融合模块中包含两个部分:知识互注意力模块和知识聚合器;步骤2.3、构建知识监督对比学习模块,在跨语言文本检索cltr任务中使用了监督对比学习;与传统的对比方法不同,针对每个查询设置了多个正例和负例样本,并构建了两种监督对比目标:文档监督对比学习dscl和知识监督对比学习kscl。4.根据权利要求3所述的基于知识表示增强的低资源跨语言文本检索方法,其特征在于:所述步骤2.1的具体步骤为:步骤2.1.1、利用特殊标记符[cls]和[sep]将查询和文档拼接成一个句子序列,其中在每个句子序列前加上[cls]特殊标记符,并使用[sep]作为查询和文档分隔的特殊标记符,然后通过查询文档编码器计算得到查询q-文档d的语义特征向量表示:;
其中enc
qd
(
·
)是查询文档编码器,{
·
,
·
}表示将两个输入序列拼接起来;步骤2.1.2、利用知识编码器是对查询实体的源语言和目标语言相关实体、别名、实体描述信息进行编码,得到知识特征向量;知识编码器编码时也使用了特殊标记符[cls]和[sep],将每个实体/别名前加上[cls]特殊标记符,并使用[sep]作为实体/别名和对应的实体描述信息分隔的特殊标记符,通过知识编码器获得实体外部知识的特征向量表示:;其中enc
k
(
·
)是知识编码器;c∈{s,t},s表示源语言,t表示目标语言;为查询实体和其别名的信息;为实体描述信息;和分别是查询实体的相关实体和对应的实体描述信息;和分别是实体及别名和相关实体的知识嵌入信息,他们将作为知识互注意力特征融合模块的输入;在模型训练前保存了所有实体相关的知识嵌入。5.根据权利要求3所述的基于知识表示增强的低资源跨语言文本检索方法,其特征在于:所述步骤2.2的具体步骤为:步骤2.2.1、知识互注意力模块包含知识互注意力机制和语言融合机制,该模块能让模型学习源语言和目标语言的混合语言知识信息;在知识互注意力机制中将同种语言的实体知识信息和相关实体知识信息聚合在一起作为知识互注意力的输入,其中c∈{s,t},s表示源语言,t表示目标语言;在语言融合机制中计算得到知识互注意力模块的最终特征表示;在知识互注意力机制中,采用多头注意力机制以更好地学习潜在的语义信息:为了使模型学习到混合语言信息,把源语言和目标语言特征向量矩阵、经过线性变换得到的、分别作为q或者k、v输入到多头注意力中,将自注意力转换为知识互注意力,其中q、k、v为多头注意力输入的特征向量矩阵;步骤2.2.2、利用知识聚合器是将知识互注意力模块的最终特征表示与查询q和文档d的特征向量表示融合,知识聚合器是由一个线性变换层组成,其中,使用tanh作为激活函数,生成最终的统一表示。6.根据权利要求5所述的基于知识表示增强的低资源跨语言文本检索方法,其特征在于:所述步骤2.2.1中包括如下:步骤2.2.1.1、知识互注意力特征融合模块的训练,首先需要对实体知识信息和相关实体知识信息聚合在一起作为知识互注意力的输入,其中dim表示维度的大小,r表示实数域:;其中操作符是将行向量堆叠成一个矩阵的操作;n为实体描述信息的个数;包含了源语言或者目标语言的所有实体和实体描述信息;所使用到的注意力表示为:;其中()为一个激活函数,为注意力机制,多头注意力表示为:
;其中为线性变换层的参数矩阵;i2表示第i2个头;p为头的数量;表示第i2个头的注意力矩阵;为第p个头的注意力矩阵;layernorm()表示归一化操作;使用[
·
]表示向量的拼接操作;步骤2.2.1.2、将自注意力转换为知识互注意力,具体公式为:;其中和表示源语言和目标语言的知识互注意力,、分别为源语言和目标语言特征向量矩阵、经过线性变换得到的结果,和分别为源语言和目标语言的外部知识特征表示;然后,使用一个由线性变换层组成的语言融合器来计算知识互注意力模块的最终特征表示:;其中是一个参数矩阵;是一个dim维向量;tanh是一个常用的激活函数。7.根据权利要求5所述的基于知识表示增强的低资源跨语言文本检索方法,其特征在于:所述步骤2.2.2的具体步骤包括:步骤2.2.2.1、通过知识聚合器对外部知识特征和查询-文档特征进行融合,生成的最终统一表示为:;其中和为参数;为最终的外部知识统一特征表示。8.根据权利要求3所述的基于知识表示增强的低资源跨语言文本检索方法,其特征在于:所述步骤2.3的具体步骤为:步骤2.3.1、文档监督对比学习的对比目标是目标语言候选文档,对于每个查询i,将其候选文档按照相似度进行排序,选取前t个最相关的候选文档作为dscl的正例样本,同时随机选择t个相似度为0的候选文档作为负例样本;当正负例样本数量不足t个时,采取随机复制的方式进行补充,每个查询i的对比样本数量为i ≡ {1...2t};由于gpu硬件的限制,将t设为4,对应的对比标签为{1,1,1,1,0,0,0,0};步骤2.3.2、知识监督对比学习的对比数据包括源语言查询、目标语言候选文档以及双语外部知识;与文档监督对比学习dscl类似,知识监督对比学习kscl中也分别设置了4个正负例样本;具体来说,将查询i的实体和双语别名作为一个正例,相关双语实体作为一个正例,选取查询i最相关的两个候选文档作为两个正例;同时,随机选择一个查询作为负例查询,并使用构建正例样本相同的方式生成4个负例样本;查询i的kscl对比标签和dscl一致。9.根据权利要求1所述的基于知识表示增强的低资源跨语言文本检索方法,其特征在于:所述步骤3的具体步骤为:步骤3.1、文档监督对比学习的训练是对低资源语言候选文档进行的监督对比学习,其训练损失如下所示:
;其中表示dscl查询i的正负例样本集合,j表示锚实例,是与查询i相关度最高的文档;p
d
(i)≡{p∈a
d
(i)}表示查询i文档对比的正样本集合;|p
d
(i)|表示查询i正例样本的数量;,∈{,,,,},是查询文档编码器;符号
·
表示内积,τ∈r+是一个控制样本之间距离的温度系数;步骤3.2、知识监督对比学习是对查询文档和外部知识进行的监督对比学习,其训练损失如下所示:;其中a
k
(i)和p
k
(i)分别表示kscl中查询i的正负例样本集合和正例样本集合;步骤3.3、得到模型训练的总损失loss,具体的:将和拼接输入查询-文档匹配模块中,计算对应查询-文档的相关度分数:;其中表示查询-文档之间的相关度分数,和为参数,softmax()为一个激活函数;通过得到的相关度分数,使用了标准成对hinge损失来对模型进行训练,如下所示:;和是查询q相关文档和不相关文档的集合,max{0,

}表示取最大值,最后将、和相加作为模型最终损失;。10.基于表示对齐增强和外部知识融合的低资源跨语言文本检索装置,其特征在于,包括用于执行如权利要求1-9任一权利要求所述的方法的模块。

技术总结
本发明涉及基于知识表示增强的低资源跨语言文本检索方法及装置,属于自然语言处理技术领域。本发明包括:中文查询-低资源文档及外部知识数据预处理、基于表示对齐增强和外部知识融合的低资源跨语言文本检索模型构建、基于表示对齐增强和外部知识融合的低资源跨语言文本模型训练、对中文-低资源跨语言文本进行检索四部分构成。根据这四个部分功能模块化制成基于表示对齐增强和外部知识融合的低资源跨语言文本检索装置,能够有效地利用外部知识丰富查询文本的知识信息,增强对东南亚低资源跨语言文本的表示对齐能力和知识特征融合能力,从而达到提升低资源跨语言文本检索模型性能目的,具有重要的理论和实际应用价值。具有重要的理论和实际应用价值。具有重要的理论和实际应用价值。


技术研发人员:毛存礼 王焱彬 余正涛 张勇丙 黄于欣 高盛祥
受保护的技术使用者:昆明理工大学
技术研发日:2023.08.02
技术公布日:2023/9/6
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐