首页 / 专利库 / 人工智能 / 机器翻译 / 机器翻译模型的训练方法、装置及系统

机器翻译模型的训练方法、装置及系统

阅读:697发布:2020-05-08

专利汇可以提供机器翻译模型的训练方法、装置及系统专利检索,专利查询,专利分析的服务。并且本公开是关于一种提供一种 机器翻译 模型的训练方法、装置及介质。该方法包括:获取待训练的双向翻译模型和 训练数据 ,其中,训练数据包括源语料和对应的目标语料;对双向翻译模型执行N轮训练过程,每轮训练过程包括将源语料翻译为伪目标语料的正向翻译过程和将伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;获取正向翻译相似度与反向翻译相似度,其中,正向翻译相似度为目标语料与伪目标语料的相似度,反向翻译相似度为源语料与伪源语料的相似度;当正向翻译相似度与反向翻译相似度的和收敛时,确定双向翻译模型的训练完成。本方法增大了语料的丰富度,从而在低资源的情况下提升模型训练效果。,下面是机器翻译模型的训练方法、装置及系统专利的具体信息内容。

1.一种机器翻译模型的训练方法,其特征在于,包括:
获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;
对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;
当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
2.如权利要求1所述的方法,其特征在于,所述对所述双向翻译模型执行N轮训练过程,包括:
在所述双向翻译模型中设置重构器,通过所述重构器实现所述反向翻译过程。
3.如权利要求2所述的方法,其特征在于,所述对所述双向翻译模型执行N轮训练过程,包括:
在所述正向翻译过程中,通过可求导的采样函数获取所述伪目标语料。
4.如权利要求3所述的方法,其特征在于,所述对所述双向翻译模型执行N轮训练过程,还包括:
在第i轮训练过程中,通过所述可求导的采样函数获取所述目标语料与所述伪目标语料之间的误差,其中i为大于等于1且小于N的正整数;
在第i+1轮训练过程中,基于所述第i轮训练过程获取的所述误差,调整所述双向翻译模型的训练参数。
5.如权利要求3或4所述的方法,其特征在于,所述可求导的采样函数包括Gumbel-Softmax函数。
6.如权利要求1所述的方法,其特征在于,所述获取正向翻译相似度与反向翻译相似度,包括:
获取所述目标语料与所述伪目标语料的对数似然函数值,以及所述源语料与所述伪源语料的对数似然函数值。
7.如权利要求1所述的方法,其特征在于,所述训练数据设置有第一语种标签或第二语种标签,其中,设置有所述第一语种标签的训练数据为源语料,设置有所述第二语种标签的训练数据为目标语料;或者设置有所述第二语种标签的训练数据为源语料,设置有所述第一语种标签的训练数据为目标语料。
8.一种机器翻译模型的训练装置,其特征在于,包括:
模型和数据获取模,被设置为获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;
训练模块,被设置为对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
相似度获取模块,被设置为获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;
确定模块,被设置为当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
9.如权利要求8所述的装置,其特征在于,所述训练模块还包括重构器,通过所述重构器实现所述反向翻译过程。
10.如权利要求9所述的装置,其特征在于,所述训练模块还被设置为:
在所述正向翻译过程中,通过可求导的采样函数获取所述伪目标语料。
11.如权利要求10所述的装置,其特征在于,所述训练模块还被设置为:
在第i轮训练过程中,通过所述可求导的采样函数获取所述目标语料与所述伪目标语料之间的误差,其中i为大于等于1且小于N的正整数;
在第i+1轮训练过程中,基于所述第i轮训练过程获取的所述误差,调整所述双向翻译模型的训练参数。
12.如权利要求10或11所述的装置,其特征在于,所述可求导的采样函数包括Gumbel-Softmax函数。
13.如权利要求8所述的装置,其特征在于,所述相似度获取模块还被设置为:
获取所述目标语料与所述伪目标语料的对数似然函数值,以及所述源语料与所述伪源语料的对数似然函数值。
14.如权利要求8所述的装置,其特征在于,所述模型和数据获取模块还被设置为:
在所述训练数据上设置第一语种标签或第二语种标签,其中,将设置有所述第一语种标签的训练数据作为源语料,设置有所述第二语种标签的训练数据作为目标语料;或者将设置有所述第二语种标签的训练数据作为源语料,设置有所述第一语种标签的训练数据作为目标语料。
15.一种机器翻译模型的训练装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器
其中,所述处理器被配置为:
获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;
对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;
当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
16.一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行一种机器翻译模型的训练方法,所述方法包括:
获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;
对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;
当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。

说明书全文

机器翻译模型的训练方法、装置及系统

技术领域

[0001] 本公开涉及机器翻译,尤其涉及一种机器翻译模型的训练方法、装置及系统。

背景技术

[0002] 在机器翻译应用中,需要对机器翻译模型进行训练。机器翻模型在训练时需要大量的双语平行语料作为训练数据。然而在很多应用场景,例如小语种相关的机器翻译场景下,没有大量的双语平行语料资源,训练语料的缺少就导致机器翻译模型难以达到理想的翻译效果。这主要是由于双语平行语料获取难度大、成本高,所以很多小语种只有数十万甚至数万条平行语料。而且小语种的数量要远高于大语种,所以对于每一个小语种-大语种或小语种-小语种语言对都构造大量的双语平行语料的成本是难以接受的。
[0003] 因此,需要一种在低资源情况下训练机器翻译模型的方法。发明内容
[0004] 为克服相关技术中存在的问题,本公开提供一种机器翻译模型的训练方法、装置及系统。
[0005] 根据本公开实施例的第一方面,提供一种机器翻译模型的训练方法,包括:
[0006] 获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;
[0007] 对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
[0008] 获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;
[0009] 当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
[0010] 其中,所述对所述双向翻译模型执行N轮训练过程,包括:
[0011] 在所述双向翻译模型中设置重构器,通过所述重构器实现所述反向翻译过程。
[0012] 其中,所述对所述双向翻译模型执行N轮训练过程,包括:
[0013] 在所述正向翻译过程中,通过可求导的采样函数获取所述伪目标语料。
[0014] 其中,所述对所述双向翻译模型执行N轮训练过程,还包括:
[0015] 在第i轮训练过程中,通过所述可求导的采样函数获取所述目标语料与所述伪目标语料之间的误差,其中i为大于等于1且小于N的正整数;
[0016] 在第i+1轮训练过程中,基于所述第i轮训练过程获取的所述误差,调整所述双向翻译模型的训练参数。
[0017] 其中,所述可求导的采样函数包括Gumbel-Softmax函数。
[0018] 其中,所述获取正向翻译相似度与反向翻译相似度,包括:
[0019] 获取所述目标语料与所述伪目标语料的对数似然函数值,以及所述源语料与所述伪源语料的对数似然函数值。
[0020] 其中,所述训练数据设置有第一语种标签或第二语种标签,其中,设置有所述第一语种标签的训练数据为源语料,设置有所述第二语种标签的训练数据为目标语料;或者设置有所述第二语种标签的训练数据为源语料,设置有所述第一语种标签的训练数据为目标语料。
[0021] 根据本公开实施例的第二方面,提供一种机器翻译模型的训练装置,包括:
[0022] 模型和数据获取模,被设置为获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;
[0023] 训练模块,被设置为对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
[0024] 相似度获取模块,被设置为获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;
[0025] 确定模块,被设置为当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
[0026] 其中,所述训练模块还包括重构器,通过所述重构器实现所述反向翻译过程。
[0027] 其中,所述训练模块还被设置为:
[0028] 在所述正向翻译过程中,通过可求导的采样函数获取所述伪目标语料。
[0029] 其中,所述训练模块还被设置为:
[0030] 在第i轮训练过程中,通过所述可求导的采样函数获取所述目标语料与所述伪目标语料之间的误差,其中i为大于等于1且小于N的正整数;
[0031] 在第i+1轮训练过程中,基于所述第i轮训练过程获取的所述误差,调整所述双向翻译模型的训练参数。
[0032] 其中,所述可求导的采样函数包括Gumbel-Softmax函数。
[0033] 其中,所述相似度获取模块还被设置为:
[0034] 获取所述目标语料与所述伪目标语料的对数似然函数值,以及所述源语料与所述伪源语料的对数似然函数值。
[0035] 其中,所述模型和数据获取模块还被设置为:
[0036] 在所述训练数据上设置第一语种标签或第二语种标签,其中,将设置有所述第一语种标签的训练数据作为源语料,设置有所述第二语种标签的训练数据作为目标语料;或者将设置有所述第二语种标签的训练数据作为源语料,设置有所述第一语种标签的训练数据作为目标语料。
[0037] 根据本公开实施例的第三方面,提供一种机器翻译模型的训练装置,包括:
[0038] 处理器;
[0039] 用于存储处理器可执行指令的存储器
[0040] 其中,所述处理器被配置为:
[0041] 获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;
[0042] 对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
[0043] 获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;
[0044] 当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
[0045] 根据本公开实施例的第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行一种机器翻译模型的训练方法,所述方法包括:
[0046] 获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;
[0047] 对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
[0048] 获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;
[0049] 当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
[0050] 本公开提出了一种针对小语种的机器翻译模型训练方法。其中,采用双向翻译模型作为本公开的机器翻译模型。在每轮训练过程中,进行从源语料翻译为伪目标语料的正向翻译过程和将伪目标语料翻译为伪源语料的反向翻译过程,通过判断正向翻译过程的正向翻译相似度和反向翻译过程的反向翻译相似度的和是否收敛,来确定机器翻译模型的训练是否完成。其中,通过重构器实现上述反向翻译过程。
[0051] 采用上述方法,在训练中引入了反向翻译语料,增大了语料的丰富度,从而在低资源的情况下提升模型训练效果。而且由于引入双向翻译的方法,同时训练反向翻译模型,解决了传统反向翻译方法难以获取高质量反向翻译模型的问题。
[0052] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明
[0053] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
[0054] 图1是根据一示例性实施例示出的一种机器翻译模型的训练方法的流程图
[0055] 图2是根据一示例性实施例示出的一种机器翻译模型的训练方法的流程图。
[0056] 图3是根据一示例性实施例示出的一种机器翻译模型的训练方法的框图
[0057] 图4是根据一示例性实施例示出的一种装置的框图。
[0058] 图5是根据一示例性实施例示出的一种装置的框图。

具体实施方式

[0059] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
[0060] 在小语种机器翻译场景下,对机器翻译模型进行训练时,由于小语种双语平行语料获取难度大、成本高,所以很多小语种只有数十万甚至数万条平行语料。
[0061] 目前有基于反向翻译来用大量单语语料构造伪平行语料的方法。即由于单语语料获取难度远低于双语平行语料,所以可以通过获取大量的目标端单语料,再通过一个反向翻译的模型把单语料翻译出对应的源端译文,最后使用构造出的伪语料来训练模型。但是在这种方法中,反向翻译的方法依赖于额外引入的反向翻译模型,对反向翻译模型的质量要求较高。而在低资源的情况下,反向翻译模型质量高这个前提就难以满足。
[0062] 本公开提出了一种针对小语种的机器翻译模型训练方法。其中,采用双向翻译模型作为本公开的机器翻译模型。在每轮训练过程中,进行从源语料翻译为伪目标语料的正向翻译过程和将伪目标语料翻译为伪源语料的反向翻译过程,通过判断正向翻译过程的正向翻译相似度和反向翻译过程的反向翻译相似度的和是否收敛,来确定机器翻译模型的训练是否完成。其中,通过重构器实现上述反向翻译过程。
[0063] 采用上述方法,在训练中引入了反向翻译语料,增大了语料的丰富度,从而在低资源的情况下提升模型训练效果。而且由于引入双向翻译的方法,同时训练反向翻译模型,解决了传统反向翻译方法难以获取高质量反向翻译模型的问题。
[0064] 下面详细描述根据本公开的机器翻译模型的训练方法。
[0065] 图1是根据一示例性实施例示出的一种机器翻译模型的训练方法的流程图,如图1所示,包括以下步骤:
[0066] 步骤101,获取待训练的双向翻译模型和训练数据,其中,训练数据包括源语料和对应的目标语料;
[0067] 步骤102,对双向翻译模型执行N轮训练过程,每轮训练过程包括将源语料翻译为伪目标语料的正向翻译过程和将伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
[0068] 步骤103,获取正向翻译相似度与反向翻译相似度,其中,正向翻译相似度为目标语料与伪目标语料的相似度,反向翻译相似度为源语料与伪源语料的相似度;
[0069] 步骤104,当正向翻译相似度与反向翻译相似度的和收敛时,确定双向翻译模型的训练完成。
[0070] 在步骤101中,获取待训练的双向翻译模型和训练数据。在本方法中,由于需要执行正向翻译过程和反向翻译过程,因此待训练的机器翻译模型采用双向翻译模型。即该翻译模型,既可以做正向翻译模型,也可以做反向翻译模型。这里的双向翻译模型可以采用本技术领域目前常用的双向翻译模型。
[0071] 在步骤102中,对双向翻译模型的每一轮训练过程都包括正向翻译过程和反向翻译过程。正向翻译过程是将源语料作为输入,得到的输出为伪目标语料。反向翻译过程是将由正向翻译过程输出的伪目标语料作为输入,得到的输出为伪源语料。
[0072] 在步骤103中,获取正向翻译相似度与反向翻译相似度。为了说明这里获取正向翻译相似度与反向翻译相似度的目的,先解释传统训练方法中的相似度的应用。
[0073] 在采用单向翻译模型的传统训练方法中,输入端为源语料,输出端为模型翻译的译文。此时将模型翻译的译文与该源语料对应的目标语料进行对比,例如计算两者的相似度。当其相似度很大(例如收敛)时,就确定单向翻译模型训练完成,实现单向翻译模型的优化。
[0074] 在本公开的方法,由于采用反向翻译过程的语料增加训练语料的数量,因此在训练时同时需要训练反向翻译模型,即同时优化正向翻译模型和反向翻译模型。因此需要获取正向翻译相似度与反向翻译相似度,即,目标语料与伪目标语料的相似度,源语料与伪源语料的相似度。
[0075] 在步骤104中,当确定正向翻译相似度与反向翻译相似度的和收敛时,确定双向翻译模型的训练完成。这里的收敛表示在经过多轮训练后,两个相似度的和趋近于一个值,也即表示两个相似度的和基本达到最大值。
[0076] 在该方法中,采用双向翻译模型进行训练,实现了通过反向翻译过程的语料增加训练语料的数量的目的。并且,训练过程既包括正向翻译过程的训练也包括反向翻译过程的训练,因此在优化模型时,正向翻译能和反向翻译能力都得到了优化。
[0077] 在可选实施方式中,所述对所述双向翻译模型执行N轮训练过程,包括:
[0078] 在所述双向翻译模型中设置重构器,通过所述重构器实现所述反向翻译过程。
[0079] 这里的重构器可以采用本领域技术人员已知的重构器,因此关于重构器的具体结构不再赘述。
[0080] 本方法中,由于采用重构器,就实现了用同一个机器翻译模型同时实现了正向翻译过程和反向翻译过程。即,在重构器的作用下,先将源语料翻译为伪目标语料,然后将伪目标语料翻译为伪源语料。因此不管是对正向翻译过程的训练还是对反向翻译过程的训练,都实现了对该机器翻译模型的训练,即优化。
[0081] 在可选实施方式中,所述对所述双向翻译模型执行N轮训练过程,包括:
[0082] 在所述正向翻译过程中,通过可求导的采样函数获取所述伪目标语料。
[0083] 在传统的机器翻译模型训练方法中,在输出源语料的翻译结果时,即解码时,通常是采用argmax函数来选择输出结果概率最大的词(翻译过程会生成源语料可能被翻译成的每个词的概率),以获得伪目标语料。但是在这个传统方法中,解码过程中的argmax函数是不可导的,因此反向翻译时由源语料翻译为伪目标语料的误差无法传导到由伪目标语料翻译为伪源语料的过程。而本方法中需要对翻译模型同时进行正向翻译训练和反向翻译训练,这就需要在反向翻译过程中,把正向翻译的误差考虑进来。
[0084] 因此,本方法中,采用可导的采样函数来代替argmax函数。该采样函数用一个可导的公式代替argmax函数直接选概率最大的方法,最后的输出结果与采用argmax函数类似,但是实现了正向翻译误差到反向翻译过程的传导。
[0085] 在可选实施方式中,所述对所述双向翻译模型执行N轮训练过程,还包括:
[0086] 在第i轮训练过程中,通过所述可求导的采样函数获取所述目标语料与所述伪目标语料之间的误差,其中i为大于等于1且小于N的正整数;
[0087] 在第i+1轮训练过程中,基于所述第i轮训练过程获取的所述误差,调整所述双向翻译模型的训练参数。
[0088] 在训练模型的过程中,需要调整模型的训练参数来不断地优化模型。在本方法中,可以基于目标语料与伪目标语料之间的误差来调整模型的训练参数。
[0089] 在可选实施方式中,所述可求导的采样函数包括Gumbel-Softmax函数。
[0090] 本方法中,采用Gumbel-Softmax函数来代替argmax函数。Gumbel-softmax通过模拟离散变量的分布,用一个可导的公式代替argmax函数直接选概率最大的方法,保证了使用可导的方法得到了与argmax方法几乎一致的解码结果。
[0091] 在可选实施方式中,所述获取正向翻译相似度与反向翻译相似度,包括:
[0092] 获取所述目标语料与所述伪目标语料的对数似然函数值,以及所述源语料与所述伪源语料的对数似然函数值。
[0093] 正向翻译相似度可以是目标语料与伪目标语料的对数似然函数值;反向翻译相似度可以是源语料与伪源语料的对数似然函数值。因此,双向翻译模型训练的目标就是使得两种对数似然函数值的和基本达到最大,即达到收敛。
[0094] 对数似然函数可以用log-likelihood表示。若用s表示源语料,t表示目标语料,s′表示伪目标语料,t′表示伪目标语料,则目标语料与伪目标语料的对数似然函数值表示为log-likelihood(t,t′),源语料与伪源语料的对数似然函数值表示为log-likelihood(s,s′)。
[0095] 需要说明的是,对双向翻译默写的训练过程包括对采用多个训练数据进行,上面仅以一个训练数据为例进行说明。采用这些训练数据的训练原理都是一样的。
[0096] 在可选实施方式中,所述训练数据设置有第一语种标签或第二语种标签,其中,设置有所述第一语种标签的训练数据为源语料,设置有所述第二语种标签的训练数据为目标语料;或者设置有所述第二语种标签的训练数据为源语料,设置有所述第一语种标签的训练数据为目标语料。
[0097] 双向翻译模型本身定义了源语料和目标语料的语种,因此在训练数据上设置语种标签之后,即可基于该语种标签确定将该训练数据该输入双向翻译模型的哪个输入端。
[0098] 举例来说,例如中文和英文之间的翻译,由于双向翻译模型可以进行从中文到英文的翻译,也可以进行从英文到中文的翻译。因此,在训练数据中设置源语料和目标语料时,就不像单向翻译模型那样受到限制。这里,在训练双向翻译模型时,可以将中文数据作为源语料,将英文数据作为目标语料;也可以将英文数据作为源语料,将中文数据作为目标语料。
[0099] 在本方法中,通过给数据加语种标签的方式来设置源语料和目标语料。即在训练时,对双语平行语料加上语种标签,来标记翻译方向。例如,中文为“你好”,英文为“hello”,加标签后为:你好-hello,其中标签表示中文标签,标签表示英文标签。可以设置为默认在前的为源语料,在后的为目标语料。
[0100] 因此,在步骤102中的正向翻译过程可以基于从源语料的到目标语料的正向训练数据实现,反向翻译过程可以基于从目标语料到源语料的反向训练数据实现。参考上面的例子,若加标签的数据为:你好-hello,则正向训练数据可以为你好---hello,反向训练数据可以为hello---你好。
[0101] 通过给数据加语种标签的方式,同一条数据就成为正向和反向两条数据,这两条数据可以同时加入训练集进行训练,也起到了增加语料丰富度的效果。可以理解的是,与训练时加语种标签的作用类似地,双向翻译模型在解码时也需要通过添加语种标签的方式来指示翻译模型需要翻译出的语言。
[0102] 如图2所示,示出了根据本公开的一个具体实施例。在该实施例中的双向翻译模型为神经机器翻译模型。该实施例的方法包括以下步骤:
[0103] 步骤201,获取待训练的双向翻译模型和训练数据,其中,训练数据包括源语料和对应的目标语料。
[0104] 步骤202,在双向翻译模型中设置重构器。
[0105] 步骤203,对双向翻译模型进行正向翻译训练过程,其中,在正向翻译过程中,通过Gumbel-Softmax函数获取伪目标语料。
[0106] 步骤204,对双向翻译模型进行反向翻译训练过程,该过程通过重构器实现。
[0107] 步骤205,获取正向翻译相似度与反向翻译相似度,并判断正向翻译相似度与反向翻译相似度的和是否收敛。
[0108] 步骤206,当正向翻译相似度与反向翻译相似度的和不收敛时,通过Gumbel-Softmax函数获取目标语料与伪目标语料之间的误差,通过该误差调整下一轮训练的参数,并转到步骤203继续进行下一轮训练。
[0109] 步骤207,当正向翻译相似度与反向翻译相似度的和收敛时,确定双向翻译模型的训练完成。
[0110] 图3是根据一示例性实施例示出的一种机器翻译模型的训练装置框图。如图3所示,该装置包括:
[0111] 模型和数据获取模块301,被设置为获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;
[0112] 训练模块302,被设置为对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;
[0113] 相似度获取模块303,被设置为获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;
[0114] 确定模块304,被设置为当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
[0115] 在可选实施方式中,所述训练模块302还包括重构器,通过所述重构器实现所述反向翻译过程。
[0116] 在可选实施方式中,所述训练模块302还被设置为:
[0117] 在所述正向翻译过程中,通过可求导的采样函数获取所述伪目标语料。
[0118] 在可选实施方式中,所述训练模块302还被设置为:
[0119] 在第i轮训练过程中,通过所述可求导的采样函数获取所述目标语料与所述伪目标语料之间的误差,其中i为大于等于1且小于N的正整数;
[0120] 在第i+1轮训练过程中,基于所述第i轮训练过程获取的所述误差,调整所述双向翻译模型的训练参数。
[0121] 在可选实施方式中,所述可求导的采样函数包括Gumbel-Softmax函数。
[0122] 在可选实施方式中,所述相似度获取模块303还被设置为:
[0123] 获取所述目标语料与所述伪目标语料的对数似然函数值,以及所述源语料与所述伪源语料的对数似然函数值。
[0124] 在可选实施方式中,所述模型和数据获取模块还被设置为:
[0125] 在所述训练数据上设置第一语种标签或第二语种标签,其中,将设置有所述第一语种标签的训练数据作为源语料,设置有所述第二语种标签的训练数据作为目标语料;或者将设置有所述第二语种标签的训练数据作为源语料,设置有所述第一语种标签的训练数据作为目标语料。
[0126] 关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0127] 本公开采用双向翻译模型作为本公开的机器翻译模型。在每轮训练过程中,进行从源语料翻译为伪目标语料的正向翻译过程和将伪目标语料翻译为伪源语料的反向翻译过程,通过判断正向翻译过程的正向翻译相似度和反向翻译过程的反向翻译相似度的和是否收敛,来确定机器翻译模型的训练是否完成。其中,通过重构器实现上述反向翻译过程。
[0128] 采用上述方法,在训练中引入了反向翻译语料,增大了语料的丰富度,从而在低资源的情况下提升模型训练效果。而且由于引入双向翻译的方法,同时训练反向翻译模型,解决了传统反向翻译方法难以获取高质量反向翻译模型的问题。
[0129] 图4是根据一示例性实施例示出的一种机器翻译模型的训练装置400的框图。例如,装置400可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
[0130] 参照图4,装置400可以包括以下一个或多个组件:处理组件402,存储器404,电力组件406,多媒体组件408,音频组件410,输入/输出(I/O)的接口412,传感器组件414,以及通信组件416。
[0131] 处理组件402通常控制装置400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件402可以包括一个或多个处理器420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件402可以包括一个或多个模块,便于处理组件402和其他组件之间的交互。例如,处理组件402可以包括多媒体模块,以方便多媒体组件408和处理组件402之间的交互。
[0132] 存储器404被配置为存储各种类型的数据以支持在设备400的操作。这些数据的示例包括用于在装置400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
[0133] 电力组件406为装置400的各种组件提供电力。电力组件406可以包括电源管理系统,一个或多个电源,及其他与为装置400生成、管理和分配电力相关联的组件。
[0134] 多媒体组件408包括在所述装置400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件408包括一个前置摄像头和/或后置摄像头。当设备400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0135] 音频组件410被配置为输出和/或输入音频信号。例如,音频组件410包括一个麦克(MIC),当装置400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器404或经由通信组件416发送。在一些实施例中,音频组件410还包括一个扬声器,用于输出音频信号。
[0136] I/O接口412为处理组件402和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和定按钮。
[0137] 传感器组件414包括一个或多个传感器,用于为装置400提供各个方面的状态评估。例如,传感器组件414可以检测到设备400的打开/关闭状态,组件的相对定位,例如所述组件为装置400的显示器和小键盘,传感器组件414还可以检测装置400或装置400一个组件的位置改变,用户与装置400接触的存在或不存在,装置400方位或加速/减速和装置400的温度变化。传感器组件414可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件414还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件414还可以包括加速度传感器,陀螺仪传感器,磁传感器压力传感器或温度传感器。
[0138] 通信组件416被配置为便于装置400和其他设备之间有线或无线方式的通信。装置400可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。
在一个示例性实施例中,所述通信组件416还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
[0139] 在示例性实施例中,装置400可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程阵列(FPGA)、控制器微控制器微处理器或其他电子元件实现,用于执行上述方法。
[0140] 在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器404,上述指令可由装置400的处理器420执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
[0141] 一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行一种机器翻译模型的训练方法,所述方法包括:获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
[0142] 图5是根据一示例性实施例示出的一种机器翻译模型的训练装置500的框图。例如,装置500可以被提供为一服务器。参照图5,装置500包括处理组件522,其进一步包括一个或多个处理器,以及由存储器532所代表的存储器资源,用于存储可由处理组件522的执行的指令,例如应用程序。存储器532中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件522被配置为执行指令,以执行上述方法:获取待训练的双向翻译模型和训练数据,其中,所述训练数据包括源语料和对应的目标语料;对所述双向翻译模型执行N轮训练过程,每轮训练过程包括将所述源语料翻译为伪目标语料的正向翻译过程和将所述伪目标语料翻译为伪源语料的反向翻译过程,其中,N为大于1的正整数;获取正向翻译相似度与反向翻译相似度,其中,所述正向翻译相似度为所述目标语料与所述伪目标语料的相似度,所述反向翻译相似度为所述源语料与所述伪源语料的相似度;当所述正向翻译相似度与所述反向翻译相似度的和收敛时,确定所述双向翻译模型的训练完成。
[0143] 装置500还可以包括一个电源组件526被配置为执行装置500的电源管理,一个有线或无线网络接口550被配置为将装置500连接到网络,和一个输入输出(I/O)接口558。装置500可以操作基于存储在存储器532的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
[0144] 本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
[0145] 应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈