一种基于翻译模板的神经机器翻译方法
技术领域
本发明涉及一种在神经机器翻译中构建翻译模板库,并且将翻译模板引入神经机器翻译优化器对应翻译性能的技术,具体涉及一种基于翻译模板的神经机器翻译方法,属于自然语言处理中的机器翻译
技术领域
。背景技术
目前,神经机器翻译由于在多种自然语言上相比传统的统计机器翻译更加优越,在工业领域、各大公司如谷歌、有道、百度等,都已成功部署以神经机器翻译为基础的翻译服务。这些方便快捷的翻译服务被人们广泛使用。
但是,神经机器翻译主要是通过双语平行语料数据的训练来获得源语言和目标语言的语言特征知识以及两者之间的对应关系,因此,神经机器翻译对训练数据具有很大的依赖性。当训练语料数据中不包括某些特征信息或者仅包含较少的特征信息,模型将很难学习到其对应的知识,从而导致模型不能捕获到这部分信息。在对包含该部分知识的待翻译句子进行翻译时,神经机器翻译会产生质量较差的译文。
在计算机辅助翻译场景中,人类译员接收由机器翻译模型生成的翻译,首先会查看翻译是否存在错误并进行必要的纠正,然后对翻译错误进行译后编辑以确保最终的翻译质量。衡量审阅和译后编辑时间,是量化人类译员工作量的最直接有效的方法。当使用传统的神经机器翻译方法时,人类译员不了解译文质量,这意味人类译员必须要花费同等的工作量来审阅每个译文。在这种情况下,只研究如何提高整个测试集的翻译性能,仅仅可以减少译后编辑时间。
在现实场景中,存在很多已有的翻译知识,如固定的翻译句式、固有的翻译搭配以及专业领域的双语词典。这些经过人类语言专家的归纳总结的翻译知识是完全正确的,人类译员可以直接使用这些固定的翻译知识来辅助翻译工作。因此,利用外部知识提高机器翻译模型的译文质量具有很高的研究价值。总体来说,大部分研究工作主要集中在利用双语词典以及双语翻译实例进行解码约束或者进行数据增强,但是针对将翻译模板作为外部知识融入神经机器翻译中的研究相对较少。翻译模板保留了句子的句法结构信息以及部分目标词。在知识粒度方面,模板介于翻译规则和翻译实例之间。相比于翻译实例,翻译模板具有更高的抽象度,从而具有更高的匹配率。相比于翻译规则,翻译模板包含更多的词汇信息。
综上所述,如果能够构建适用于神经机器翻译的高质量翻译模板库,并将翻译模板知识引入到神经机器翻译中,则可以获得高质量的译文。
但是,目前尚未见到针对将翻译模板引入神经机器翻译较为完善的机器翻译系统或相关技术公开。
发明内容
本发明的目的是为了解决现有的机器翻译系统受限于语料库规模以及质量,导致产生的译文质量差的技术问题,创造性地提出一种基于翻译模板的神经机器翻译方法。本方法通过引入匹配到的高相似翻译模板,引导和约束模型的解码过程,从而提高了译文质量。
本发明的创新点在于:首先,构建翻译模板库和对应的模板匹配算法。然后,构建基于模板的神经机器翻译模型。之后,利用两阶段的训练策略将翻译模板引入模型中,并不断迭代更新构建的模型参数,指导训练过程。最后,利用训练完成的神经机器翻译模型,对匹配到高相似翻译模板的句子进行分别翻译。
为实现上述目的,本发明采用以下技术方案。
一种基于翻译模板的神经机器翻译方法,包括以下步骤:
步骤1:基于最长名词短语的翻译模板构建方法,构建翻译模板库。
步骤2:构建多策略模板匹配算法,检索高相似的翻译模板。
步骤3:构建基于模板的神经机器翻译模型,将翻译模板引入神经机器翻译中。
步骤4:采用两阶段的模型训练策略,训练基于模板的神经机器翻译模型。
步骤5:利用训练模型的翻译神经模型,对匹配到高相似翻译模板的句子进行翻译。
有益效果
本发明对比现有技术,具有以下有益效果及优点:
1.本发明使用了自定义的翻译模板抽取算法,用于构建高质量的翻译模板,通过抽取最长名词短语的方法,可以省略双语词对齐信息,简化翻译模板构建过程。
2.本发明区别于现有的机器翻译系统,更专注于提高部分能匹配到高相似翻译模板的句子而不是全部语句的翻译效果,利用匹配到的高相似的翻译模板提高译文的质量。
附图说明
图1为本发明的翻译模板构建算法示意图;
图2为本发明的基于模板的神经机器翻译模型图;
图3为本发明的两阶段的模型训练策略图。
具体实施方式
下面结合附图和实施例对本发明方法做进一步阐述。
一种基于翻译模板的神经机器翻译方法,包括以下步骤:
步骤1:基于最长名词短语的翻译模板构建方法,构建翻译模板库。
如图1所示,具体方法如下:
步骤1.1:利用成分句法树分析方法,将平行句对上构建双语句法树;
步骤1.2:识别并抽取最长名词短语,构建翻译模板。
其中,所述最长名词短语(maximal-length noun phrase,MNP),是指不被其它任何名词短语嵌套的名词短语。在句法树中,最长名词短语是指从根节点开始,第一个标签为“NP”的子树。最长名词短语相比于基本名词短语,具有更大粒度的信息。本发明将包含普通名词(NN)、固有名词(NR)、时间名词(NT)、人称代词(PRP)的最长名词短语作为模板变量,剩余部分作为模板常量构建翻译模板。
所述翻译模板包含模板常量和模板变量;模板常量指模板中固定不变的词,表示源句的句子结构信息;模板变量是一类词或名词短语,是模板中的泛化信息。模板常量在模板匹配中作为被检索信息,在翻译过程中作为译文生成的约束信息;翻译模板变量在翻译过程中,根据源句信息将翻译模板变量进行替换,得到对应的译文。
步骤1.3:利用翻译模板长度和模板抽象度筛选翻译模板,保留符合设定长度阈值和抽象度阈值的翻译模板。
具体地,步骤1.3包括以下步骤:
步骤1.3.1:设定长度阈值,舍弃不满足长度阈值的翻译模板。
步骤1.3.2:设定抽象度的上下阈值,计算翻译模板的抽象度,舍弃不在阈值范围内的翻译模板。
其中,翻译模板抽象度Scoreabs的计算方式如下:
其中,Numva表示翻译模板变量的个数,lt表示翻译模板包含词的数量。
步骤2:构建多策略模板匹配算法,用于检索高相似的翻译模板。
具体地,步骤2包括以下步骤:
步骤2.1:利用步骤1描述的翻译模板构建算法处理待翻译句子,获得待匹配模板。
步骤2.2:利用基于词命中率的粗粒度匹配策略,从步骤1中构建的翻译模板库中获得候选集。
其中,基于词命中率的粗粒度匹配策略定义如下:
粗粒度匹配策略利用待匹配模板与模板库中的源端翻译模板的词共现频率来衡量两者之间的相似程度,相似函数FM定义如下:
其中,word(·)表示字符串中含有的词;Tmsrc表示匹配到的源端翻译模板;X′表示将待翻译句子利用步骤1获得的待匹配模板;len(·)表示待匹配模板的长度。为快速检索到候选翻译模板集,可以采用离线搜索引擎Elasticsearch来完成粗粒度的匹配。
步骤2.3:利用基于字符串相似度的细粒度匹配策略,在候选集上进行匹配。
其中,基于字符串相似度的细粒度匹配策略定义如下:
细粒度匹配策略,采用莱文斯坦编辑距离(Levenshtein Distance)衡量候选集中每个模板与被检索目标的相似度。
莱文斯坦编辑距离,是指将一个模板通过增加、插入、删除操作转变为另一个模板的最小编辑次数。在语言学中,莱文斯坦编辑距离是用来量化语言距离的度量标准,即两种语言之间的差异。细粒度匹配相似函数Lev定义如下:
其中,表示将待匹配模板转换为模板库中匹配到的源端翻译模板所需要的最小编辑距离;Scoretm表示待匹配模板X′与从模板库中匹配到的源端翻译模板Xt ′ m之间的模糊匹配分数;i和j分别表示X′和Xt ′ m中的第i和第j个位置。
步骤3:构建基于模板的神经机器翻译模型,将翻译模板引入神经机器翻译中。
具体地,步骤3包括以下步骤:
步骤3.1:在编码端,增加额外的模板编码器,对检索到的目标端翻译模板进行编码。
其中,所述模板编码器如下:
模板编码器采用Transformer编码器结构,由若干相同的子层堆叠而成,每个子层包括自注意层子层和前馈神经网络子层。
所述模板编码器与原Transformer编码器具有相同的结构,这种方式存在着两种优势:(1)Transformer具有优秀的语义信息捕获能力,能够更好地表示目标端的额外知识;(2)原编码器和模板编码器采用相同的结构,更有利于将两种不同的信息映射到同一高维语义空间中。
模板编码器与源编码器在编码过程中是相互独立的,不存在两种信息在表示过程中相互交互与融合的情况,最终得到源句和目标端翻译模板在高维语义空间中的向量表示。
源编码器和目标模板编码器的编码表示如下所示:
Hs=Encsrc(X,θsrc) (5)
其中,Encsrc表示源句编码器;X表示待翻译句子;Enctm表示模板编码器;θsrc和θtm分别表示源句编码器和模板编码器的参数,源句编码器和模板编码器参数不共享;Hs表示源句编码器对源句编码得到的包含源句信息的向量表示,表示模板编码器对目标端翻译模板编码得到的包含目标端翻译模板信息的向量表示;Tmtgt表示匹配到的目标端翻译模板。
步骤3.2:在解码端,增加模板编码-解码注意力子层,将模板知识引入解码器中引导和约束模型的解码过程,从而获得高质量的译文。
其中,所述解码器如下:
在Transformer解码器的基础上,加入了模板编码-解码注意力子层。总体上,新的解码器包含四个子层:掩码多头注意力子层、模板编码-解码注意力子层、源编码-解码注意力子层和前馈神经网络子层。
因为融入翻译模板的翻译模板知识为目标端的知识,相比于源语句,该部分知识在语义空间中与目标端的译文更相似,所以,将模板编码-解码注意力子层放于源编码-解码注意力子层和掩码多头注意力子层之间。这种排列方式使得已生成的译文序列更早地与目标端翻译模板的信息进行交互和融合,并且在现实场景中,受限于翻译模板库的规模,匹配到的翻译模板并不能保证与译文完全相匹配,往往存在着部分噪声信息。通过目标端译文与翻译模板更早地交互,能够对翻译模板知识有选择的捕获,从而使得翻译模板更好地应用到译文的生成中。
解码器生成译文的过程如下所示:
P(yt|x,Tmtgt,y<t;θ)∝exp(HdW) (8)
其中,Hd表示解码器通过对源编码器和模板编码器生成的上下文向量进行解码获得的包含译文信息的向量表示。DEC(·)表示解码器;y表示模型生成的译文序列;t表示当前解码的时间步;yt表示当前时间步生成的目标词;θ表示模型参数;P(·)表示译文生成的概率函数;x表示待翻译句子;Tmtgt表示目标端翻译模板;W表示模型全连接层的权重;exp(·)表示生成当前词的概率函数。
步骤4:采用两阶段的模型训练策略,训练基于模板的神经机器翻译模型。
具体地,步骤4包括以下步骤:
步骤4.1:将训练数据集分为两个部分:基础训练集和微调训练集。如图2所示。
其中,基础训练集的功能包含两个:一是构建翻译模板库,二是训练模型。基础数据集所对应的目标端翻译模板直接从对应参考中抽取获得,与源句完全对应。
微调数据集中所对应的目标端翻译模板通过步骤2描述的多策略模板匹配方法检索到对应的目标端翻译模板。具体地,可设置粗粒度匹配策略阈值为0.8,细粒度匹配策略阈值为0.9。
步骤4.2:利用两阶段的模型训练策略,获得基于模板的神经机器翻译模型,如图3所示。
具体包括以下步骤:
步骤4.2.1:利用基础数据集训练模型,不断更新迭代模型参数,使得模型能够捕获目标端翻译模板知识。
步骤4.2.2:利用微调数据集训练对基础模型进行重新训练,更新迭代模型参数,利用这些通过模板匹配筛选后的数据更新迭代模型参数,提高模型的鲁棒性。
步骤5:利用训练模型的翻译神经模型,对在设定阈值范围内能匹配到翻译模板的句子进行翻译。
实验例
本发明在汉英(zh-en)和德英(de-en)上进行实验。
(1)实验数据设置
为了与前人的研究结果进行比较,并接近实际的翻译场景,本发明在中英翻译和德英翻译的新闻领域进行了实验。本发明分别利用公开数据LDC数据集中包含的部分平行语料库和WMT-18数据集中包含的部分平行语料库进行训练、验证和测试。本发明提出的融合模板的神经机器翻译方法,在输入源句的同时输入模板信息,受限于翻译模板库的规模,测试集中的不同句子之间与模板库之间存在着匹配相似度差异。所以,在测试过程中按照模板匹配相似度分数设置不同的匹配区间。匹配相似度区间值越大,表明该区间内的句子在模板库中能检索到更相似的模板;匹配相似度区间值越小,表明该区间内的句子与模板库的相似度越低。
LDC中英数据集。LDC属于新闻领域的数据集。如表1所示,中文-英语(Ch-EN)翻译任务上随机抽取564726条作为基础训练集,37417条作为微调数据集,6000条作为验证集,3000条作为测试集;采用NLTK工具进行中文分词,采用Moses对英语进行统一大小写处理以及英文单词和标点符号的规范化;Berkeley句法分析工具分别对中文和英文进行句法分析得到对应的句法分析结果。最终,获得翻译模板342183对这两个翻译任务上,本发明设置了相同规模的测试集来检验模型。从语料库中随机选择6000和3000个句子分别作为开发集和测试集,剩下的数据用来创建训练数据。具体数据大小见下表。
WMT18英德数据集。如表1所示德语-英语翻译任务上随机抽取491000条作为基础训练集,21064条作为微调数据集,6000条作为验证集,3000条作为测试集;采用Moses对德语和英语进行统一大小写处理及单词和标点符号的规范化;Berkeley句法分析工具分别对德语和英语进行句法分析。最终,获得翻译板307968条。
表1 LDC中英和WMT英德数据集
本发明以BLEU值作为评价指标。
(2)基线系统实验设置:
RNNSEARCH:一个标准的基于注意力机制的神经机器翻译系统。
Transformer:一个基于自注意机制的神经机器翻译系统。
本发明在开源机器翻译工具Opennmt上实现了上述基线系统和本发明提出的模型。
(3)主要实验结果:表2是实验结果。
表2中英和德英翻译任务实验结果
首先,在中文-英语翻译任务上,当模糊匹配区间为(0.9,1.0]、(0.8,0.9]、(0.7,0.8]、(0.6,0.7]时,TBMT相比RNNSearch分别提高了12.6个BLEU分数、10.06个BLEU分数、8.41个BLEU分数、6.86个BLEU分数;相比Transformer分别提高了2.79个BLEU分数、1.33个BLEU分数、0.5个BLEU分数,0.01个BLEU分数。这表明将与源句高相似的翻译模板作为外部知识提供给模型,可以实现引导和约束模型解码过程的功能,从而提高模型的翻译能力。并且加入的翻译模板与待翻译句子越相似,效果提高的越明显。这是因为,翻译模板匹配相似度越高,相对于源句来说翻译模板的信息就越可靠,模型就能获得更多有效的目标端信息。
其次,当模糊匹配值低于0.6时,尽管TBMT的BLEU分数仍然高于RNNSearch,但是其低于Transformer。这是因为与源句低相似的翻译模板包含太多了的无用信息,会对模型的解码进行错误的引导。基于此,本发明认为高相似的翻译模板不仅可以提供目标端的句法结构知识,还可以提供可重用片段;低相似的翻译模板会引入太多的噪声信息,导致模型的翻译效果变差。
最后,在德英实验中本文获得了与中英翻译任务上相似的结果。在高模糊匹配区间,本发明提出的方法优于RNNSearch和Transformer;在低模糊匹配区间,本章的方法略差于Transformer。这说明,检索到的翻译模板越相似,其能够提供给模型的有效目标端信息就越多也越可信,模型产生的译文质量也就越高。
(4)训练策略分析:表3是实验结果。
本实验分析本发明提出的两阶段训练策略对模型质量的影响。TBMT性能优于TBMT_all和TBMT_b,表明本发明针对TBMT设计的模型训练策略能够提高模型的鲁棒性,使得模型能够更好地捕获翻译模板所包含的目标端知识并过滤噪声信息。相比于TBMT_b,TBMT_all增加了37417条微调训练集,但是其效果仅仅只有微小的BLEU值的提升。这表明将数据整合在一起的训练策略并不能充分提高模型对噪声的筛选能力。
表3训练策略分析实验结果
匹配分数
TBMT_b
TBMT_all
TBMT
(0.9,1.0]
72.43
72.76
73.41
(0.8,0.9]
65.65
65.78
66.52
(0.7,0.8]
61.46
61.45
62.44
(0.6,0.7]
57.08
57.15
58.07
(0.5,0.6]
52.05
51.99
52.85
(0.4,0.5]
49.07
48.99
49.84
(5)领域适应分析:表4是实验结果。
本实验分析本发明的模型通过翻译模板捕获领域知识的能力。实验结果表明,尽管模型在训练过程中并没有学习到法律领域相关的语言特征,但是本发明提出的方法能够通过翻译模板捕获到相关的领域知识,从而获得更符合法律领域特征的译文。
表4领域适应分析实验结果
匹配分数
Transformer
TBMT
(0.9,1.0]
7.06
15.5
(0.8,0.9]
7.19
15.44
(0.7,0.8]
7.41
15.38
(0.6,0.7]
7.33
14.83
(0.5,0.6]
7.51
14.32
(0.4,0.5]
7.61
13.93
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:一种基于人工智能的语言翻译系统及方法