一种基于掩码机制的篇章级神经机器翻译方法及系统技术方案

技术编号:36703150 阅读:24 留言:0更新日期:2023-03-01 09:21
本发明专利技术公开了一种基于掩码机制的篇章级神经机器翻译方法及系统,属于自然语言处理和语言翻译技术领域。本方法利用掩码机制对待翻译句子中的部分信息进行掩码,使模型在翻译句子时,对上下文信息的依赖程度更高。本方法主要针对训练策略做出改进,采用了二阶段训练过程,更好地使编码器还原编码信息,有效提升了篇章级神经机器翻译的效果。系统部分包括数据处理模块、源语言编码器模块、源语言自编码解码器模块、目标语言解码器模块和生成器模块。对比现有技术,本方法在训练策略上采取掩码和自编码的策略,训练了一个在编码时更依赖于上下文的篇章级翻译模型,充分利用上下文信息,进一步提升了篇章级机器翻译效果和质量。进一步提升了篇章级机器翻译效果和质量。进一步提升了篇章级机器翻译效果和质量。

【技术实现步骤摘要】
一种基于掩码机制的篇章级神经机器翻译方法及系统


[0001]本专利技术涉及一种神经机器翻译方法及系统,具体涉及一种基于掩码机制的篇章级神经机器翻译方法和系统,属于自然语言处理和语言翻译


技术介绍

[0002]神经机器翻译技术(Neural Machine Tranlation,简称NMT),是一种使用深度学习神经网络获取自然语言之间的映射关系的方法,是自然语言处理中的重要任务。NMT使用基于神经网络的技术来实现更多上下文精确翻译,而不是一次翻译一个单词的破碎句子。NMT能够学习和收集信息,分两个阶段进行分析:编码和解码。在编码阶段,来自然语言的文本信息被输入到机器中,随后被分类到语言向量中。在上下文中,相似的单词将被放置在可比较的单词向量中。在解码阶段,将有效且无缝地把矢量发送到目标语言。
[0003]篇章级机器翻译,旨在使用计算机将一个篇章从一种语言自动翻译成另一种语言,是机器翻译中一项十分富有挑战性的任务。近年来,随着神经机器翻译的快速发展,篇章神经机器翻译已经成为了机器翻译领域的热门方向,该技术使得译文在整篇文档或特定的语义环境中,能够保持翻译风格的一致性和翻译的准确性。随着深度学习的快速发展,端到端的模型架构能够帮助神经机器翻译直接将源语言句子转换到目标语言句子。相比于传统句子神经机器翻译,篇章神经机器翻译通过建模并利用篇章级别的上下文信息,由此产生质量更高的译文。
[0004]现有技术中,通常采用多编码器的方式来解决神经机器翻译中的篇章级翻译难题。利用额外的编码器对上下文进行编码,获取编码信息后,与当前待翻译的句子以注意力机制或门控机制做融合。单编码器相对简单,将上下文与待翻译句子进行拼接,共同送入编码器中,利用注意力机制,获得更好的编码表示,再送入解码器中生成对应的译文。但是,在单编码器的结构中,需要让待翻译的句子能更好的依赖于上下文的信息,例如,可以从待处理的上下文中获取时态信息、性别信息甚至字母缩写的具体含义等。由于神经网络本身往往会被视为是一个黑盒模型,因此在编码、翻译的过程中,往往很难界定对上下文的依赖程度有多少。此外,在编码过程中,源语言句子的编码可能会因为额外信息的引入而不能被完整地传达。
[0005]综上所述,迫切需要有一种技术,能够让篇章级神经机器翻译方法,在编码或翻译的过程中更好地依赖于上下文,同时能保证原有的语义信息不会丢失。

技术实现思路

[0006]本专利技术的目的是针对现有技术存在的问题和不足,为了解决篇章级神经机器翻译过程中,令待翻译句子更好地从上下文中获取信息,保证原有语义信息不丢失等技术问题,创造性地一种基于掩码机制的篇章级神经网络机器翻译方法及系统。
[0007]本专利技术的创新点在于:首先,将上下文及经过随机掩码的待翻译句子拼接作为编码器的输入。常见的单编码器结构中,往往是使用拼接后的句子直接作为编码器的输入,但
是这种方式使得上下文本身会成为一种噪声,破坏待翻译句子的语义信息,而编码信息也因此会受到影响,反而会出现降低翻译效果的现象。而且需要将上下文和待翻译的句子区分开,要使得编码器更好的帮助待翻译句子从上下中获取信息。针对这种情况,本专利技术一方面引入掩码语言模型任务,使用掩码随机替换待翻译句子中的部分词;除此之外引入降噪自编码器,为编码器部分加上约束,使基于上下文的编码信息不仅能充分利用上下文信息,同时能更好地还原待翻译句子的语义信息,最后生成目标语言句子。
[0008]本专利技术采用以下技术方案实现。
[0009]一种基于掩码机制的篇章级神经机器翻译方法,包括以下步骤:
[0010]步骤1:输入源语言句子,通过随机掩码方式,编码生成具备上下文的编码信息Enc(X)。
[0011]具体地,步骤1包括以下步骤:
[0012]步骤1.1:待翻译句子X
curr
中的每个单词,以概率p被掩码符号所替换。
[0013]优选地,p=0.3,服从伯努利分布。
[0014]步骤1.2:选定待翻译句子的前文X
prev
作为上下文,并将经掩码处理后的待翻译句子与上下文进行拼接,得到输入序列X
input

[0015]步骤1.3:输入序列X
input
经过编码器的嵌入层,被逐词映射为词向量,嵌入层输出由词向量组成的序列Emb(X)。
[0016]步骤1.4:将序列Emb(X)送入编码器中进行编码,获得具备上下文的编码序列Enc(X)。
[0017]具体地,序列Emb(X)通过编码器的多头自注意力层和线性层进行编码,将该过程重复N次,最后得到Enc(X)。
[0018]步骤2:将经过编码器得到的编码序列Enc(X)送入结构与编码器一致的降噪自编码解码器中,得到降噪自编码输出序列Dec
Enc
(Enc(X))。
[0019]具体地,该步骤与步骤1.4中的处理过程相同,目的是为了增加掩码语言模型任务,更好地还原可能被掩码破坏了语义信息的待翻译句子。
[0020]步骤3:利用编码器输出和解码器输入,输出解码序列Dec(Y)。
[0021]具体地,步骤3包括以下步骤:
[0022]步骤3.1:根据前文X
prev
的长度和待翻译句子X
curr
的长度,对步骤1.4中具备上下文的编码表示Enc(X)做切割,获取上下文编码序列Enc(X)
prev
和待翻译句子的编码序列Enc(X)
curr

[0023]步骤3.2:选取步骤1.1中待翻译句子X
curr
所对应的目标语言句子Y
tok
,送入编码器的嵌入层,逐词映射为词向量,嵌入层输出由词向量组成的目标语言序列Emb(Y)。
[0024]步骤3.3:利用解码器对目标语言序列Emb(Y)进行解码,得到解码序列Dec(Y)。
[0025]具体地,目标语言序列表示Emb(Y)通过解码器的自注意力层,利用多头注意力层和上下文编码序列Enc(X)
prev
以及待翻译句子X
curr
的编码序列Enc(X)
curr
进行融合,再经过解码器的线性层。该过程重复N次,最终得到解码序列Dec(Y)。
[0026]步骤4:将步骤2的降噪自编码输出序列Dec
Enc
(Enc(X))与步骤1.3的拼接序列Emb(X)作比较,将解码序列Dec(Y)与目标语言参考编码序列Ref(Y)作比较,将差值加权相加,作为模型损失L1。
[0027]步骤5:根据模型损失使用梯度下降方法,重复步骤1至步骤4,直至模型收敛,得到翻译模型M。
[0028]步骤6:在步骤5得到的翻译模型M上,继续使用现有数据,在不做掩码的基础上进行训练。
[0029]具体地,步骤6包括以下步骤:
[0030]步骤6.1:选定待翻译句子X
curr<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于掩码机制的篇章级神经机器翻译方法,其特征在于,包括以下步骤:步骤1:输入源语言句子,通过随机掩码方式,编码生成具备上下文的编码信息Enc(X);步骤1.1:待翻译句子X
curr
中的每个单词,以概率p被掩码符号所替换;步骤1.2:选定待翻译句子的前文X
prev
作为上下文,并将经掩码处理后的待翻译句子与上下文进行拼接,得到输入序列X
input
;步骤1.3:输入序列X
input
经过编码器的嵌入层,被逐词映射为词向量,嵌入层输出由词向量组成的序列Emb(X);步骤1.4:将序列Emb(X)送入编码器中进行编码,获得具备上下文的编码序列Enc(X);序列Emb(X)通过编码器的多头自注意力层和线性层进行编码,将该过程重复N次,最后得到Enc(X);步骤2:将经过编码器得到的编码序列Enc(X)送入结构与编码器一致的降噪自编码解码器中,得到降噪自编码输出序列Dec
Enc
(Enc(X));步骤3:利用编码器输出和解码器输入,输出解码序列Dec(Y);步骤3.1:根据前文X
prev
的长度和待翻译句子X
curr
的长度,对步骤1.4中具备上下文的编码表示Enc(X)做切割,获取上下文编码序列Enc(X)
prev
和待翻译句子的编码序列Enc(X)
curr
;步骤3.2:选取步骤1.1中待翻译句子X
curr
所对应的目标语言句子Y
tok
,送入编码器的嵌入层,逐词映射为词向量,嵌入层输出由词向量组成的目标语言序列Emb(Y);步骤3.3:利用解码器对目标语言序列Emb(Y)进行解码,得到解码序列Dec(Y);目标语言序列表示Emb(Y)通过解码器的自注意力层,利用多头注意力层和上下文编码序列Enc(X)
prev
以及待翻译句子X
curr
的编码序列Enc(X)
curr
进行融合,再经过解码器的线性层;该过程重复N次,最终得到解码序列Dec(Y);步骤4:将步骤2的降噪自编码输出序列Dec
Enc
(Enc(X))与步骤1.3的拼接序列Emb(X)作比较,将解码序列Dec(Y)与目标语言参考编码序列Ref(Y)作比较,将差值加权相加,作为模型损失L1;步骤5:根据模型损失使用梯度下降方法,重复步骤1至步骤4,直至模型收敛,得到翻译模型M;步骤6:在步骤5得到的翻译模型M上,继续使用现有数据,在不做掩码的基础上进行训练;步骤6.1:选定待翻译句子X
curr
的前文X
prev
作为上下文,并将待翻译句子X
curr
与上下文进行拼接,得到输入序列X
input

;步骤6.2:输入序列X
input

经过编码器的嵌入层,被逐词映射为词向量,嵌入层输出由词向量组成的序列Emb(X

);步骤6.3:将序列Emb(X

)送进编码器中,经过编码获得具备上下文的编码序列Enc(X

);序列Emb(X

)通过编码器的多头自注意力层和线性层进行编码,该过程重复N次,最后得到Enc(X

);步骤7:与步骤3过程相同,编码器输出来自步骤6.3的Enc(X

),输出解码序列Dec(Y

);步骤8:将步骤7的解码序列Dec(Y

)与目标语言参考编码序列Ref(Y)作比较,将差值作为模型损失L2;
步骤9:根据模型损失L2使用梯度下降方法,重复步骤6至步骤8,直至模型收敛,得到翻译模型M

;步骤10:将非训练集的源语言句子X
t
、源语言句子的前文X
t
‑1,送入翻译模型M

,得到最终翻译的译文。2.如权利要求1所述的一种基于掩码机制的篇章级神经机器翻译方法,其特征在于,步骤1.4中,的多头自注意力层的过程如下:首先,将词向量组成的序列Emb(X)中的每一个词向量通过矩阵映射为查询值Q、键值K和值V:Q=W
Q
·
e
ꢀꢀꢀꢀ
(1)K=W

【专利技术属性】
技术研发人员:费伟伦鉴萍朱晓光
申请(专利权)人:北京理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1