CN111401081A - 神经网络机器翻译方法、模型及模型形成方法 - Google Patents

神经网络机器翻译方法、模型及模型形成方法 Download PDF

Info

Publication number
CN111401081A
CN111401081A CN201811534845.3A CN201811534845A CN111401081A CN 111401081 A CN111401081 A CN 111401081A CN 201811534845 A CN201811534845 A CN 201811534845A CN 111401081 A CN111401081 A CN 111401081A
Authority
CN
China
Prior art keywords
model
attention
dot product
word
machine translation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811534845.3A
Other languages
English (en)
Inventor
张家俊
周龙
周玉
宗成庆
杨里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Automation of Chinese Academy of Science
Boeing Co
Original Assignee
Institute of Automation of Chinese Academy of Science
Boeing Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Automation of Chinese Academy of Science, Boeing Co filed Critical Institute of Automation of Chinese Academy of Science
Priority to CN201811534845.3A priority Critical patent/CN111401081A/zh
Publication of CN111401081A publication Critical patent/CN111401081A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Machine Translation (AREA)

Abstract

本发明涉及神经网络机器翻译方法、模型及模型形成方法。形成神经网络机器翻译模型的方法包括:形成编码器,其包括第一多头注意力模型;形成解码器,其包括第二多头注意力模型和未来信息模型,未来信息模型表示当前预测单词和已经生成单词的第一注意力隐层表示和当前预测单词和未来可能的单词的第二注意力隐层表示的融合;通过编码器和解码器形成第一机器翻译模型;以及对第一机器翻译模型进行对源语言序列从左至右和从右至左的解码训练,以形成神经网络机器翻译模型,其中,第一多头注意力模型和未来信息模型为第二多头注意力模型提供输入。本发明解决了在机器翻译的过程中,在预测当前单词时,未来信息不能被充分利用的问题。

Description

神经网络机器翻译方法、模型及模型形成方法
技术领域
本发明涉及机器翻译领域。具体地,本发明涉及形成神经网络机器翻 译模型的方法、神经网络机器翻译模型、神经网络机器翻译方法、存储介 质、处理器以及电子设备。
背景技术
机器翻译是指利用计算机将一种自然语言翻译成另一种具有相同语 义的自然语言,它是人工智能和自然语言处理领域的重要研究方向之一。 通常,机器翻译的系统框架可以分为两类:基于规则的机器翻译(Rule based Machine Translation,RBMT)和基于语料库的机器翻译(Corpus based Machine Translation,CBMT)。其中CBMT又可分为基于实例的机器翻译 (Example based Machine Translation,EBMT)、基于统计的机器翻译(Statistical based Machine Translation,SMT)以及近年流行的利用深度 学习模型所构建的神经网络机器翻译(Neural Machine Translation,NMT)。
神经网络机器翻译是指直接采用神经网络以端到端(End-to-End)方 式进行翻译建模的机器翻译方法,其基本思想是使用神经网络直接将源语 言映射成目标语言文本。神经网络机器翻译采用“编码器-解码器”的框 架:给定一个源语言句子,首先使用一个编码器将其映射为一个连续、稠 密的向量,然后再使用一个解码器将该向量转化为一个目标语言句子。随 着深度学习技术的发展,神经网络机器翻译模型被广泛研究,并展现出了 相较于统计机器翻译模型的巨大优势。
(编码器-解码器框架)
神经网络机器翻译的基本思想是通过神经网络直接实现自然语言之 间的自动翻译。为此,神经网络机器翻译通常采用编码器-解码器 (encoder-decoder)框架实现序列到序列的转换。在具体操作中,对源语 言和目标语言的编码和解码可以采用不同类型的神经网络。例如编码器可 以是卷积神经网络(Convolutional Neural Network),解码器可以是循环神 经网络(Recurrent Neural Network)。然而,虽然循环神经网络理论上能够 捕获无限长的历史信息,但在训练过程中面临着“梯度消失”和“梯度爆 炸”等问题,很难真正处理长距离的依赖关系。为了缓解“梯度消失”和 “梯度爆炸”的问题,人们将长短期记忆(Long Short-Term Memory)引 入端到端神经机器翻译。
图1是相关技术中神经网络机器翻译“编码器-解码器”框架的示意 图。以图1为例,给定一个源语言中文句子“这是成功的秘诀”,编码 器-解码器框架首先将每个中文词生成词向量表示,然后通过一个循环神 经网络从左至右生成整个中文句子的向量表示。其中,“</s>”表示句尾结 束符,我们将源语言端所使用的循环神经网络称为编码器,其作用是将源 语言句子编码成一个稠密、连续的实数向量。此后,目标语言端采用另一 个循环神经网络将源语言句子向量反向解码成目标语言英文句子“This is the secret ofsuccess</s>”。整个解码过程逐词生成,当生成句尾结束符 “</s>”后,解码过程终止。我们将目标语言端所使用的循环神经网络称 为解码器。
相比于传统的统计机器翻译,基于编码器-解码器框架的神经机器翻 译具有直接从数据中学习特征、能够捕获长距离依赖等优点。但是,编码 器-解码器框架也面临一个严重的问题:编码器生成的源语言句子向量表 示的维度与源语言句子长度无关。即不管是较长的源语言句子还是较短的 源语言句子,编码器都需将其映射成一个维度固定的向量,这对实现准确 的编码提出了极大的挑战。
(注意力机制)
针对编码器生成定长向量的问题,人们提出了基于注意力机制 (AttentionMechanism)的端到端神经机器翻译。该机制的核心观点认为, 解码器在生成当前目标语言单词时,实际上仅有小部分的源语言词是相关 的,绝大部分源语言词都是无关的。因此可以为每个目标语言词动态生成 源语言端的相关上下文向量,而不是采用表示整个源语言句子的定长向量。
图2是相关技术中基于注意力机制的神经网络机器翻译的框架的示意 图。如图2所示,基于注意力机制的神经机器翻译采用了完全不同的编码 器,其目标不再是为整个源语言句子生成向量表示,而是为每个源语言词 生成包含全局信息的向量表示。给定源语言句子X={x1,x2,...,xn},双向 循环神经网络编码器将句子X编码为一个源语言隐式状态序列 H={h1,h2,...,hn},其中前向循环神经网络顺序读入句子X后产生源语言 正向隐式状态序列
Figure BDA0001906604430000031
后向循环神经网络逆序读入句子X 后产生源语言逆向隐式状态序列
Figure BDA0001906604430000032
正向和逆向隐式状态 序列中位置对应的状态序列拼接形成该位置单词的隐式状态
Figure BDA0001906604430000033
在解码时刻t,解码器分别产生该时刻的目标语言隐式状态和目标语 言单词。t时刻目标语言隐式状态st由t-1时刻目标语言隐式状态st-1,t-1 时刻解码器所生成的目标语言单词yt-1和t时刻上下文向量ct所决定:
st=g(st-1,yt-1,ct)
其中g为非线性函数,LSTM或GRU。t时刻上下文向量ct由源语言 隐式状态序列H和注意力模型所产生的权重加权所得:
Figure BDA0001906604430000034
这里注意力模型的权重at,j由t-1时刻目标语言隐式状态st和源语言隐 式状态序列H产生:
Figure BDA0001906604430000041
et,j=f(st,hj)
其中f为非线性函数,通常采用前馈神经网络或点积。权重at,j可以理 解为源语言词语xj和t时刻解码器所产生词语的相关程度。
在取得目标语言隐式状态st后,模型通过softmax函数估计t时刻目标 语言单词的概率分布:
P(yt|y<t,X)=softmax(g(st,yt-1,ct))
神经网络机器翻译模型的训练目标函数为平行语料上翻译句对的对 数似然函数之和,表示为:
Figure BDA0001906604430000042
D表示平行句对的集合,模型参数θ可通过随机梯度下降法(SGD)、 Adam或Adadelta等优化方法进行求解。
在相关技术中,不论采用基于循环神经网络的机器翻译模型,还是基 于自注意力机制的机器翻译模型,在预测当前单词时,只能利用源语言信 息和先前已经生成的单词序列信息,而无法获得未翻译单词序列的信息。 即现有神经网络机器翻译中的未来信息(future information)不能被充分 利用。
发明内容
本发明实施例提供了一种神经网络机器翻译方法、模型及模型形成方 法,以至少解决在机器翻译的过程中,在预测当前单词时,无法获得未翻 译单词序列的信息,从而导致未来信息不能被充分利用的问题。
根据本发明实施例的一个方面,提供了一种形成神经网络机器翻译模 型的方法包括:形成编码器,编码器包括第一多头注意力模型;形成解码 器,解码器包括第二多头注意力模型和未来信息模型,未来信息模型表示 当前预测单词和已经生成单词的第一注意力隐层表示和当前预测单词和 未来可能的单词的第二注意力隐层表示的融合;通过编码器和解码器形成 第一机器翻译模型;以及对第一机器翻译模型进行对源语言序列从左至右 和从右至左的解码训练,以形成神经网络机器翻译模型,其中,第一多头 注意力模型和未来信息模型为第二多头注意力模型提供输入。
通过在神经网络机器翻译模型的解码器中设置表示当前预测单词和 已经生成单词的第一注意力隐层表示和当前预测单词和未来可能的单词 的第二注意力隐层表示的融合的未来信息模型,并对机器翻译模型进行源 语言序列从左至右和从右至左的解码训练,使得所得的神经网络机器翻译 模型不仅能够利用当前预测单词之前的已生成单词的历史信息,还能够利 用当前预测单词之后的未来可能单词的未来信息,从而使得机器翻译的结果更准确。另外,由于利用了当前预测单词之后的未来可能单词的未来信 息,可以有效改善机器翻译的漏译现象。
在形成神经网络机器翻译模型的方法的一个示意性的实施方式中,形 成编码器包括形成第一多头注意力模型,其中,形成第一多头注意力模型 包括:利用点积注意力机制形成点积注意力模型;对点积注意力模型设置 线性变换模型,以通过线性变换将点积注意力模型的输入映射为多组预定 维度的向量;对点积注意力模型设置连接模型,以将向量经由点积注意力 模型处理后所得的向量进行连接;以及通过点积注意力模型、线性变换模型和连接模型形成所述第一多头注意力模型。
通过形成多头注意力模型,神经网络机器翻译模型可以学习到不同子 空间中的相关信息,从而改善机器翻译结果的精度。
在形成神经网络机器翻译模型的方法的一个示意性的实施方式中,形 成解码器包括形成未来信息模型,其中,形成未来信息模型包括:利用点 积注意力机制计算当前预测单词和已经生成单词的第一注意力隐层表示:
Figure BDA0001906604430000061
其中,
Figure BDA0001906604430000062
表示第一注意力隐层表示,
Figure BDA0001906604430000063
表示 当前时刻的隐层状态查询值,
Figure BDA0001906604430000064
表示历史的隐层状态键值,
Figure BDA0001906604430000065
表示历史的 隐层状态实值,Attention()为点积注意力机制的数学函数表示;利用点 积注意力机制计算当前预测单词和未来可能的单词的第二注意力隐层表 示:
Figure BDA0001906604430000066
其中,
Figure BDA0001906604430000067
表示第二注意力隐层表示,
Figure BDA0001906604430000068
表 示未来的隐层状态键值,
Figure BDA0001906604430000069
表示未来的隐层状态实值;将第一注意力隐层 表示和第二注意力隐层表示融合以形成融合注意力隐层表示;利用融合注 意力隐层表示形成点积注意力模型;对点积注意力模型设置线性变换模型, 以通过线性变换将点积注意力模型的输入映射为多组预定维度的向量;对 点积注意力模型设置连接模型,以将所述向量经由点积注意力模型处理后所得的向量进行连接;以及通过点积注意力模型、线性变换模型和连接模 型形成所述未来信息模型。
在形成神经网络机器翻译模型的方法的一个示意性的实施方式中,将 第一注意力隐层表示和第二注意力隐层表示融合以形成融合注意力隐层 表示包括:利用门限机制,将第一注意力隐层表示和第二注意力隐层表示 融合为融合注意力隐层表示:
Figure BDA00019066044300000610
Figure BDA00019066044300000611
其中,
Figure BDA00019066044300000612
表示融合注意力隐层表示,rt表示 重置门,zt表示更新门,Wg为模型参数,σ是sigmoid函数,[;]表示向 量或者矩阵级联操作,·为按位进行乘积的操作。
通过将表示当前预测单词和已经生成单词的第一注意力隐层表示和 当前预测单词和未来可能的单词的第二注意力隐层表示融合来形成未来 信息模型,神经网络机器翻译模型可以获取当前预测单词之前的已生成单 词的历史信息和当前预测单词之后的未来可能单词的未来信息,从而充分 利用未来信息来进行机器翻译,改善了翻译的准确性。
根据本发明实施例的另一方面,还提供了一种神经网络机器翻译模型 包括:编码器,所述编码器包括第一多头注意力模型;以及解码器,所述 解码器包括第二多头注意力模型和未来信息模型,未来信息模型表示当前 预测单词和已经生成单词的第一注意力隐层表示和当前预测单词和未来 可能的单词的第二注意力隐层表示的融合,其中,第一多头注意力模型和 未来信息模型为所述第二多头注意力模型提供输入,神经网络机器翻译模型经过了对源语言序列从左至右和从右至左的解码训练。
通过在神经网络机器翻译模型的解码器中设置表示当前预测单词和 已经生成单词的第一注意力隐层表示和当前预测单词和未来可能的单词 的第二注意力隐层表示的融合的未来信息模型,并对机器翻译模型进行了 对源语言序列从左至右和从右至左的解码训练,使得神经网络机器翻译模 型不仅能够利用当前预测单词之前的已生成单词的历史信息,还能够利用 当前预测单词之后的未来可能单词的未来信息,从而使得机器翻译的结果 更准确。另外,由于利用了当前预测单词之后的未来可能单词的未来信息, 可以有效改善机器翻译的漏译现象。
在神经网络机器翻译模型的一个示例性实施方式中,第一多头注意力 模型包括:点积注意力模型,被配置为利用点积注意力机制形成;线性变 换模型,连接至点积注意力模型且被配置为通过线性变换将点积注意力模 型的输入映射为多组预定维度的向量;以及连接模型,连接至点积注意力 模型且被配置为将向量经由所述点积注意力模型处理后所得的向量进行 连接。
通过多头注意力模型,神经网络机器翻译模型可以学习到不同子空间 中的相关信息,从而改善机器翻译结果的精度。
在神经网络机器翻译模型的一个示例性实施方式中,未来信息模型包 括:点积注意力模型;线性变换模型,连接至点积注意力模型且被配置为 通过线性变换将点积注意力模型的输入映射为多组预定维度的向量;以及 连接模型,连接至点积注意力模型且被配置为将向量经由点积注意力模型 处理后所得的向量进行连接,其中,点积注意力模型通过以下步骤形成: 利用点积注意力机制计算当前预测单词和已经生成单词的第一注意力隐 层表示:
Figure BDA0001906604430000081
其中,
Figure BDA0001906604430000082
表示当前时刻的隐层状态查 询值,
Figure BDA0001906604430000083
表示历史的隐层状态键值(key),
Figure BDA0001906604430000084
表示历史的隐层状态实值, Attention()为点积注意力机制的数学函数表示;利用点积注意力机制计 算当前预测单词和未来可能的单词的第二注意力隐层表示:
Figure BDA0001906604430000085
其中,
Figure BDA0001906604430000086
表示未来的隐层状态键值,
Figure BDA0001906604430000087
表示未来 的隐层状态实值;将第一注意力隐层表示和第二注意力隐层表示融合以形 成融合注意力隐层表示;以及利用融合注意力隐层表示形成点积注意力模 型。
在神经网络机器翻译模型的一个示例性实施方式中,将第一注意力隐 层表示和第二注意力隐层表示融合以形成融合注意力隐层表示包括:利用 门限机制,将第一注意力隐层表示和第二注意力隐层表示融合为融合注意 力隐层表示:
Figure BDA0001906604430000088
其中,
Figure BDA0001906604430000089
表示融合注意力隐层表示,rt表示重置门,zt表示更新门,Wg为模型 参数,σ是sigmoid函数,[;]表示向量或者矩阵级联操作,·为按位进行 乘积的操作。
通过将表示当前预测单词和已经生成单词的第一注意力隐层表示和 当前预测单词和未来可能的单词的第二注意力隐层表示融合来形成未来 信息模型,神经网络机器翻译模型可以获取当前预测单词之前的已生成单 词的历史信息和当前预测单词之后的未来可能单词的未来信息,从而充分 利用未来信息来进行机器翻译,改善了翻译的准确性。
根据本发明的另一方面,还提供了一种神经网络机器翻译方法,包括: 接收源语言序列,由第一多头注意力模型利用多头注意力机制对源语言序 列进行处理,以获得源语言序列的隐层向量表示;对源语言序列的隐层向 量表示进行矩阵变换,以获得源语言序列的相应键K和值V;将键K和 值V输入至第二多头注意力模型;通过未来信息模型获取当前预测单词和 已经生成单词的第一注意力隐层表示和当前预测单词和未来可能的单词 的第二注意力隐层表示的融合注意力隐层向量表示,未来信息模型表示当 前预测单词和已经生成单词的第一注意力隐层表示和当前预测单词和未 来可能的单词的第二注意力隐层表示的融合;根据融合注意力隐层向量表 示获取目标语言序列的查询Q;将查询Q输入至第二多头注意力模型;由 第二多头注意力模型根据键K、值V和查询Q确定目标语言单词为当前预测单词的概率;以及生成各单词概率最高的文本序列作为为翻译结果的 目标语言序列。
通过将当前预测单词和已经生成单词的第一注意力隐层表示和当前 预测单词和未来可能的单词的第二注意力隐层表示的融合,可以获取当前 预测单词之前的已生成单词的历史信息和当前预测单词之后的未来可能 单词的未来信息,利用通过利用所得的历史信息和未来信息,可以使得机 器翻译的结果更准确。另外,由于利用了当前预测单词之后的未来可能单 词的未来信息,可以有效改善机器翻译的漏译现象。
根据本发明实施例的另一方面,还提供了一种存储介质,存储介质包 括存储的程序,其中,在程序运行时控制包括存储介质的设备执行上述形 成神经网络机器翻译模型的方法。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一 部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发 明的不当限定。在附图中:
图1是相关技术中神经网络机器翻译“编码器-解码器”框架的示意 图;
图2是相关技术中基于注意力机制的神经网络机器翻译的框架的示意 图;
图3示出了点积注意力机制的示意图;
图4示出了多头注意力机制的示意图;
图5示出了根据本发明实施例的形成神经网络机器翻译模型的方法的 流程图;
图6示出了根据本发明实施例的形成融合注意力隐层表示的示意图;
图7示出了根据本发明实施例的神经网络机器翻译模型的框图;
图8示出了根据本发明实施例的神经网络机器翻译模型的内部构架图;
图9为根据本发明实施例的以时间顺序示出的解码器的输入示例和输 出示例。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明 实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述, 显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施 例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动 前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语 “包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含, 例如,包含了一系列步骤或模块或单元的过程、方法、系统、产品或设备 不必限于清楚地列出的那些步骤或模块或单元,而是可包括没有清楚地列 出的或对于这些过程、方法、产品或设备固有的其它步骤或模块或单元。
为便于下文对本发明技术方案的描述,首先对几个基本的概念进行描 述。
点积注意力机制(Scaled Dot-Product Attention)
Attention函数的作用是将查询(query)以及一个键-值(key-value) 对的集合映射到输出(output)上。这里的查询(query)、键(key)、值(value) 和输出(output)都是向量。最终的输出(output)则是值(value)的加权 和,而这些权重是查询(query)和对应键(key)计算得来的。
图3示出了点积注意力机制的示意图。如图3所示,点积注意力机制 的操作步骤为:首先计算query(Q)和所有key(K)的内积,然后除以
Figure BDA0001906604430000111
(dk为键的维度),并使用softmax获取value(V)的权值,最后加权求 和得到对应的输出。图3中的Mask层是为了避免在解码器中,注意力机 制关注到还未生成的序列。具体公式如下:
Figure BDA0001906604430000112
利用点积注意力机制可以形成点积注意力模型。
多头注意力机制(Multi-head Attention)
图4示出了多头注意力机制的示意图。如图4所示,首先使用线性变 换将查询(query),键(key)和值(value)分别映射为h组维度为dk,dk,dv的 向量。在这h组查询(query)、键(key)、值(value)向量上,分别执行 点积注意力机制(Scaled Dot-ProductAttention)得到h个dv维的向量,然 后将这些向量连接起来,得到最后的输出,具体计算过程如下:
MultiHead(Q,K,V)=Concat(headi,...,headh)
其中,
Figure BDA0001906604430000121
其中
Figure BDA0001906604430000122
为模型参数,h等于8,dk=dv=512/8=64。
利用多头注意力机制可以形成多头注意力模型。
根据本发明实施例,提供了一种形成神经网络机器翻译模型的方法。 图5示出了根据本发明实施例的形成神经网络机器翻译模型的方法的流程 图。参见图5,根据本发明实施例,一种形成神经网络机器翻译模型的方 法包括:
S502:形成编码器,所述编码器包括第一多头注意力模型。
具体地,形成编码器包括形成第一多头注意力模型:
利用如图3所示的点积注意力机制形成点积注意力模型,然后对点积 注意力模型设置用于值(value)、键(key)和(query)的线性变换模型。 例如,如图4所示,假设多头注意力机制的头数h为8,隐层表示的维度 为512,则可以通过线性变换模型对点积注意力模型的输入V、K、Q进 行线性变换以将它们映射为8组维度为64、64、64的向量。这里的“8 组维度为64、64、64的向量”仅仅是示例性的,本发明并不限于此。
通过点积注意力模型,可以分别对上述8组维度为64、64、64的向 量执行点积注意力机制,从而得到8个64维的向量。
对点积注意力模型设置连接模型,通过连接模型可以对上述通过点积 注意力机制获得的8个64维的向量执行连接。
上述点积注意力模型、线性变换模型以及连接模型即构成了第一多头 注意力模型。
作为一个实例,可以对上述第一多头注意力模型进一步设置另一线性 变换模型,以对例如经由连接处理所得的8个64维的向量进行线性变换。
第一多头注意力模型具体可以通过图4所示的多头注意力机制实现, 其可以是通过多头注意力机制实现的多头内部注意力(multi-head- intra-attention)模型。
作为一个实例,形成编码器可以包括形成前馈神经网络,使得该前馈 神经网络与第一多头注意力模型进行全连接。
作为一个实例,可以对第一多头注意力模型和前馈神经网络进行残差 连接和层级规范化处理。
根据发明的实施例,编码器可以包括多个相同的编码层,每个编码层 包括包含第一多头注意力模型的第一子层和包含前馈神经网络的第二子 层。作为一个实例,编码器可以包括6个相同的编码层,但本发明并不限 于此。
S504:形成解码器,解码器包括第二多头注意力模型和未来信息模型, 未来信息模型表示当前预测单词和已经生成单词的第一注意力隐层表示 和当前预测单词和未来可能的单词的第二注意力隐层表示的融合。
具体地,形成解码器包括形成未来信息模型。形成未来信息模型包括 以下步骤:
(1)形成融合注意力隐层表示。
图6示出了根据本发明实施例的形成融合注意力隐层表示的示意图。
如图6的左半部分所示,利用点积注意力机制计算当前预测单词和已 经生成单词的第一注意力隐层表示:
Figure BDA0001906604430000141
其中,
Figure BDA0001906604430000142
表示第一注意力隐层表示,
Figure BDA0001906604430000143
表示当前时刻的隐层状态 查询值,
Figure BDA0001906604430000144
表示历史的隐层状态键值,
Figure BDA0001906604430000145
表示历史的隐层状态实值, Attention()为点积注意力机制的数学函数表示,其计算方式如下:
Figure BDA0001906604430000146
这里,dk是键值K的维度,T表示向量或者矩阵的转置。
如图6的右半部分所示,利用点积注意力机制计算当前预测单词和未 来可能的单词的第二注意力隐层表示:
Figure BDA0001906604430000147
其中,
Figure BDA0001906604430000148
表示第二注意力隐层表示,
Figure BDA0001906604430000149
表示未来的隐层状态键值,
Figure BDA00019066044300001410
表示未来的隐层状态实值,Attention的计算方式如公式(2)所示。
如图6所示,利用门限机制将上面两个注意力隐层表示进行融合,该 步骤的作用是将当前预测单词之前单词的历史信息和当前预测单词之后 的未来信息进行融合,所得到的融合注意力隐层表示为:
Figure BDA0001906604430000151
Figure BDA0001906604430000152
其中,
Figure BDA0001906604430000153
表示所述融合注意力隐层表示,rt表示重置门,zt表示更新 门,Wg为模型参数,σ是sigmoid函数,[;]表示向量或者矩阵级联操作, ·为按位进行乘积的操作。这里,将公式(1)到公式(5)统称为FutureAtt 函数。
需要注意的是,这里的正向箭头表示源语言序列从左到右解码 (left-to-rightdecoding)的序列隐层状态,反向箭头表示源语言序列从右 到左解码(right-to-leftdecoding)的序列隐层状态。对于左到右解码 (left-to-right decoding)来说,当前时刻之前产生的单词序列即历史信息, 从右到左解码产生的序列即未来信息。
(2)利用融合注意力隐层表示的机制形成点积注意力模型。
(3)对在步骤(2)中获得的点积注意力模型设置线性变换模型,可 以通过线性变换将点积注意力模型的输入映射为多组预定维度的向量。
(4)对在步骤(2)中获得的点积注意力模型设置连接模型,可以通 过连接模型将经过线性变换之后的向量经由点积注意力模型处理后所得 的向量进行连接。
未来信息模型可以具体地通过以下机制来实现:
Figure BDA0001906604430000154
其中,
Figure BDA0001906604430000161
其中,Concat表示级联操作,Wo为模型矩阵参数,h这里取值为16。
上述利用融合注意力隐层表示形成的点积注意力模型、线性变换模型 以及连接模型即构成了未来信息模型。
可选地,可以对上述未来信息模型进一步设置另一线性变换模型,以 对经由连接处理所得的向量进行线性变换。
形成解码器还包括形成第二多头注意力模型,该第二多头注意力模型 的结构和第一多头注意力模型的结构相同,这里不再赘述其形成过程。第 二多头注意力模型可以是通过多头注意力机制实现的多头外部注意力 (multi-head-inter-attention)模型。其中,第一多头注意力模型和未来信 息模型为第二多头注意力模型提供输入。
形成解码器还包括形成前馈神经网络,前馈神经网络与第二多头注意 力模型进行全连接。
可选地,可以对第二多头注意力模型、未来信息模型和前馈神经网络 进行残差连接和层级规范化处理。
S506:通过编码器和解码器形成第一机器翻译模型。
第一机器翻译模型包括通过上述步骤形成的编码器和解码器。
S508:对第一机器翻译模型进行对源语言序列从左至右和从右至左的 解码训练,以形成神经网络机器翻译模型。
具体地,采用极大似然目标函数,使用梯度下降法对第一机器翻译模 型进行参数训练。对第一机器翻译模型进行训练的训练目标函数为平行语 料上翻译句对的对数似然函数之和,表示为:
Figure BDA0001906604430000171
D表示平行句对的集合,模型参数θ可通过随机梯度下降法(SGD)、 Adam或Adadelta等优化方法进行求解。
此外,将上述形成的第一机器翻译模型进行模型训练时,在语料库中, 对于例如中文源语言序列“这是成功的秘诀”,其相应的英文目标语言序 列存在两种形式,一种为正向的“This is the secret of success”,另一种为 反向的“success of the secret isthis”,在训练模型时,在语料中加入从左至 右(l2r)引导符和从右至左(r2l)引导符,使得模型可以对例如中文源语 言序列“这是成功的秘诀”进行“This is the secret ofsuccess”和“success of the secret is this”正反向两个方向进行解码。经过训练后的第一机器翻 译模型具有正反向两个方向的解码能力,从而形成神经网络机器翻译模型。
作为一个实例,形成神经网络机器翻译模型的方法还可以包括在编码 器的输入端设置嵌入层和位置编码层,其中,嵌入层用于对将要输入至编 码器中的源语言序列进行向量变换,以将源语言序列转换成对应的词语向 量,位置编码层用于对源语言序列中的各个词语的位置进行一一编码得到 各词语的位置向量,并将位置向量和词语向量相加,相加所得的向量被输 入到编码器中。
作为一个实例,形成神经网络机器翻译模型的方法还可以包括在解码 器中未来信息模型的输入侧设置嵌入层和位置编码层,其中,嵌入层对将 要输入至未来信息模型中的目标语言序列转换成对应的词语向量,位置编 码层用于对目标语言序列中的各个词语的位置进行一一编码得到各词语 的位置向量,并将位置向量和词语向量相加,相加所得的向量被输入到未 来信息模型中。
作为一个实例,形成神经网络机器翻译模型的方法还可以包括在解码 器的输出侧设置线性变换层和归一化层,其中,线性变换层用于对解码器 的输出结果进行线性变换,归一化层用于对线性变换结果进行归一化处理。
根据发明的实施例,解码器可以包括多个相同的解码层,每个解码层 包括包含第一多头注意力模型的第一子层、包含前馈神经网络的第二子层 以及包含未来信息模型的第三子层。作为一个实例,解码器可以包括6个 相同的解码层,但本发明并不限于此。
根据本发明的实施例,还提供了一种神经网络机器翻译模型。图7示 出了根据本发明实施例的神经网络机器翻译模型的框图。图8示出了根据 本发明实施例的神经网络机器翻译模型的内部构架图,其中,图8左侧部 分为编码层,右侧部分为解码层,N表示模型的层数,层数可以为6层, 每一层包含相同的结构,但本发明并不限于此,模型的层数可以为其他数 量。下面结合图7和图8对根据本发明实施例的神经网络机器翻译模型进 行描述。
如图7所示,根据本发明的实施例,神经网络机器翻译模型7包括: 编码器702和解码器704。
编码器702包括:第一多头注意力模型7022,其由图8左侧编码层中 的多头注意力机制实现;以及与第一多头注意力模型7022连接的前馈神 经网络7024,其由图8左侧编码层中的前馈神经网络实现。其中,第一多 头注意力模型可以是通过多头注意力机制实现的多头内部注意力 (multi-head-intra-attention)模型。
解码器704包括:未来信息模型7042,其由图8右侧解码层中的未来 信息模型实现,其中,该未来信息模型通过上述形成神经网络机器翻译模 型的方法中形成未来信息模型的步骤而形成,该未来信息模型7042接收 当前预测单词之前的已经生成单词的历史信息和当前预测单词之后的未 来可能的单词的未来信息,并对历史信息和未来信息进行处理形成处理结 果;与未来信息模型7042和编码器702中的前馈神经网络7024连接的第 二多头注意力模型7044,其由图8右侧解码层中的多头注意力机制实现, 该第二多头注意力模型7044从前馈神经网络7024和未来信息模型7042 接收输入;以及与第二多头注意力模型7044连接的前馈神经网络7046, 其由图8右侧解码层中的前馈神经网络实现。其中,第二多头注意力模型 可以是通过多头注意力机制实现的多头外部注意力(multi-head-inter-attention)模型。
其中,第一多头注意力模型7022和第二多头注意力模型7044结构相 同。根据本发明的实施例的神经网络机器翻译模型中的第一多头注意力模 型7022、未来信息模型7042和第二多头注意力模型7044可通过图5所示 的根据本发明实施例的形成神经网络机器翻译模型的方法来形成,其具体 结构这里不再赘述。
如图7所示,根据本发明实施例的神经网络机器翻译模型7还可以包 括设置在编码器的输入端的嵌入模型706和位置编码模型708,其分别由 图8左侧编码层输入端处的嵌入层和位置编码层实现。嵌入层和位置编码 层的作用在前文中已有介绍,这里不再赘述。
根据本发明实施例的神经网络机器翻译模型7还可以包括设置在解码 器的输入端的嵌入模型710和位置编码模型712,其分别由图8右侧解码 层输入端处的嵌入层和位置编码层实现。嵌入层和位置编码层的作用在前 文中已有介绍,这里不再赘述。
根据本发明实施例的神经网络机器翻译模型7还可以包括设置在解码 器的输出侧处的线性变换模型714和归一化模型716,其分别由图8右侧 解码层输出处的线性变化层和归一化层实现。线性变化层和归一化层的作 用在前文中已有介绍,这里不再赘述。
根据发明的实施例,编码器可以包括多个相同的编码层,每个编码层 包括包含第一多头注意力模型7022的第一子层和包含前馈神经网络7024 的第二子层。作为一个实例,编码器可以包括6个相同的编码层,但本发 明并不限于此。
根据发明的实施例,解码器可以包括多个相同的解码层,每个解码层 包括包含第二多头注意力模型7044的第一子层、包含前馈神经网络7046 的第二子层以及包含未来信息模型7042的第三子层。作为一个实例,解 码器可以包括6个相同的解码层,但本发明并不限于此。
根据本发明的实施例,提供了一种神经网络机器翻译方法。为便于理 解,下面结合图8,对根据发明实施例的神经网络机器翻译方法进行具体 描述。
如图8所示,在编码器的输入侧接收源语言序列的输入,利用嵌入层 (图8中为输入嵌入)将源语言序列中的各词语通过矩阵变换形成对应的 词语向量,利用位置编码层对源语言序列中的各词语的位置进行编码以形 成相应的位置向量,将上述所得位置向量加入到词语向量中,使得词语向 量具有位置信息,从上述具有位置信息的词语向量获取源语言序列的第一 隐层向量表示。
将所获取的源语言序列的第一隐层向量表示进行矩阵变换,得到源语 言序列相应的原始查询(Q)、键(K)和值(V),将原始Q、K和V输 入到第一多头注意力模型中,由第一多头注意力模型利用多头注意力机制 对Q、K和V进行处理后,得到源语言序列的第二隐层向量表示。
对第二隐层向量表示进行残差连接和层级规范化处理,例如,将第一 隐层向量表示和第二隐层向量相加做归一化处理,以对模型进行优化。
利用前馈神经网络对经过残差连接和层级规范化处理的第二隐层向 量表示进行非线性变换,得到第三隐层向量表示。
对第三隐层向量表示进行残差连接和层级规范化处理,例如,将经过 残差连接和层级规范化处理的第二隐层向量表示和第三隐层向量表示相 加做归一化处理,以进一步对模型进行优化。
对经过残差连接和层级规范化处理的第三隐层向量进行矩阵变换,以 获得源语言序列的经过上述处理之后的处理的K和V。
将上述处理的K和V输入至第二多头注意力模型。
在解码器的输入侧接收相对于从解码器的输出侧输出的目标语言序 列进行了移位的目标语言序列的输入,这里的目标语言序列包括与源语言 序列对应的正向目标语言序列和反相目标语言序列。
图9为根据本发明实施例的以时间顺序示出的解码器的输入示例和输 出示例,其中,(a)表示解码器的输入示例,(b)表示解码器的输出示例。 在图9中,<pad>为占位符,矢量表示为全零,<l2r>和<r2l>分别用来引导 翻译方向从左至右(left-to-rightdecoding)和从右至左(right-to-right decoding),<eos>表示句子结束标志。
例如,以源语言序列为“我爱中国”为例,其在解码器侧输出的 目标语言序列为“Ilove China.”和“.China love I”,如图9的(b)所示。
以第三时刻为例,在解码器的输入侧输入的单词为“I”和“.”,在解 码器的输出侧输出的单词为“love”和“China”,即在解码器侧,在预测 当前单词“love”时,利用了源语言序列的在该解码单词的前一时刻正向 和反向解码输出的目标语言单词。
将在解码器输入侧接收的目标语言序列利用嵌入层(图8中为输出嵌 入)通过矩阵变换形成对应的词语向量,利用位置编码器对所接收的目标 语言序列中的各词语的位置进行编码以形成相应的位置向量,将所得的位 置向量加入到词语向量中,使得词语向量具有位置信息,从具有位置信息 的该词语向量获取目标语言序列的第一隐层表示。
将所获取的目标语言序列的第一隐层表示进行矩阵变换,得到目标语 言序列相应的原始查询(Q)、键(K)和值(V),将原始Q、K和V输 入到未来信息模型中。未来信息模型在前文中已有介绍,这里将不再赘述。
未来信息模型对输入的Q、K和V进行处理,得到目标语言序列的第 二隐层向量表示。
对目标语言序列的第二隐层向量表示进行残差连接和层级规范化处 理,例如,将目标语言序列的第一隐层向量表示和第二隐层向量表示相加 做归一化处理,以对模型进行优化。
对经过残差连接和层级规范化处理的目标语言序列的第二隐层向量 进行矩阵变换,以获得目标语言序列的经过上述处理之后的处理的Q。
将上述处理的Q输入至第二多头注意力模型。
第二多头注意力模型利用多头注意力机制对从解码器输入的源语言 序列的K、V和从未来信息模型输入的目标语言序列的Q进行处理,得到 第四隐层向量表示。
对第四隐层向量表示进行残差连接和层级规范化处理,例如,将来自 未来信息模型的经过残差连接和层级规范化处理的第二隐层向量表示与 第四隐层向量表示相加做归一化处理,以进一步对模型进行优化。
利用前馈神经网络对经过残差连接和层级规范化处理的第四隐层向 量表示进行非线性变换,得到第五隐层向量表示。
对第五隐层向量表示进行残差连接和层级规范化处理,例如,将经过 残差连接和层级规范化处理的第四隐层向量表示和第五隐层向量表示相 加做归一化处理,以进一步对模型进行优化。
将经过残差连接和层级规范化处理的第五隐层向量表示进行线性处 理,并利用Softmax函数计算得到当前单词的预测概率。
生成各单词概率最高的文本序列作为为翻译结果的目标语言序列。
在本文中,前馈神经网络的作用是对模型隐层向量表示进行非线性变 换,其计算方式如下:
FFN(x)=max(0,xW1+b1)W2+b2
这里W1,W2,b1,b2为模型参数。
在根据本发明实施例的神经网络机器翻译方法中,以三种方式使用多 头注意力机制:(i)编码器-解码器注意力层,即图7中的第二多头注意力 模型,其中,输入至第二多头注意力模型的查询Q来自于解码器中利用融 合多头注意力机制形成的未来信息模型,输入至第二多头注意力模型的键 K和值V来自于编码器的输出;(2)编码器层单独使用第一多头注意力模 型,输入至第一多头注意力模型的查询Q、键K和值V都来自于编码器 上一层的输入;(3)解码器层使用未来信息模型,输入至未来信息模型查 询Q、键K和值V都来自于解码器上一层的输入。
实验结果
发明人对根据本发明实施方式的神经网络机器翻译模型进行了实验, 在实验中,从语言数据联盟(Linguistic Data Consortium)发布的中-英训 练数据中抽取200万对齐句对作为中英训练语料,使用机器翻译评测 (NIST MT Evaluation)中从2003年至2006年的所有测试集MT03-MT06 作为开发集和测试集。其中,MT03作为开发集。在对比实验中,使用大 小写不敏感的BLEU-4作为评测指标。
表1给出了本发明与标准深层神经机器翻译系统和统计机器翻译系统 在4组测试数据(MT03、MT04、MT05、MT06)上的表现,future代表 融入未来信息。
Figure BDA0001906604430000241
表1
可以看到,融入未来信息后,本发明在机器自动给出的评价指标 (BLEU)上相比于标准的深层神经机器翻译系统有1.32BLEU值的提高。 除此之外,对测试集的漏翻情况进行了人工评测,结果显示融入未来信息 后,模型的漏翻错误率降低了30.6%,极大地改善了模型漏翻这一严重问 题,提升了模型的翻译质量。
根据本发明的实施例,还提供了一种存储介质,存储介质包括存储的 程序,其中,在程序运行时控制包括存储介质的设备执行上述形成神经网 络机器翻译模型的方法或执行神经网络机器翻译方法。
根据本发明的实施例,还提供了一种处理器,处理器用于运行程序, 其中,程序运行时执行上述形成神经网络机器翻译模型的方法或执行神经 网络机器翻译方法。
根据本发明的实施例,还提供了一种电子设备,包括:一个或多个处 理器、存储器、显示装置、以及一个或多个程序,其中,一个或多个程序 被存储在存储器中,并且被配置为由一个或多个处理器执行,以使电子设 备执行上述形成神经网络机器翻译模型的方法或执行神经网络机器翻译 方法。
此外,本公开包括根据以下项的实施例:
项1.一种形成神经网络机器翻译模型的方法,其特征在于,包括:
形成编码器,所述编码器包括第一多头注意力模型;
形成解码器,所述解码器包括第二多头注意力模型和未来信息模型, 所述未来信息模型表示当前预测单词和已经生成单词的第一注意力隐层 表示和当前预测单词和未来可能的单词的第二注意力隐层表示的融合;
通过所述编码器和所述解码器形成第一机器翻译模型;以及
对所述第一机器翻译模型进行对源语言序列从左至右和从右至左的 解码训练,以形成所述神经网络机器翻译模型,
其中,所述第一多头注意力模型和所述未来信息模型为所述第二多头 注意力模型提供输入。
项2.根项1所述的方法,其特征在于,形成所述编码器包括形成所 述第一多头注意力模型,其中,形成所述第一多头注意力模型包括:
利用点积注意力机制形成点积注意力模型;
对所述点积注意力模型设置线性变换模型,以通过线性变换将所述点 积注意力模型的输入映射为多组预定维度的向量;
对所述点积注意力模型设置连接模型,以将所述向量经由所述点积注 意力模型处理后所得的向量进行连接;以及
通过所述点积注意力模型、所述线性变换模型和所述连接模型形成所 述第一多头注意力模型。
项3.根据项1所述的方法,其特征在于,形成所述解码器包括形成 所述未来信息模型,其中,形成所述未来信息模型包括:
利用点积注意力机制计算当前预测单词和已经生成单词的第一注意 力隐层表示:
Figure BDA0001906604430000261
其中,
Figure BDA0001906604430000262
表示第一注意力隐层 表示,
Figure BDA0001906604430000263
表示当前时刻的隐层状态查询值,
Figure BDA0001906604430000264
表示历史的隐层状态键值,
Figure BDA0001906604430000265
表示历史的隐层状态实值,Attention()为点积注意力机制的数学函数 表示;
利用点积注意力机制计算所述当前预测单词和未来可能的单词的第 二注意力隐层表示:
Figure BDA0001906604430000266
其中,
Figure BDA0001906604430000267
表示第二注意 力隐层表示,
Figure BDA0001906604430000268
表示未来的隐层状态键值,
Figure BDA0001906604430000269
表示未来的隐层状态实值;
将所述第一注意力隐层表示和所述第二注意力隐层表示融合以形成 融合注意力隐层表示;
利用所述融合注意力隐层表示形成点积注意力模型;
对所述点积注意力模型设置线性变换模型,以通过线性变换将所述点 积注意力模型的输入映射为多组预定维度的向量;
对所述点积注意力模型设置连接模型,以将所述向量经由所述点积注 意力模型处理后所得的向量进行连接;以及
通过所述点积注意力模型、所述线性变换模型和所述连接模型形成所 述未来信息模型。
项4.根据项3所述的方法,其特征在于,将所述第一注意力隐层表 示和所述第二注意力隐层表示融合以形成融合注意力隐层表示包括:
利用门限机制,将所述第一注意力隐层表示和所述第二注意力隐层表 示融合为融合注意力隐层表示:
Figure BDA0001906604430000271
Figure BDA0001906604430000272
其中,
Figure BDA0001906604430000273
表示所述融合注意力隐层表示,rt表示重置门,zt表示更新 门,Wg为模型参数,σ是sigmoid函数,[;]表示向量或者矩阵级联操作, ·为按位进行乘积的操作。
项5.根据项1至4中任一项所述的方法,其特征在于,所述第一多 头注意力模型和所述第二多头注意力模型结构相同。
项6.根据项1至4中任一项所述的方法,其特征在于,所述编码器 包括每层均包含所述第一多头注意力模型的多个编码层,所述解码器包括 每层均包含所述第二多头注意力模型和所述未来信息模型的多个解码层。
项7.根据项6所述的方法,其特征在于,所述编码器和所述解码器 的每层还包括前馈神经网络。
项8.一种神经网络机器翻译模型,其特征在于,包括:
编码器,所述编码器包括第一多头注意力模型;以及
解码器,所述解码器包括第二多头注意力模型和未来信息模型,所述 未来信息模型表示当前预测单词和已经生成单词的第一注意力隐层表示 和当前预测单词和未来可能的单词的第二注意力隐层表示的融合,
其中,所述第一多头注意力模型和所述未来信息模型为所述第二多头 注意力模型提供输入,所述神经网络机器翻译模型经过了对源语言序列从 左至右和从右至左的解码训练。
项9.根据项8所述的神经网络机器翻译模型,其特征在于,所述第 一多头注意力模型包括:
点积注意力模型,被配置为利用点积注意力机制形成;
线性变换模型,连接至所述点积注意力模型且被配置为通过线性变换 将所述点积注意力模型的输入映射为多组预定维度的向量;以及
连接模型,连接至所述点积注意力模型且被配置为将所述向量经由所 述点积注意力模型处理后所得的向量进行连接。
项10.根据项8所述的神经网络机器翻译模型,其特征在于,所述 未来信息模型包括:
点积注意力模型;
线性变换模型,连接至所述点积注意力模型且被配置为通过线性变换 将所述点积注意力模型的输入映射为多组预定维度的向量;以及
连接模型,连接至所述点积注意力模型且被配置为将所述向量经由所 述点积注意力模型处理后所得的向量进行连接,
其中,所述点积注意力模型通过以下步骤形成:
利用点积注意力机制计算当前预测单词和已经生成单词的第一注意 力隐层表示:
Figure BDA0001906604430000291
其中,
Figure BDA0001906604430000292
表示当前时刻的隐层状 态查询值,
Figure BDA0001906604430000293
表示历史的隐层状态键值(key),
Figure BDA0001906604430000294
表示历史的隐层状态实 值,Attention()为点积注意力机制的数学函数表示;
利用点积注意力机制计算所述当前预测单词和未来可能的单词的第 二注意力隐层表示:
Figure BDA0001906604430000295
其中,
Figure BDA0001906604430000296
表示未来的隐层 状态键值,
Figure BDA0001906604430000297
表示未来的隐层状态实值;
将所述第一注意力隐层表示和所述第二注意力隐层表示融合以形成 融合注意力隐层表示;以及
利用所述融合注意力隐层表示形成所述点积注意力模型。
项11.根据项10所述的神经网络机器翻译模型,其特征在于,将所述 第一注意力隐层表示和所述第二注意力隐层表示融合以形成融合注意力 隐层表示包括:
利用门限机制,将所述第一注意力隐层表示和所述第二注意力隐层表 示融合为融合注意力隐层表示:
Figure BDA0001906604430000301
Figure BDA0001906604430000302
其中,
Figure BDA0001906604430000303
表示融合注意力隐层表示,rt表示重置门,zt表示更新门, Wg为模型参数,σ是sigmoid函数,[;]表示向量或者矩阵级联操作,·为 按位进行乘积的操作。
项12.根据项8至11中任一项所述的神经网络机器翻译模型,其 特征在于,所述第一多头注意力模型和所述第二多头注意力模型结构相同。
项13.根据项8至11中任一项所述的神经网络机器翻译模型,其 特征在于,所述编码器包括每层均包含所述第一多头注意力模型的多个层, 所述解码器包括每层均包含所述第二多头注意力模型和所述未来信息模 型的多个层。
项14根据项13所述的神经网络机器翻译模型,其特征在于,所述编 码器和所述解码器的每层还包括前馈神经网络。
项15.一种神经网络机器翻译方法,其特征在于,包括:
接收源语言序列,由第一多头注意力模型利用多头注意力机制对所述 源语言序列进行处理,以获得所述源语言序列的隐层向量表示;
对所述源语言序列的隐层向量表示进行矩阵变换,以获得所述源语言 序列的相应键K和值V;
将所述键K和所述值V输入至第二多头注意力模型;
通过未来信息模型获取当前预测单词和已经生成单词的第一注意力 隐层表示和当前预测单词和未来可能的单词的第二注意力隐层表示的融 合注意力隐层向量表示,所述未来信息模型表示当前预测单词和已经生成 单词的第一注意力隐层表示和当前预测单词和未来可能的单词的第二注 意力隐层表示的融合;
根据所述融合注意力隐层向量表示获取目标语言序列的查询Q;
将所述查询Q输入至所述第二多头注意力模型;
由所述第二多头注意力模型根据所述键K、所述值V和所述查询Q 确定目标语言单词为当前预测单词的概率;以及
生成各单词概率最高的文本序列作为为翻译结果的目标语言序列。
项16.一种存储介质,其特征在于,所述存储介质包括存储的程序, 其中,在所述程序运行时控制包括所述存储介质的设备执行项1至7和15 中任意一项所述的方法。
项18.一种处理器,其特征在于,所述处理器用于运行程序,其中, 所述程序运行时执行项1至7中任意一项所述的方法。
项19.一种电子设备,其特征在于,包括:一个或多个处理器、存 储器、显示装置、以及一个或多个程序,其中,所述一个或多个程序被存 储在所述存储器中,并且被配置为由所述一个或多个处理器执行,以使所 述电子设备执行项1至7中任意一项所述的方法。
本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施 例中没有详述的部分,可以参见其他实施例的相关描述。
在本发明所提供的几个实施例中,应该理解到,所揭露的技术内容, 可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的, 例如所述单元或模块的划分,仅仅为一种逻辑功能划分,实际实现时可以 有另外的划分方式,例如多个单元或模块或组件可以结合或者可以集成到 另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的 相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元或模块可以是或者也可以不是物理上 分开的,作为单元或模块显示的部件可以是或者也可以不是物理单元或模 块,即可以位于一个地方,或者也可以分布到多个网络单元或模块上。可 以根据实际的需要选择其中的部分或者全部单元或模块来实现本实施例 方案的目的。
另外,在本发明各个实施例中的各功能单元或模块可以集成在一个处 理单元或模块中,也可以是各个单元或模块单独物理存在,也可以两个或 两个以上单元或模块集成在一个单元或模块中。上述集成的单元或模块既 可以采用硬件的形式实现,也可以采用软件功能单元或模块的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品 销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理 解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技 术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品 存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个 人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM, Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、 移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的 普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进 和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种形成神经网络机器翻译模型的方法,其特征在于,包括:
形成编码器,所述编码器包括第一多头注意力模型;
形成解码器,所述解码器包括第二多头注意力模型和未来信息模型,所述未来信息模型表示当前预测单词和已经生成单词的第一注意力隐层表示和当前预测单词和未来可能的单词的第二注意力隐层表示的融合;
通过所述编码器和所述解码器形成第一机器翻译模型;以及
对所述第一机器翻译模型进行对源语言序列从左至右和从右至左的解码训练,以形成所述神经网络机器翻译模型,
其中,所述第一多头注意力模型和所述未来信息模型为所述第二多头注意力模型提供输入。
2.根据权利要求1所述的方法,其特征在于,形成所述编码器包括形成所述第一多头注意力模型,其中,形成所述第一多头注意力模型包括:
利用点积注意力机制形成点积注意力模型;
对所述点积注意力模型设置线性变换模型,以通过线性变换将所述点积注意力模型的输入映射为多组预定维度的向量;
对所述点积注意力模型设置连接模型,以将所述向量经由所述点积注意力模型处理后所得的向量进行连接;以及
通过所述点积注意力模型、所述线性变换模型和所述连接模型形成所述第一多头注意力模型。
3.根据权利要求1所述的方法,其特征在于,形成所述解码器包括形成所述未来信息模型,其中,形成所述未来信息模型包括:
利用点积注意力机制计算当前预测单词和已经生成单词的第一注意力隐层表示:
Figure FDA0001906604420000021
其中,
Figure FDA0001906604420000022
表示第一注意力隐层表示,
Figure FDA0001906604420000023
表示当前时刻的隐层状态查询值,
Figure FDA0001906604420000024
表示历史的隐层状态键值,
Figure FDA0001906604420000025
表示历史的隐层状态实值,Attention()为点积注意力机制的数学函数表示;
利用点积注意力机制计算所述当前预测单词和未来可能的单词的第二注意力隐层表示:
Figure FDA0001906604420000026
其中,
Figure FDA0001906604420000027
表示第二注意力隐层表示,
Figure FDA0001906604420000028
表示未来的隐层状态键值,
Figure FDA0001906604420000029
表示未来的隐层状态实值;
将所述第一注意力隐层表示和所述第二注意力隐层表示融合以形成融合注意力隐层表示;
利用所述融合注意力隐层表示形成点积注意力模型;
对所述点积注意力模型设置线性变换模型,以通过线性变换将所述点积注意力模型的输入映射为多组预定维度的向量;
对所述点积注意力模型设置连接模型,以将所述向量经由所述点积注意力模型处理后所得的向量进行连接;以及
通过所述点积注意力模型、所述线性变换模型和所述连接模型形成所述未来信息模型。
4.根据权利要求3所述的方法,其特征在于,将所述第一注意力隐层表示和所述第二注意力隐层表示融合以形成融合注意力隐层表示包括:
利用门限机制,将所述第一注意力隐层表示和所述第二注意力隐层表示融合为融合注意力隐层表示:
Figure FDA0001906604420000031
Figure FDA0001906604420000032
其中,
Figure FDA0001906604420000033
表示所述融合注意力隐层表示,rt表示重置门,zt表示更新门,Wg为模型参数,σ是sigmoid函数,[;]表示向量或者矩阵级联操作,·为按位进行乘积的操作。
5.一种神经网络机器翻译模型,其特征在于,包括:
编码器,所述编码器包括第一多头注意力模型;以及
解码器,所述解码器包括第二多头注意力模型和未来信息模型,所述未来信息模型表示当前预测单词和已经生成单词的第一注意力隐层表示和当前预测单词和未来可能的单词的第二注意力隐层表示的融合,
其中,所述第一多头注意力模型和所述未来信息模型为所述第二多头注意力模型提供输入,所述神经网络机器翻译模型经过了对源语言序列从左至右和从右至左的解码训练。
6.根据权利要求5所述的神经网络机器翻译模型,其特征在于,所述第一多头注意力模型包括:
点积注意力模型,被配置为利用点积注意力机制形成;
线性变换模型,连接至所述点积注意力模型且被配置为通过线性变换将所述点积注意力模型的输入映射为多组预定维度的向量;以及
连接模型,连接至所述点积注意力模型且被配置为将所述向量经由所述点积注意力模型处理后所得的向量进行连接。
7.根据权利要求5所述的神经网络机器翻译模型,其特征在于,所述未来信息模型包括:
点积注意力模型;
线性变换模型,连接至所述点积注意力模型且被配置为通过线性变换将所述点积注意力模型的输入映射为多组预定维度的向量;以及
连接模型,连接至所述点积注意力模型且被配置为将所述向量经由所述点积注意力模型处理后所得的向量进行连接,
其中,所述点积注意力模型通过以下步骤形成:
利用点积注意力机制计算当前预测单词和已经生成单词的第一注意力隐层表示:
Figure FDA0001906604420000043
其中,
Figure FDA0001906604420000044
表示当前时刻的隐层状态查询值,
Figure FDA0001906604420000046
表示历史的隐层状态键值(key),
Figure FDA0001906604420000045
表示历史的隐层状态实值,Attention()为点积注意力机制的数学函数表示;
利用点积注意力机制计算所述当前预测单词和未来可能的单词的第二注意力隐层表示:
Figure FDA0001906604420000047
其中,
Figure FDA0001906604420000048
表示未来的隐层状态键值,
Figure FDA0001906604420000049
表示未来的隐层状态实值;
将所述第一注意力隐层表示和所述第二注意力隐层表示融合以形成融合注意力隐层表示;以及
利用所述融合注意力隐层表示形成所述点积注意力模型。
8.根据权利要求7所述的神经网络机器翻译模型,其特征在于,将所述第一注意力隐层表示和所述第二注意力隐层表示融合以形成融合注意力隐层表示包括:
利用门限机制,将所述第一注意力隐层表示和所述第二注意力隐层表示融合为融合注意力隐层表示:
Figure FDA0001906604420000041
Figure FDA0001906604420000042
其中,
Figure FDA0001906604420000051
表示融合注意力隐层表示,rt表示重置门,zt表示更新门,Wg为模型参数,σ是sigmoid函数,[;]表示向量或者矩阵级联操作,·为按位进行乘积的操作。
9.一种神经网络机器翻译方法,其特征在于,包括:
接收源语言序列,由第一多头注意力模型利用多头注意力机制对所述源语言序列进行处理,以获得所述源语言序列的隐层向量表示;
对所述源语言序列的隐层向量表示进行矩阵变换,以获得所述源语言序列的相应键K和值V;
将所述键K和所述值V输入至第二多头注意力模型;
通过未来信息模型获取当前预测单词和已经生成单词的第一注意力隐层表示和当前预测单词和未来可能的单词的第二注意力隐层表示的融合注意力隐层向量表示,所述未来信息模型表示当前预测单词和已经生成单词的第一注意力隐层表示和当前预测单词和未来可能的单词的第二注意力隐层表示的融合;
根据所述融合注意力隐层向量表示获取目标语言序列的查询Q;
将所述查询Q输入至所述第二多头注意力模型;
由所述第二多头注意力模型根据所述键K、所述值V和所述查询Q确定目标语言单词为当前预测单词的概率;以及
生成各单词概率最高的文本序列作为为翻译结果的目标语言序列。
10.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制包括所述存储介质的设备执行权利要求1至4中任意一项所述的方法。
CN201811534845.3A 2018-12-14 2018-12-14 神经网络机器翻译方法、模型及模型形成方法 Pending CN111401081A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811534845.3A CN111401081A (zh) 2018-12-14 2018-12-14 神经网络机器翻译方法、模型及模型形成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811534845.3A CN111401081A (zh) 2018-12-14 2018-12-14 神经网络机器翻译方法、模型及模型形成方法

Publications (1)

Publication Number Publication Date
CN111401081A true CN111401081A (zh) 2020-07-10

Family

ID=71431967

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811534845.3A Pending CN111401081A (zh) 2018-12-14 2018-12-14 神经网络机器翻译方法、模型及模型形成方法

Country Status (1)

Country Link
CN (1) CN111401081A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112257464A (zh) * 2020-11-03 2021-01-22 沈阳雅译网络技术有限公司 一种基于小型智能移动设备的机器翻译解码加速方法
CN112597778A (zh) * 2020-12-14 2021-04-02 华为技术有限公司 一种翻译模型的训练方法、翻译方法以及设备
CN112990434A (zh) * 2021-03-09 2021-06-18 平安科技(深圳)有限公司 机器翻译模型的训练方法及相关装置
CN113033153A (zh) * 2021-04-28 2021-06-25 西南石油大学 基于Transformer模型融合关键信息的神经机器翻译模型
CN113157910A (zh) * 2021-04-28 2021-07-23 北京小米移动软件有限公司 商品描述文本生成方法、装置及存储介质
CN113343011A (zh) * 2021-06-19 2021-09-03 哈尔滨工业大学 一种基于两阶段注意力的多模态信息机器翻译方法
WO2023061107A1 (zh) * 2021-10-13 2023-04-20 北京有竹居网络技术有限公司 基于层预测的语言翻译的方法、设备、装置和介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112257464A (zh) * 2020-11-03 2021-01-22 沈阳雅译网络技术有限公司 一种基于小型智能移动设备的机器翻译解码加速方法
CN112257464B (zh) * 2020-11-03 2023-08-22 沈阳雅译网络技术有限公司 一种基于小型智能移动设备的机器翻译解码加速方法
CN112597778A (zh) * 2020-12-14 2021-04-02 华为技术有限公司 一种翻译模型的训练方法、翻译方法以及设备
CN112990434A (zh) * 2021-03-09 2021-06-18 平安科技(深圳)有限公司 机器翻译模型的训练方法及相关装置
CN112990434B (zh) * 2021-03-09 2023-06-20 平安科技(深圳)有限公司 机器翻译模型的训练方法及相关装置
CN113033153A (zh) * 2021-04-28 2021-06-25 西南石油大学 基于Transformer模型融合关键信息的神经机器翻译模型
CN113157910A (zh) * 2021-04-28 2021-07-23 北京小米移动软件有限公司 商品描述文本生成方法、装置及存储介质
CN113157910B (zh) * 2021-04-28 2024-05-10 北京小米移动软件有限公司 商品描述文本生成方法、装置及存储介质
CN113343011A (zh) * 2021-06-19 2021-09-03 哈尔滨工业大学 一种基于两阶段注意力的多模态信息机器翻译方法
WO2023061107A1 (zh) * 2021-10-13 2023-04-20 北京有竹居网络技术有限公司 基于层预测的语言翻译的方法、设备、装置和介质

Similar Documents

Publication Publication Date Title
CN111401081A (zh) 神经网络机器翻译方法、模型及模型形成方法
CN110534087B (zh) 一种文本韵律层级结构预测方法、装置、设备及存储介质
CN109543180B (zh) 一种基于注意力机制的文本情感分析方法
CN106502985B (zh) 一种用于生成标题的神经网络建模方法及装置
CN111460807B (zh) 序列标注方法、装置、计算机设备和存储介质
US20180357225A1 (en) Method for generating chatting data based on artificial intelligence, computer device and computer-readable storage medium
CN110457480B (zh) 基于交互式注意力机制的细粒度情感分类模型的构建方法
CN109522403B (zh) 一种基于融合编码的摘要文本生成方法
CN109661664B (zh) 一种信息处理的方法及相关装置
CN108153913B (zh) 回复信息生成模型的训练方法、回复信息生成方法及装置
CN110326002B (zh) 使用在线注意的序列处理
Zhou et al. Linguistic steganography based on adaptive probability distribution
CN111401079A (zh) 神经网络机器翻译模型的训练方法、装置及存储介质
CN110032638B (zh) 一种基于编码器-解码器的生成式摘要提取方法
CN113987169A (zh) 基于语义块的文本摘要生成方法、装置、设备及存储介质
CN111651589A (zh) 一种针对长文档的两阶段文本摘要生成方法
CN110569505A (zh) 一种文本输入方法及装置
CN113919319B (zh) 基于动作场景强化的脚本事件预测方法
CN110263304B (zh) 语句编码方法、语句解码方法、装置、存储介质及设备
CN110598222A (zh) 语言处理方法及装置、语言处理系统的训练方法及装置
Gao et al. Generating natural adversarial examples with universal perturbations for text classification
CN113240115A (zh) 一种生成人脸变化图像模型的训练方法及相关装置
CN113987129A (zh) 基于变分自动编码器的数字媒体保护文本隐写方法
CN116050425A (zh) 建立预训练语言模型的方法、文本预测方法及装置
Yi et al. Exploiting language model for efficient linguistic steganalysis

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination