一种双语样本生成方法、装置、电子设备及存储介质与流程

文档序号:24619238发布日期:2021-04-09 20:23阅读:53来源:国知局
一种双语样本生成方法、装置、电子设备及存储介质与流程

本申请涉及信息技术领域,特别是涉及一种双语样本生成方法、装置、电子设备及存储介质。



背景技术:

目前,随着人工智能的快速发展,机器翻译已经越来越广泛的被人们所应用。通过训练好的机器翻译的模型,可以自动将第二语种翻译为对应的第一语种,从而降低人工翻译成本,减少翻译时间,提高翻译的效率和质量。

而在对机器翻译的模型进行训练的过程中,为了提高模型翻译的精度,往往需要大量的第二语种数据和与之对应的第一语种数据所组成的样本,对模型进行训练。而传统的通过人工方式进行大量的语言样本的制作时,例如,训练样本为你好,对应的参照样本为hello,而在实际训练过程中训练样本往往需要几十万甚至上亿条,所需的人工成本较高,且制作的效率较低。



技术实现要素:

本申请实施例的目的在于提供一种双语样本生成方法、装置、电子设备及存储介质,以实现双语言样本的快速生成。具体技术方案如下:

在本申请实施的第一方面,首先提供了一种双语样本生成方法,包括:

获取第一语种数据;

将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果,其中,第一翻译网络模型是以第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第二翻译网络模型是以第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型,逆序后的第二语种样本数据为通过改变第二语种样本的语序但不改变第二语种样本的语义所得到的样本数据;

调整第一语种数据的语序,并将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果,其中,第三翻译网络模型是以逆序后的第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第四翻译网络模型是以逆序后第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型;

调整第二翻译结果和第四翻译结果的语序,得到正序的第二翻译结果和正序的第四翻译结果;

选取第一翻译结果、第三翻译结果、正序的第二翻译结果和正序的第四翻译结果中任一翻译结果与其余翻译结果进行对比;

当任一翻译结果与其余翻译结果中一致的数量大于预设阈值时,将任一翻译结果与对应的第一语种数据组成双语样本。

可选的,当任一翻译结果与其余翻译结果中一致的数量大于预设阈值时,将任一翻译结果与对应的第一语种数据组成双语样本,包括:

当任一翻译结果与其余翻译结果中至少两项翻译结果一致时,停止进行对比,并将任一翻译结果与对应的第一语种数据组成双语样本。

可选的,将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果,包括:

将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一待输出数据和第二翻译网络模型对应的第二待输出数据;

对第一待输出数据和第二待输出数据进行解码,得到第一待输出数据对应的多个解码结果和各解码结果对应的预测概率和第二待输出数据对应的多个解码结果和各解码结果对应的预测概率,其中,预测概率用于表示对应的解码结果为正确翻译结果的概率;

选取第一待输出数据对应的多个解码结果中对应的预测概率最大的解码结果和第二待输出数据对应的多个解码结果中对应的预测概率最大的解码结果,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果。

可选的,调整第一语种数据的语序,并将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果,包括:

将第一语种进行逆序,得到逆序的第一语种数据;

将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三待输出数据和第四翻译网络模型对应的第四待输出数据;

对第三待输出数据和第四待输出数据进行解码,得到第三待输出数据对应的多个解码结果和各解码结果对应的预测概率和第四待输出数据对应的多个解码结果和各解码结果对应的预测概率,其中,预测概率用于表示对应的解码结果为正确翻译结果的概率;

选取第三待输出数据对应的多个解码结果中对应的预测概率最大的解码结果和第四待输出数据对应的多个解码结果中对应的预测概率最大的解码结果,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果。

可选的,第一翻译网络模型的训练过程,包括:

获取第一语种a样本数据和对应的第二语种b样本数据;

将第一语种a样本数据输入待训练的网络模型对第一语种a样本数据进行翻译,得到第一翻译结果;

将第一翻译结果与第二语种b样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第一翻译网络模型。

可选的,第二翻译网络模型的训练过程,包括:

获取第一语种c样本数据和对应的第二语种d样本数据,其中,第二语种d样本数据为第一语种c样本数据对应的逆序后的第二语种样本数据;

将第一语种c样本数据输入待训练的网络模型对第一语种c样本数据进行翻译,得到第二翻译结果;

将第二翻译结果与第二语种d样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第二翻译网络模型。

可选的,第三翻译网络模型的训练过程,包括:

获取第一语种e样本数据和对应的第二语种f样本数据,其中,第一语种e样本数据为与第二语种f样本数据对应的逆序后的第一语种样本数据;

将第一语种e样本数据输入待训练的网络模型对第一语种e样本数据进行翻译,得到第三翻译结果;

将第三翻译结果与第二语种f样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第三翻译网络模型。

可选的,第四翻译网络模型的训练过程,包括:

获取第一语种g样本数据和对应的第二语种h样本数据,其中,第一语种g样本数据为逆序后的第一语种样本数据,第二语种h样本数据对应的逆序后的第二语种样本数据;

将第一语种g样本数据输入待训练的网络模型对第一语种g样本数据进行翻译,得到第四翻译结果;

将第四翻译结果与第二语种h样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第四翻译网络模型。

在本申请实施的第二方面,首先提供了一种双语样本生成装置,包括:

数据获取模块,用于获取第一语种数据;

第一翻译模块,用于将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果,其中,第一翻译网络模型是以第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第二翻译网络模型是以第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型,逆序后的第二语种样本数据为通过改变第二语种样本的语序但不改变第二语种样本的语义所得到的样本数据;

第二翻译模块,用于调整第一语种数据的语序,并将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果,其中,第三翻译网络模型是以逆序后的第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第四翻译网络模型是以逆序后第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型;

语序调整模块,用于调整第二翻译结果和第四翻译结果的语序,得到正序的第二翻译结果和正序的第四翻译结果;

结果对比模块,用于选取第一翻译结果、第三翻译结果、正序的第二翻译结果和正序的第四翻译结果中任一翻译结果与其余翻译结果进行对比;

样本数据模块,用于当任一翻译结果与其余翻译结果中一致的数量大于预设阈值时,将任一翻译结果与对应的第一语种数据组成双语样本。

可选的,样本数据模块,包括:

样本数据子模块,用于当任一翻译结果与其余翻译结果中至少两项翻译结果一致时,停止进行对比,并将任一翻译结果与对应的第一语种数据组成样本数据组。

可选的,第一翻译模块,包括:

第一数据子模块,用于将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一待输出数据和第二翻译网络模型对应的第二待输出数据;

第一解码子模块,用于对第一待输出数据和第二待输出数据进行解码,得到第一待输出数据对应的多个解码结果和各解码结果对应的预测概率和第二待输出数据对应的多个解码结果和各解码结果对应的预测概率,其中,预测概率用于表示对应的解码结果为正确翻译结果的概率;

第一结果子模块,用于选取第一待输出数据对应的多个解码结果中对应的预测概率最大的解码结果和第二待输出数据对应的多个解码结果中对应的预测概率最大的解码结果,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果。

可选的,第二翻译模块,包括:

逆序子模块,用于将第一语种进行逆序,得到逆序的第一语种数据;

第二数据子模块,用于将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三待输出数据和第四翻译网络模型对应的第四待输出数据;

第二解码子模块,用于对第三待输出数据和第四待输出数据进行解码,得到第三待输出数据对应的多个解码结果和各解码结果对应的预测概率和第四待输出数据对应的多个解码结果和各解码结果对应的预测概率,其中,预测概率用于表示对应的解码结果为正确翻译结果的概率;

第二结果子模块,用于选取第三待输出数据对应的多个解码结果中对应的预测概率最大的解码结果和第四待输出数据对应的多个解码结果中对应的预测概率最大的解码结果,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果。

可选的,上述装置还包括:第一翻译网络模型训练模块,用于:

获取第一语种a样本数据和对应的第二语种b样本数据;

将第一语种a样本数据输入待训练的网络模型对第一语种a样本数据进行翻译,得到第一翻译结果;

将第一翻译结果与第二语种b样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第一翻译网络模型。

可选的,上述装置还包括:第二翻译网络模型训练模块,用于:

获取第一语种c样本数据和对应的第二语种d样本数据,其中,第二语种d样本数据为第一语种c样本数据对应的逆序后的第二语种样本数据;

将第一语种c样本数据输入待训练的网络模型对第一语种c样本数据进行翻译,得到第二翻译结果;

将第二翻译结果与第二语种d样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第二翻译网络模型。

可选的,上述装置还包括:第三翻译网络模型训练模块,用于:

获取第一语种e样本数据和对应的第二语种f样本数据,其中,第一语种e样本数据为与第二语种f样本数据对应的逆序后的第一语种样本数据;

将第一语种e样本数据输入待训练的网络模型对第一语种e样本数据进行翻译,得到第三翻译结果;

将第三翻译结果与第二语种f样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第三翻译网络模型。

可选的,上述装置还包括:第四翻译网络模型训练模块,用于:

获取第一语种g样本数据和对应的第二语种h样本数据,其中,第一语种g样本数据为逆序后的第一语种样本数据,第二语种h样本数据对应的逆序后的第二语种样本数据;

将第一语种g样本数据输入待训练的网络模型对第一语种g样本数据进行翻译,得到第四翻译结果;

将第四翻译结果与第二语种h样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第四翻译网络模型。

在本申请实施的第三方面,还提供了一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口、存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的计算机程序时,实现上述任一双语样本生成方法。

在本申请实施的第四方面,还提供了一种计算机可读存储介质,其特征在于,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述任一双语样本生成方法。

本申请实施例提供的一种双语样本生成方法、装置、电子设备及存储介质,可以通过预先训练好的网络模型进行语言样本的自动生成,其中,该预先训练好的网络模型可以根据不同语序的第二语种语言和样本语言,生成多个语言样本,再从中选取满足要求的语言样本。从而可以使得所生成的语言样本可以满足不同语序的要求,保证语言样本的适用性和生成质量。当然,实施本申请的任一产品或方法必不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施的一种双语样本生成方法的一种流程图;

图2为本申请实施的一种双语样本生成方法的实例图;

图3为本申请实施的第一翻译结果和第二翻译结果的获取流程图;

图4为本申请实施的第三翻译结果和第四翻译结果的获取流程图;

图5为本申请实施的一种模型训练过程的实例图;

图6为本申请实施的一种双语样本生成装置的一种示意图;

图7为本申请实施的第一翻译模块的一种示意图;

图8为本申请实施的第二翻译模块的一种示意图;

图9为本申请实施的一种双语样本生成装置的另一种示意图;

图10为本申请实施例提供的电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施的双语样本生成方法,包括:

获取第一语种数据;

将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果,其中,第一翻译网络模型是以第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第二翻译网络模型是以第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型,逆序后的第二语种样本数据为通过改变第二语种样本的语序但不改变第二语种样本的语义所得到的样本数据;

调整第一语种数据的语序,并将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果,其中,第三翻译网络模型是以逆序后的第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第四翻译网络模型是以逆序后第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型;

调整第二翻译结果和第四翻译结果的语序,得到正序的第二翻译结果和正序的第四翻译结果;

选取第一翻译结果、第三翻译结果、正序的第二翻译结果和正序的第四翻译结果中任一翻译结果与其余翻译结果进行对比;

当任一翻译结果与其余翻译结果中一致的数量大于预设阈值时,将任一翻译结果与对应的第一语种数据组成双语样本。

本申请实施例提供的一种双语样本生成方法,可以通过预先训练好的网络模型进行语言样本的自动生成,其中,该预先训练好的网络模型可以根据不同语序的第二语种语言和样本语言,生成多个语言样本,再从中选取满足要求的语言样本。从而可以使得所生成的语言样本可以满足不同语序的要求,保证语言样本的适用性和生成质量。

以下进行详细说明,参见图1,图1为本申请实施的一种双语样本生成方法的一种流程图,包括:

步骤s11,获取第一语种数据。

其中,获取的第一语种数据可以为任一一种语种的语言数据,第一语种与第二语种为不同的语种。例如,第一语种为汉语,第二语种为英语等,本申请对此不进行限定。

本申请实施例的双语样本生成方法针对的是智能终端设备中的语言样本,因此可以通过智能终端设备执行,具体的,该智能终端设备可以为电脑或服务器等。

步骤s12,将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果。

其中,第一翻译网络模型是以第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第二翻译网络模型是以第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型,逆序后的第二语种样本数据为通过改变第二语种样本的语序但不改变第二语种样本的语义所得到的样本数据。

其中,当第一语种表示为a,第二语种表示为b时,第一翻译网络模型可以为model_a2b模型,通过该模型可以将a语种的数据翻译成b语种的数据。第二翻译网络模型可以为model_a2b类型的模型。其中,对上述第一语种样本数据第二语种样本数据进行逆序,可以为改变上述第二语种样本数据的语序的方式进行逆序,例如当第二语种样本为今天是星期三,逆序后可以为星期三是今天,均表示同样意思,但是语序并不相同。

步骤s13,调整第一语种数据的语序,并将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果。

其中,第三翻译网络模型是以逆序后的第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第四翻译网络模型是以逆序后第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型。

其中,第三翻译网络模型可以为model_a2b类型的模型。第四翻译网络模型可以为model_a2b类型的模型。

步骤s14,调整第二翻译结果和第四翻译结果的语序,得到正序的第二翻译结果和正序的第四翻译结果。

其中,由于上述第二翻译结果和第四翻译结果为通过第一语种样本数据对应的逆序后的第二语种样本数据翻译后得到的翻译结果,因此调整第二翻译结果和第四翻译结果的语序,可以将第二翻译结果和第四翻译结果调整成正常使用时的翻译语序,如文本输入的正常语序,也可以为与第一翻译结果和第三翻译结果相同语序。例如,通过模型对第二翻译结果进行多种可能的组合,并预测得到各种组合语序为正常语序的概率,选取概率最大的作为正常语序对应的结果。如,当翻译结果为星期三是今天,显然不符合人们日常使用时的语序,通过对其进行语序的调整,可以调整成为今天是星期三。

步骤s15,选取第一翻译结果、第三翻译结果、正序的第二翻译结果和正序的第四翻译结果中任一翻译结果与其余翻译结果进行对比。

其中,对比过程中选取的顺序此处不进行限定,并且选取第一翻译结果、第三翻译结果、正序的第二翻译结果和正序的第四翻译结果中任一翻译结果与其余翻译结果进行对比,可以通过多种方式实现,如通过投票的方式,例如,通过预设的投票计数算法,首先为每种翻译结果记一票,其次选取任一一种翻译结果与其余的三种翻译结果进行对比,当其余的三种翻译结果中存在一种翻译结果与所选取的翻译结果一致时,为所选取的翻译结果增加一票,即记两票;当其余的三种翻译结果中存在两种翻译结果与所选取的翻译结果一致时,为所选取的翻译结果增加两票,即记三票;当其余的三种翻译结果中存在三种翻译结果与所选取的翻译结果一致时,为所选取的翻译结果增加三票,即记四票。从而可以根据所选取的翻译结果的得票数,确定有几种翻译结果与所选取的翻译结果一致。

例如,参见图2,图2为本申请实施的一种双语样本生成方法的实例图。通过将目标语言的单语语料输入第一翻译网络模型和第二翻译网络模型,以及将该目标语言的单语语料逆序后输入第三翻译网络模型和第四翻译网络模型,得到第一翻译网络模型和第三翻译网络模型输出的正常语序的源语言的翻译结果,和第二翻译网络模型和第四翻译网络模型输出的逆序的源语言的翻译结果,判断该四个翻译结果的一致性是否大于等于3,若否则将该四个翻译结果全部抛弃,若是,则将得到包含目标语言和对应的一致性的翻译结果的双语预料的输出结果。

步骤s16,当任一翻译结果与其余翻译结果中一致的数量大于预设阈值时,将任一翻译结果与对应的第一语种数据组成双语样本。

可选的,当任一翻译结果与其余翻译结果中一致的数量大于预设阈值时,将任一翻译结果与对应的第一语种数据组成双语样本,包括:当任一翻译结果与其余翻译结果中至少两项翻译结果一致时,停止进行对比,并将任一翻译结果与对应的第一语种数据组成双语样本。

其中,判断上述任一翻译结果是否与其余翻译结果中至少两项翻译结果一致,可以通过预设的投票计数算法所得到的票数进行判断。例如,通过预设的投票算法进行计数时,当选取的任一翻译结果所得到的票数为三票时,则判定其余翻译结果中至少两项翻译结果与所选取的任一翻译结果一致,则停止进行对比。

其中,当不存在任一翻译结果与其余翻译结果中至少两翻译结果一致时,可以将所得到的所有结果进行删除处理。重新获取第一语种数据和第二语种数据进行翻译。

可见通过本申请实施例提供的一种双语样本生成方法,可以通过预先训练好的网络模型进行语言样本的自动生成,其中,该预先训练好的网络模型可以根据不同语序的第二语种语言和样本语言,生成多个语言样本,再从中选取满足要求的语言样本。从而可以使得所生成的语言样本可以满足不同语序的要求,保证语言样本的适用性和生成质量。

可选的,参见图3,将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果,包括:

步骤s121,将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一待输出数据和第二翻译网络模型对应的第二待输出数据。

其中,上述第一翻译网络模型可以为任一类型的网络模型。对第一语种数据进行翻译,可以翻译为任一语种对应语言的第二语种。

步骤s122,对第一待输出数据和第二待输出数据进行解码,得到第一待输出数据对应的多个解码结果和各解码结果对应的预测概率和第二待输出数据对应的多个解码结果和各解码结果对应的预测概率。

其中,预测概率用于表示对应的解码结果为正确翻译结果的概率。上述步骤121中所得的第一待输出数据和第二待输出数据的语序可能不满足人们日常使用过程中的语序要求,通过对第一待输出数据和第二待输出数据进行解码可以得到多种可能的组合,并得到各种组合的预测概率。例如,可以利用beamsearch(集束搜索)进行解码时,将英文ilovelearningmakemehappy,翻译为中文时可以为我爱学习使我快乐,通过对所得到的翻译结果进行解码,可以根据翻译结果得到多种可能的组合,如,“学习使我快乐我爱学习”或“我爱学习学习使我快乐”等。

步骤s123,选取第一待输出数据对应的多个解码结果中对应的预测概率最大的解码结果和第二待输出数据对应的多个解码结果中对应的预测概率最大的解码结果,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果。

其中,选取第一解码数据组和第二解码数据组中概率最大的解码结果,可以根据翻译结果解码后得到的多种可能的组合,及各种组合的概率选取概率最大的一组,例如上述翻译结果,概率最大的可以为:我爱学习,学习使我快乐。从而可以通过解码以及解码结果的选取得到符合正常的语序要求的翻译结果。

可见通过本申请实施例提供的方法,可以得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果。从而可以实现翻译结果进行对比,得到多个语言样本。

可选的,参见图4,调整第一语种数据的语序,并将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果,包括:

步骤s131,将第一语种进行逆序,得到逆序的第一语种数据。

其中,将第一语种进行逆序,得到逆序的第一语种数据,可以通过调整第一语种的语序的方式实现对第一语种进行逆序。

步骤s132,将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三待输出数据和第四翻译网络模型对应的第四待输出数据。

其中,上述预先训练的第三翻译网络模型和预先训练的第四翻译网络模型可以为与上述第一翻译网络模型和第二翻译网络模型为相同或不同类型的网络模型。

步骤s133,对第三待输出数据和第四待输出数据进行解码,得到第三待输出数据对应的多个解码结果和各解码结果对应的预测概率和第四待输出数据对应的多个解码结果和各解码结果对应的预测概率。

其中,预测概率用于表示对应的解码结果为正确翻译结果的概率。

其中,对第三待输出数据和第四待输出数据进行解码可以参照步骤s122,通过预设的解码算法对第三待输出数据和第四待输出数据进行解码。

步骤s134,选取第三待输出数据对应的多个解码结果中对应的预测概率最大的解码结果和第四待输出数据对应的多个解码结果中对应的预测概率最大的解码结果,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果。

其中,选取第三解码数据组和第四解码数据组中预测概率最大的解码结果,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果,可以参照上述步骤123。通过解码以及解码结果的选取可以对所得到的输出数据进行语序的调整,从而符合正常的语序要求,同时通过第一语种的逆序后,再从所得到的翻译结果中进行选取,可以使得所得到的翻译结果满足第一语种逆序时的情况。

可见通过本申请实施例提供的方法,可以得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果。从而可以实现翻译结果进行对比,得到多个语言样本。

参见图5,各翻译网络模型的训练过程可以如图5所示,将输入第三翻译网络模型和第四翻译网络模型的第一语种逆序,而输入第一翻译网络模型和第二翻译网络模型的双语语料第一语种不进行逆序,通过网络模型进行翻译,再将第三翻译网络模型和第四翻译网络模型得到的翻译结果正序,从而得到双语语料第二语种。

可选的,第一翻译网络模型的训练过程,包括:获取第一语种a样本数据和对应的第二语种b样本数据;将第一语种a样本数据输入待训练的网络模型对第一语种a样本数据进行翻译,得到第一翻译结果;将第一翻译结果与第二语种b样本数据进行对比,根据对比结果计算待训练的网络模型的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第一翻译网络模型。

其中,第一翻译网络模型的训练过程中,样本数据可以包括少量双语言样本,即既包括第一语种样本数据还包括对应翻译的第二语种样本数据,如第一语种为汉语第二语种为英语时,样本为(我爱你,iloveyou),同时样本数据中还包括只有第二语种的样本数据,比如“thisisanapple.”。例如,训练一个第一语种到第二语种的翻译模型model_a2b;通过预先建立的待训练的翻译模型获取待翻译的第一语种样本数据;将上述样本数据输入待训练的翻译模型进行翻译,得到翻译结果;将所得到的翻译结果通过beamsearch进行解码,获取解码结果中概率最大的一组解码结果,作为模型的翻译结果与第二语种的标准翻译结果进行对比,根据对比结果对该待训练的翻译模型进行参数的修正后,重新获取第一语种的样本数据对该待训练的翻译模型进行训练,直至对比结果的偏差小于预设阈值,得到训练的翻译模型model_a2b。

可选的,第二翻译网络模型的训练过程,包括:获取第一语种c样本数据和对应的第二语种d样本数据,其中,第二语种d样本数据为第一语种c样本数据对应的逆序后的第二语种样本数据;将第一语种c样本数据输入待训练的网络模型对第一语种c样本数据进行翻译,得到第二翻译结果;将第二翻译结果与第二语种d样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第二翻译网络模型。

其中,第二翻译网络模型的训练过程中,样本数据可以为与上述第一翻译模型相同或不同的样本数据。例如,训练一个第一语种到逆序后的第二语种的翻译模型model_a2b;通过预先建立的待训练的翻译模型获取待翻译的第一语种样本数据;将上述样本数据输入待训练的翻译模型进行翻译,得到翻译结果;将所得到的翻译结果通过beamsearch进行解码,获取解码结果中概率最大的一组解码结果,作为模型的翻译结果与逆序后的第二语种的标准翻译结果进行对比,根据对比结果对该待训练的翻译模型进行参数的修正后,重新获取第一语种的样本数据对该待训练的翻译模型进行训练,直至对比结果的偏差小于预设阈值,得到训练的翻译模型model_a2b。

可选的,第三翻译网络模型的训练过程,包括:获取第一语种e样本数据和对应的第二语种f样本数据,其中,第一语种e样本数据为与第二语种f样本数据对应的逆序后的第一语种样本数据;将第一语种e样本数据输入待训练的网络模型对第一语种e样本数据进行翻译,得到第三翻译结果;将第三翻译结果与第二语种f样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第三翻译网络模型。

其中,第三翻译网络模型的训练过程中,样本数据可以为与上述第一翻译模型相同或不同的样本数据。例如,训练一个逆序后的第一语种到第二语种的翻译模型model_a2b;通过预先建立的待训练的翻译模型获取待翻译的逆序后的第一语种样本数据;将上述样本数据输入待训练的翻译模型进行翻译,得到翻译结果;将所得到的翻译结果通过beamsearch进行解码,获取解码结果中概率最大的一组解码结果,作为模型的翻译结果与第二语种的标准翻译结果进行对比,根据对比结果对该待训练的翻译模型进行参数的修正后,重新获取逆序后的第一语种的样本数据对该待训练的翻译模型进行训练,直至对比结果的偏差小于预设阈值,得到训练的翻译模型model_a2b。

可选的,第四翻译网络模型的训练过程,包括:获取第一语种g样本数据和对应的第二语种h样本数据,其中,第一语种g样本数据为逆序后的第一语种样本数据,第二语种h样本数据对应的逆序后的第二语种样本数据;将第一语种g样本数据输入待训练的网络模型对第一语种g样本数据进行翻译,得到第四翻译结果;将第四翻译结果与第二语种h样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第四翻译网络模型。

其中,第四翻译网络模型的训练过程中,样本数据可以为与上述第一翻译模型相同或不同的样本数据。例如,训练一个逆序后的第一语种到逆序后的第二语种的翻译模型model_a2b;通过预先建立的待训练的翻译模型获取待翻译的逆序后的第一语种样本数据;将上述样本数据输入待训练的翻译模型进行翻译,得到翻译结果;将所得到的翻译结果通过beamsearch进行解码,获取解码结果中概率最大的一组解码结果,作为模型的翻译结果与逆序后的第二语种的标准翻译结果进行对比,根据对比结果对该待训练的翻译模型进行参数的修正后,重新获取逆序后的第一语种的样本数据对该待训练的翻译模型进行训练,直至对比结果的偏差小于预设阈值,得到训练的翻译模型model_a2b。

可见通过本申请实施例提供的方法,可以得到训练好的翻译网络模型,从而实现通过训练好的网络模型得到对应的翻译结果,并通过对翻译结果进行对比,得到多个语言样本。

参见图6,图6为本申请实施的一种双语样本生成装置的一种示意图,包括:

数据获取模块601,用于获取第一语种数据;

第一翻译模块602,用于将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果,其中,第一翻译网络模型是以第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第二翻译网络模型是以第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型,逆序后的第二语种样本数据为通过改变第二语种样本的语序但不改变第二语种样本的语义所得到的样本数据;

第二翻译模块603,用于调整第一语种数据的语序,并将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果,其中,第三翻译网络模型是以逆序后的第一语种样本数据为训练样本以第二语种样本数据为测试样本训练得到的网络模型,第四翻译网络模型是以逆序后第一语种样本数据为训练样本以逆序后的第二语种样本数据为测试样本训练得到的网络模型;

语序调整模块604,用于调整第二翻译结果和第四翻译结果的语序,得到正序的第二翻译结果和正序的第四翻译结果;

结果对比模块605,用于选取第一翻译结果、第三翻译结果、正序的第二翻译结果和正序的第四翻译结果中任一翻译结果与其余翻译结果进行对比;

样本数据模块606,用于当任一翻译结果与其余翻译结果中一致的数量大于预设阈值时,将任一翻译结果与对应的第一语种数据组成双语样本。

可选的,样本数据模块606,包括:样本数据子模块,用于当任一翻译结果与其余翻译结果中至少两项翻译结果一致时,停止进行对比,并将任一翻译结果与对应的第一语种数据组成样本数据组。

可选的,参见图7,第一翻译模块602,包括:

第一数据子模块6021,用于将第一语种数据输入预先训练的第一翻译网络模型和预先训练的第二翻译网络模型,对第一语种数据进行翻译,得到第一翻译网络模型对应的第一待输出数据和第二翻译网络模型对应的第二待输出数据;

第一解码子模块6022,用于对第一待输出数据和第二待输出数据进行解码,得到第一待输出数据对应的多个解码结果和各解码结果对应的预测概率和第二待输出数据对应的多个解码结果和各解码结果对应的预测概率,其中,预测概率用于表示对应的解码结果为正确翻译结果的概率;

第一结果子模块6023,用于选取第一待输出数据对应的多个解码结果中对应的预测概率最大的解码结果和第二待输出数据对应的多个解码结果中对应的预测概率最大的解码结果,得到第一翻译网络模型对应的第一翻译结果和第二翻译网络模型对应的第二翻译结果。

可选的,参见图8,第二翻译模块603,包括:

逆序子模块6031,用于将第一语种进行逆序,得到逆序的第一语种数据;

第二数据子模块6032,用于将逆序后的第一语种数据输入预先训练的第三翻译网络模型和预先训练的第四翻译网络模型,对逆序后的第一语种数据进行翻译,得到第三翻译网络模型对应的第三待输出数据和第四翻译网络模型对应的第四待输出数据;

第二解码子模块6033,用于对第三待输出数据和第四待输出数据进行解码,得到第三待输出数据对应的多个解码结果和各解码结果对应的预测概率和第四待输出数据对应的多个解码结果和各解码结果对应的预测概率,其中,预测概率用于表示对应的解码结果为正确翻译结果的概率;

第二结果子模块6034,用于选取第三待输出数据对应的多个解码结果中对应的预测概率最大的解码结果和第四待输出数据对应的多个解码结果中对应的预测概率最大的解码结果,得到第三翻译网络模型对应的第三翻译结果和第四翻译网络模型对应的第四翻译结果。

可选的,参见图9,上述装置还包括:第一翻译网络模型训练模块607,用于:

获取第一语种a样本数据和对应的第二语种b样本数据;

将第一语种a样本数据输入待训练的网络模型对第一语种a样本数据进行翻译,得到第一翻译结果;

将第一翻译结果与第二语种b样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第一翻译网络模型。

可选的,参见图9,上述装置还包括:第二翻译网络模型训练模块608,用于:

获取第一语种c样本数据和对应的第二语种d样本数据,其中,第二语种d样本数据为第一语种c样本数据对应的逆序后的第二语种样本数据;

将第一语种c样本数据输入待训练的网络模型对第一语种c样本数据进行翻译,得到第二翻译结果;

将第二翻译结果与第二语种d样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第二翻译网络模型。

可选的,参见图9,上述装置还包括:第三翻译网络模型训练模块609,用于:

获取第一语种e样本数据和对应的第二语种f样本数据,其中,第一语种e样本数据为与第二语种f样本数据对应的逆序后的第一语种样本数据;

将第一语种e样本数据输入待训练的网络模型对第一语种e样本数据进行翻译,得到第三翻译结果;

将第三翻译结果与第二语种f样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第三翻译网络模型。

可选的,参见图9,上述装置还包括:第四翻译网络模型训练模块610,用于:

获取第一语种g样本数据和对应的第二语种h样本数据,其中,第一语种g样本数据为逆序后的第一语种样本数据,第二语种h样本数据对应的逆序后的第二语种样本数据;

将第一语种g样本数据输入待训练的网络模型对第一语种g样本数据进行翻译,得到第四翻译结果;

将第四翻译结果与第二语种h样本数据进行对比,根据对比结果计算待训练的网络模型的的损失,并根据计算得到的损失调整待训练的网络模型的参数,继续对待训练的网络模型进行训练,直至满足预设条件,得到训练好的第四翻译网络模型。

可见通过本申请实施例提供的一种双语样本生成装置,可以通过预先训练好的网络模型进行语言样本的自动生成,其中,该预先训练好的网络模型可以根据不同语序的第二语种语言和样本语言,生成多个语言样本,再从中选取满足要求的语言样本。从而可以使得所生成的语言样本可以满足不同语序的要求,保证语言样本的适用性和生成质量。

本申请实施例还提供了一种电子设备,如图10所示,包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信,

存储器1003,用于存放计算机程序;

处理器1001,用于执行存储器1003上所存放的程序时,实现上述任一双语样本生成方法。

上述电子设备提到的通信总线可以是pci(peripheralcomponentinterconnect,外设部件互连标准)总线或eisa(extendedindustrystandardarchitecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括ram(randomaccessmemory,随机存取存储器),也可以包括nvm(non-volatilememory,非易失性存储器),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括cpu(centralprocessingunit,中央处理器)、np(networkprocessor,网络处理器)等;还可以是dsp(digitalsignalprocessor,数字信号处理器)、asic(applicationspecificintegratedcircuit,专用集成电路)、fpga(field-programmablegatearray,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一双语样本生成方法。

在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一双语样本生成方法。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、存储介质、计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

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