本技术涉及人工智能,尤其涉及一种机器翻译方法、装置及存储介质。
背景技术:
1、目前基于神经网络的机器翻译技术取得了突破性进展,并超越了传统的统计机器翻译,成为主流的机器翻译技术。但是,目前的翻译系统并没有对译文长度进行有效控制,导致在模型输出完译文前,译文的长度是不可知的。
2、随着全场景、可穿戴设备的普及,各种设备的屏幕显示大小、各种应用的显示区域多种多样,对于翻译结果的呈现提出了新的要求,像手表、增强现实(augmented reality,ar)眼镜等显示屏幕小的设备,可供显示的区域面积较小,需要展示的信息更加密集,翻译的结果要短一些;像平板、智慧屏等屏幕大的设备,有充分的显示区域面积,则对翻译结果的长度要求不高。所以针对全场景设备,需要一种可控译文长度的机器翻译系统,能够根据需要生成长度可控的译文。一个句子的表达方式多种多样,通过句式的变化、实体的简写和别名、语句表达上的省略等手段,可以做到在不损失句子质量的情况下,对译文长度做到可控。
3、相关技术中,针对控制译文长度的问题,可以采用如下方法:在模型训练阶段,根据双语数据中每句话的目标语言和源语言的字符数比值,通过设置两个阈值:上限阈值tmax,下限阈值tmin,将训练数据中每对句子根据如下规则分成三类:比值小于tmin的数据在源语言句首增加标签<short>。比值大于tmax的数据在源语言句首增加标签<long>。比值在tmin和tmax之间的数据在源语言句首增加标签<norm>。也即是将训练数据根据长度比值划分为三个领域,将控制译文长度的问题转换为领域适配问题。
4、在模型推理解码即翻译阶段,根据实际需求,在源语言句首添加不同类型的标签进行解码。<short>标签会使得模型倾向于解码出长度较短的句子,<normal>标签会使得模型倾向于解码出长度相当的句子,<long>标签会使得模型倾向于解码出长度较长的句子。
5、但是在上述方法中,虽然不同的标签能够翻译出长度不同的译文,但是依然不能对译文的长度做到准确控制。
技术实现思路
1、有鉴于此,提出了一种机器翻译方法、装置及存储介质。本技术实施例通过根据目标显示区域的区域信息和原文信息确定目标译文长度,从而生成长度可控的目标译文信息,解决了相关技术中译文显示效果不佳的问题,可以适配不同的显示区域,保证了机器翻译结果的显示效果。
2、第一方面,本技术的实施例提供了一种机器翻译方法,所述方法包括:
3、获取源语言的原文信息;
4、根据目标显示区域的区域信息和所述原文信息,确定目标译文长度,所述目标显示区域为用于显示译文信息的区域;
5、根据所述原文信息和所述目标译文长度,调用机器翻译模型输出得到目标语言的目标译文信息,所述目标语言不同于所述源语言,所述目标译文信息的长度小于或等于所述目标译文长度;
6、在所述目标显示区域中显示所述目标译文信息。
7、在该实现方式中,获取源语言的原文信息,根据目标显示区域的区域信息和原文信息,确定目标译文长度,目标显示区域为用于显示译文信息的区域,根据原文信息和目标译文长度,调用机器翻译模型输出得到目标语言的目标译文信息,目标译文信息的长度小于或等于目标译文长度,并在目标显示区域中显示目标译文信息,即生成长度可控的目标译文信息,解决了相关技术中译文显示效果不佳的问题,可以适配不同的显示区域,保证了机器翻译结果的显示效果。
8、在一种可能的实现方式中,所述根据目标显示区域的区域信息和所述原文信息,确定目标译文长度,包括:
9、获取所述目标显示区域的区域尺寸和字体尺寸;
10、根据所述区域尺寸和所述字体尺寸,确定最大文本长度,所述最大文本长度为所述目标显示区域中显示的字符数量或子词数量的上限值;
11、根据所述最大文本长度和所述原文信息,确定所述目标译文长度。
12、在该实现方式中,获取目标显示区域的区域尺寸和字体尺寸;根据区域尺寸和字体尺寸,确定最大文本长度,最大文本长度为目标显示区域中显示的字符数量或子词数量的上限值;根据最大文本长度和原文信息,确定目标译文长度;使得根据场景,即不同设备的显示区域的区域尺寸,确定目标译文长度,进一步保证了不同设备上的翻译显示效果。
13、在另一种可能的实现方式中,所述根据所述最大文本长度和所述原文信息,确定所述目标译文长度,包括:
14、根据所述原文信息,预测对应的译文信息的第一译文长度;
15、当所述第一译文长度小于或等于所述最大文本长度,将所述第一译文长度确定为所述目标译文长度;
16、当所述第一译文长度大于所述最大文本长度时,将所述第一译文长度的预设比例确定为所述目标译文长度,所述目标译文长度小于所述第一译文长度。
17、在该实现方式中,根据原文信息,预测对应的译文信息的第一译文长度;当第一译文长度小于或等于最大文本长度,将第一译文长度确定为目标译文长度;当第一译文长度大于最大文本长度时,将第一译文长度的预设比例确定为目标译文长度;使得译文长度智能匹配设备的目标显示区域,进一步提高设备上翻译显示效果。
18、在另一种可能的实现方式中,所述方法还包括:
19、当所述目标显示区域的区域尺寸发生调整时,根据调整后的所述目标显示区域的区域尺寸和所述原文信息,确定第二译文长度,所述第二译文长度不同于所述目标译文长度;
20、根据所述原文信息和所述第二译文长度,调用所述机器翻译模型输出得到第二译文信息,所述第二译文信息的长度小于或等于所述第二译文长度,所述第二译文信息不同于所述目标译文信息;
21、在所述目标显示区域中显示所述第二译文信息。
22、在该实现方式中,当目标显示区域的区域尺寸发生调整时,根据调整后的目标显示区域的区域尺寸和原文信息,确定第二译文长度,第二译文长度不同于目标译文长度;根据原文信息和第二译文长度,调用机器翻译模型输出得到第二译文信息,第二译文信息的长度小于或等于第二译文长度,第二译文信息不同于目标译文信息;在目标显示区域中显示第二译文信息;提供了一种屏幕自适应的机器翻译系统,根据目标显示区域的调整变化,重新进行翻译,调整译文信息的长度,从而得到适配调整后的目标显示区域的译文信息。
23、在另一种可能的实现方式中,所述机器翻译模型为基于掩码机制的非自回归翻译(non-autoregressive translation,nat)模型。
24、在该实现方式中,基于掩码机制的非自回归翻译模型的技术特点,能够生成完全长度可控的译文信息。
25、在另一种可能的实现方式中,所述方法还包括:
26、获取多个样本原文;
27、对于每个所述样本原文,生成对应的不同长度的多个样本译文,每个所述样本译文与所述样本原文组成伪双语语料;
28、根据生成的多组所述伪双语语料,训练所述机器翻译模型;
29、其中,所述样本原文的语言为所述源语言和所述目标语言中的一种,所述样本译文的语言为所述源语言和所述目标语言中的另一种。
30、在该实现方式中,获取多个样本原文;对于每个样本原文,生成对应的不同长度的多个样本译文,每个样本译文与样本原文组成伪双语语料;根据生成的多组伪双语语料,训练机器翻译模型;提出了长度多样性的数据增强方法,增加对于同一样本原文的不同长度的多个样本译文,给模型提供多种解码选项,即通过增加训练数据的多样性的表达方式,让模型更容易学习不同表达形式的译文信息,提升了模型的翻译质量。
31、在另一种可能的实现方式中,所述样本原文的语言为所述源语言,所述样本译文的语言为所述目标语言,所述对于每个所述样本原文,生成对应的不同长度的多个样本译文,包括:
32、对于每个所述样本原文,分别采用不同的长度标签进行解码,得到对应的不同长度的多个所述样本译文,所述长度标签指示所述样本译文的长度范围。
33、在该实现方式中,对于每个样本原文,分别采用不同的长度标签进行解码,得到对应的不同长度的多个样本译文,长度标签指示样本译文的长度范围;提出了基于长度标签编码的数据增强方法,增加了伪双语语料的多样性表达。
34、在另一种可能的实现方式中,所述样本原文的语言为所述目标语言,所述样本译文的语言为所述源语言,所述对于每个所述样本原文,生成对应的不同长度的多个样本译文,包括:
35、对于每个所述样本原文,采用随机采样方式进行解码,得到对应的不同长度的多个所述样本译文。
36、在该实现方式中,对于每个样本原文,采用随机采样方式进行解码,得到对应的不同长度的多个样本译文;提出了使用多轮次基于随机采样的数据增强的方法,增加了伪双语语料的多样性表达。
37、第二方面,本技术的实施例提供了一种机器翻译装置,所述装置包括:
38、获取单元,用于获取源语言的原文信息;
39、确定单元,用于根据目标显示区域的区域信息和所述原文信息,确定目标译文长度,所述目标显示区域为用于显示译文信息的区域;
40、输出单元,用于根据所述原文信息和所述目标译文长度,调用机器翻译模型输出得到目标语言的目标译文信息,所述目标语言不同于所述源语言,所述目标译文信息的长度小于或等于所述目标译文长度;
41、显示单元,用于在所述目标显示区域中显示所述目标译文信息。
42、在一种可能的实现方式中,所述确定单元,还用于:
43、获取所述目标显示区域的区域尺寸和字体尺寸;
44、根据所述区域尺寸和所述字体尺寸,确定最大文本长度,所述最大文本长度为所述目标显示区域中显示的字符数量或子词数量的上限值;
45、根据所述最大文本长度和所述原文信息,确定所述目标译文长度。
46、在另一种可能的实现方式中,所述确定单元,还用于:
47、根据所述原文信息,预测对应的译文信息的第一译文长度;
48、当所述第一译文长度小于或等于所述最大文本长度,将所述第一译文长度确定为所述目标译文长度;
49、当所述第一译文长度大于所述最大文本长度时,将所述第一译文长度的预设比例确定为所述目标译文长度,所述目标译文长度小于所述第一译文长度。
50、在另一种可能的实现方式中,所述装置还包括:重新翻译单元;所述重新翻译单元,用于:
51、当所述目标显示区域的区域尺寸发生调整时,根据调整后的所述目标显示区域的区域尺寸和所述原文信息,确定第二译文长度,所述第二译文长度不同于所述目标译文长度;
52、根据所述原文信息和所述第二译文长度,调用所述机器翻译模型输出得到第二译文信息,所述第二译文信息的长度小于或等于所述第二译文长度,所述第二译文信息不同于所述目标译文信息;
53、在所述目标显示区域中显示所述第二译文信息。
54、在另一种可能的实现方式中,所述机器翻译模型为基于掩码机制的nat模型。
55、在另一种可能的实现方式中,所述装置还包括:训练单元;所述训练单元,用于:
56、获取多个样本原文;
57、对于每个所述样本原文,生成对应的不同长度的多个样本译文,每个所述样本译文与所述样本原文组成伪双语语料;
58、根据生成的多组所述伪双语语料,训练所述机器翻译模型;
59、其中,所述样本原文的语言为所述源语言和所述目标语言中的一种,所述样本译文的语言为所述源语言和所述目标语言中的另一种。
60、在另一种可能的实现方式中,所述样本原文的语言为所述源语言,所述样本译文的语言为所述目标语言,所述训练单元,还用于:
61、对于每个所述样本原文,分别采用不同的长度标签进行解码,得到对应的不同长度的多个所述样本译文,所述长度标签指示所述样本译文的长度范围。
62、在另一种可能的实现方式中,所述样本原文的语言为所述目标语言,所述样本译文的语言为所述源语言,所述训练单元,还用于:
63、对于每个所述样本原文,采用随机采样方式进行解码,得到对应的不同长度的多个所述样本译文。
64、第三方面,本技术的实施例提供了一种机器翻译装置,所述装置包括:
65、处理器;
66、用于存储处理器可执行指令的存储器;
67、其中,所述处理器被配置为执行所述指令时实现第一方面或第一方面的任意一种可能的实现方式提供的方法。
68、第四方面,本技术的实施例提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现第一方面或第一方面的任意一种可能的实现方式提供的方法。
69、第五方面,本技术的实施例提供了一种计算机程序产品,所述计算机程序产品包括计算机可读代码,或者承载有所述计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在计算设备中运行时,所述计算设备中的处理器执行第一方面或第一方面的任意一种可能的实现方式提供的方法。