CN115017924B - 跨语际语言翻译的神经机器翻译模型构建及其翻译方法 - Google Patents
跨语际语言翻译的神经机器翻译模型构建及其翻译方法 Download PDFInfo
- Publication number
- CN115017924B CN115017924B CN202210808791.5A CN202210808791A CN115017924B CN 115017924 B CN115017924 B CN 115017924B CN 202210808791 A CN202210808791 A CN 202210808791A CN 115017924 B CN115017924 B CN 115017924B
- Authority
- CN
- China
- Prior art keywords
- translation
- text
- word
- translated
- corpus
- 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.)
- Active
Links
- 238000013519 translation Methods 0.000 title claims abstract description 251
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000001537 neural effect Effects 0.000 title claims abstract description 25
- 238000010276 construction Methods 0.000 title abstract description 6
- 239000013598 vector Substances 0.000 claims abstract description 77
- 238000012549 training Methods 0.000 claims abstract description 35
- 238000012512 characterization method Methods 0.000 claims abstract description 30
- 238000010845 search algorithm Methods 0.000 claims abstract description 5
- 239000011159 matrix material Substances 0.000 claims description 90
- 238000004364 calculation method Methods 0.000 claims description 47
- 238000013507 mapping Methods 0.000 claims description 28
- 238000013528 artificial neural network Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 19
- 230000004927 fusion Effects 0.000 claims description 16
- 230000007246 mechanism Effects 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 9
- 230000014509 gene expression Effects 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 3
- 238000009795 derivation Methods 0.000 claims description 3
- 238000002360 preparation method Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 230000001131 transforming effect Effects 0.000 claims description 3
- 230000017105 transposition Effects 0.000 claims description 3
- 230000014616 translation Effects 0.000 abstract 13
- 230000008569 process Effects 0.000 description 7
- 125000004122 cyclic group Chemical group 0.000 description 6
- 241000282320 Panthera leo Species 0.000 description 5
- 238000003062 neural network model Methods 0.000 description 5
- 230000011218 segmentation Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 3
- 230000004888 barrier function Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007858 starting material Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及属于机器翻译领域,提供了跨语际语言翻译的神经机器翻译模型构建及其翻译方法,适用于各类跨语际语言翻译。在训练时,基于训练子集的源语言语料进行编码,构建融合其上下文依赖关系的文本向量,然后计算得其文本表征;然后,针对该子集逐词进行解码,在每一步,首先融合历次译文文本和源文本获得混合表征,然后基于此进行焦点位置计算,获取当前焦点位置的翻译候选词;通过不同子集,在达到一定的步数后,根据候选词和真值的误差进行迭代训练。翻译方法,同样逐词进行翻译,在每一个翻译步,生成当前步基于焦点位置的翻译候选表示,并利用启发式搜索算法,选择其中全局概率值最大的候选文本作为当前步输出的译文文本,直至翻译完成。
Description
技术领域
本发明属于机器翻译领域,具体涉及跨语际语言翻译的神经机器翻译模型构建及其翻译方法。
背景技术
语言文字是人类交流的重要途径,但是各个国家、地区和民族的语言差异造成了信息交流方面巨大的障碍,翻译是打破这个障碍最实用的途径,尤其是在经济全球化与互联网文化飞速发展的今天必不可少的工作。然而人工翻译需要翻译人员花费大量时间来学习翻译知识、语言背景,甚至文化环境,耗时耗力。机器翻译又称自动翻译,是指利用计算机将源语言翻译成目标语言的过程,对其的研究可追溯到20世纪40年代。到今天,利用机器进行语言翻译的理论和技术,在学术界和工业界的不懈努力下不断更新和成熟,主流方法从基于统计的器翻译逐步过渡到基于深度神经网络的机器翻译,简称为神经机器翻译。
神经机器翻译是基于数据驱动的翻译方法,却又区别于统计机器翻译。它把自然语言的翻译看作是学习问题,使用神经网络将源语言和目标语言文本映射到高维隐空间中进行自适应的语义转换训练,直至模型训练拟合。翻译时直接使用隐空间的映射参数对源语言文本进行转换生成译文。而统计机器翻译方法用数学模型对译文建模,利用具备一定规模的双语平行语料库训练这个模型和参数以获取语料中的翻译规则,最后利用翻译规则实现对源语言文本的翻译。两种翻译方法都具有语言无关性,只要提供平行语料库就能训练出对应的翻译模型,无需对翻译方法做根本性的修改。但神经机器翻译由于其灵活性,已成为目前最为主流的翻译方法。
目前,神经机器翻译已取得了一些应用和进展,有比较多基于深度神经网络实现的开源软件和工具包,其翻译效果达到了一定水平。如申请号为CN201810489333.3,名为一种基于分块机制的机器翻译方法的发明专利申请就公开了一种基于分块机制的神经机器翻译模型,以对文本进行分块划分后再进行机器翻译。其是基于深度循环神经网络构建的机器翻译模型,利用循环神经网络对序列信息的特殊建模方法获取文本词语的前后依赖关系,随后对其进行分块划分以实现准确度高的机器翻译模型。
神经机器翻译模型需要从大规模双语语料库中学习隐空间的映射关系,因此翻译质量受到语料库规模和语料质量的制约。理论上来说,只要数据质量足够好的双语语料库,神经机器翻译系统就能够获得高水平的翻译效果。然而实际上,在面对现实场景时存在诸多问题,一方面,面向跨语际语言翻译时,需要神经网络模型具备强大的上下文建模能力,才能应对跨语际语言因语法、句法结构上的巨大的区别产生的词语依赖建模问题;另一方面,机器翻译的具体应用中多见面向轻量设备的终端,例如在手机等设备,这些终端的存储空间和运算性能及其有限,只能支持训练好的模型参数直接用于翻译。
为了解决词语依赖建模问题,之前神经机器翻译多采用循环神经网络进行建模。循环神经网络是序列结构,源语言文本按序串行输入至网络进行逐词映射,同时前一词语的隐空间特征也会作为后一词语的部分输入帮助计算,从而建立词语间的依赖关系。循环神经网络的这种特性使得词语建模时每刻都能考虑到语言的上下文环境,是非常符合语言特性的,但也正是因此,循环神经网络对算力和时间都有较高的需求,尤其是面向长文本时。并行的注意力模型缓解了时耗的问题,该机制无需模型按序串行输入,直接对词语进行基于注意力机制的并行建模,但却产生了新的问题:由于缺乏了序列特征信息,词语间的隐空间向量非常的类似,且重构的源文本语义信息一经产生就不会再随着上下文信息更改,无法提供足够的区分信息用于预测不同时间步时的解码信息,造成模型在面对跨语际翻译时的泛化能力较弱。基于此,当前为解决深度神经网络模型在跨语际机器翻译上尚面临以下关键问题:
1.如何在保证并行模型计算时间优势上进一步加强词语间的序列关系,以提升并行模型中词语的上下文依赖;
2.如何实现基于目标文本翻译时序的动态语义信息调整,增强词语隐空间向量的区分性,以保证翻译时目标文本能更准确的定位到源文本对应语义信息附近。
发明内容
为解决现有机器翻译在词语序列信息建模上的缺失和语义信息区分度不高导致的翻译混淆问题,本发明提供一种跨语际语言翻译的神经机器翻译模型构建及其翻译方法旨在提高机器翻译模型在面对跨语际语言翻译上的泛化能力,提升机器翻译模型的整体性能。
本发明解决上述技术问题,采用的技术方案是:跨语际语言翻译的神经机器翻译模型构建方法,包括以下步骤:
步骤1、准备:
选择语料数据,进行预处理,构建训练集;所述训练集由子集构成,所述子集为以句为单位,包括对应的源文本语料和目标文本语料以及目标翻译真值;初始化模型的词汇表参数矩阵;初始化待翻译词语,并基于待翻译词语初始化译文文本;
步骤2、输入训练集的任意一个子集;
步骤3、编码:
基于词汇表参数矩阵对输入子集中的源文本语料进行映射变换,获得其各词语的词向量;基于源文本语料的词向量,构建融合上下文依赖关系的文本向量;采用注意力机制,对文本向量进行计算,获得源文本语料的文本表征;
步骤4、解码:
步骤41、基于词汇表参数矩阵对输入的译文文本进行映射变换,获得其各词语的词向量,通过对译文文本的词向量的拼接,构建该译文文本的融合表示;
步骤42、对当前译文文本的融合表示和源文本语料的文本表征进行融合,获得融合当前译文文本的混合表征矩阵;
步骤43、基于混合表征矩阵,计算当前待翻译词语在源文本语料中的焦点位置,并基于焦点位置计算源文本语料中各词语对该待翻译词语的贡献概率;基于贡献概率和混合表征矩阵,得到该待翻译词语的翻译候选表示;
步骤44、判定是否完成该子集中目标文本语料的解码,若是,则进入步骤5;否则,将步骤43中的当前待翻译词语在目标文本语料中顺序的下一个词语作为新的待翻译词语,将目标文本语料中在新的待翻译词语之前的所有词语构成的文本作为新的译文文本,并将新的待翻译词语和新的译文文本作为输入,返回步骤41;
步骤5、对目标文本语料各词语的翻译候选表示分别进行映射计算,并取概率值最大的源文本语料词语作为其翻译候选词;
步骤6、判定是否达到预设条件,若是,则进入步骤7,否则返回步骤2;所述预设条件为获得的翻译候选词的词语数量或子集数量;
步骤7、基于所获得的目标文本语料中的词语的翻译候选词及其目标翻译真值,进行交叉熵损失函数计算,基于损失函数对模型进行训练,更新参数,完成本轮训练;
步骤8、判定是否达到预设训练轮数或预设训练目标,若是,则完成训练,否则返回步骤2。
进一步的,步骤1中,遍历语料数据,形成源语言词汇表和目标语言词汇表,并对词汇表的词语进行编号,随机生成可跟随模型学习的词汇表参数矩阵;
步骤3中,对输入子集中的源文本语料进行遍历,根据其词语的编号查询对应词汇表参数矩阵中对应的词语向量作为该词语的词向量;
步骤4中,对译文文本进行遍历,根据其词语的编号查询对应词汇表参数矩阵中对应的词语向量作为该词语的词向量。
进一步的,步骤3,基于源文本语料的词向量,构建融合上下文依赖关系的文本向量;采用注意力机制,对文本向量进行计算,获得源文本语料的文本表征,包括如下步骤:
步骤31、通过对源文本语料的词向量的正序和逆序拼接,构建该源文本语料的正序和逆序的源文本初始语义矩阵;
步骤32、对正序和逆序的源文本初始语义矩阵进行融合,获取融合源文本语料中上下文依赖关系的源文本语义矩阵;
步骤33、基于源文本语义矩阵进行线性映射得到文本向量,对文本向量进行本层的注意力计算;
步骤34、判定是否达到设定的编码循环层数,若是,则将其输出作为文本表征;否则,将步骤33获得的隐藏层输出向量作为源文本语料新的词向量,并返回步骤31。
具体的,步骤31中,采用如下公式,通过对源文本语料的词向量的正序和逆序拼接,构建该源文本语料的正序和逆序的源文本初始语义矩阵:
其中,t表示词语数量,t′表示词语在源文本语料中所处的位次;ht′表示多层注意力计算中前一层的隐藏层输出向量,初始为词向量;W1、b1、W2、b2均为可学习权值;箭头则表示正序和逆序,ReLU为激活函数。
具体的,步骤32中,采用GSN门控状态网络对正序和逆序的源文本初始语义矩阵进行融合,获取融合源文本语料中上下文依赖关系的源文本语义矩阵,计算公式如下:
其中,表示源文本语义矩阵,GSN(·)表示采用门控网络层进行计算,S代表H代表/>符号“;”表示拼接操作,fg和ig代表门控符号;
其计算方式为:
其中,符号“;”表示拼接操作;Wf1、Wi1、bf1、bi1均为可学习权值。
具体的,步骤33中,基于源文本语义矩阵进行映射得到文本向量,对文本向量进行本层的注意力计算,包括如下步骤:
步骤331、采用三种参数分别对源文本语义矩阵进行映射计算,得到基于三种参数的文本向量和/>
步骤332、按如下公式进行注意力计算:
其中,代表矩阵乘法。
具体的,步骤41中,采用如下公式,对译文文本的词向量的拼接,构建该译文文本的融合表示:
oj=ReLU(o[1,2,...,j-1]W3+b3)W4+b4
其中,oj表示当前译文文本的融合表示;o[1,2,...,j-1]表示由当前待翻译词语的前序各已解码词语对应的融合表示所拼接构成的矩阵;W3、W4、b3、b4均为可学习权值。
最优的,步骤42中,采用如下公式,对当前译文文本的融合表示和源文本语料的文本表征进行融合,获得融合当前译文文本的混合表征矩阵K:
K=GSN(oj,Vtop)=fk⊙Vtop+ik⊙oj
其中,GSN(·)表示采用门控网络层进行计算,Vtop表示文本表征,fk和ik代表门控符号;
其计算方式如下:
其中,符号“;”表示拼接操作;Wf2、Wi2、bf2、bi2均为可学习权值。
具体的,步骤43中,基于混合表征矩阵,计算当前待翻译词语在源文本语料中的焦点位置,并基于焦点位置计算源文本语料中各词语对该待翻译词语的贡献概率;基于贡献概率和混合表征矩阵,得到该待翻译词语的翻译候选表示,包括如下步骤:
步骤431、按如下公式计算焦点位置Cp:
Cp=argmax(ojKT)
其中,Cp表示当前待翻译词语与混合表征矩阵K,按投影计算的最大值所在位置;T代表矩阵转置;
步骤432:根据焦点位置Cp计算源文本语料中各词语对该待翻译词语的贡献概率,计算方式如下:
其中,α表示源文本语料中各词语对该待翻译词语的贡献概率矩阵;Cp表示当前待翻译词语对应的焦点位置Cp;P=[1,2,...,m]表示源文本语料中所有词语的位置的序列,σ为超参数;
步骤433:将贡献概率矩阵α和混合表征矩阵K相乘,得到待翻译词语的翻译候选表示zj:
其中,表示矩阵乘法。
具体的,步骤5中,采用两层前馈神经网络和softmax函数,对目标文本语料各词语的翻译候选表示分别进行映射计算,并取概率值最大的源文本语料词语作为其翻译候选词,计算方式如下:
output=softmax(max(0,zjV1+bv1)V2+bv2)
其中,zj表示翻译候选表示,V1、V2、bv1、bv2均为可学习权值。
具体的,步骤7中,交叉熵损失函数计算公式如下:
其中,yj表示目标翻译真值,N表示获得的翻译候选词的词语数量;θ表示损失函数的权重参数,θ的更新方式如下:
其中,中为更新后的权重参数,Δ为求偏导运算,η为学习率。
本发明还提供一种跨语际语言翻译的神经机器翻译方法,其依据上述任意一项所述的跨语际语言翻译的神经机器翻译模型构建方法,构建翻译模型进行跨语际语言翻译,包括如下步骤:
步骤1、对待翻译文本进行预处理,并作为源文本语料,并基于翻译模型对其进行编码,获取其文本表征;初始化目标词,并基于初始化目标词初始化译文文本;
步骤2、根据输入的译文文本和目标词,基于翻译模型对其进行解码,获取当前翻译步的翻译候选表示;
步骤3、根据解码输出的翻译候选表示,进行词表映射;
步骤4、根据预设条件判定翻译是否完成,若是,则完成翻译,否则,进行步骤5;所述预设条件为翻译候选表示表示结束或达到预设的翻译步数阈值;
步骤5、利用启发式搜索算法,根据更新后的词表映射,从词汇表中查找概率值较大的词语构成翻译扩展集,结合译文文本生成候选文本集,选择其中全局概率值最大的候选文本作为当前翻译步输出的译文文本,将当前翻译步选择词语作为当前翻译步输出的目标词,然后返回步骤2。
本发明的有益效果在于:翻译模型每时间步翻译的所需数据是前序译文文本的语义和源文本语料文本语义融合而成的语义。该语义考虑了译文文本的语境并和源文相结合,实现了语义跟随上下文动态计算。由此训练并得到的成熟的深度神经网络模型能够适用于解决由语法结构的区别带来的跨语际语言翻译问题。显著提高了语法结构无法对齐情况下的句子翻译准确率,提升了深度神经网络在机器翻译上的泛化能力。
进一步的,其通过门控状态网络能在并行神经网络模型中实现状态信息的按序流转,实现了串行神经网络和并行神经网络的结合,进一步建模了词语间上下文依赖关系,能更好的应用于跨语际语言翻译场景。
附图说明
图1为本发明语料的预处理过程图;
图2为本发明翻译模型的结构图;
图3为本发明翻译模型的解码过程图;
图4为本发明采用本发明翻译模型进行翻译的过程图。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。为了本技术领域的人员更好的理解本发明,下面结合附图和以下实施例对本发明作进一步详细描述。
实施例1
本例提供一种跨语际语言翻译的神经机器翻译模型构建方法,其翻译模型的结构如图2所示,包括以下步骤:
步骤1、准备,包括构建训练集和初始化。
其中构建训练集,包括:选择语料数据,进行预处理,构建训练集。
上述的预处理,主要是针对双语预料进行处理以满足模型处理的要求,如图1所示。首先的,对于没有自然分词的语言,比如汉语,需要利用分词工具进行分词,比如:将句子“从前在森林里住着一只狮子”进行分词,得到分词后的句子“从前|在|森林|里|住着|一只|狮子”,分词工具可以是现有的任意工具,比如中文分词工具jieba、Hanlp等;其次,由于短句翻译往往能得到更好的结果,在跨域际中由于语法结构的较大区别,因此,需要对分词后的语料库中每个句子,按设定阈值长度进行过滤,在本实施例中,阈值为60个词语,也即将超过60个词语的长句的60个之后的后续内容进行切割并丢弃,或直接舍弃掉超过阈值的长句;其三,对过滤后得到的语料库中的句子,进行编码转换能使得语料库更为规范统一,包括但不限于将全角字符转换为半角字符。
上述训练集也即用于模型训练的语料集,其由子集构成,所述子集为以句为单位,包括对应的源文本语料和目标文本语料以及目标翻译真值。所述目标翻译真值也即用于损失函数计算的目标真值。
所述初始化,包括:初始化模型的词汇表参数矩阵;初始化待翻译词语,并基于待翻译词语初始化译文文本。
在本实施例中,通过遍历语料数据,形成源语言词汇表和目标语言词汇表,并对词汇表的词语进行编号,随机生成可跟随模型学习的词汇表参数矩阵。上述编号可以采用任意的编号规则,在本实施例中,采用词语的出现频次进行编号,若发生词语出现频次相同的情况,则由词语出现的先后顺序进行排序。
在本实施例中,采用字符“<s>”初始化待翻译词语,并基于待翻译词语初始化译文文本,所述字符的意义在于作为起始符通知模型翻译开始,其也可以是其他的指定字符。
步骤2、输入训练集的任意一个子集。
步骤3、编码:基于词汇表参数矩阵对输入子集中的源文本语料进行映射变换,获得其各词语的词向量;基于源文本语料的词向量,构建融合上下文依赖关系的文本向量;采用注意力机制,对文本向量进行计算,获得源文本语料的文本表征。
其中,针对词向量,在本实施例中,通过对输入子集中的源文本语料进行遍历,根据其词语的编号查询对应词汇表参数矩阵中对应的词语向量作为该词语的词向量。
进一步的讲,本步骤基于源文本语料的词向量,构建融合上下文依赖关系的文本向量;采用注意力机制,对文本向量进行计算,获得源文本语料的文本表征,包括:
步骤31、通过对源文本语料的词向量的正序和逆序拼接,构建该源文本语料的正序和逆序的源文本初始语义矩阵;
步骤32、对正序和逆序的源文本初始语义矩阵进行融合,获取融合源文本语料中上下文依赖关系的源文本语义矩阵;
步骤33、基于源文本语义矩阵进行线性映射得到文本向量,对文本向量进行本层的注意力计算;
步骤34、判定是否达到设定的编码循环层数,若是,则将其输出作为文本表征;否则,将步骤33获得的隐藏层输出向量作为源文本语料新的词向量,并返回步骤31。在本实施例中,采用6层的SAN注意力网络,也即编码循环层数为6。
进一步的,在本实施例中,步骤31中,采用如下公式,通过对源文本语料的词向量的正序和逆序拼接,构建该源文本语料的正序和逆序的源文本初始语义矩阵:
其中,t表示词语数量,t′表示词语在源文本语料中所处的位次;ht′表示多层注意力计算中前一层的隐藏层输出向量,初始为词向量;W1、b1、W2、b2均为可学习权值;箭头则表示正序和逆序,ReLU为激活函数。
步骤32中,最优的,采用GSN门控状态网络对正序和逆序的源文本初始语义矩阵进行融合,获取融合源文本语料中上下文依赖关系的源文本语义矩阵,计算公式如下:
其中,表示源文本语义矩阵,GSN(·)表示采用门控网络层进行计算,S代表H代表/>符号“;”表示拼接操作,fg和ig代表门控符号;
其计算方式为:
其中,符号“;”表示拼接操作;Wf1、Wi1、bf1、bi1均为可学习权值。
也即针对注意力机制每一层的输入,本例创新的通过正序和逆序拼接,构建两组源文本初始语义矩阵,并引入门控状态网络对其进行融合,以获取上下文的依赖关系。当然,除了门控之外也可以采用其他的融合手段,比如直接相加、直接拼接、或者引入其他的神经网络层。
通过门控的引入,本例在并行神经网络模型中实现状态信息的按序流转,实现了串行神经网络和并行神经网络的结合,建模了词语间上下文依赖关系,能更好的应用于跨语际语言翻译场景。
步骤33中,则基于源文本语义矩阵进行映射得到文本向量,对文本向量进行本层的注意力计算,包括如下步骤:
步骤331、采用三种参数分别对源文本语义矩阵进行映射计算,得到基于三种参数的文本向量和/>
步骤332、按如下公式进行注意力计算:
其中,代表矩阵乘法。
步骤4、解码,如图3所示,包括如下步骤:
步骤41、基于词汇表参数矩阵对输入的译文文本进行映射变换,获得其各词语的词向量,通过对译文文本的词向量的拼接,构建该译文文本的融合表示;
步骤42、对当前译文文本的融合表示和源文本语料的文本表征进行融合,获得融合当前译文文本的混合表征矩阵;
步骤43、基于混合表征矩阵,计算当前待翻译词语在源文本语料中的焦点位置,并基于焦点位置计算源文本语料中各词语对该待翻译词语的贡献概率;基于贡献概率和混合表征矩阵,得到该待翻译词语的翻译候选表示;
步骤44、判定是否完成该子集中目标文本语料的解码,若是,则进入步骤5;否则,将步骤43中的当前待翻译词语在目标文本语料中顺序的下一个词语作为新的待翻译词语,将目标文本语料中在新的待翻译词语之前的所有词语构成的文本作为新的译文文本,并将新的待翻译词语和新的译文文本作为输入,返回步骤41。
具体的,在本实施例中,步骤41中,采用如下公式,对译文文本的词向量的拼接,构建该译文文本的融合表示:
oj=ReLU(o[1,2,...,j-1]W3+b3)W4+b4
其中,oj表示当前译文文本的融合表示;o[1,2,...,j-1]表示由当前待翻译词语的前序各已解码词语对应的融合表示所拼接构成的矩阵;W3、W4、b3、b4均为可学习权值。
步骤42中,采用如下公式,对当前译文文本的融合表示和源文本语料的文本表征进行融合,获得融合当前译文文本的混合表征矩阵K:
K=GSN(oj,Vtop)=fk⊙Vtop+ik⊙oj
其中,GSN(·)表示采用门控网络层进行计算,Vtop表示文本表征,fk和ik代表门控符号;
其计算方式如下:
其中,符号“;”表示拼接操作;Wf2、Wi2、bf2、bi2均为可学习权值。
步骤43中,基于混合表征矩阵,计算当前待翻译词语在源文本语料中的焦点位置,并基于焦点位置计算源文本语料中各词语对该待翻译词语的贡献概率;基于贡献概率和混合表征矩阵,得到该待翻译词语的翻译候选表示,包括如下步骤:
步骤431、按如下公式计算焦点位置Cp:
Cp=argmax(ojKT)
其中,Cp表示当前待翻译词语与混合表征矩阵K,按投影计算的最大值所在位置;T代表矩阵转置;
步骤432:根据焦点位置Cp计算源文本语料中各词语对该待翻译词语的贡献概率,计算方式如下:
其中,α表示源文本语料中各词语对该待翻译词语的贡献概率矩阵;Cp表示当前待翻译词语对应的焦点位置Cp;P=[1,2,...,m]表示源文本语料中所有词语的位置的序列,σ为超参数;
步骤433:将贡献概率矩阵α和混合表征矩阵K相乘,得到待翻译词语的翻译候选表示zj:
其中,表示矩阵乘法。
通俗的讲,本发明的解码过程:首先,对当前译文文本表示和当前译文文本前序的译文文本表示进行融合,然后,进一步将其与源文本语料的文本表征进行融合,得到全新的融合了各翻译步译文文本及源文本的信息的动态的重构语义矩阵;接着,根据重构语义矩阵,通过计算当前待翻译词语对应源文本所在的焦点语义位置所在,获得基于焦点语义的源文词语贡献概率,生成基于焦点语义的翻译候选表示。
步骤5、对目标文本语料各词语的翻译候选表示分别进行映射计算,并取概率值最大的源文本语料词语作为其翻译候选词。
具体的,在本实施例中,采用两层前馈神经网络和softmax函数,对目标文本语料各词语的翻译候选表示分别进行映射计算,并取概率值最大的源文本语料词语作为其翻译候选词,计算方式如下:
output=softmax(max(0,zjV1+bv1)V2+bv2)
其中,zj表示翻译候选表示,V1、V2、bv1、bv2均为可学习权值。
步骤6、判定是否达到预设条件,若是,则进入步骤7,否则返回步骤2;所述预设条件为获得的翻译候选词的词语数量或子集数量;
步骤7、基于所获得的目标文本语料中的词语的翻译候选词及其目标翻译真值,进行交叉熵损失函数计算,基于损失函数对模型进行训练,更新参数,完成本轮训练。
具体的,本实施例中,交叉熵损失函数计算公式如下:
其中,yj表示目标翻译真值,N表示获得的翻译候选词的词语数量;θ表示损失函数的权重参数,θ的更新方式如下:
其中,中为更新后的权重参数,Δ为求偏导运算,η为学习率。
步骤8、判定是否达到预设训练轮数或预设训练目标,若是,则完成训练,否则返回步骤2。所述预设训练目标,可以是通过构建测试集,对模型进行测试,本设定满足要求的测试成绩。
实施例2
本例基于实施例1提供的跨语际语言翻译的神经机器翻译模型,提供一种跨语际语言翻译的神经机器翻译模型构建方法,如图4所示,包括如下步骤:
步骤1、对待翻译文本进行预处理,并作为源文本语料,并基于翻译模型对其进行编码,获取其文本表征;并初始化译文文本。上述的预处理与训练过程预处理相同,针对长句,可以通过人工断句的方式分解为符合要求的短句。初始化译文文本也即插入指定的起始符字符。
步骤2、根据输入的译文文本,基于翻译模型对其进行解码:根据历次的译文文本及源文本语料,计算并获得混合表征矩阵,并确定当前翻译步对应源文本语料所在的焦点语义位置,并根据该位置上下文信息计算源文本语料各词语的贡献概率,使用贡献概率和混合表征矩阵,生成当前翻译步基于焦点语义位置的翻译候选表示。
步骤3、根据解码输出的翻译候选表示,进行词表映射。
步骤4、根据预设条件判定翻译是否完成,若是,则完成翻译,否则,进行步骤5;所述预设条件为翻译候选表示表示结束或达到预设的翻译步数阈值。其中,所述翻译候选表示表示结束,也即模型结合译文文本和源文本判断翻译完成,并输出指定的结束符,比如<eos>,表示完成;达到预设的翻译步数阈值,比如60步,则终止,并认为本次翻译失败,可能需要对模型进行进一步的训练,或者对待翻译文本进行一定的人工干预。
步骤5、利用启发式搜索算法,根据更新后的词表映射,从词汇表中查找概率值较大的词语构成翻译扩展集,结合译文文本生成候选文本集,选择其中全局概率值最大的候选文本作为当前翻译步输出的译文文本,然后返回步骤2。
举例来说,需要将中文句子“从前在森林里住着一只狮子”翻译为英文,其步骤包括:
首先,执行数据预处理步骤,得到源文本语料“从前|在|森林|里|住着|一只|狮子”;
然后,将源文本语料作为模型的输入,得到重构后的源文本语义矩阵;译文文本首先输入特殊字符“<s>”表示解码开始;通过对输入字符进行计算,生成混合表征矩阵;计算字符“<s>”对应的焦点语义位置为“从前”,并根据该位置上下文信息计算各源文本词语的贡献概率,使用该贡献概率和混合表征矩阵得到该焦点语义位置的翻译候选表示。
再然后,执行启发式搜索算法,根据翻译候选表示计算全局概率值最高的词语组合,生成当前翻译步输出的译文文本“Once”。
之后,将生成的译文文本作为新的翻译步的输入,返回模型迭代,直到翻译结束,最终生成译文为“Once there lived a lion in the forest”。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何属于本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (5)
1.跨语际语言翻译的神经机器翻译模型构建方法,其特征在于,包括以下步骤:
步骤1、准备:
选择语料数据,进行预处理,构建训练集;所述训练集由子集构成,所述子集为以句为单位,包括对应的源文本语料和目标文本语料以及目标翻译真值;初始化模型的词汇表参数矩阵;初始化待翻译词语,并基于待翻译词语初始化译文文本;
步骤2、输入训练集的任意一个子集;
步骤3、编码:
基于词汇表参数矩阵对输入子集中的源文本语料进行映射变换,获得其各词语的词向量;基于源文本语料的词向量,构建融合上下文依赖关系的文本向量;采用注意力机制,对文本向量进行计算,获得源文本语料的文本表征;
步骤4、解码:
步骤41、基于词汇表参数矩阵对输入的译文文本进行映射变换,获得其各词语的词向量,通过对译文文本的词向量的拼接,构建该译文文本的融合表示;
步骤42、对当前译文文本的融合表示和源文本语料的文本表征进行融合,获得融合当前译文文本的混合表征矩阵;
步骤43、基于混合表征矩阵,计算当前待翻译词语在源文本语料中的焦点位置,并基于焦点位置计算源文本语料中各词语对该待翻译词语的贡献概率;基于贡献概率和混合表征矩阵,得到该待翻译词语的翻译候选表示;
步骤44、判定是否完成该子集中目标文本语料的解码,若是,则进入步骤5;否则,将步骤43中的当前待翻译词语在目标文本语料中顺序的下一个词语作为新的待翻译词语,将目标文本语料中在新的待翻译词语之前的所有词语构成的文本作为新的译文文本,并将新的待翻译词语和新的译文文本作为输入,返回步骤41;
步骤5、对目标文本语料各词语的翻译候选表示分别进行映射计算,并取概率值最大的源文本语料词语作为其翻译候选词;
步骤6、判定是否达到预设条件,若是,则进入步骤7,否则返回步骤2;所述预设条件为获得的翻译候选词的词语数量或子集数量;
步骤7、基于所获得的目标文本语料中的词语的翻译候选词及其目标翻译真值,进行交叉熵损失函数计算,基于损失函数对模型进行训练,更新参数,完成本轮训练;
步骤8、判定是否达到预设训练轮数或预设训练目标,若是,则完成训练,否则返回步骤2;
步骤3,基于源文本语料的词向量,构建融合上下文依赖关系的文本向量;采用注意力机制,对文本向量进行计算,获得源文本语料的文本表征,包括如下步骤:
步骤31、通过对源文本语料的词向量的正序和逆序拼接,构建该源文本语料的正序和逆序的源文本初始语义矩阵;
步骤32、对正序和逆序的源文本初始语义矩阵进行融合,获取融合源文本语料中上下文依赖关系的源文本语义矩阵;
步骤33、基于源文本语义矩阵进行线性映射得到文本向量,对文本向量进行本层的注意力计算;
步骤34、判定是否达到设定的编码循环层数,若是,则将其输出作为文本表征;否则,将步骤33获得的隐藏层输出向量作为源文本语料新的词向量,并返回步骤31;
步骤31中,采用如下公式,通过对源文本语料的词向量的正序和逆序拼接,构建该源文本语料的正序和逆序的源文本初始语义矩阵:
其中,t表示词语数量,t′表示词语在源文本语料中所处的位次;ht′表示多层注意力计算中前一层的隐藏层输出向量,初始为词向量;W1、b1、W2、b2均为可学习权值;箭头则表示正序和逆序,ReLU为激活函数;
步骤32中,采用GSN门控状态网络对正序和逆序的源文本初始语义矩阵进行融合,获取融合源文本语料中上下文依赖关系的源文本语义矩阵,计算公式如下:
其中,表示源文本语义矩阵,GSN(·)表示采用门控网络层进行计算,S代表/>H代表/>符号“;”表示拼接操作,fg和ig代表门控符号;
其计算方式为:
其中,符号“;”表示拼接操作;Wf1、Wi1、bf1、bi1均为可学习权值;
步骤33中,基于源文本语义矩阵进行映射得到文本向量,对文本向量进行本层的注意力计算,包括如下步骤:
步骤331、采用三种参数分别对源文本语义矩阵进行映射计算,得到基于三种参数的文本向量和/>
步骤332、按如下公式进行注意力计算:
其中,代表矩阵乘法;
步骤41中,采用如下公式,对译文文本的词向量的拼接,构建该译文文本的融合表示:
oj=ReLU(o[1,2,...,j-1]W3+b3)W4+b4
其中,oj表示当前译文文本的融合表示;o[1,2,...,j-1]表示由当前待翻译词语的前序各已解码词语对应的融合表示所拼接构成的矩阵;W3、W4、b3、b4均为可学习权值;
步骤42中,采用如下公式,对当前译文文本的融合表示和源文本语料的文本表征进行融合,获得融合当前译文文本的混合表征矩阵K:
K=GSN(oj,Vtop)=fk⊙Vtop+ik⊙oj
其中,GSN(·)表示采用门控网络层进行计算,Vtop表示文本表征,fk和ik代表门控符号;
其计算方式如下:
其中,符号“;”表示拼接操作;Wf2、Wi2、bf2、bi2均为可学习权值;
步骤43中,基于混合表征矩阵,计算当前待翻译词语在源文本语料中的焦点位置,并基于焦点位置计算源文本语料中各词语对该待翻译词语的贡献概率;基于贡献概率和混合表征矩阵,得到该待翻译词语的翻译候选表示,包括如下步骤:
步骤431、按如下公式计算焦点位置Cp:
Cp=argmax(ojKT)
其中,Cp表示当前待翻译词语与混合表征矩阵K,按投影计算的最大值所在位置;T代表矩阵转置;
步骤432:根据焦点位置Cp计算源文本语料中各词语对该待翻译词语的贡献概率,计算方式如下:
其中,α表示源文本语料中各词语对该待翻译词语的贡献概率矩阵;Cp表示当前待翻译词语对应的焦点位置Cp;P=[1,2,...,m]表示源文本语料中所有词语的位置的序列,σ为超参数;
步骤433:将贡献概率矩阵α和混合表征矩阵K相乘,得到待翻译词语的翻译候选表示zj:
其中,表示矩阵乘法。
2.根据权利要求1所述的跨语际语言翻译的神经机器翻译模型构建方法,其特征在于,
步骤1中,遍历语料数据,形成源语言词汇表和目标语言词汇表,并对词汇表的词语进行编号,随机生成可跟随模型学习的词汇表参数矩阵;
步骤3中,对输入子集中的源文本语料进行遍历,根据其词语的编号查询对应词汇表参数矩阵中对应的词语向量作为该词语的词向量;
步骤4中,对译文文本进行遍历,根据其词语的编号查询对应词汇表参数矩阵中对应的词语向量作为该词语的词向量。
3.根据权利要求1或2所述的跨语际语言翻译的神经机器翻译模型构建方法,其特征在于,步骤5中,采用两层前馈神经网络和softmax函数,对目标文本语料各词语的翻译候选表示分别进行映射计算,并取概率值最大的源文本语料词语作为其翻译候选词,计算方式如下:
output=softmax(max(0,zjV1+bv1)V2+bv2)
其中,zj表示翻译候选表示,V1、V2、bv1、bv2均为可学习权值。
4.根据权利要求1或2所述的跨语际语言翻译的神经机器翻译模型构建方法,其特征在于,步骤7中,交叉熵损失函数计算公式如下:
其中,yj表示目标翻译真值,N表示获得的翻译候选词的词语数量;θ表示损失函数的权重参数,θ的更新方式如下:
其中,中为更新后的权重参数,Δ为求偏导运算,η为学习率。
5.跨语际语言翻译的神经机器翻译方法,其依据权利要求1-4任意一项所述的跨语际语言翻译的神经机器翻译模型构建方法,构建翻译模型进行跨语际语言翻译,包括如下步骤:
步骤1、对待翻译文本进行预处理,并作为源文本语料,并基于翻译模型对其进行编码,获取其文本表征;并初始化译文文本;
步骤2、根据输入的译文文本,基于翻译模型对其进行解码:根据历次的译文文本及源文本语料,计算并获得混合表征矩阵,并确定当前翻译步对应源文本语料所在的焦点语义位置,并根据该位置上下文信息计算源文本语料各词语的贡献概率,使用贡献概率和混合表征矩阵,生成当前翻译步基于焦点语义位置的翻译候选表示;
步骤3、根据解码输出的翻译候选表示,进行词表映射;
步骤4、根据预设条件判定翻译是否完成,若是,则完成翻译,否则,进行步骤5;所述预设条件为翻译候选表示表示结束或达到预设的翻译步数阈值;
步骤5、利用启发式搜索算法,根据更新后的词表映射,从词汇表中查找概率值较大的词语构成翻译扩展集,结合译文文本生成候选文本集,选择其中全局概率值最大的候选文本作为当前翻译步输出的译文文本,然后返回步骤2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210808791.5A CN115017924B (zh) | 2022-07-11 | 2022-07-11 | 跨语际语言翻译的神经机器翻译模型构建及其翻译方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210808791.5A CN115017924B (zh) | 2022-07-11 | 2022-07-11 | 跨语际语言翻译的神经机器翻译模型构建及其翻译方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115017924A CN115017924A (zh) | 2022-09-06 |
CN115017924B true CN115017924B (zh) | 2023-11-07 |
Family
ID=83082508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210808791.5A Active CN115017924B (zh) | 2022-07-11 | 2022-07-11 | 跨语际语言翻译的神经机器翻译模型构建及其翻译方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115017924B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116306705B (zh) * | 2023-05-18 | 2023-08-15 | 山东省科学院海洋仪器仪表研究所 | 一种多语言的智能语音翻译交互平台 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107967262A (zh) * | 2017-11-02 | 2018-04-27 | 内蒙古工业大学 | 一种神经网络蒙汉机器翻译方法 |
CN111401080A (zh) * | 2018-12-14 | 2020-07-10 | 波音公司 | 神经机器翻译方法以及神经机器翻译装置 |
CN113297841A (zh) * | 2021-05-24 | 2021-08-24 | 哈尔滨工业大学 | 基于预训练双语词向量的神经机器翻译方法 |
WO2021239631A1 (en) * | 2020-05-26 | 2021-12-02 | IP.appify GmbH | Neural machine translation method, neural machine translation system, learning method, learning system, and programm |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200044201A (ko) * | 2018-10-10 | 2020-04-29 | 한국전자통신연구원 | 번역 성능 개선을 위한 신경망번역 모델 학습 방법 및 장치 |
-
2022
- 2022-07-11 CN CN202210808791.5A patent/CN115017924B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107967262A (zh) * | 2017-11-02 | 2018-04-27 | 内蒙古工业大学 | 一种神经网络蒙汉机器翻译方法 |
CN111401080A (zh) * | 2018-12-14 | 2020-07-10 | 波音公司 | 神经机器翻译方法以及神经机器翻译装置 |
WO2021239631A1 (en) * | 2020-05-26 | 2021-12-02 | IP.appify GmbH | Neural machine translation method, neural machine translation system, learning method, learning system, and programm |
CN113297841A (zh) * | 2021-05-24 | 2021-08-24 | 哈尔滨工业大学 | 基于预训练双语词向量的神经机器翻译方法 |
Non-Patent Citations (2)
Title |
---|
基于门控循环神经网络词性标注的蒙汉机器翻译研究;刘婉婉;苏依拉;乌尼尔;仁庆道尔吉;;中文信息学报(08);全文 * |
融合图像注意力的多模态机器翻译模型;李霞;马骏腾;覃世豪;;中文信息学报(07);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115017924A (zh) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110334361B (zh) | 一种面向小语种语言的神经机器翻译方法 | |
Liu et al. | A recursive recurrent neural network for statistical machine translation | |
CN107967262B (zh) | 一种神经网络蒙汉机器翻译方法 | |
Wang et al. | Neural machine translation advised by statistical machine translation | |
Zhang et al. | Deep Neural Networks in Machine Translation: An Overview. | |
CN110674646A (zh) | 一种基于字节对编码技术的蒙汉机器翻译系统 | |
CN110688862A (zh) | 一种基于迁移学习的蒙汉互译方法 | |
CN112215017B (zh) | 一种基于伪平行语料库构造的蒙汉机器翻译方法 | |
CN110442880B (zh) | 一种机器翻译译文的翻译方法、装置及存储介质 | |
CN111144140B (zh) | 基于零次学习的中泰双语语料生成方法及装置 | |
CN111191468B (zh) | 术语替换方法及装置 | |
CN112580373A (zh) | 一种高质量蒙汉无监督神经机器翻译方法 | |
CN111814493B (zh) | 机器翻译方法、装置、电子设备和存储介质 | |
CN115017924B (zh) | 跨语际语言翻译的神经机器翻译模型构建及其翻译方法 | |
CN113822054A (zh) | 基于数据增强的中文语法纠错方法及装置 | |
Sun et al. | QuGAN: quasi generative adversarial network for Tibetan question answering corpus generation | |
CN115114940A (zh) | 一种基于课程化预训练的机器翻译风格的迁移方法和系统 | |
CN113657125B (zh) | 一种基于知识图谱的蒙汉非自回归机器翻译方法 | |
CN111428518B (zh) | 一种低频词翻译方法及装置 | |
Tien et al. | Long sentence preprocessing in neural machine translation | |
Mandal et al. | Futurity of translation algorithms for neural machine translation (NMT) and its vision | |
CN117034961B (zh) | 一种基于bert的中法互译质量测评方法 | |
CN103150329A (zh) | 双语文本的词语对齐方法及装置 | |
CN113204978A (zh) | 一种机器翻译增强训练方法及系统 | |
Zhang et al. | Mind the gap: Machine translation by minimizing the semantic gap in embedding space |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |