一种用单一网络模型实现多个语种之间互译的方法技术

技术编号:30516411 阅读:14 留言:0更新日期:2021-10-27 22:59
本发明专利技术公开一种用单一网络模型实现多个语种之间互译的方法,步骤为:获取互联网中英语与阿拉伯语、德语、西班牙语、波斯语之间相互翻译的双语数据集;对双语数据进行数据清洗得到预处理后的双语数据;对预处理后的双语数据使用加目标语标签的方法构建多语言双语平行语料库;使用构建好的双语平行语料库基于Fairseq开源系统构建多语种分析器,并训练多语言神经机器翻译模型;将训练完成的多语言神经机器翻译模型进行封装,与网页接口进行整合,部署到线上,完成多语言神经机器翻译系统的搭建。本发明专利技术使用来自多个语言对数据的训练模型可帮助模型从多个“源”获得“知识”;多语言神经翻译系统具有更好的泛化能力,从而能够提高翻译质量。高翻译质量。高翻译质量。

【技术实现步骤摘要】
一种用单一网络模型实现多个语种之间互译的方法


[0001]本专利技术涉及一种多语言翻译系统的构建技术,具体为一种用单一网络模型实现多个语种之间互译的方法。

技术介绍

[0002]让机器协助语言之间的相互翻译是人类长久以来的梦想。从广义上讲,“翻译”是将一个事物转化成另一个事物的过程,其核心在于对序列的转化。机器翻译是利用计算资源把源语言序列转变为目标语言序列的过程。它主要研究不同语言对之间的翻译,如英文和中文、英文和法文之间的相互翻译。上世纪九十年代,在深度学习应用于机器翻译任务之前,机器翻译处于统计建模的时代,使用传统的基于统计的方法,主要有以下特点:基于离散空间的表示模型、自然语言处理问题的隐含结构假设、以特征工程为主但是特征、规则的存储又消耗资源。
[0003]伴随着深度学习的不断发展以及应用于机器翻译任务中,神经机器翻译成为机器翻译方法中的“宠儿”,它在许多自然语言对的相互翻译上表现出非常良好的性能。神经机器翻译使用一个单一的大型神经网络来模拟整个翻译过程,它的成功主要归功于语言分布式表示的使用,从而能够实现机器翻译系统端到端的训练。神经机器翻译与统计机器翻译不同,它不需要很多单独的组件,比如单词矫正器、翻译规则提取器和其它特征提取器,它的主要机制模式是词嵌入

编码器

注意力机制

解码器。循环神经网、卷积神经网络以及具有自注意机制结构的Transformer模型等就是建立在这种模式上的极为经典方法。这些方法不仅在机器翻译中取得巨大成功,在自然语言处理领域的许多其他任务中也取得突出的成绩。
[0004]在机器翻译中,多语言机器翻译系统是一种非常可取且有效的方案,因为使用来自多个语言对数据的训练模型可帮助模型从多个“源”获得“知识”。此外,由于得到不同的语言对进行训练,多语言神经翻译系统往往具有更好的泛化能力,从而能够提高翻译质量。这种独特的现象也被称为知识迁移。在低资源语言之间的翻译中,知识迁移现象非常明显。低资源语言的平行语料库很少,但却从其他语言对的数据中获益。在零资源语言之间的翻译中,两个语言没有平行语料库,也能实现翻译,或是在没有对应领域的数据情况下实现翻译。并且,由于多语言机器翻译系统是单个模型处理多种语言,它也是一种极为紧凑的系统。这可以有效减少部署所带来的机器硬件消耗成本和人工成本,从而简化翻译系统的大规模部署任务,提高系统收益。最重要的是,研究多语言机器翻译系统可以帮助我们更好地地理解和回答自然语言处理中的一个重要问题:我们如何构建分布式表示,使跨语言的相似文本具有相似的表示?在将不同领域的语料库视为不同语言的情况下,迁移学习必须既跨越语言又跨越领域。因此,多语言多领域机器翻译系统的研发是一件非常有意义的工作,并且具有很大的研究和应用价值。

技术实现思路

[0005]针对现有技术中多语言机器翻译系统的上述的极大优势,以及目前足够简单有效的方法大都对数据进行修改,模型方面并未进行大的改动等不足,本专利技术提出一种用单一网络模型实现多个语种之间互译的方法,对模型结构进行大规模修改,使得单一模型就能在多语言翻译任务上表现出极佳的性能。
[0006]为解决上述技术问题,本专利技术采用的技术方案如下:
[0007]本专利技术提供一种用单一网络模型实现多个语种之间互译的方法包括,包括以下步骤:
[0008]1)获取互联网中数据规模较大的英语与阿拉伯语、德语、西班牙语、波斯语之间相互翻译的双语数据;
[0009]2)对双语数据进行数据清洗得到预处理后的双语数据;
[0010]3)对预处理后的双语数据使用加目标语标签的方法构建多语言双语平行语料库;
[0011]4)使用构建好的双语平行语料库基于Fairseq开源系统实现多语种分析器,并训练多语言神经机器翻译模型;
[0012]5)将训练完成的多语言神经机器翻译模型进行封装,与网页接口进行整合,部署到线上,完成多语言神经机器翻译系统的搭建。
[0013]步骤1)在WMT和IWSLT官网中获取包含英语和英语与阿拉伯语、德语、西班牙语、波斯语之间相互翻译的双语数据之间相互翻译的初始语料库,包括训练集、验证集和测试集,初步观察数据的规模和质量,制定数据处理策略。
[0014]步骤2)中对获取的阿拉伯语、德语、西班牙语、波斯语和英语的双语语料依据预定的数据处理策略进行处理,步骤为:
[0015]201)使用re库利用正则表达式去除IWSLT数据集中的各类标签、url以及其他非双语语料部分杂质数据。
[0016]202)将步骤201)得到的IWSLT数据与WMT原始数据进行按序合并作为总数据集。
[0017]203)利用Moses分词工具将步骤202)得到的总数据集进行分词,得到分词后的总数据集。
[0018]204)利用Bpe分词工具将步骤203)得到的总数据集进行切分子词,生成BPE此表,得到BPE切分子词后的总数据集。
[0019]205)对验证集和测试集采用和步骤201)步骤202)步骤203)步骤204)相同的处理方式。
[0020]步骤3)中对步骤2得到的总的数据集源语言句子的开头加入本句所要翻译到的目标语言标签,使得网络模型获取翻译到指定目标语言的能力。
[0021]步骤4)中,使用步骤2)中构建好的双语平行语料库,基于Fairseq开源系统训练多语言神经机器翻译模型,步骤为:
[0022]401)对步骤2)中的双语平行语料库使用fairseq

preprocess进行数据预处理,构建词汇表并且对训练数据进行二进制化。
[0023]402)对于步骤401)预处理后的数据进行训练。
[0024]403)对于步骤402)训练完的模型对测试集进行解码测试,得到初步的模型性能。
[0025]404)尝试加入目标语标签和领域标签、长度过滤、加入数据字典多种处理方案进
行系统性能的提升。
[0026]步骤5)中,将训练完成的多语言神经机器翻译模型进行封装,部署到服务器上,完成多语言神经机器翻译系统的搭建,步骤为:
[0027]501)将Fairseq框架interactive部分单独封装成接口,供flask后端调用。
[0028]502)通过Flask框架搭建Web系统前后端,并针对用户异常操作行为,包括是否选择语言、是否输入句子、选择的源语言和目标语言是否相同来进行翻译接口的调用,返回相应的结果。
[0029]503)将步骤4)中训练好的多语言神经机器翻译模型通过Flask部署到服务器端,通过socket建立端口和网页的连接,完成整个系统的搭建任务。
[0030]本专利技术具有以下有益效果及优点:
[0031]1.本专利技术使用来自多个语言对数据的训练模型可帮助模型从多个“源”获得“知识”;由于得到不同的语言对进行训练,多语言神经翻译系统往往具有更好的泛化能力,从而能够提高翻译质量。
[003本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用单一网络模型实现多个语种之间互译的方法,其特征在于:1)获取互联网中英语与阿拉伯语、德语、西班牙语、波斯语之间相互翻译的双语数据集;2)对双语数据进行数据清洗得到预处理后的双语数据;3)对预处理后的双语数据使用加目标语标签的方法构建多语言双语平行语料库;4)使用构建好的双语平行语料库基于Fairseq开源系统构建多语种分析器,并训练多语言神经机器翻译模型;5)将训练完成的多语言神经机器翻译模型进行封装,与网页接口进行整合,部署到线上,完成多语言神经机器翻译系统的搭建。2.根据权利要求1所述的用单一网络模型实现多个语种之间互译的方法,其特征在于:步骤1)在WMT和IWSLT官网中获取包含英语和德语、英语和法语之间相互翻译的初始语料库,包括训练集、验证集和测试集,初步观察数据的规模和质量,制定数据处理策略。3.根据权利要求1所述的用单一网络模型实现多个语种之间互译的方法,其特征在于:步骤2)中对获取的英语与阿拉伯语、德语、西班牙语、波斯语双语语料依据预定的数据处理策略进行处理,步骤为:201)使用re库利用正则表达式去除IWSLT数据集中的各类标签、url以及其他非双语语料部分杂质数据;202)将步骤201)得到的IWSLT数据与WMT原始数据进行按序合并作为总数据集;203)利用Moses分词工具将步骤202)得到的总数据集进行分词,得到分词后的总数据集;204)利用Bpe分词工具将步骤203)得到的总数据集进行切分子词,生成BPE词表,得到BPE切分子词后的总数据集;205)对验证集和测试集采用和步骤201)步骤202)步骤203)步骤204)相同的处理方式。...

【专利技术属性】
技术研发人员:刘兴宇姜炎宏杨木润
申请(专利权)人:沈阳雅译网络技术有限公司
类型:发明
国别省市:

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

1