一种翻译系统及其训练、应用方法以及相关设备技术方案

技术编号:38946770 阅读:11 留言:0更新日期:2023-09-25 09:43
本申请提供一种翻译系统及其训练、应用方法与相关设备,该翻译系统包括第一语言模型和第二语言模型,第一语言模型包括第一编码器、第一对齐编码器、第一对齐解码器和第一解码器,第二语言模型包括第二编码器、第二对齐编码器、第二对齐解码器和第二解码器,通过平行语料对所述第一语言模型和所述第二语言模型进行训练,得到训练好的所述第一语言模型和所述第二语言模型;通过对训练好的第一语言模型和第二语言模型中的编码器和解码器进行组合,即可实现第一语言和第二语言之间的相互翻译。通过使用本申请提供的翻译系统,能够提高翻译系统的训练效率,节约计算资源,并能够提高翻译系统的可扩展性。译系统的可扩展性。译系统的可扩展性。

【技术实现步骤摘要】
一种翻译系统及其训练、应用方法以及相关设备


[0001]本申请涉及机器翻译领域,尤其涉及一种翻译系统及其训练、应用方法以及相关设备。

技术介绍

[0002]机器翻译是指将一种语言的语句翻译为具有相同含义的另一种语言的语句。机器翻译包括基于规则的机器翻译、基于统计的机器翻译和基于神经网络的机器翻译。基于神经网络的机器翻译今年来迅速崛起,相比于基于规则和基于统计的机器翻译,基于神经网络的机器翻译的模型构建更加简单,翻译也更加准确性。因此,如何提供一种基于神经网络的机器翻译系统是一个亟待解决的技术问题。

技术实现思路

[0003]本申请提供一种翻译系统及其训练、应用方法以及相关设备,能够提高翻译系统的训练效率,节约计算资源,并能够提高翻译系统的可扩展性。
[0004]第一方面,本申请提供一种翻译系统的训练方法,该翻译系统包括第一语言模型和第二语言模型,其中,第一语言模型包括第一编码器、第一对齐编码器、第一对齐解码器和第一解码器,第二语言模型包括第二编码器、第二对齐编码器、第二对齐解码器和第二解码器,该方法包括:
[0005]获取基于第一语言的语料训练得到的第一语言的第一编码器和第一解码器,获取基于第二语言的语料训练得到的第一语言的第二编码器和第二解码器;其中,第一编码器用于对第一语言表述的语句进行编码,输出对应的向量,第一解码器用于对输入的向量进行解码,输出第一语言表述的语句;第二编码器用于对第二语言表述的语句进行编码,输出对应的向量,第二解码器用于对输入的向量进行解码,输出第二语言表述的语句;
[0006]基于平行语料对第一语言模型和第二语言模型进行联合训练,得到训练好的第一对齐编码器、训练好的第一对齐解码器、训练好的第二对齐编码器和训练好的第二对齐解码器,平行语料包括第一语言和第二语言的同义语句的集合;
[0007]其中,第一对齐编码器用于将第一编码器输出的向量转换到对齐向量空间,第二对齐编码器用于将第二编码器输出的向量转换到对齐向量空间;第一对齐解码器用于将第一对齐编码器的输出转换到第一解码器的输入对应的向量空间中,以使第一解码器对第一对齐解码器的输出进行解码,输出第一语言的语句;第二对齐解码器用于将第二对齐编码器的输出转换到第二解码器的输入的向量空间中,以使第二解码器对第二对齐解码器的输出进行解码,输出第二语言的语句。
[0008]通过构建本申请提供的翻译系统,在需要实现多种语言之间的相互翻译时,只需要先分别训练各种语言对应的单语言模型;然后在各个单语言模型的编码器和解码器之间增加对齐编码器和对齐解码器,构建本申请提供的翻译系统;最后通过平行语料训练构建的翻译系统,就可以得到训练好的能够实现多种语言之间相互翻译的翻译系统。从而在进
行翻译时,只需要将上述训练好的翻译系统中源语言对应的编码器和对齐编码器以及目标语言对应的解码器和对齐解码器进行组合,即可得到将源语言翻译为目标语言的翻译模型。例如实现A语言和B语言的相互翻译,只需要将训练好的翻译系统中,A语言对应的编码器和对齐编码器以及B语言对应的解码器和对齐解码器进行组合,即可得到将A语言翻译为B语言的模型;将B语言对应的编码器和对齐编码器以及A语言对应的解码器和对齐解码器进行组合,即可得到将B语言翻译为A语言的模型。
[0009]另外,在训练好能够实现第一语言和第二语言这两种语言相互翻译的系统之后,如果要增加第三语言,实现三种语言之间的相互翻译,只需要单独训练第三语言对应的单语言模型,然后再将第一语言模型、第二语言模型和第三语言模型一起联合训练,即可得到能够实现三种语言之间相互翻译的模型,而不需要分别训练将第一语言翻译为第三语言的模型、将第三语言翻译到第一语言、将第二语言翻译到第三语言的模型以及将第三语言翻译到第二语言的模型。因此使用本申请提供的翻译模型,在进行扩展时,能够减少需要训练的模型数量,提高训练效率,提高系统的扩展性。
[0010]在一种可能的实现方式中,上述基于平行语料对第一语言模型和第二语言模型进行联合训练,包括:通过第一对齐编码器对第一编码器输出的第一语句对应的向量进行编码,以及通过第二对齐编码器对第二编码器输出的第二语句对应的向量进行编码,第一语句和第二语句是使用两种语言表述的具有相同语义的语句;基于第一对齐编码器的输出和第二对齐编码器的输出,更新第一对齐编码器的参数和第二对齐编码器的参数;通过第一对齐解码器对第一对齐编码器的输出进行解码,基于第一对齐解码器的输出和第一编码器的输出,更新第一对齐解码器的参数和第一对齐编码器的参数;通过第二对齐解码器对第二对齐编码器的输出进行解码,基于第二对齐解码器的输出和第二编码器的输出,更新第二对齐解码器的参数和第二对齐编码器的参数。
[0011]第一对齐编码器和第二对齐编码器将第一语句对应的向量和第二语句对应的向量转换到相同的向量空间,即上述对齐向量空间,通过第一对齐编码器的输出和第二对齐编码器的输出更新第一对齐编码器的参数和第二对齐编码的参数,能够使两种语言表达的具有相同语义的语句,在通过第一对齐编码和第二对齐编码器分别进行编码后输出的向量更加接近。第一对齐解码器将第一对齐编码器的输出转换到第一解码器的输入对应的向量空间,由于第一对齐解码器输出的向量与第一编码器输出的向量都属于第一解码器的输入对应的向量空间,通过第一对齐解码器的输出与第一编码器的输出更新第一对齐解码器的参数和第一对齐编码器的参数,能够使得第一对齐解码器的输出与第一编码器的输出更接近,使得第一对齐解码器的输出被第一解码器解码后得到的语句,更加接近输入到第一编码器的语句。
[0012]在一种可能的实现方式中,基于第一对齐编码器的输出和第二对齐编码器的输出,更新第一对齐编码器的参数和第二对齐编码器的参数,包括:基于对齐编码器的输出和第二对齐编码器的输出,计算语义对齐损失,根据语义对齐损失更新第一对齐编码器的参数和第二对齐编码器的参数。
[0013]通过第一对齐编码器的输出和第二对齐编码器的输出计算语义损失,更新第一对齐编码器的参数和第二对齐编码的参数,能够使两种语言表达的具有相同语义的语句,在通过第一对齐编码和第二对齐编码器分别进行编码后输出的向量更加接近。
[0014]在一种可能的实现方式中,上述翻译系统还包括第三语言模型,第三语言模型包括第三编码器、第三对齐编码器、第三对齐解码器和第三解码器;上述方法还包括:
[0015]获取基于第三语言的语料训练得到的第三语言的第三编码器和第三解码器;
[0016]通过平行语料对第一语言模型和第二语言模型进行训练,得到训练好的第一语言模型和第二语言模型,包括:
[0017]通过平行语料对第一语言模型、第二语言模型和第三语言模型进行联合训练,得到训练好的第一语言模型、第二语言模型和第三语言模型,平行语料包括第一语言、第二语言和第三语言的同义语句的集合;
[0018]其中,第三对齐编码器用于将第三编码器输出的向量转换到对齐向量空间;第三对齐解码器用于将第三对齐编码器的输出转换到第三解码器的输入对应的向量本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种翻译系统的训练方法,其特征在于,所述翻译系统包括第一语言模型和第二语言模型,所述第一语言模型包括第一编码器、第一对齐编码器、第一对齐解码器和第一解码器,所述第二语言模型包括第二编码器、第二对齐编码器、第二对齐解码器和第二解码器,所述方法包括:获取基于第一语言的语料训练得到的所述第一语言的第一编码器和所述第一解码器,获取基于第二语言的语料训练得到的所述第一语言的所述第二编码器和所述第二解码器;基于平行语料对所述第一语言模型和所述第二语言模型进行联合训练,得到训练好的第一对齐编码器、训练好的第一对齐解码器、训练好的第二对齐编码器和训练好的第二对齐解码器,所述平行语料包括所述第一语言和所述第二语言的同义语句的集合;其中,所述第一对齐编码器用于将所述第一编码器输出的向量转换到对齐向量空间,所述第二对齐编码器用于将所述第二编码器输出的向量转换到所述对齐向量空间;所述第一对齐解码器用于将所述第一对齐编码器的输出转换到所述第一解码器的输入对应的向量空间中,以使所述第一解码器对所述第一对齐解码器的输出进行解码,输出第一语言的语句;所述第二对齐解码器用于将所述第二对齐编码器的输出转换到所述第二解码器的输入的向量空间中,以使所述第二解码器对所述第二对齐解码器的输出进行解码,输出第二语言的语句。2.根据权利要求1所述的方法,其特征在于,所述基于平行语料对所述第一语言模型和所述第二语言模型进行联合训练,包括:通过第一对齐编码器对第一编码器输出的第一语句对应的向量进行编码,以及通过第二对齐编码器对第二编码器输出的第二语句对应的向量进行编码,所述第一语句和所述第二语句是使用两种语言表述的具有相同语义的语句;基于所述第一对齐编码器的输出和所述第二对齐编码器的输出,更新所述第一对齐编码器的参数和所述第二对齐编码器的参数;通过所述第一对齐解码器对所述第一对齐编码器的输出进行解码,基于所述第一对齐解码器的输出和所述第一编码器的输出,更新所述第一对齐解码器的参数和所述第一对齐编码器的参数;通过所述第二对齐解码器对所述第二对齐编码器的输出进行解码,基于所述第二对齐解码器的输出和所述第二编码器的输出,更新所述第二对齐解码器的参数和所述第二对齐编码器的参数。3.根据权利要求2所述的方法,其特征在于,所述基于所述第一对齐编码器的输出和所述第二对齐编码器的输出,更新所述第一对齐编码器的参数和所述第二对齐编码器的参数,包括:基于所述对齐编码器的输出和所述第二对齐编码器的输出,计算语义对齐损失,根据所述语义对齐损失更新所述第一对齐编码器的参数和所述第二对齐编码器的参数。4.根据权利要求1

3任一项所述的方法,其特征在于,所述翻译系统还包括第三语言模型,所述第三语言模型包括第三编码器、第三对齐编码器、第三对齐解码器和第三解码器;所述方法还包括:获取基于第三语言的语料训练得到的所述第三语言的第三编码器和所述第三解码器;所述通过平行语料对所述第一语言模型和所述第二语言模型进行训练,得到训练好的
所述第一语言模型和所述第二语言模型,包括:通过平行语料对所述第一语言模型、所述第二语言模型和所述第三语言模型进行联合训练,得到训练好的所述第一语言模型、训练好的所述第二语言模型和训练好的所述第三语言模型,所述平行语料包括所述第一语言、所述第二语言和所述第三语言的同义语句的集合;其中,所述第三对齐编码器用于将所述第三编码器输出的向量转换到所述对齐向量空间;所述第三对齐解码器用于将所述第三对齐编码器的输出转换到所述第三解码器的输入对应的向量空间,以使所述第三解码器对所述第三对齐解码器的输出进行解码,输出第三语言的语句。5.根据权利要求4所述的方法,其特征在于,通过平行语料对所述第一语言模型、所述第二语言模型和所述第三语言模型进行联合训练,包括:通过第一对齐编码器对第一编码器输出的第一语句对应的向量进行编码、通过第二对齐编码器对第二编码器输出的第二语句对应的向量进行编码以及通过第三对齐编码器对第三编码器输出的第三语句进行编码,所述第一语句、所述第二语句和所述第三语句是使用三种语言表述的具有相同语义的语句;基于所述第一对齐编码器的输出、所述第二对齐编码器的输出和所述第三对齐编码器的输出,更新所述第三对齐编码器的参数;通过所述第三对齐解码器对所述第三对齐编码器的输出进行解码,基于所述第三对齐解码器的输出和所述第三编码器的输出,更新所述第三对齐解码器的参数和所述第三对齐编码器的参数。6.一种翻译方法,其特征在于,包括:通过第一编码器对输入的第一语言的第一源语句进行编码,输出所述第一源语句对应的向量集合,所述第一源语句对应的向量集合中的向量属于第一解码器的输入对应的向量空间;通过第一对齐编码器将所述第一源语句对应的向量集合中的向量转换为对齐向量空间中的第一特征向量集合;通过第二对齐解码器将所述第一特征向量集合中的向量转换为第二解码器的输入对应的向量空间的向量;通过第二解码器对所述第二对齐解码器输出的向量进行解码,输出所述第一源语句对应的所述第二语言的翻译语句。7.根据权利要求6所述的方法,其特征在于,还包括:通过第二编码器对输入的所述第二语言的第二源语句进行编码,输出所述第二源语句对应的向量集合,所述第二源语句对应的向量集合中的向量属于所述第二解码器的输入对应的向量空间;通过第二对齐编码器将所述第二解码器的输入对应的向量集合中的向量转换为所述对齐向量空...

【专利技术属性】
技术研发人员:史佳欣常建龙宁可陈鑫张恒亨田奇
申请(专利权)人:华为云计算技术有限公司
类型:发明
国别省市:

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

1