首页> 中国专利> 基于Transformer模型融合关键信息的神经机器翻译模型

基于Transformer模型融合关键信息的神经机器翻译模型

摘要

本发明公开了基于Transformer模型融合关键信息的神经机器翻译模型,属于自然语言处理技术领域,所述神经机器翻译模型包括用于关键信息编码的第一编码模块、用于源语言文本编码的第二编码模块、第一多头注意力编码层和解码器,第一多头注意力编码层对第一编码模块输出的关键信息编码结果和第二编码模块输出的源语言文本编码结果进行信息融合,并将信息融合的结果与第二编码模块输出的源语言文本编码结果经拼接处理后输入解码器,以将关键信息与源语言文本进行关联,使关键信息融入至Transformer模型,以此更加准确提取关键词特征,进而提高关键词的翻译准确度,大大降低关键词漏译的问题。

著录项

  • 公开/公告号CN113033153A

    专利类型发明专利

  • 公开/公告日2021-06-25

    原文格式PDF

  • 申请/专利权人 西南石油大学;

    申请/专利号CN202110464990.4

  • 申请日2021-04-28

  • 分类号G06F40/126(20200101);G06F40/58(20200101);G06F16/35(20190101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构51223 成都华风专利事务所(普通合伙);

  • 代理人张巨箭

  • 地址 610500 四川省成都市新都区新都大道8号

  • 入库时间 2023-06-19 11:35:49

说明书

技术领域

本发明涉及自然语言处理技术领域,尤其涉及基于Transformer模型融合关键信息的神经机器翻译模型。

背景技术

机器翻译任务是NLP(Natural Language Processing,自然语言处理)领域中一个重要研究热点,它可以帮助人们完成源语言到目标语言的翻译工作,从而逐渐代替人类完成复杂且费时费力的翻译工作。尽管机器的翻译结果不一定有专业人员翻译准确,但是它的翻译结果已足以满足人们正常使用。

早在上个世纪三四十年代人们就开始了有关机器翻译的研究,随着研究的不断突破,机器翻译技术研究也渐渐从翻译系统(基于词汇、语法等规则)转变为基于统计学的机器翻译,再到现在研究火热的神经机器翻译(NMT)。神经机器翻译的任务主要是利用神经网络相关技术及大量的数据来训练得到一个通用的翻译模型。模型训练好以后,我们只需给定模型输入源语言句子,模型通过运行计算即可得到对应的翻译结果。seq2seq结构在神经机器翻译中具备一定的优势,seq2seq模型极大地促进了神经机器翻译模型的研究进展。因此,近几年关于神经机器翻译模型的研究大多都基于该结构。2017年,Vaswani等人提出了Transformer模型,该模型相较于seq2seq在NMT中拥有更好的实验表现。

尽管当下的神经机器翻译模型的翻译结果都还不错,但是对于关键信息的翻译依然存在错译、漏译等情况,而翻译过程中最重要的就是对于关键信息的翻译,因为只要关键信息翻译准确完整,即使一些连接词、辅助词等信息翻译有误,仍然可以保证最终的翻译质量。

发明内容

本发明的目的在于克服现有技术中对关键信息翻译精准度不够高的问题,提供了一种基于Transformer模型融合关键信息的神经机器翻译模型。

本发明的目的是通过以下技术方案来实现的:基于Transformer模型融合关键信息的神经机器翻译模型,所述神经机器翻译模型包括用于关键信息编码的第一编码模块、用于源语言文本编码的第二编码模块、第一多头注意力编码层和解码器,第一多头注意力编码层对第一编码模块输出的关键信息编码结果和第二编码模块输出的源语言文本编码结果进行信息融合,并将所述信息融合的结果与第二编码模块输出的源语言文本编码结果经拼接处理后输入解码器,所述解码器输出翻译结果。

作为一选项,所述信息融合具体为:将源语言文本的编码结果作为输入矩阵Q、关键信息的编码结果作为输入矩阵K和输入矩阵V进行多头注意力计算。

作为一选项,所述第一编码模块包括顺次连接的第二多头注意力编码层、第一前馈神经网络,关键信息的词向量矩阵输入至第二多头注意力编码层,第一前馈神经网络输出端与第一多头注意力编码层连接。

作为一选项,所述第二编码模块包括顺次连接的第三多头注意力编码层、第二前馈神经网络,源语言文本的词向量矩阵输入至第三多头注意力编码层,第二前馈神经网络输出端与第一多头注意力编码层连接。

作为一选项,所述第二多头注意力编码与第一前馈神经网络之间经第一残差与归一化层连接,和/或第一前馈神经网络与第一多头注意力编码层之间经第二残差与归一化层连接;第一残差与归一化层的输入端与第二多头注意力编码的输入端、第二多头注意力编码的输出端连接,第二残差与归一化层的输入端与第一前馈神经网络的输入端、第一前馈神经网络的输出端连接;

第三多头注意力编码与第二前馈神经网络之间经第三残差与归一化层连接,和/或第二前馈神经网络与第一多头注意力编码层之间经第四残差与归一化层连接;第三残差与归一化层的输入端与第三多头注意力编码的输入端、第三多头注意力编码的输出端连接,第四残差与归一化层的输入端与第二前馈神经网络的输入端、第二前馈神经网络的输出端连接。

作为一选项,所述信息融合的结果与第二编码模块输出源语言文本的编码结果经权重拼接处理后输入解码器。

作为一选项,所述解码器包括顺次连接的多头注意力解码层、第三前馈神经网络、线性层和分类层,第一多头注意力编码层输出的信息融合计算结果与第二编码模块输出源语言文本的编码结果经权重控制后输入至多头注意力解码层,分类层输出分类结果。

作为一选项,所述解码器还包括遮掩多头注意力层,之前时刻解码器输出的分类结果以词向量矩阵的形式作为当前待翻译词向量矩阵的参考输入至遮掩多头注意力层,遮掩多头注意力层输出端与多头注意力解码层连接。

作为一选项,所述分类层的分类计算公式为:

其中,

作为一选项,所述神经机器翻译模型还包括关键信息提取模块,关键信息提取模块为基于TF-IDF或TextRank或LDA的关键信息提取模块。

需要进一步说明的是,上述各选项对应的技术特征可以相互组合或替换构成新的技术方案。

与现有技术相比,本发明有益效果是:

本发明通过两个编码模块分别提取关键信息特征以及源语言文本特征,再通过第一多头注意编码层将关键信息与源语言文本进行关联,将关键信息融入至现有Transformer模型,以此更加准确提取关键词特征,进而提高关键词的翻译准确度,大大降低关键词漏译、错译的问题。

附图说明

下面结合附图对本发明的具体实施方式作进一步详细的说明,此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,在这些附图中使用相同的参考标号来表示相同或相似的部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。

图1为本发明实施例1的神经机器翻译模型框图;

图2为本发明实施例1的中-英数据集包含单词量统计图;

图3为本发明实施例1的英-德数据集包含单词量统计图;

图4为本发明实施例1的不同关键词个数参与融合计算的模型评估得分比较示意图。

具体实施方式

下面结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明的描述中,需要说明的是,属于“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方向或位置关系为基于附图所述的方向或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,属于“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。

在本发明的描述中,需要说明的是,除非另有明确的规定和限定,属于“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。

实施例1

如图1所示,在实施例1中,基于Transformer模型融合关键信息的神经机器翻译模型,具体包括用于关键信息编码的第一编码模块、用于源语言文本编码的第二编码模块、第一多头注意力编码层和解码器,第一多头注意力编码层对第一编码模块输出的关键信息编码结果和第二编码模块输出的源语言文本编码结果进行信息融合,并将信息融合的结果与第二编码模块输出的源语言文本编码结果经拼接处理后输入解码器,解码器输出翻译结果。其中,关键信息为多个关键词构成的集合,关键信息编码结果即关键信息序列包含的每个词的语义表示组成的矩阵,m×d维度,m表示关键信息序列包含的词个数,d表示词向量维度;源语言文本编码结果即源语言文本包含的每个词的语义表示组成的矩阵,n×d维度,n表示源文本包含的词个数,d表示词向量维度。具体地,任一编码模块与解码器构成现有Transformer模型,本申请增加了一编码模块,两个编码模块(第一编码模块和第二编码模块)分别提取关键信息特征以及源语言文本特征,再通过第一多头注意编码层将关键信息与源语言文本进行关联,并将信息融合的结果与第二编码模块输出的源语言文本编码结果经拼接处理后输入解码器,以此将关键信息融入至Transformer模型,更加准确提取关键词特征,进而提高关键词的翻译准确度,大大降低关键词漏译、错译的问题。需要进一步说明的是,第一编码模块、第二编码模块可仅作为编码器代替传统时序结构RNN、LSTM等完成特征提取工作,且可进一步适用于其他技术领域如文本摘要等文本生成任务。

进一步地,第一多头注意力编码层的信息融合具体为:将源语言文本的编码结果作为输入矩阵Q(Query,查询矩阵)、关键信息的编码结果作为输入矩阵K(Key,键值矩阵)和输入矩阵V(Value,值矩阵)进行多头注意力计算,即将关键信息编码结果作为源语言文本编码结果的信息补充,并在信息融合后输出与源语言文本编码结果维度相同的矩阵,以符合解码器的解码需求。其中源语言文本的编码结果、关键信息的编码结果以词向量矩阵的形式输入第一多头注意力编码层,本申请的第一多头注意力编码层的信息融合过程中,信息融合的具体计算公式为:

其中,A

具体地,为更好理解本申请多头注意力机制,现对其计算基础attention(注意力)机制进行说明。在本申请神经机器翻译模型,attention机制即将信息融合的结果作为输入矩阵K、V,之前时刻解码器输出的分类结果作为矩阵Q,将矩阵Q、K、V进行Attention计算,具体计算公式如下:

其中,

MultiHead(Q,K,V)=Concat(head

其中,多头注意力机制中各子头部(head

head

其中,Concat(*)为向量或矩阵的拼接操作,

进一步地,第一编码模块为多层编码结构,包括顺次连接的第二多头注意力编码层、第一前馈神经网络,关键信息的词向量矩阵输入至第二多头注意力编码层,第一前馈神经网络输出端与第一多头注意力编码层连接。作为一优选项,第二多头注意力编码与第一前馈神经网络之间经第一残差与归一化层连接,第一前馈神经网络与第一多头注意力编码层之间经第二残差与归一化层连接,且关键信息的词向量矩阵输入至第二多头注意力编码层以及第一残差与归一化层,第一残差与归一化层输出端与第二残差与归一化层连接,第二残差与归一化层输出端与第一多头注意力编码层连接。

进一步地,第二编码模块为多层编码结构,包括顺次连接的第三多头注意力编码层、第二前馈神经网络,源语言文本的词向量矩阵输入至第三多头注意力编码层,第二前馈神经网络输出端与第一多头注意力编码层连接。作为一优选项,第三多头注意力编码与第二前馈神经网络之间经第三残差与归一化层连接,第二前馈神经网络与第一多头注意力编码层之间经第四残差与归一化层连接,源语言文本的词向量矩阵输入至第三多头注意力编码层以及第三残差与归一化层,第三残差与归一化层输出端与第四残差与归一化层连接,第四残差与归一化层输出端与第一多头注意力编码层连接。

需要说明的是,本申请第二多头注意力编码层、第三多头注意力编码层均采用多头注意力机制进行运算,区别于第一多头注意力编码层的多头注意力运算,第二多头注意力编码层的输入矩阵Q、K、V均为关键信息的编码结果,第三多头注意力编码层的输入矩阵Q、K、V均为源语言文本的编码结果,即第二多头注意力编码层、第三多头注意力编码层的注意力机制主要为self-attention(自注意力),通过计算当前时刻的输入与之前时刻输入之间的关联性,从而直接得到之前时刻输入为当前时刻输入提供的信息,以获取到更加完整的信息。

更进一步地,关键信息、源语言文本作为本发明模型编码器的输入前,需转化为词向量矩阵即词嵌入化处理,即将用于将非结构化的文本首先被转换成结构化的低维数值向量(词向量),该转换过程通过词嵌入编码层实现。在典型的自然语言处理任务预处理阶段,文本中的词汇首先使用word2vec、Glove等算法进行预训练,转换为词向量(wordembedding)。在词嵌入层中,一个包含m个词的源语言序列可以转换为S=[s

其中,pos为第i个token(词或特殊符号)在文中的位置,sin及cos分别为正弦函数及余弦函数。

更为具体地,在编码模块中,定义第i层编码器的输出为H

C

例如对于第一编码模块,叠加有位置编码信息的词向量矩阵作为第二多头注意力编码层的输入矩阵即H

残差与归一化层为残差连接和归一化处理,二者均用于防止梯度消失,第一残差与归一化层、第三残差与归一化层计算公式如下:

Z

第二残差与归一化层、第四残差与归一化层计算公式如下:

H

其中,FNN表示前馈神经网络,用于增加模型的非线性特征。AddNorm()表示残差与归一化计算。以上为关键信息和输入源语言文本序列的编码计算过程,定义

进一步地,第一多头注意力编码层输出的信息融合的结果与第二编码模块输出源语言文本的编码结果经权重拼接处理后输入解码器,权重拼接处理计算公式为:

其中,λ为权重系数,取值为0-1,通过参数λ防止融合的信息对解码器造成过度干扰。

作为一优选项,编码器(第一编码模块+第二编码模块)输出端经一残差与归一化层与解码器连接,用于防止梯度消失。具体地,即第一多头注意力编码层输出端经第五残差与归一化层连接,第五残差与归一化层输出的信息融合计算结果与第四残差与归一化层输出的源语言文本的编码结果进行拼接后输出至解码器,第五残差与归一化层的具体公式为:

进一步地,解码器为多层编码结构,包括顺次连接的多头注意力解码层、第三前馈神经网络、线性层和分类层,第一多头注意力编码层输出的信息融合计算结果与第二编码模块输出源语言文本的编码结果经权重控制后输入至多头注意力解码层,分类层输出分类结果,进而得到当前待翻译词向量矩阵对应的目标词向量矩阵,将该目标词向量矩阵转换为文本即可得到目标语言文本。

具体地,由第一多头注意力编码层融合后输出的完整信息Y

作为一优选项,多头注意力解码层与第三前馈神经网络经第六残差与归一化层连接,第三前馈神经网络与线性层经第七残差与归一化层连接,且第六残差与归一化层输出端与第七残差与归一化层连接,用于防止梯度消失,保证分类器的分类准确率。

作为一优选项,解码器还包括遮掩多头注意力层(Masked Multi-headattention),之前时刻解码器输出的分类结果以词向量矩阵的形式作为当前待翻译词向量矩阵的参考输入至遮掩多头注意力层,遮掩多头注意力层输出端与多头注意力解码层连接。引入遮掩多头注意力层是因为,在对目标语言进行逐字解码时,当前时刻的输出是无法感知后文的信息,因此在做自注意力计算时需要掩盖掉后文的信息,防止当前时刻的token关注到“未来”的token。

更为具体地,遮掩多头注意力层通过第八残差与归一化层与多头注意力解码层连接,且第八残差与归一化层输出端与第六残差与归一化层连接,在以上解码器的优选组合方式中,第八残差与归一化层的计算公式如下:

其中

具体地,第六残差与归一化层的计算公式如下:

更具体地,将第六残差与归一化层的计算结果经线性层进行线性化处理,再通过softmax函数归一化计算即可得到输出词的分布,计算公式如下:

其中,

需要进一步说明的是,本申请神经机器翻译模型训练阶段时,采用交叉熵作为损失函数对模型进行训练,以保证模型的分类准确率,具体损失函数为:

其中,N为所有训练样本的数量,y∈R

进一步地,神经机器翻译模型还包括关键信息提取模块,关键信息提取模块与上述编码器(第一编码模块、第二编码模块、第一多头注意力编码层)与解码器构成的神经机器翻译模型独立工作。关键信息提取模块为TextRank的关键信息提取模块,只需要利用单篇文章的信息就可以实现关键词提取,而不需要提前对多篇文章进行学习训练,关键词提取步骤具体为:

S1:将给定文本T划分为多个句子,即T=[S

S2:对每个句子S

S3:构造候选关键词图G=(V,E),并采用前文提到的共现关系构建任意两个节点之间的边;其中,候选关键词为节点。

S4:对每个词的重要值进行迭代计算,选择权重较大的几个词作为关键词。具体地,每个词的PR(重要)值计算如公式为:

其中,WS(V

为进一步说明本申请神经机器翻译模型的翻译效果,将本申请模型与现有基准模型:Relative Position Representations模型、Context-aware模型在WMT 17数据集进行性能的验证,WMT 17数据集包括227568条中文-英文文本对,英-德数据集包括271329条英文-德文文本对。通过WMT 17中-英数据集中的单词数量统计图,如图2所示,可以看出英文文本长度集中在60之内,而中文文本长度也集中在60之内,因此设置中文语言文本序列最大长度max_source_text_len=60,设置英文语言文本序列最大长度max_target_text_len=60;通过绘制WMT 17英-德数据集中包含的单词数量统计图如图3所示,可以看出,英文文本长度集中在60以内,而德文文本长度也集中在60之内,因此将设置英语语言文本序列最大长度max_source_text_len=60,设置德语语言文本序列最大长度max_target_text_len=60,并分别使用news2017dev和news2017test中的中-英数据集和英-德数据集作为验证集和测试集。验证集和测试集均包含约2000条中英数据对,约3000条英-德数据对验证本申请神经机器翻译模型的翻译性能。更进一步地,在本申请性能评估过程中,采用的词嵌入大小d

表1神经机器翻译模型实验环境配置表

需要进一步说明的是,本申请通过统计同时出现在生成译文和参考译文中的n-gram(字节片段)的个数,再把共现的n-gram的数目除以生成译文包含的总数目作为性能评估标准,具体计算公式如下:

其中,Count

其中,c为生成文本的长度,r为参考文本的长度,由于p

最后,本申请模型与基准模型在测试集上最终的得分统计如下表2所示:

表2不同模型在测试集上的得分统计

从上表可以看出,本申请神经机器翻译模型在Transformer基础上有较大提升,在中-英数据集上提升了1.11得分,在英-德数据集上提升了1.22得分,通过与Transformer的评估得分比较,可以得出本申请基于Transformer模型融合关键信息的方法确实能够提升机器翻译的质量。除此,通过与基准模型相比较,可以看出我们的模型实现了最优的翻译效果。

为进一步保证本申请模型的翻译性能,选择4个关键词参与关键信息融合。如图4所示,本申请记录了不同个数的关键词参与关键信息融合的对比实验。其中,横坐标表示训练的迭代Epoch数量,纵坐标代表不同融合方式的模型在测试集上的性能评估得分,图中的k代表关键词个数。为了方便,本申请只记录了模型在经过前几个Epoch训练后的测试评估得分,而关键词个数我们也只对比了1-5。从图4可以看出,关键词个数过多或过少都会影响最终性能评估得分。关键词较少导致融合的关键信息量过少不足以为模型提供参考,而关键词信息过多又会对Transformer编码信息造成干扰,因此本申请选择3-4个关键词参与关键信息融合,在此基础上设计的神经机器翻译模型可以取得最优的性能评估得分。

实施例2

本实施例与实施例1具有相同的发明构思,在实施例的基础上,提供了一种基于Transformer模型融合关键信息的神经机器翻译模型的翻译方法,上述方法具体包括以下步骤:

S11:提取源语言文本的关键信息;其中,可通过基于TF-IDF或TextRank或LDA的关键信息提取模块提取关键信息。

S12:分别对关键信息、源语言文本进行编码后进行信息融合,信息融合过程中多头注意力编码的输入矩阵Q、K、V分别为源语言文本的编码结果、关键信息的编码结果、关键信息的编码结果;

S13:将信息融合的计算结果进行解码。

进一步地,步骤S12中,分别对关键信息、源语言文本进行编码即通过多头注意力编码层进行自相关的多头注意力运算,即对关键信息进行编码时,关键信息编码结果作为多头注意力编码层的输入矩阵Q、K、V;对源语言文本进行编码时,源语言文本编码结果作为多头注意力编码层的输入矩阵Q、K、V,具体运算公式如下:

MultiHead(Q,K,V)=Concat(head

其中,多头注意力机制中各子头部head计算如公式具体为:

head

其中,Concat(*)为向量或矩阵的拼接操作,

作为一优选项,采用实施例1中的第一编码模块、第二编码模块分别对关键词信息、源语言文本进行编码,提取对应特征信息。

更为具体地,步骤S12中,信息融合计算公式为:

其中,A

步骤S13前,还包括:将信息融合计算结果与源语言文本的编码结果经拼接处理后输入解码器,拼接处理计算公式为:

其中,λ为权重系数,取值为0-1,通过参数λ防止融合的信息对解码器造成过度干扰。

进一步地,步骤S13中,解码器包括顺次连接的多头注意力解码层、第三前馈神经网络、线性层和分类层,第一多头注意力编码层输出的信息融合计算结果与第二编码模块输出源语言文本的编码结果经权重控制后输入至多头注意力解码层进行解码,并通过前馈神经网络增强模型的非线性特征,最后一层解码器的计算结果通过一个线性层,再通过softmax函数归一化计算即可得到输出词的分布,计算公式如下:

其中,

更为具体地,解码器还包括遮掩多头注意力层,其他时刻输出的词向量矩阵作为当前待翻译词向量矩阵的参考输入至遮掩多头注意力层,遮掩多头注意力层输出端与多头注意力解码层连接。

更进一步地,步骤S11前还包括模型训练步骤,采用交叉熵作为损失函数训练神经机器翻译模型,损失函数的计算公式如下:

其中,N为所有训练样本的数量,y∈R

实施例3

本实施例提供了一种存储介质,与实施例2具有相同的发明构思,其上存储有计算机指令,计算机指令运行时执行实施例2中的基于Transformer模型融合关键信息的神经机器翻译模型的翻译方法的步骤。

基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

实施例4

本实施例还提供一种终端,与实施例2具有相同的发明构思,包括存储器和处理器,存储器上存储有可在处理器上运行的计算机指令,处理器运行计算机指令时执行实施例2中的基于Transformer模型融合关键信息的神经机器翻译模型的翻译方法的步骤。处理器可以是单核或者多核中央处理单元或者特定的集成电路,或者配置成实施本发明的一个或者多个集成电路。

在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

以上具体实施方式是对本发明的详细说明,不能认定本发明的具体实施方式只局限于这些说明,对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演和替代,都应当视为属于本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号