一种基于预训练编码网络的机器翻译方法及装置

专利2024-04-13  98



1.本发明涉及机器翻译技术领域,尤其涉及一种基于预训练编码网络的机器翻译方法及装置。


背景技术:

2.随着经济的发展,国际间的交流日益深入,人们对语言间翻译的需求也与日俱增。机器翻译作为能够自动将不同语种间进行翻译的技术,起到了越来越重要的作用。
3.目前机器翻译模型的训练离不开大规模且高质量的双语平行数据,双语平行数据通常是请人工译员进行翻译得到的,构建大规模的双语平行数据需要耗费巨大的人力资源和时间成本,往往难以获取。作为对比,单语数据不仅数量庞大,而且极其容易获取,因此,如何利用单语数据提升机器翻译的翻译性能是一个值得关注的问题。
4.传统机器翻译通常会使用前向翻译(forward translation)和反向翻译技术(backward translation),即采用已有的机器翻译模型将源端或目标端数据翻译为另一端数据,以构成伪平行数据,然后以伪平行数据和真正的平行数据作为训练数据集,对机器翻译模型进行训练,从而将训练好的机器翻译模型投入使用。
5.但是,上述前向翻译和反向翻译技术存在两个方面的不足:一方面,由于伪平行数据的构建依赖于已有机器翻译模型,而机器翻译模型的翻译质量会受很多因素影响,从而不可避免地会引入噪声;另一方面,机器翻译模型的翻译速度较慢,难以在较短的时间内将大量的单语数据进行翻译,限制了数据的使用规模。
6.因此,现有技术中无法充分高效地利用单语数据提升机器翻译的翻译质量的问题,是机器翻译技术领域亟待解决的技术问题。


技术实现要素:

7.本发明提供一种基于预训练编码网络的机器翻译方法及装置,用以克服现有技术中无法充分高效地利用单语数据提升机器翻译的翻译质量的缺陷,有效提升了机器翻译的翻译质量和效率。
8.一方面,本发明提供一种基于预训练编码网络的机器翻译方法,包括:获取目标语言数据集以及双语平行数据集;基于机器翻译任务和降噪自编码任务,利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型;将待翻译源语言数据输入至所述机器翻译模型,得到机器翻译结果。
9.进一步地,所述原始机器翻译模型包括预训练编码网络,所述预训练编码网络包括源语言预训练编码网络和目标语言预训练编码网络;利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,之前还包括:获取源语言数据集,并利用所述源语言数据集对源语言编码网络进行训练,得到源语言预训练编码网络;利用所述目标语言数据集对目标语言编码网络进行训练,得到目标语言预训练编码网络。
10.进一步地,所述原始机器翻译模型包括适配网络和解码网络;所述利用所述目标
语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型,包括:根据所述目标语言数据集和所述双语平行数据集,通过预设损失函数训练所述适配网络和所述解码网络。
11.进一步地,所述预设损失函数包括机器翻译损失函数和降噪自编码损失函数;所述机器翻译损失函数的公式如下:
12.l
mt
=-log p(y|x)
13.其中,x为所述双语平行数据集中的源语言数据,y为所述双语平行数据集中的目标语言数据;
14.所述降噪自编码损失函数的公式如下:
15.l
dae
=-log p(y|y

)
16.其中,y为所述目标语言数据集中的目标语言单语数据,y

为将所述目标语言单语数据中预设数量词汇用特殊词汇替换后得到的目标语言噪声数据。
17.进一步地,所述适配网络由多头自注意力层、编码器-适配器多头注意力层和前馈网络层构成。
18.进一步地,所述解码网络由遮掩自注意力层、适配器-解码器注意力层和前馈网络层构成。
19.第二方面,本发明还提供一种基于预训练编码网络的机器翻译装置,包括:数据获取模块,用于获取源语言数据集、目标语言数据集以及双语平行数据集;模型训练模块,用于基于机器翻译任务和降噪自编码任务,利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型;语言翻译模块,用于将待翻译源语言数据输入至所述机器翻译模型,得到机器翻译结果。
20.进一步地,所述原始机器翻译模型包括预训练编码网络,所述预训练编码网络包括源语言预训练编码网络和目标语言预训练编码网络;所述基于预训练编码网络的机器翻译装置还包括:预训练模块,用于获取源语言数据集,并利用所述源语言数据集对源语言编码网络进行训练,得到源语言预训练编码网络;利用所述目标语言数据集对目标语言编码网络进行训练,得到目标语言预训练编码网络。
21.进一步地,所述原始机器翻译模型包括适配网络和解码网络;所述模型训练模块还用于根据所述目标语言数据集和所述双语平行数据集,通过预设损失函数训练所述适配网络和所述解码网络。
22.进一步地,所述模型训练模块还包括损失函数模块,所述损失函数模块通过预设损失函数训练所述适配网络和所述解码网络;所述预设损失函数包括机器翻译损失函数和降噪自编码损失函数;所述机器翻译损失函数的公式如下:
23.l
mt
=-log p(y|x)
24.其中,x为所述双语平行数据集中的源语言数据,y为所述双语平行数据集中的目标语言数据;
25.所述降噪自编码损失函数的公式如下:
26.l
dae
=-log p(y|y

)
27.其中,y为所述目标语言数据集中的目标语言单语数据,y

为将所述目标语言单语数据中预设数量词汇用特殊词汇替换后得到的目标语言噪声数据。
28.进一步地,所述适配网络由多头自注意力层、编码器-适配器多头注意力层和前馈网络层构成。
29.进一步地,所述解码网络由遮掩自注意力层、适配器-解码器注意力层和前馈网络层构成。
30.第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的基于预训练编码网络的机器翻译方法的步骤。
31.第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的基于预训练编码网络的机器翻译方法的步骤。
32.第五方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述的基于预训练编码网络的机器翻译方法的步骤。
33.本发明提供的基于预训练编码网络的机器翻译方法,通过基于机器翻译任务和降噪自编码任务,利用获取的目标语言数据集和双语平行数据集,对原始机器翻译模型进行训练,得到机器翻译模型,将待翻译源语言数据输入到机器翻译模型中,便能得到相应的机器翻译结果,该方法并未使用伪平行数据,不会存在现有技术中噪声引入的问题,并且,在编码网络和解码网络的基础上引入了适配网络,通过充分有效地利用大规模单语数据,大大提升了机器翻译的翻译质量和效率。
附图说明
34.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
35.图1为现有技术提供的机器翻译模型的训练流程图;
36.图2为本发明提供的基于预训练编码网络的机器翻译方法的流程示意图;
37.图3为本发明提供的基于预训练编码网络的机器翻译模型训练示意图;
38.图4为本发明提供的基于预训练编码网络的机器翻译模型架构图;
39.图5为本发明提供的基于预训练编码网络的机器翻译装置的结构示意图;
40.图6为本发明提供的电子设备的结构示意图。
具体实施方式
41.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
42.图1示出了现有技术提供的机器翻译模型的训练流程图。如图1所示,利用已有机器翻译模型对单语数据进行翻译,从而得到相应的伪平行数据,将伪平行数据和平行数据作为训练数据集,对源语言-目标语言翻译模型进行训练,得到训练好的源语言-目标语言
翻译模型。上述现有翻译方案存在两个明显的缺陷,一是噪声的引入会影响翻译质量,二是通过已有的机器翻译模型进行单语数据的翻译,速度慢,限制了数据使用的规模。
43.考虑及此,本发明提供了一种基于预训练编码网络的机器翻译方法。具体地,图2示出了本发明所提供的基于预训练编码网络的机器翻译方法的流程示意图。如图2所示,该机器翻译方法包括:
44.s201,获取目标语言数据集以及双语平行数据集;
45.在本步骤中,目标语言数据集由目标语言数据构成,双语平行数据集由源语言数据和其对应的目标语言数据构成。双语平行数据集中的源语言数据和目标语言数据具有对应的翻译关系,根据不同端的翻译,可将双语平行数据集划分为基于源语言数据的双语平行数据和基于目标语言数据的双语平行数据。
46.其中,基于源语言数据的双语平行数据,是指人工译员将已有的源语言数据翻译到目标语言数据,构成的双语平行数据;基于目标语言数据的双语平行数据,是指人工译员将已有的目标语言数据翻译到源语言数据而构成的双语平行数据。
47.目标语言数据集和双语平行数据集均可以从现有的语料库中获取,双语平行数据集还可以通过人工译员获得。
48.s202,基于机器翻译任务和降噪自编码任务,利用目标语言数据集和双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型。
49.可以理解的是,本发明通过联合学习两个任务,即机器翻译任务和降噪自编码任务,完成对原始机器翻译模型的训练。具体地,利用步骤s201获取的目标语言数据集和双语平行数据集,对原始机器翻译模型进行训练,得到训练好的原始机器翻译模型,即机器翻译模型。其中,原始机器翻译模型包括预训练编码网络、适配网络和解码网络。
50.机器翻译任务是为了使机器翻译模型能够最大化地完成从源语言数据到目标语言数据的翻译。降噪自编码任务则是为了将预训练编码网络的表示能力迁移到解码。
51.需要说明的是,原始机器翻译模型中的预训练编码网络是预先训练好的,这一步骤中对原始机器翻译模型的训练,主要是指对原始机器翻译模型中适配网络和解码网络的训练,预训练编码网络的参数在这一训练过程中并不会更新。
52.s203,将待翻译源语言数据输入至机器翻译模型,得到机器翻译结果。
53.可以理解的是,在步骤s202得到训练好的机器翻译模型之后,将需要翻译的源语言数据,即待翻译源语言数据输入到机器翻译模型中,机器翻译模型输出机器翻译结果。机器翻译结果为生成的与待翻译源语言数据相对应的目标语言数据中词汇的生成概率。
54.在本实施例中,通过基于机器翻译任务和降噪自编码任务,利用获取的目标语言数据集和双语平行数据集,对原始机器翻译模型进行训练,得到机器翻译模型,将待翻译源语言数据输入到机器翻译模型中,便能得到相应的机器翻译结果,该方法并未使用伪平行数据,不会存在现有技术中噪声引入的问题,并且,在编码网络和解码网络的基础上引入了适配网络,通过充分有效地利用大规模单语数据,大大提升了机器翻译的翻译质量和效率。
55.在上述实施例的基础上,进一步地,预训练编码网络包括源语言预训练编码网络和目标语言预训练编码网络;
56.利用目标语言数据集和双语平行数据集对原始机器翻译模型进行训练,之前还包括:获取源语言数据集,并利用源语言数据集对源语言编码网络进行训练,得到源语言预训
练编码网络;利用目标语言数据集对目标语言编码网络进行训练,得到目标语言预训练编码网络。
57.可以理解的是,原始机器翻译模型中的预训练编码网络是预先训练好的,即在利用目标语言数据集和双语平行数据集对原始机器翻译模型进行训练之前,需要对相关编码网络进行训练,得到预训练编码网络。
58.预训练编码网络包括源语言预训练编码网络和目标语言预训练编码网络。其中,源语言预训练编码网络通过训练源语言编码网络得到,目标语言编码网络通过训练目标语言编码网络得到。
59.训练源语言编码网络,得到源语言预训练编码网络,具体地,获取源语言数据集,利用源语言数据集对源语言编码网络进行训练,得到源语言预训练编码网络。具体训练过程为:对于源语言数据集dx中的单语数据,将中的词按预设比例随机替换成特殊符号,得到噪声版本,以及被替换掉的词,源语言预训练编码网络的训练目标为:
60.l
x
=-log p(x-|x

)
61.其中,预设比例可以根据实际情况进行设置,在一个具体的实施例中,将x中的词按预设比例15%随机替换成特殊符号[mask]。
[0062]
训练目标语言编码网络,得到目标语言预训练编码网络,具体地,利用目标语言数据集对目标语言编码网络进行训练,得到目标语言预训练编码网络。具体训练过程为:对于目标语言数据集dy中的单语数据y,将y中的词按预设比例随机替换成特殊符号,得到噪声版本y

,以及被替换掉的词y-,目标语言预训练编码网络的训练目标为:
[0063]
ly=-log p(y-|y

)
[0064]
其中,预设比例可以根据实际情况进行设置,在一个具体的实施例中,将y中的词按预设比例20%随机替换成特殊符号[mask]。
[0065]
在本实施例中,通过在对原始机器翻译模型进行训练之前,利用源语言数据集和目标语言数据集分别对源语言编码网络和目标语言编码网络进行训练,得到相应的源语言预训练编码网络和目标语言预训练编码网络,即预训练编码网络,预训练编码网络充分利用了大量单语数据学习单语句子的表示,并且,由于预训练与机器翻译的目标存在差异,本实施例引入了适配网络,用于利用预训练编码网络中的单语句子表示,并弥补预训练与翻译任务之间的差异。
[0066]
在上述实施例的基础上,进一步地,利用目标语言数据集和双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型,包括:根据目标语言数据集和双语平行数据集,通过预设损失函数训练适配网络和解码网络。
[0067]
可以理解的是,在基于机器翻译任务和降噪自编码任务,利用目标语言数据集和双语平行数据集对原始机器翻译模型进行训练的过程中,通过预设损失函数对适配网络和解码网络进行训练。预设损失函数包括机器翻译损失函数和降噪自编码损失函数。
[0068]
其中,通过机器翻译损失函数训练适配网络和解码网络,对应于上文提到的机器翻译任务,用于使源语言数据能够最大化地翻译到目标语言数据,机器翻译损失函数的公式如下:
[0069]
l
mt
=-log p(y|x)
[0070]
其中,x为双语平行数据集中的源语言数据,y为双语平行数据集中的目标语言数
据;
[0071]
通过降噪自编码损失函数训练适配网络和解码网络,对应于上文提到的降噪自编码任务,用于将目标语言预训练编码网络的表示能力迁移到解码网络,降噪自编码损失函数的公式如下:
[0072]
l
dae
=-log p(y|y

)
[0073]
其中,y为目标语言数据集中的目标语言单语数据,y

为将目标语言单语数据中预设数量词汇用特殊词汇替换后得到的目标语言噪声数据。
[0074]
需要注意的是,在机器翻译任务和降噪自编码任务的学习过程,即原始机器翻译模型的训练过程中,适配网络和解码网络实时共享同一套参数,整个训练过程的训练目标为:
[0075]
l=l
mt
+l
dae
[0076]
其中,l
mt
为机器翻译损失函数,l
dae
为降噪自编码损失函数。
[0077]
还需要注意的是,在对原始机器翻译模型的适配网络和解码网络进行训练的过程中,源语言预训练编码网络和目标语言预训练编码网络的网络参数不进行更新,只有适配网络和解码网络进行相应参数的更新。
[0078]
图3示出了本发明所提供的基于预训练编码网络的机器翻译模型训练示意图。如图3所示,在机器翻译任务中,源语言预训练编码网络与适配网络相连,适配网络连接解码网络;而在降噪自编码任务中,目标语言预训练编码网络与适配网络相连,适配网络连接解码网络。从图3还可以看出,最下面的源语言预训练编码网络和目标语言预训练编码网络在训练过程中并不会进行参数更新,而适配网络和解码网络在两个任务的学习过程中,共享同一套参数。
[0079]
需要说明的是,机器翻译任务中的“适配网络”和“解码网络”,与降噪自编码任务中的“适配网络”和“解码网络”,分别为同一适配网络和编码网络。
[0080]
在本实施例中,通过机器翻译损失函数和降噪自编码任务对原始机器翻译模型进行训练,具体地,通过在训练阶段同时学习机器翻译任务和降噪自编码任务,使得机器翻译模型能够充分利用源语言预训练编码网络和目标语言预训练编码网络中学习到的表示,从而提升机器翻译模型的表示学习能力,从而提升机器翻译的翻译质量。
[0081]
在上述实施例的基础上,进一步地,适配网络由多头自注意力层、编码器-适配器多头注意力层和前馈网络层构成,解码网络由遮掩自注意力层、适配器-解码器注意力层和前馈网络层构成。
[0082]
可以理解的是,图4示出了本发明所提供的基于预训练编码网络的机器翻译模型架构图。如图4所示,本实施例中机器翻译模型包括预训练编码网络、适配网络和解码网络。
[0083]
其中,预训练编码网络所包括的源语言预训练编码网络和目标语言编码网络均采用bert(bidirectional encoder representations from transformer)模型的结构。bert模型是基于transformer的双向编码表示,它是一个预训练模型,模型训练时的两个任务是预测句子中被掩盖的词以及判断输入的两个句子是不是上下句。从图4可以看出,预训练编码网络由多头自注意力层和前馈网络层构成。
[0084]
适配网络由6个结构相同的神经网络层堆叠构成,每一神经网络包括3个子层,每个子层由多头自注意力层、编码器-适配器多头注意力层和前馈网络层构成。适配器的编码
器-适配器多头注意力层用于选择性提取源语言预训练编码网络或目标语言预训练编码网络学习到的表示,并通过多头注意力层和前馈网络层进行表示的进一步增强。
[0085]
解码网络采用与transformer解码器类似的结构,也包含6个神经网络层,每一神经网络层包括3个子层,每个子层由遮掩自注意力层、适配器-解码器注意力层以及前馈网络层构成。适配器-解码器注意力层用于选择性提取适配器从源语言预训练编码网络或目标语言预训练编码网络提取到的表示,并通过遮掩自注意力层和前馈网络层进行表示的进一步增强。
[0086]
可以理解的是,在训练机器翻译模型时,图4中的预训练编码网络可以为源语言预训练编码网络或目标语言预训练编码网络,即预训练编码网络的输入可以为源语言词向量或目标语言词向量。同样地,适配网络可以选择性提取源语言预训练编码网络或目标语言预训练编码网络学习到的表示,即适配网络的输入也可以为源语言词向量或目标语言词向量。解码网络的输入为目标语言词向量。
[0087]
训练过程中,预训练编码网络的输出与适配网络每一子层的编码器-适配器多头注意力层相连,适配网络的输出与解码网络每一子层的适配器-解码器注意力层相连。
[0088]
需要注意的是,在正式使用时,预训练编码网络中仅源语言预训练编码网络起作用,目标语言预训练编码网络不参与正式翻译过程。
[0089]
在本实施例中,通过限定适配网络和解码网络的网络结构,具体地,适配网络由多头自注意力层、编码器-适配器多头注意力层和前馈网络层构成,解码网络由遮掩自注意力层、适配器-解码器注意力层和前馈网络层构成,其中,适配网络利用了预训练编码网络中的单语句子表示,并弥补了预训练与翻译任务之间的差异,解码网络通过适配网络的传递利用预训练编码网络中的单语句子表示,增强了解码网络的表达能力。
[0090]
图5示出了本发明所提供的基于预训练编码网络的额机器翻译装置的结构示意图。如图5所示,该机器翻译装置包括:数据获取模块501,用于获取源语言数据集、目标语言数据集以及双语平行数据集;模型训练模块502,用于基于机器翻译任务和降噪自编码任务,利用目标语言数据集和双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型;原始机器翻译模型包括预训练编码网络、适配网络和解码网络;语言翻译模块503,用于将待翻译源语言数据输入至机器翻译模型,得到机器翻译结果。
[0091]
本发明提供的基于预训练编码网络的额机器翻译装置,与上文描述的基于预训练编码网络的额机器翻译方法可相互对应参照,在此不再赘述。
[0092]
在本实施例中,通过模型训练模块502基于机器翻译任务和降噪自编码任务,利用数据获取模块501获取的目标语言数据集和双语平行数据集,对原始机器翻译模型进行训练,得到机器翻译模型,语言翻译模块503将待翻译源语言数据输入到机器翻译模型中,便能得到相应的机器翻译结果,该装置并未使用伪平行数据,不会存在现有技术中噪声引入的问题,并且,在编码网络和解码网络的基础上引入了适配网络,通过充分有效地利用大规模单语数据,大大提升了机器翻译的翻译质量和效率。
[0093]
进一步地,在上述实施例的基础上,原始机器翻译模型包括预训练编码网络,预训练编码网络包括源语言预训练编码网络和目标语言预训练编码网络;基于预训练编码网络的机器翻译装置还包括:预训练模块,用于获取源语言数据集,并利用源语言数据集对源语言编码网络进行训练,得到源语言预训练编码网络;利用目标语言数据集对目标语言编码
网络进行训练,得到目标语言预训练编码网络。
[0094]
可以理解的是,原始机器翻译模型中的预训练编码网络是预先训练好的,即在利用目标语言数据集和双语平行数据集对原始机器翻译模型进行训练之前,需要对相关编码网络进行训练,得到预训练编码网络。
[0095]
预训练编码网络包括源语言预训练编码网络和目标语言预训练编码网络。其中,源语言预训练编码网络通过训练源语言编码网络得到,目标语言编码网络通过训练目标语言编码网络得到。
[0096]
训练源语言编码网络,得到源语言预训练编码网络,具体地,获取源语言数据集,利用源语言数据集对源语言编码网络进行训练,得到源语言预训练编码网络。具体训练过程为:对于源语言数据集d
x
中的单语数据x,将x中的词按预设比例随机替换成特殊符号,得到噪声版本x

,以及被替换掉的词x-,源语言预训练编码网络的训练目标为:
[0097]
l
x
=-log p(x-|x

)
[0098]
其中,预设比例可以根据实际情况进行设置,在一个具体的实施例中,将中的词按预设比例15%随机替换成特殊符号[mask]。
[0099]
训练目标语言编码网络,得到目标语言预训练编码网络,具体地,利用目标语言数据集对目标语言编码网络进行训练,得到目标语言预训练编码网络。具体训练过程为:对于目标语言数据集dy中的单语数据y,将y中的词按预设比例随机替换成特殊符号,得到噪声版本y

,以及被替换掉的词y-,目标语言预训练编码网络的训练目标为:
[0100]
ly=-log p(y-|y

)
[0101]
其中,预设比例可以根据实际情况进行设置,在一个具体的实施例中,将y中的词按预设比例20%随机替换成特殊符号[mask]。
[0102]
在本实施例中,通过预训练模块在对原始机器翻译模型进行训练之前,利用源语言数据集和目标语言数据集分别对源语言编码网络和目标语言编码网络进行训练,得到相应的源语言预训练编码网络和目标语言预训练编码网络,即预训练编码网络,预训练编码网络充分利用了大量单语数据学习单语句子的表示,并且,由于预训练与机器翻译的目标存在差异,本实施例引入了适配网络,用于利用预训练编码网络中的单语句子表示,并弥补预训练与翻译任务之间的差异。
[0103]
进一步地,在上述实施例的基础上,原始机器翻译模型包括适配网络和解码网络;模型训练模块502还用于根据目标语言数据集和双语平行数据集,通过预设损失函数训练适配网络和解码网络。
[0104]
可以理解的是,在基于机器翻译任务和降噪自编码任务,利用目标语言数据集和双语平行数据集对原始机器翻译模型进行训练的过程中,通过预设损失函数对适配网络和解码网络进行训练。预设损失函数包括机器翻译损失函数和降噪自编码损失函数。
[0105]
其中,通过机器翻译损失函数训练适配网络和解码网络,对应于上文提到的机器翻译任务,用于使源语言数据能够最大化地翻译到目标语言数据,机器翻译损失函数的公式如下:
[0106]
l
mt
=-log p(y|x)
[0107]
其中,x为双语平行数据集中的源语言数据,y为双语平行数据集中的目标语言数据;
[0108]
通过降噪自编码损失函数训练适配网络和解码网络,对应于上文提到的降噪自编码任务,用于将目标语言预训练编码网络的表示能力迁移到解码网络,降噪自编码损失函数的公式如下:
[0109]
l
dae
=-log p(y|y

)
[0110]
其中,y为目标语言数据集中的目标语言单语数据,y

为将目标语言单语数据中预设数量词汇用特殊词汇替换后得到的目标语言噪声数据。
[0111]
需要注意的是,在机器翻译任务和降噪自编码任务的学习过程,即原始机器翻译模型的训练过程中,适配网络和解码网络实时共享同一套参数,整个训练过程的训练目标为:
[0112]
l=l
mt
+l
dae
[0113]
其中,l
mt
为机器翻译损失函数,l
dae
为降噪自编码损失函数。
[0114]
还需要注意的是,在对原始机器翻译模型的适配网络和解码网络进行训练的过程中,源语言预训练编码网络和目标语言预训练编码网络的网络参数不进行更新,只有适配网络和解码网络进行相应参数的更新。其中,上文中图3示出了基于预训练编码网络的机器翻译模型训练示意图,在此不再赘述。
[0115]
在本实施例中,模型训练模块通过机器翻译损失函数和降噪自编码任务对原始机器翻译模型进行训练,具体地,通过在训练阶段同时学习机器翻译任务和降噪自编码任务,使得机器翻译模型能够充分利用源语言预训练编码网络和目标语言预训练编码网络中学习到的表示,从而提升机器翻译模型的表示学习能力,从而提升机器翻译的翻译质量。
[0116]
另外,关于适配网络和解码网络的具体结构,在上文描述的基于预训练编码网络的机器翻译方法中已详细说明,在此不再展开。图6示例了一种电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、通信接口(communications interface)620、存储器(memory)630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行基于预训练编码网络的机器翻译方法,包括:获取目标语言数据集以及双语平行数据集;基于机器翻译任务和降噪自编码任务,利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型;所述原始机器翻译模型包括预训练编码网络、适配网络和解码网络;将待翻译源语言数据输入至所述机器翻译模型,得到机器翻译结果。
[0117]
此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0118]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行
时,计算机能够执行上述各方法所提供的基于预训练编码网络的机器翻译方法,包括:获取目标语言数据集以及双语平行数据集;基于机器翻译任务和降噪自编码任务,利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型;所述原始机器翻译模型包括预训练编码网络、适配网络和解码网络;将待翻译源语言数据输入至所述机器翻译模型,得到机器翻译结果。
[0119]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的基于预训练编码网络的机器翻译方法,包括:获取目标语言数据集以及双语平行数据集;基于机器翻译任务和降噪自编码任务,利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型;所述原始机器翻译模型包括预训练编码网络、适配网络和解码网络;将待翻译源语言数据输入至所述机器翻译模型,得到机器翻译结果。
[0120]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0121]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0122]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术特征:
1.一种基于预训练编码网络的机器翻译方法,其特征在于,包括:获取目标语言数据集以及双语平行数据集;基于机器翻译任务和降噪自编码任务,利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型;将待翻译源语言数据输入至所述机器翻译模型,得到机器翻译结果。2.根据权利要求1所述的基于预训练编码网络的机器翻译方法,其特征在于,所述原始机器翻译模型包括预训练编码网络,所述预训练编码网络包括源语言预训练编码网络和目标语言预训练编码网络;利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,之前还包括:获取源语言数据集,并利用所述源语言数据集对源语言编码网络进行训练,得到源语言预训练编码网络;利用所述目标语言数据集对目标语言编码网络进行训练,得到目标语言预训练编码网络。3.根据权利要求2所述的基于预训练编码网络的机器翻译方法,其特征在于,所述原始机器翻译模型包括适配网络和解码网络;所述利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型,包括:根据所述目标语言数据集和所述双语平行数据集,通过预设损失函数训练所述适配网络和所述解码网络。4.根据权利要求3所述的基于预训练编码网络的机器翻译方法,其特征在于,所述预设损失函数包括机器翻译损失函数和降噪自编码,损失函数;所述机器翻译损失函数的公式如下:l
mt
=-log p(y|x)其中,x为所述双语平行数据集中的源语言数据,y为所述双语平行数据集中的目标语言数据;所述降噪自编码损失函数的公式如下:l
dae
=-log p(y|y

)其中,y为所述目标语言数据集中的目标语言单语数据,y

为将所述目标语言单语数据中预设数量词汇用特殊词汇替换后得到的目标语言噪声数据。5.根据权利要求1-4任一项所述的基于预训练编码网络的机器翻译方法,其特征在于,所述适配网络由多头自注意力层、编码器-适配器多头注意力层和前馈网络层构成。6.根据权利要求1-4任一项所述的基于预训练编码网络的机器翻译方法,其特征在于,所述解码网络由遮掩自注意力层、适配器-解码器注意力层和前馈网络层构成。7.一种基于预训练编码网络的机器翻译装置,其特征在于,包括:数据获取模块,用于获取源语言数据集、目标语言数据集以及双语平行数据集;模型训练模块,用于基于机器翻译任务和降噪自编码任务,利用所述目标语言数据集和所述双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型;语言翻译模块,用于将待翻译源语言数据输入至所述机器翻译模型,得到机器翻译结果。8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运
行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述的基于预训练编码网络的空气翻译方法的步骤。9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的基于预训练编码网络的机器翻译方法的步骤。10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的基于预训练编码网络的机器翻译方法的步骤。

技术总结
本发明提供一种基于预训练编码网络的机器翻译方法及装置,其中的机器翻译方法包括:获取目标语言数据集以及双语平行数据集;基于机器翻译任务和降噪自编码任务,利用目标语言数据集和双语平行数据集对原始机器翻译模型进行训练,得到机器翻译模型;原始机器翻译模型包括预训练编码网络、适配网络和解码网络;将待翻译源语言数据输入至机器翻译模型,得到机器翻译结果。该方法并未使用伪平行数据,不会存在现有技术中噪声引入的问题,并且,在编码网络和解码网络的基础上引入了适配网络,通过充分有效地利用大规模单语数据,大大提升了机器翻译的翻译质量和效率。机器翻译的翻译质量和效率。机器翻译的翻译质量和效率。


技术研发人员:刘洋 孙茂松 谭知行 张慧盟
受保护的技术使用者:清华大学
技术研发日:2022.06.22
技术公布日:2022/11/1
转载请注明原文地址: https://tieba.8miu.com/read-7751.html

最新回复(0)