基于翻译模型的训练方法、翻译方法、装置及存储介质与流程

文档序号:14990555发布日期:2018-07-20 22:08阅读:160来源:国知局

本发明涉及机器翻译(mt,machinetranslation)技术,尤其涉及一种基于翻译模型的训练方法、翻译方法、装置及存储介质。



背景技术:

随着机器翻译的发展,神经网络机器翻译(nmt,neuralmachinetranslation)作为新一代的翻译技术得到普通应用。神经网络机器翻译系统基于编码器-解码器框架搭建,然而,在神经网络机器翻译系统的翻译过程中,解码器兼具多重任务,如记录当前翻译的内容、以及需要翻译的内容,记录翻译的流畅度的相关信息等。由于解码器任务的复杂性导致其无法兼顾所有任务,致使目前的神经网络机器翻译系统翻译的准确度不高,漏翻、重复翻译现象严重。



技术实现要素:

本发明实施例提供一种基于翻译模型的训练方法、翻译方法、装置及存储介质,能够较好的避免漏翻、重复翻译现象,提高机器翻译的准确度。

本发明实施例的技术方案是这样实现的:

第一方面,本发明实施例提供一种基于翻译模型的训练方法,包括:

向翻译模型输入源语句,获得所述翻译模型输出的目标语句;

确定所述目标语句对于所述源语句的忠实度;

以所述目标语句和参考语句作为判别器模型的输入、以所述忠实度作为所述判别器模型的输出,训练所述判别器模型计算所述目标语句与所述参考语句的相似度的性能;

使用所述判别器模型输出所述目标语句与所述参考语句的相似度;

以所述源语句作为所述翻译模型的输入、以所述目标语句作为所述翻译模型的输出、并以所述相似度作为权重系数,训练所述翻译模型根据输入的源语句输出对应的目标语句的性能。

上述方案中,所述确定所述目标语句对于所述源语句的忠实度,包括:

响应于所述忠实度为覆盖率,获取所述目标语句的词语覆盖所述源语句的词语的第一覆盖数量,以及,

获取所述参考语句的词语覆盖所述源语句的词语的第二覆盖数量;

计算所述第一覆盖数量与所述第二覆盖数量的差值;

计算所述差值与所述第二覆盖数量的比值作为所述覆盖率。

上述方案中,所述获取所述目标语句的词语覆盖所述源语句的词语的第一覆盖数量,包括:

在获得所述翻译模型输出的目标语句的向量序列的过程中,将所述目标语句中每个词语的向量与所述源语句中对应词语的向量进行对齐,形成第一对齐矩阵;

从所述第一对齐矩阵中统计得到所述目标语句中词语覆盖所述源语句中词语的第一覆盖数量。

上述方案中,所述获取所述参考语句的词语覆盖所述源语句的词语的第二覆盖数量,包括:

分别获取对应所述参考语句及所述源语句的向量序列;

对齐所述源语句的向量序列与所述参考语句的向量序列中相同词语对应的向量,得到第二对齐矩阵;

从所述第二对齐矩阵统计得到所述参考语句中词语覆盖所述源语句中词语的第二覆盖数量。

上述方案中,所述确定所述目标语句对于所述源语句的忠实度,包括:

响应于所述忠实度为双语评估替代值,将所述目标语句中的词语与所述参考语句中的词语进行匹配,得到所述目标语句与所述参考语句中相同词语的数量;

计算得到的所述数量与所述目标语句中词语的数量的比值作为所述双语评估替代值。

上述方案中,所述使用所述判别器模型输出所述目标语句与所述参考语句的相似度,包括:

使用所述判别器模型中的第一神经网络模型对所述目标语句进行编码,得到第一编码向量;

使用所述判别器模型中的第二神经网络模型对所述参考语句进行编码,得到第二编码向量;

将所述第一编码向量及所述第二编码向量输入到所述判别器模型中的第三神经网络模型进行相似度计算,得到所述目标语句与所述参考语句的相似度。

上述方案中,所述以所述源语句作为所述翻译模型的输入、以所述目标语句作为所述翻译模型的输出、并以所述相似度作为权重系数,训练所述翻译模型根据输入的源语句输出对应的目标语句的性能,包括:

初始化所述翻译模型包括的输入层、中间层和输出层;

构建训练样本集合;所述训练样本集合包括待翻译的源语句及对应源语句的翻译结果的目标语句;

初始化基于翻译模型输入、翻译模型输出、以及翻译模型参数构建的损失函数;

以所选取训练样本的源语句作为输入、所选取训练样本的目标语句作为输出、求解翻译模型参数中与所选取训练样本对应维度的更新值;

将每个选取训练样本对应的更新值基于相应样本的相似度融合;

基于融合得到的所述翻译模型参数对应所述训练样本集合的更新值,更新所述翻译模型参数。

上述方案中,所述向翻译模型输入源语句,获得所述翻译模型输出的目标语句,包括:

使用翻译模型的编码器模型计算对应所述源语句的语义向量;

基于所述输入所述翻译模型中解码器模型的所述语义向量、输入所述语义向量时所述解码器模型的状态、所述解码器模型上一次输出的词语,计算候选词语与所述源语句中词语的对齐概率;

选取计算得到的对齐概率最高的候选词语作为输出的词语;

连接针对所述源语句的各词语对应输出的词语,形成所述目标语句。

上述方案中,所述使用翻译模型的编码器模型计算对应所述源语句的语义向量,包括:

使用所述翻译模型的编码器模型生成对应所述源语句的向量序列;

使用注意力模型为所述源语句的向量序列中的词向量分配注意力概率;

将所述源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量。

第二方面,本发明实施例提供一种基于翻译模型的训练装置,包括:

第一获取单元,用于向翻译模型输入源语句,获得所述翻译模型输出的目标语句;

确定单元,用于确定所述目标语句对于所述源语句的忠实度;

第一训练单元,用于以所述目标语句和参考语句作为判别器模型的输入、以所述忠实度作为所述判别器模型的输出,训练所述判别器模型计算所述目标语句与所述参考语句的相似度的性能;

第一输出单元,用于使用所述判别器模型输出所述目标语句与所述参考语句的相似度;

第二训练单元,用于以所述源语句作为所述翻译模型的输入、以所述目标语句作为所述翻译模型的输出、并以所述相似度作为权重系数,训练所述翻译模型根据输入的源语句输出对应的目标语句的性能。

上述方案中,所述确定单元,还用于响应于所述忠实度为覆盖率,获取所述目标语句的词语覆盖所述源语句的词语的第一覆盖数量,

以及,获取所述参考语句的词语覆盖所述源语句的词语的第二覆盖数量;

计算所述第一覆盖数量与所述第二覆盖数量的差值;

计算所述差值与所述第二覆盖数量的比值作为所述覆盖率。

上述方案中,所述确定单元,还用于在获得所述翻译模型输出的目标语句的向量序列的过程中,将所述目标语句中每个词语的向量与所述源语句中对应词语的向量进行对齐,形成第一对齐矩阵;

从所述第一对齐矩阵中统计得到所述目标语句中词语覆盖所述源语句中词语的第一覆盖数量。

上述方案中,所述确定单元,还用于分别获取对应所述参考语句及所述源语句的向量序列;

对齐所述源语句的向量序列与所述参考语句的向量序列中相同词语对应的向量,得到第二对齐矩阵;

从所述第二对齐矩阵统计得到所述参考语句中词语覆盖所述源语句中词语的第二覆盖数量。

上述方案中,所述确定单元,还用于响应于所述忠实度为双语评估替代值,将所述目标语句中的词语与所述参考语句中的词语进行匹配,得到所述目标语句与所述参考语句中相同词语的数量;

计算得到的所述数量与所述目标语句中词语的数量的比值作为所述双语评估替代值。

上述方案中,所述第一输出单元,还用于使用所述判别器模型中的第一神经网络模型对所述目标语句进行编码,得到第一编码向量;

使用所述判别器模型中的第二神经网络模型对所述参考语句进行编码,得到第二编码向量;

将所述第一编码向量及所述第二编码向量输入到所述判别器模型中的第三神经网络模型进行相似度计算,得到所述目标语句与所述参考语句的相似度。

上述方案中,所述第二训练单元,还用于初始化所述翻译模型包括的输入层、中间层和输出层;

构建训练样本集合;所述训练样本集合包括待翻译的源语句及对应源语句的翻译结果的目标语句;

初始化基于翻译模型输入、翻译模型输出、以及翻译模型参数构建的损失函数;

以所选取训练样本的源语句作为输入、所选取训练样本的目标语句作为输出、求解翻译模型参数中与所选取训练样本对应维度的更新值;

将每个选取训练样本对应的更新值基于相应样本的相似度融合;

基于融合得到的所述翻译模型参数对应所述训练样本集合的更新值,更新所述翻译模型参数。

上述方案中,所述第一获取单元,还用于使用翻译模型的编码器模型计算对应所述源语句的语义向量;

基于所述输入所述翻译模型中解码器模型的所述语义向量、输入所述语义向量时所述解码器模型的状态、所述解码器模型上一次输出的词语,计算候选词语与所述源语句中词语的对齐概率;

选取计算得到的对齐概率最高的候选词语作为输出的词语;

连接针对所述源语句的各词语对应输出的词语,形成所述目标语句。

上述方案中,所述第一获取单元,还用于使用所述翻译模型的编码器模型生成对应所述源语句的向量序列;

使用注意力模型为所述源语句的向量序列中的词向量分配注意力概率;

将所述源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量。

第三方面,本发明实施例提供一种基于翻译模型的翻译方法,包括:

获取在对抗网络中训练得到的翻译模型;

其中,所述翻译模型为在对抗网络中利用以源语句作为翻译模型输入、以目标语句作为翻译模型输出、并以所述目标语句与参考语句的相似度作为权重系数训练得到,所述相似度为利用所述对抗网络的判别器模型计算得到;

输入待翻译语句至所述训练得到的翻译模型;

使用所述训练得到的翻译模型计算对应所述待翻译语句的语义向量;

以所述语义向量作为所述训练得到的翻译模型的输入,输出对应所述待翻译语句的翻译结果语句。

上述方案中,所述判别器模型计算所述相似度的性能,通过在对抗网络中利用参考语句和目标语句作为判别器模型的输入、以所述目标语句对于源语句的忠实度作为判别器模型的输出训练得到,

上述方案中,所述使用所述训练得到的翻译模型计算对应所述待翻译语句的语义向量,包括:

使用所述训练得到的翻译模型中编码器模型生成对应所述源语句的向量序列;

使用注意力模型为所述源语句的向量序列中的词向量分配注意力概率;

将所述源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量。

上述方案中,以所述语义向量作为所述训练得到的翻译模型的输入,输出对应所述待翻译语句的翻译结果语句,包括:

以所述语义向量、所述训练得到的翻译模型中解码器模型的状态、所述解码器模型上一次输出的词语作为所述训练得到的翻译模型的输入,计算候选词语与所述待翻译语句中词语的对齐概率;

基于计算得到的对齐概率,选取满足概率条件的的候选词语作为输出的词语;

连接针对所述待翻译语句的各词语对应输出的词语,形成对应所述待翻译语句的翻译结果语句。

第四方面,本发明实施例提供一种基于翻译模型的翻译装置,包括:

第二获取单元,用于获取在对抗网络中训练得到的翻译模型;

其中,所述翻译模型为在对抗网络中利用以源语句作为翻译模型输入、以目标语句作为翻译模型输出、并以所述目标语句与参考语句的相似度作为权重系数训练得到,所述相似度为利用所述对抗网络的判别器模型计算得到;

输入单元,用于输入待翻译语句至所述训练得到的翻译模型;

计算单元,用于使用所述训练得到的翻译模型计算对应所述待翻译语句的语义向量;

第二输出单元,用于以所述语义向量作为所述训练得到的翻译模型的输入,输出对应所述待翻译语句的翻译结果语句。

上述方案中,所述计算单元,还用于使用所述训练得到的翻译模型中编码器模型生成对应所述源语句的向量序列;

使用注意力模型为所述源语句的向量序列中的词向量分配注意力概率;

将所述源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量。

上述方案中,所述第二输出单元,还用于以所述语义向量、所述训练得到的翻译模型中解码器模型的状态、所述解码器模型上一次输出的词语作为所述训练得到的翻译模型的输入,计算候选词语与所述待翻译语句中词语的对齐概率;

基于计算得到的对齐概率,选取满足概率条件的的候选词语作为输出的词语;

连接针对所述待翻译语句的各词语对应输出的词语,形成对应所述待翻译语句的翻译结果语句。

第五方面,本发明实施例提供一种基于翻译模型的训练装置,包括:

存储器,用于存储可执行程序;

处理器,用于执行所述存储器中存储的可执行程序时,实现如上述的基于翻译模型的训练方法。

第六方面,本发明实施例提供一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现上述的基于翻译模型的训练方法。

第七方面,本发明实施例提供一种基于翻译模型的翻译装置,包括:

存储器,用于存储可执行程序;

处理器,用于执行所述存储器中存储的可执行程序时,实现上述的基于翻译模型的翻译方法。

第八方面,本发明实施例提供一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现上述的基于翻译模型的翻译方法。

应用本发明上述实施例具有以下有益效果:

应用本发明实施例上述翻译模型的训练方法、翻译方法、装置及存储介质,对判别器模型的训练基于翻译模型输出的目标语句,翻译模型的训练基于判别器模型输出的目标语句与参考语句的相似度,实现了判别器模型与翻译模型的联动,使得训练得到的翻译模型的准确度高,较好的避免漏翻、重复翻译现象。

附图说明

图1为本发明实施例提供的引入注意力模型的编码器模型-解码器模型框架示意图;

图2为本发明实施例提供的翻译模型的架构示意图;

图3为本发明实施例提供的生成对抗网络模型中判别器模型的工作原理示意图;

图4为本发明实施例提供的基于翻译模型的训练方法的流程示意图;

图5为本发明实施例提供的基于翻译模型的训练系统架构的示意图;

图6为本发明实施例提供的基于翻译模型的翻译流程示意图;

图7为本发明实施例提供的语句中的词语对齐实例示意图;

图8为本发明实施例提供的基于翻译模型的训练装置的组成结构示意图一;

图9为本发明实施例提供的基于翻译模型的训练装置的组成结构示意图二;

图10为本发明实施例提供的翻译模型的应用场景示意图一;

图11为本发明实施例提供的翻译模型的应用场景示意图二;

图12为本发明实施例提供的基于翻译模型的翻译装置的组成结构示意图。

具体实施方式

以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所提供的实施例仅仅用以解释本发明,并不用于限定本发明。另外,以下所提供的实施例是用于实施本发明的部分实施例,而非提供实施本发明的全部实施例,在不冲突的情况下,本发明实施例记载的技术方案可以任意组合的方式实施。

需要说明的是,在本发明实施例中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的方法或者装置不仅包括所明确记载的要素,而且还包括没有明确列出的其他要素,或者是还包括为实施方法或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的方法或者装置中还存在另外的相关要素(例如方法中的步骤或者装置中的单元,例如的单元可以是部分电路、部分处理器、部分程序或软件等等)。

例如,本发明实施例提供的基于翻译模型的训练方法及基于翻译模型的翻译方法包含了一系列的步骤,但是本发明实施例提供的基于翻译模型的训练方法及基于翻译模型的翻译方法不限于所记载的步骤,同样地,本发明实施例提供的翻译模型的训练装置包括了一系列单元,但是本发明实施例提供的装置不限于包括所明确记载的单元,还可以包括为获取相关信息、或基于信息进行处理时所需要设置的单元。

对本发明进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。

1)源语句,在进行语言转换之前输入翻译模型的对应某种自然语言的语句。

2)目标语句,翻译模型输出的对源语句进行语言转换之后的对应某种自然语言的语句。

3)参考语句,预先设置的对源语句进行语言转换之后的对应某种自然语言的参考标准。

4)忠实度,表征目标语句的内容与源语句内容接近程度的介于0和1之间的参数,作为评价对源语句翻译准确度高低的标准,值越大表明目标语句的内容与源语句内容接近程度越高,即翻译的准确度越高。

5)覆盖率,表征目标语句的内容覆盖源语句内容的比例的介于0和1之间的参数。

6)翻译,将一种自然语言的语句转换成另一种自然语言的语句。

对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的由编码器-解码器组成的翻译模型进行说明。

本发明实施例中的翻译模型附加了注意力模型,即注意力模型附着在编码器-解码器框架下,参见图1,图1为引入注意力模型的编码器模型-解码器模型框架示意图,将源语句输入翻译模型,输出对应源语句的翻译结果的目标语句;其中,源语句与目标语句为不同种自然语言的语句。

在实际应用中,可通过如下方式获得翻译模型输出的目标语句:使用翻译模型的编码器模型计算对应源语句的语义向量;基于输入翻译模型中解码器模型的语义向量、输入语义向量时解码器模型的状态、解码器模型上一次输出的词语,计算候选词语与源语句中词语的对齐概率;选取计算得到的对齐概率最高的候选词语作为输出的词语;连接针对源语句的各词语对应输出的词语,形成目标语句。

其中,可通过如下方式计算对应源语句的语义向量:使用翻译模型的编码器模型生成对应源语句的向量序列;使用注意力模型为源语句的向量序列中的词向量分配注意力概率;将源语句的向量序列中的词向量与分配的注意力概率进行加权求和,得到对应源语句的语义向量。

图2为本发明实施例提供的基于翻译模型的架构示意图,参见图2,以源语句为“我们是好朋友”为例,对本发明实施例的翻译模型输出目标语句的过程进行说明。源语句输入翻译模型中的编码器模型,编码器模型对输入的源语句进行编码,得到对应源语句的向量序列,如将编码得到的向量序列表示为hj,hj为源语句中第j个词语对应的语义编码,如图2中标号1部分(即矩形框中多个圆构成的序列,其中,“<eos>”是句子终结符)所示。然后使用注意力模型读入源语句的向量序列及翻译模型中的解码器模型前一时刻状态(图2中st-1),为源语句的向量序列中的各个词向量分配注意力概率,如将分配的注意力概率表示为aij,aij表示在翻译模型的解码器模型输出第i个词语时,源语句中第j个词语的注意力概率,如图2中示出的“0.1、0.1、0.6、0.1、0.1”,aij的值越高,表示第i个输出在第j个输入上分配的注意力越多,在生成第i个输出的时候受第j个输入的影响也就越大。然后将源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量,将语义向量表示为ci,其中,lx表示源语句的词语长度,如对应源语句“我们是好朋友”来说,假设ci对应的下标i就是上面的“好”,lx即为4,h1=f(“我们”),h2=f(“是”),h3=f(“好”),h4=f(“朋友”),对应的注意力概率分别为0.1、0.1、0.6、0.1。然后将得到的对应所述源语句的语义向量输入解码器模型,解码器模型读入语义向量ci(表示当前时刻待被翻译的词语),前一时刻解码器模型状态st-1,解码器模型上一次输出的词语yt-1,输出当前时刻的解码器模型状态st。然后解码器模型根据输入的语义向量ci、当前解码器模型状态st、解码器模型上一次输出的词语yt-1,计算候选词语与源语句中词语的对齐概率,如当翻译词语“好”时,得到候选词“we”、“good”、“friends”对应的对齐概率分别为0.1、0.6、0.1,选取对齐概率最高的“good”作为解码器模型输出的词语,顺序连接针对源语句的各词语对应输出的词语,形成目标语句。

然而,在采用上述翻译模型进行语句翻译的过程中,解码器模型以解码器模型状态、上一次输出的词语等作为输入,输出对应源语句中词语的词语,因此,自身需要记录很多信息,如:需要翻译的内容、当前翻译的内容、整体翻译的流畅度等,也即解码器模型兼具多重任务,这也就导致了上述翻译模型在实际应用中会出现较严重的漏翻及重复翻译现象。

为解决上述问题,作为一个可选的实施例,可以通过生成对抗网络(gan,generativeadversarialnetwork)模型来训练翻译模型,将翻译模型作为生成对抗网络模型中的生成器模型,将卷积神经网络模型作为生成对抗网络模型中的判别器模型,构建由生成器模型-判别器模型组成的生成对抗网络模型。其中,判别器模型是一个二分类器,可以依靠概率判定输入的语句是否为人类所翻译的,其作用是尽可能的将真实翻译的语句和由生成器模型(翻译模型)翻译的语句区分开,参见图3,图3为本发明实施例提供的生成对抗网络模型中判别器模型的工作原理示意图,将真实样本数据输入至判别器模型,判别器模型经过计算后尽量使得概率接近1(真),而将服从某一分布的噪音输入到生成器模型中,生成器模型经过计算产生生成样本,然后将生成样本输入到判别器模型中,判别器模型经过计算后尽量使得输出概率为0(假);而正好相反,生成器(翻译模型)的目的是尽可能的去模拟人类所翻译的语句(真实译文),从而使得判别器模型无法判定输入的语句是由人类翻译还是生成器(翻译模型)所翻译。在应用生成对抗网络模型过程中,生成器捕捉样本数据的分布,用服从某一分布(均匀分布,高斯分布等)的噪声生成一个类似真实训练数据的样本,即生成一个类似参考语句的目标语句;判别器模型将源语句和目标语句中的每个词对应的词向量两两组合构成一个三维“图像”,将这个三维“图像”输入到判别器模型中,输出目标语句是真实译文的概率;在本发明实施例中,概率大小包括两种,分别为0和1,当概率为0时表征目标语句为假,即非人类(机器)翻译,而当概率为1时表征目标语句为真,即由人类翻译。

在对判别器模型训练过程中,对于源语句有两个对应的语句,分别是人类翻译的参考语句和机器翻译的目标语句,将对应源语句的目标语句作为输入样本、对应的概率为0作为输出样本,构建一个训练样本实例,将对应源语句的参考语句作为输入样本、对应的概率为1作为输出样本,构建一个训练样本实例,对判别器模型进行训练,使其具备识别输入的语句是否为人类翻译的性能。在对生成器进行训练的过程中,由于生成器的训练实例为离散型(源语句对应的目标语句的概率为0或1),无法使用后向传播算法进行训练,在一些实施例中,可以使用策略梯度算法进行训练,公式如下:

其中,θg为生成器的参数,生成器的为梯度,参数x为生成器的输入(源语句),y’为生成器的输出(目标语句),d(x,y')为y’是x真实翻译的概率,为生成器的标准梯度,即通过最大似然估计算法得到的梯度。

生成器参数的更新通过如下公式:

其中,θ'为更新后的生成器的参数,α为学习速率;可知,当d(x,y')越大时,对应的也越大,进而使得生成器更新的参数越大。

可知采用生成对抗网络模型对翻译模型进行训练,虽然可以部分提高翻译模型翻译的准确度,然而,由于在对翻译模型训练过程中判别器模型的目标函数不够准确,将所有机器翻译的语句对应的概率标识为0,将所有人类翻译的语句对应的概率标识为1,然而,机器翻译的语句的质量是参差不齐的,并非所有机器翻译的语句均不可取,将机器翻译较佳的语句对应的概率标识为0势必导致模型训练过程中的参数更新不准确。

为了较好的避免漏翻、重复翻译现象,最大限度的提高翻译模型翻译的准确度,提出本发明实施例的翻译模型的训练方案,本发明实施例的翻译模型的训练方案基于生成对抗网络模型,将翻译模型作为生成对抗网络模型中的生成器,加入判别器模型,实现对翻译模型的训练,接下来结合具体实施例对本发明实施例的翻译模型的训练方案详细进行说明。

图4为本发明实施例提供的基于翻译模型的训练方法的一个可选的流程示意图,图5为本发明实施例提供的基于翻译模型的训练系统架构的一个可选的示意图,结合图4、图5所示,本发明实施例的基于翻译模型的训练方法包括:

步骤101:向翻译模型输入源语句,获得翻译模型输出的目标语句。

参见图6,图6为本发明实施例提供的翻译模型的翻译流程示意图,在一实施例中,翻译模型的翻译过程(将一种自然语言的源语句转换为另一种自然语言的目标语句)主要包括以下三个步骤:

步骤1:使用翻译模型的编码器模型计算对应源语句的语义向量,也即生成源端向量表示ci。

本发明实施例中提到的源端对应编码器模型端,目标端对应解码器模型端,源语句输入编码器模型,编码器模型对源语句进行编码,得到至少一个词向量组成的向量序列,其中,每个词向量对应源语句中一个词语,例如,源语句为“我来自中国”,经编码器模型编码后得到由“我”、“来自”、“中国”对应的词向量h1、h2、h3组成的源端向量序列,然后注意力模型读入编码器模型的向量序列和解码器模型前一时刻状态,为源语句中每个词语分配一个值介于0和1之间的注意力概率,如“我”、“来自”、“中国”对应的注意力概率分别为1、0、0,值越高,表示这个词语和待生成的目标词越相关,将注意力概率和向量序列加权求和生成当前时刻的源端向量表示ci,即得到对应源语句的语义向量ci,其中,lx表示源语句的词语长度,aij表示在翻译模型的解码器模型输出第i个词语时,源语句中第j个词语的注意力概率,hj为源语句中第j个词语对应的语义编码。

步骤2:更新解码器模型状态。

解码器模型读入源端向量表示(即当前时刻待被翻译的源语句的内容),前一时刻解码器模型状态st-1,解码器模型输出的前一个词语yt-1,输出当前时刻的解码器模型状态st。

步骤3:解码器模型生成当前时刻的目标端词语。

解码器模型根据当前时刻的解码器状态st,源端向量表示ct,和前一个生成词yt-1,计算候选词语与源语句中词语的对齐概率,选取对齐概率(相似度)最高的一个词语作为最终的输出,即作为目标词语。

解码器模型得到对应源语句中各词语的目标词语后,连接针对源语句的各词语对应输出的词语,形成目标语句。

步骤102:确定目标语句对于源语句的忠实度。

在一些实施例中,可以用目标语句的覆盖率表征目标语句的忠实度,也即采用覆盖率作为对源语句翻译准确度高低的标准,值越大表明翻译的准确度越高。参见图5,图5是以忠实度为覆盖率为例进行翻译模型训练的系统架构,源语句和参考语句输入翻译模型,经翻译模型翻译得到目标语句与源语句的第一对齐矩阵,并通过强制解码得到参考语句与源语句的第二对齐矩阵,然后将第一对齐矩阵和第二对齐矩阵输入覆盖率计算模块,覆盖率计算模块计算得到目标语句的覆盖率(即覆盖率分散),以输入判别器模型。

在一实施例中,可通过如下方式实现确定目标语句的覆盖率:

获取目标语句的词语覆盖源语句的词语的第一覆盖数量,以及,获取参考语句的词语覆盖源语句的词语的第二覆盖数量;计算第一覆盖数量与第二覆盖数量的差值;计算差值与所述第二覆盖数量的比值作为目标语句的覆盖率。

在一实施例中,可通过如下方式获取目标语句覆盖源语句的词语的第一覆盖数量:

在获得翻译模型输出的目标语句的向量序列的过程中,将目标语句中每个词语的向量与源语句中对应词语的向量进行对齐,形成第一对齐矩阵;从第一对齐矩阵中统计得到目标语句中词语覆盖源语句中词语的第一覆盖数量。在实际实施时,由于翻译模型将源语句转换为目标语句基于注意力模型,如图1所示,在在获得翻译模型输出的目标语句的过程中,可通过注意力模型实现目标语句与源语句的对齐,得到对齐矩阵,然后统计得到目标语句覆盖源语句的词语的数量。参见图7,图7为本发明实施例提供的语句中的词语对齐实例示意图,在图7中,“二十六岁男司机被困车内,由到场的消防员救出。”为源语句,标号1所示部分表示目标语句中的词语与源语句中词语实现对齐,即表示覆盖到源语句的词语,通过统计可知,图7中目标语句覆盖源语句的词语的第一覆盖数量为4。

在一实施例中,可通过如下方式获取参考语句的词语覆盖源语句的词语的第二覆盖数量:

分别获取对应参考语句及源语句的向量序列;对齐源语句的向量序列与参考语句的向量序列中相同词语对应的向量,得到第二对齐矩阵;从第二对齐矩阵统计得到参考语句中词语覆盖源语句中词语的第二覆盖数量。在实际实施时,由于参考语句可视为对源语句的标准译文,因此可通过强制解码的方式获得参考语句的对齐信息。参见图7,在图7中,标号2所示部分表示参考语句中的词语与源语句中词语实现对齐,即表示覆盖到源语句的词语,通过统计可知,图7中参考语句覆盖源语句的词语的第一覆盖数量为7。

当得到了第一覆盖数量及第二覆盖数量之后,可通过如下公式计算第一覆盖数量及第二覆盖数量的差值与第二覆盖数量的比值作为目标语句的覆盖率cdr(y'|y,x),

其中,cref为参考语句覆盖到的源语句的词语的数量,cgen为目标语句覆盖到的源语句的词语的数量,以图7中实例进行计算,可得目标语句对于源语句的覆盖率为:(7-4)/7=0.43。如此,建立了目标语句与参考语句之间的联系,因为在实际应用中有些源端词(如虚词)没有实际意义,所以无须被覆盖。通过和参考语句的对比,可以排除这些词的影响。且由于当前对齐信息准确率不是完全正确的(如对齐到某个源端词可能以该源端词为中心的几个连续词都被覆盖了),所以可视为目标语句的词语覆盖情况和参考语句的词语覆盖情况接近便是忠实度高的语句。

在一些实施例中,可以用目标语句的双语评估替代(bleu,bilingualevaluationunderstudy)值表征目标语句的忠实度,在一实施例中,可通过如下方式实现确定目标语句的bleu值:

将目标语句中的词语与参考语句中的词语进行匹配,得到目标语句与参考语句中相同词语的数量;计算得到的相同词语的数量与目标语句中词语的数量的比值作为bleu值,也即采用bleu值作为对源语句翻译准确度高低的标准,值越大表明翻译的准确度越高。

步骤103:以目标语句和参考语句作为判别器模型的输入、以忠实度作为判别器模型的输出,训练判别器模型计算目标语句与参考语句的相似度的性能。

以目标语句的忠实度是目标语句的覆盖率为例进行说明,以目标语句和参考语句作为输入样本,以覆盖率为输出样本,构建训练样本集合,对判别器模型进行训练,训练判别器模型判别目标语句与参考语句的相似度的性能,建立目标语句和参考语句之间的关联。

步骤104:使用判别器模型输出目标语句与参考语句的相似度。

在一实施例中,判别器模型可由三个神经网络模型组成,判别器模型可通过如下方式计算目标语句与参考语句的相似度:

使用判别器模型中的第一神经网络模型对目标语句进行编码,得到第一编码向量;使用判别器模型中的第二神经网络模型对参考语句进行编码,得到第二编码向量;将第一编码向量及所述第二编码向量输入到判别器模型中的第三神经网络模型进行相似度计算,得到目标语句与参考语句的相似度。

在一些实施例中,判别器模型中的第一神经网络模型和第二神经网络模型可以均为卷积神经网络模型,在另一些实施例中,判别器模型中的第一神经网络模型和第二神经网络模型亦可以均为递归神经网络模型;在实际应用中,采用递归神经网络模型作为第一神经网络模型和第二神经网络模型进行判别器模型的训练,相对于采用卷积神经网络模型作为第一神经网络模型和第二神经网络模型进行判别器模型的训练来说,相当于将分类问题转化为回归问题,提高了对翻译模型的训练速度(即单位时间内处理的词语的数量)。

以第一神经网络模型和第二神经网络模型是递归神经网络模型为例,使用判别器模型输出目标语句与参考语句的相似度的过程包括:

将目标语句和参考语句分别输入两个递归神经网络模型中进行编码,输出对应目标语句和参考语句的第一编码向量及第二编码向量,然后将第一编码向量及第二编码向量输入前馈神经网络模型,计算二者的相似度。

步骤105:以源语句作为翻译模型的输入、以目标语句作为翻译模型的输出、并以相似度作为权重系数,训练翻译模型根据输入的源语句输出对应的目标语句的性能。

这里,在实际实施时,对判别器模型完成一次训练后,采用判别器模型输出的相似度对翻译模型进行训练,训练的目的是让判别器模型认为翻译模型输出的目标语句与参考语句的相似度很高,如为1;而判别器的训练基于翻译模型翻译得到的目标语句,如此形成判别器模型与翻译模型的联动。

在一实施例中,可通过如下方式实现对翻译模型的训练:

初始化翻译模型包括的输入层、中间层和输出层;构建训练样本集合;训练样本集合包括待翻译的源语句及对应源语句的翻译结果的目标语句;初始化基于翻译模型输入、翻译模型输出、以及翻译模型参数构建的损失函数;以所选取训练样本的源语句作为输入、所选取训练样本的目标语句作为输出、采用最大似然估计算法,求解损失函数相对于所选取训练样本取得最小值时翻译模型参数中与所选取训练样本对应维度的更新值;将每个选取训练样本对应的更新值基于相应样本的相似度融合;基于融合得到的翻译模型参数对应训练样本集合的更新值,更新翻译模型参数。在实际实施时,可通过叠加融合得到的翻译模型参数对应训练样本集合的更新值与更新前的翻译模型参数的方式,更新翻译模型参数。

应用本发明上述实施例,对判别器模型的训练基于翻译模型输出的目标语句,翻译模型的训练基于判别器模型输出的目标语句与参考语句的相似度,实现了判别器模型与翻译模型的联动,使得训练得到的翻译模型的准确度高,较好的避免漏翻、重复翻译现象。

本发明实施例还提供了一种基于翻译模型的训练装置100,参见图8,图8为本发明实施例提供的基于翻译模型的训练装置的组成结构示意图,包括:

第一获取单元11,用于向翻译模型输入源语句,获得所述翻译模型输出的目标语句;

确定单元12,用于确定所述目标语句对于所述源语句的忠实度;

第一训练单元13,用于以所述目标语句和参考语句作为判别器模型的输入、以所述忠实度作为所述判别器模型的输出,训练所述判别器模型计算所述目标语句与所述参考语句的相似度的性能;

第一输出单元14,用于使用所述判别器模型输出所述目标语句与所述参考语句的相似度;

第二训练单元15,用于以所述源语句作为所述翻译模型的输入、以所述目标语句作为所述翻译模型的输出、并以所述相似度作为权重系数,训练所述翻译模型根据输入的源语句输出对应的目标语句的性能。

在一些实施例中,所述确定单元12,还用于响应于所述忠实度为覆盖率,获取所述目标语句的词语覆盖所述源语句的词语的第一覆盖数量,

以及,获取所述参考语句的词语覆盖所述源语句的词语的第二覆盖数量;

计算所述第一覆盖数量与所述第二覆盖数量的差值;

计算所述差值与所述第二覆盖数量的比值作为所述覆盖率。

在一些实施例中,所述确定单元12,还用于在获得所述翻译模型输出的目标语句的向量序列的过程中,将所述目标语句中每个词语的向量与所述源语句中对应词语的向量进行对齐,形成第一对齐矩阵;

从所述第一对齐矩阵中统计得到所述目标语句中词语覆盖所述源语句中词语的第一覆盖数量。

在一些实施例中,所述确定单元12,还用于分别获取对应所述参考语句及所述源语句的向量序列;

对齐所述源语句的向量序列与所述参考语句的向量序列中相同词语对应的向量,得到第二对齐矩阵;

从所述第二对齐矩阵统计得到所述参考语句中词语覆盖所述源语句中词语的第二覆盖数量。

在一些实施例中,所述确定单元12,还用于响应于所述忠实度为双语评估替代值,将所述目标语句中的词语与所述参考语句中的词语进行匹配,得到所述目标语句与所述参考语句中相同词语的数量;

计算得到的所述数量与所述目标语句中词语的数量的比值作为所述双语评估替代值。

在一些实施例中,所述第一输出单元14,还用于使用所述判别器模型中的第一神经网络模型对所述目标语句进行编码,得到第一编码向量;

使用所述判别器模型中的第二神经网络模型对所述参考语句进行编码,得到第二编码向量;

将所述第一编码向量及所述第二编码向量输入到所述判别器模型中的第三神经网络模型进行相似度计算,得到所述目标语句与所述参考语句的相似度。

在一些实施例中,所述第二训练单元15,还用于初始化所述翻译模型包括的输入层、中间层和输出层;

构建训练样本集合;所述训练样本集合包括待翻译的源语句及对应源语句的翻译结果的目标语句;

初始化基于翻译模型输入、翻译模型输出、以及翻译模型参数构建的损失函数;

以所选取训练样本的源语句作为输入、所选取训练样本的目标语句作为输出、求解翻译模型参数中与所选取训练样本对应维度的更新值;

将每个选取训练样本对应的更新值基于相应样本的相似度融合;

基于融合得到的所述翻译模型参数对应所述训练样本集合的更新值,更新所述翻译模型参数。

在一些实施例中,所述第一获取单元11,还用于使用翻译模型的编码器模型计算对应所述源语句的语义向量;

基于所述输入所述翻译模型中解码器模型的所述语义向量、输入所述语义向量时所述解码器模型的状态、所述解码器模型上一次输出的词语,计算候选词语与所述源语句中词语的对齐概率;

选取计算得到的对齐概率最高的候选词语作为输出的词语;

连接针对所述源语句的各词语对应输出的词语,形成所述目标语句。

在一些实施例中,所述第一获取单元11,还用于使用所述翻译模型的编码器模型生成对应所述源语句的向量序列;

使用注意力模型为所述源语句的向量序列中的词向量分配注意力概率;

将所述源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量。

本发明实施例还提供了一种基于翻译模型的训练装置,参见图9,图9为本发明实施例提供的翻译模型的训练装置的组成结构示意图,包括:处理器21、存储器22以及至少一个外部通信接口23;所述处理器21、存储器22以及外部通信接口23均通过总线24连接;其中,

存储器22,用于存储可执行程序221;

处理器21,用于通过执行所述存储器中存储的可执行程序时实现:

向翻译模型输入源语句,获得所述翻译模型输出的目标语句;

确定所述目标语句对于所述源语句的忠实度;

以所述目标语句和参考语句作为判别器模型的输入、以所述忠实度作为所述判别器模型的输出,训练所述判别器模型计算所述目标语句与所述参考语句的相似度的性能;

使用所述判别器模型输出所述目标语句与所述参考语句的相似度;

以所述源语句作为所述翻译模型的输入、以所述目标语句作为所述翻译模型的输出、并以所述相似度作为权重系数,训练所述翻译模型根据输入的源语句输出对应的目标语句的性能。

所述处理器21,还用于通过执行所述存储器中存储的可执行程序时实现:

响应于所述忠实度为覆盖率,获取所述目标语句的词语覆盖所述源语句的词语的第一覆盖数量,

以及,获取所述参考语句的词语覆盖所述源语句的词语的第二覆盖数量;

计算所述第一覆盖数量与所述第二覆盖数量的差值;

计算所述差值与所述第二覆盖数量的比值作为所述覆盖率。

所述处理器21,还用于通过执行所述存储器中存储的可执行程序时实现:

在获得所述翻译模型输出的目标语句的向量序列的过程中,将所述目标语句中每个词语的向量与所述源语句中对应词语的向量进行对齐,形成第一对齐矩阵;

从所述第一对齐矩阵中统计得到所述目标语句中词语覆盖所述源语句中词语的第一覆盖数量。

所述处理器21,还用于通过执行所述存储器中存储的可执行程序时实现:

分别获取对应所述参考语句及所述源语句的向量序列;

对齐所述源语句的向量序列与所述参考语句的向量序列中相同词语对应的向量,得到第二对齐矩阵;

从所述第二对齐矩阵统计得到所述参考语句中词语覆盖所述源语句中词语的第二覆盖数量。

所述处理器21,还用于通过执行所述存储器中存储的可执行程序时实现:

响应于所述忠实度为双语评估替代值,将所述目标语句中的词语与所述参考语句中的词语进行匹配,得到所述目标语句与所述参考语句中相同词语的数量;

计算得到的所述数量与所述目标语句中词语的数量的比值作为所述双语评估替代值。

所述处理器21,还用于通过执行所述存储器中存储的可执行程序时实现:

使用所述判别器模型中的第一神经网络模型对所述目标语句进行编码,得到第一编码向量;

使用所述判别器模型中的第二神经网络模型对所述参考语句进行编码,得到第二编码向量;

将所述第一编码向量及所述第二编码向量输入到所述判别器模型中的第三神经网络模型进行相似度计算,得到所述目标语句与所述参考语句的相似度。

所述处理器21,还用于通过执行所述存储器中存储的可执行程序时实现:

初始化所述翻译模型包括的输入层、中间层和输出层;

构建训练样本集合;所述训练样本集合包括待翻译的源语句及对应源语句的翻译结果的目标语句;

初始化基于翻译模型输入、翻译模型输出、以及翻译模型参数构建的损失函数;

以所选取训练样本的源语句作为输入、所选取训练样本的目标语句作为输出、求解所述损失函数相对于所选取训练样本取得最小值时翻译模型参数中与所选取训练样本对应维度的更新值;

将每个选取训练样本对应的更新值基于相应样本的相似度融合;

基于融合得到的所述翻译模型参数对应所述训练样本集合的更新值,并更新所述翻译模型参数。

所述处理器21,还用于通过执行所述存储器中存储的可执行程序时实现:

使用翻译模型的编码器模型计算对应所述源语句的语义向量;

基于所述输入所述翻译模型中解码器模型的所述语义向量、输入所述语义向量时所述解码器模型的状态、所述解码器模型上一次输出的词语,计算候选词语与所述源语句中词语的对齐概率;

选取计算得到的对齐概率最高的候选词语作为输出的词语;

连接针对所述源语句的各词语对应输出的词语,形成所述目标语句。

所述处理器21,还用于通过执行所述存储器中存储的可执行程序时实现:

使用所述翻译模型的编码器模型生成对应所述源语句的向量序列;

使用注意力模型为所述源语句的向量序列中的词向量分配注意力概率;

将所述源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量。

基于上述对基于翻译模型的训练方法及装置的说明,可以轻易实施翻译模型的训练以及应用训练得到的翻译模型。本发明实施例的基于翻译模型的训练装置可实施于终端或服务器。

以基于翻译模型的训练装置实施于终端为例,参见图10,图10为本发明实施例提供的一个翻译模型的应用场景示意图,终端上设置有翻译程序(app,application)及翻译模型的训练装置,终端基于上述翻译模型的训练方法训练得到翻译模型,然后采用训练得到的翻译模型更新自身的翻译app,当用户基于更新后的翻译app输入源语句时,翻译模型对源语句进行翻译,输出相应的目标语句。

以基于翻译模型的训练装置实施于服务器为例,参见图11,图10为本发明实施例提供的一个翻译模型的应用场景示意图,终端上设置有翻译app,服务器上设置有翻译模型的训练装置,服务器基于上述翻译模型的训练方法训练得到翻译模型,然后将训练得到的翻译模型同步至终端,当用户基于更新后的翻译app输入源语句时,翻译app向服务器提交源语句,然后服务器上的翻译模型对源语句进行翻译,并将翻译得到的目标语句返回给终端。

基于上述对翻译模型的训练方法及对训练得到的翻译模型的应用场景的介绍,接下来对训练得到的翻译模型的翻译方法进行说明。相应的,本发明实施例还提供了一种基于翻译模型的翻译方法,包括:

获取在对抗网络中训练得到的翻译模型;

其中,所述翻译模型为在对抗网络中利用以源语句作为翻译模型输入、以目标语句作为翻译模型输出、并以所述目标语句与参考语句的相似度作为权重系数训练得到,所述相似度为利用所述对抗网络的判别器模型计算得到;

输入待翻译语句至所述训练得到的翻译模型;

使用所述训练得到的翻译模型计算对应所述待翻译语句的语义向量;

以所述语义向量作为所述训练得到的翻译模型的输入,输出对应所述待翻译语句的翻译结果语句。

在一实施例中,所述判别器模型计算所述相似度的性能,通过在对抗网络中利用参考语句和目标语句作为判别器模型的输入、以所述目标语句对于源语句的忠实度作为判别器模型的输出训练得到,

在一实施例中,所述使用所述训练得到的翻译模型计算对应所述待翻译语句的语义向量,包括:

使用所述训练得到的翻译模型中编码器模型生成对应所述源语句的向量序列;

使用注意力模型为所述源语句的向量序列中的词向量分配注意力概率;

将所述源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量。

在一实施例中,以所述语义向量作为所述训练得到的翻译模型的输入,输出对应所述待翻译语句的翻译结果语句,包括:

以所述语义向量、所述训练得到的翻译模型中解码器模型的状态、所述解码器模型上一次输出的词语作为所述训练得到的翻译模型的输入,计算候选词语与所述待翻译语句中词语的对齐概率;

基于计算得到的对齐概率,选取满足概率条件的的候选词语作为输出的词语;

连接针对所述待翻译语句的各词语对应输出的词语,形成对应所述待翻译语句的翻译结果语句。

相应于上述基于翻译模型的翻译方法,本发明实施例还提供了一种基于翻译模型的翻译装置,图12为本发明实施例提供的基于翻译模型的翻译装置的组成结构示意图,参见图12,所述装置包括:

第二获取单元31,用于获取在对抗网络中训练得到的翻译模型;

其中,所述翻译模型为在对抗网络中利用以源语句作为翻译模型输入、以目标语句作为翻译模型输出、并以所述目标语句与参考语句的相似度作为权重系数训练得到,所述相似度为利用所述对抗网络的判别器模型计算得到;

输入单元32,用于输入待翻译语句至所述训练得到的翻译模型;

计算单元33,用于使用所述训练得到的翻译模型计算对应所述待翻译语句的语义向量;

第二输出单元34,用于以所述语义向量作为所述训练得到的翻译模型的输入,输出对应所述待翻译语句的翻译结果语句。

在一实施例中,所述计算单元33,还用于使用所述训练得到的翻译模型中编码器模型生成对应所述源语句的向量序列;

使用注意力模型为所述源语句的向量序列中的词向量分配注意力概率;

将所述源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量。

在一实施例中,所述第二输出单元34,还用于以所述语义向量、所述训练得到的翻译模型中解码器模型的状态、所述解码器模型上一次输出的词语作为所述训练得到的翻译模型的输入,计算候选词语与所述待翻译语句中词语的对齐概率;

基于计算得到的对齐概率,选取满足概率条件的的候选词语作为输出的词语;

连接针对所述待翻译语句的各词语对应输出的词语,形成对应所述待翻译语句的翻译结果语句。

本发明实施例还提供了一种可读存储介质,所述可读存储介质存储有可执行程序;

所述可执行程序,用于被处理器执行时实现:

向翻译模型输入源语句,获得所述翻译模型输出的目标语句;

确定所述目标语句对于所述源语句的忠实度;

以所述目标语句和参考语句作为判别器模型的输入、以所述忠实度作为所述判别器模型的输出,训练所述判别器模型计算所述目标语句与所述参考语句的相似度的性能;

使用所述判别器模型输出所述目标语句与所述参考语句的相似度;

以所述源语句作为所述翻译模型的输入、以所述目标语句作为所述翻译模型的输出、并以所述相似度作为权重系数,训练所述翻译模型根据输入的源语句输出对应的目标语句的性能。

所述可执行程序,还用于被处理器执行时实现:

响应于所述忠实度为覆盖率,获取所述目标语句的词语覆盖所述源语句的词语的第一覆盖数量,

以及,获取所述参考语句的词语覆盖所述源语句的词语的第二覆盖数量;

计算所述第一覆盖数量与所述第二覆盖数量的差值;

计算所述差值与所述第二覆盖数量的比值作为所述覆盖率。

所述可执行程序,还用于被处理器执行时实现:

在获得所述翻译模型输出的目标语句的向量序列的过程中,将所述目标语句中每个词语的向量与所述源语句中对应词语的向量进行对齐,形成第一对齐矩阵;

从所述第一对齐矩阵中统计得到所述目标语句中词语覆盖所述源语句中词语的第一覆盖数量。

所述可执行程序,还用于被处理器执行时实现:

分别获取对应所述参考语句及所述源语句的向量序列;

对齐所述源语句的向量序列与所述参考语句的向量序列中相同词语对应的向量,得到第二对齐矩阵;

从所述第二对齐矩阵统计得到所述参考语句中词语覆盖所述源语句中词语的第二覆盖数量。

所述可执行程序,还用于被处理器执行时实现:

响应于所述忠实度为双语评估替代值,将所述目标语句中的词语与所述参考语句中的词语进行匹配,得到所述目标语句与所述参考语句中相同词语的数量;

计算得到的所述数量与所述目标语句中词语的数量的比值作为所述双语评估替代值。

所述可执行程序,还用于被处理器执行时实现:

使用所述判别器模型中的第一神经网络模型对所述目标语句进行编码,得到第一编码向量;

使用所述判别器模型中的第二神经网络模型对所述参考语句进行编码,得到第二编码向量;

将所述第一编码向量及所述第二编码向量输入到所述判别器模型中的第三神经网络模型进行相似度计算,得到所述目标语句与所述参考语句的相似度。

所述可执行程序,还用于被处理器执行时实现:

初始化所述翻译模型包括的输入层、中间层和输出层;

构建训练样本集合;所述训练样本集合包括待翻译的源语句及对应源语句的翻译结果的目标语句;

初始化基于翻译模型输入、翻译模型输出、以及翻译模型参数构建的损失函数;

以所选取训练样本的源语句作为输入、所选取训练样本的目标语句作为输出、求解所述损失函数相对于所选取训练样本取得最小值时翻译模型参数中与所选取训练样本对应维度的更新值;

将每个选取训练样本对应的更新值基于相应样本的相似度融合;

基于融合得到的所述翻译模型参数对应所述训练样本集合的更新值,并更新所述翻译模型参数。

所述可执行程序,还用于被处理器执行时实现:

使用翻译模型的编码器模型计算对应所述源语句的语义向量;

基于所述输入所述翻译模型中解码器模型的所述语义向量、输入所述语义向量时所述解码器模型的状态、所述解码器模型上一次输出的词语,计算候选词语与所述源语句中词语的对齐概率;

选取计算得到的对齐概率最高的候选词语作为输出的词语;

连接针对所述源语句的各词语对应输出的词语,形成所述目标语句。

所述可执行程序,还用于被处理器执行时实现:

使用所述翻译模型的编码器模型生成对应所述源语句的向量序列;

使用注意力模型为所述源语句的向量序列中的词向量分配注意力概率;

将所述源语句的向量序列中的词向量与分配的所述注意力概率进行加权求和,得到对应所述源语句的语义向量。

本发明实施例还提供了一种基于翻译模型的翻译装置,所述装置包括:

存储器,用于存储可执行程序;

处理器,用于执行所述存储器中存储的可执行程序时,实现上述基于翻译模型的翻译方法。

本发明实施例还提供了一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现上述基于翻译模型的翻译方法。

这里需要指出的是:以上涉及基于翻译模型的训练装置的描述,与上述训练方法描述是类似的,同方法的有益效果描述,不做赘述,基于翻译模型的翻译装置的描述,与上述翻译方法描述是类似的,同方法的有益效果描述,不做赘述。对于本发明所述基于翻译模型的训练装置及基于翻译模型的翻译装置实施例中未披露的技术细节,请参照本发明方法实施例的描述。

实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、随机存取存储器(ram,randomaccessmemory)、只读存储器(rom,read-onlymemory)、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ram、rom、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1