首页 / 专利库 / 面料 / 整经 / 机器翻译的方法、装置、电子设备、存储介质及翻译模型

机器翻译的方法、装置、电子设备、存储介质及翻译模型

阅读:281发布:2023-02-24

专利汇可以提供机器翻译的方法、装置、电子设备、存储介质及翻译模型专利检索,专利查询,专利分析的服务。并且本 申请 提供了一种 机器翻译 方法、装置、 电子 设备、可读存储介质及深度级联神经网络翻译模型。以提高机器翻译的完整度、准确性和翻译效率。所述深度级联神经网络翻译模型包括:词向量生成单元、编码单元、解码单元、N个语义空间以及目标词生成单元,所述编码单元和所述解码单元分别包括N个级联的神经网络层,且与所述N个语义空间一一对应连接。,下面是机器翻译的方法、装置、电子设备、存储介质及翻译模型专利的具体信息内容。

1.一种机器翻译的方法,其特征在于,应用于深度级联神经网络翻译模型,所述深度级联神经网络翻译模型包括:词向量生成单元、编码单元、解码单元、N个语义空间以及目标词生成单元,所述编码单元和所述解码单元分别包括N个级联的神经网络层,且与所述N个语义空间一一对应连接;所述方法包括:
将待翻译的源语句输入所述词向量生成单元,得到初始源词向量;
将初始源词向量输入所述编码单元中的第一神经网络层,得到第一源词向量和第一语义向量;
依次取n从2至N-1,针对所述编码单元中的第n神经网络层,执行步骤:将第n-1源词向量输入所述编码单元中的第n神经网络层,得到第n源词向量和第n语义向量;
针对所述编码单元中的第N神经网络层,将第N-1源词向量输入所述编码单元中的第N神经网络层,得到第N语义向量;
根据所述N个语义空间中的第一语义空间,确定所述第一语义向量对应的语义向量;
将所述第一语义向量对应的语义向量输入所述解码单元中的第一神经网络层,得到第一目标词向量;
依次取n从2至N,针对所述解码单元中的第n神经网络层,执行步骤:根据所述语义空间中的第n语义空间,确定所述第n语义向量对应的语义向量;将所述第n语义向量对应的语义向量和所述第n-1目标词向量输入所述解码单元中的第n神经网络层,得到第n目标词向量;
将第N目标词向量输入所述目标词生成单元,得到目标语句。
2.根据权利要求1所述的方法,其特征在于,针对所述编码单元中的每一个神经网络层,得到该神经网络层对应的语义向量,包括:
利用该神经网络层的隐藏层,对输入的源词向量进行运算,得到该神经网络层对应的语义向量。
3.根据权利要求1所述的方法,其特征在于,针对所述编码单元中的每一个神经网络层,该神经网络层对应的语义向量和源词向量,包括:
针对所述编码单元中的每一个神经网络层,对上一源词向量进行两种不同的运算,得到该神经网络层对应的语义向量和源词向量,且该神经网络层对应的语义向量和源词向量不同,其中,所述上一源词向量为该神经网络层的上一神经网络层对应的源词向量。
4.根据权利要求1所述的方法,其特征在于,针对所述编码单元中的每一个神经网络层,该神经网络层对应的语义向量和源词向量,包括:
针对所述编码单元中的每一个神经网络层,对上一源词向量进行相同的运算,得到该神经网络层对应的语义向量和源词向量,且该神经网络层对应的语义向量和源词向量相同,其中,所述上一源词向量为该神经网络层的上一神经网络层对应的源词向量。
5.根据权利要求1所述的方法,其特征在于,针对所述编码单元中的第n个神经网络层,得到该神经网络层对应的语义向量,包括:
获得所述解码单元中的第n神经网络层对应的第n目标词向量的特征信息;
对所述编码单元中的第n-1个神经网络层对应的第n-1源词向量中各向量赋予不同的权重系数;
将携带不同权重系数的第n-1源词向量输入所述编码单元中的第n神经网络层,得到携带权重系数的第n语义向量。
6.一种机器翻译的装置,其特征在于,应用于深度级联神经网络翻译模型,所述深度级联神经网络翻译模型包括:词向量生成单元、编码单元、解码单元、N个语义空间以及目标词生成单元,所述编码单元和所述解码单元分别包括N个级联的神经网络层,且与所述N个语义空间一一对应连接;
所述词向量生成单元用于根据输入的待翻译的源语句,得到初始源词向量;
所述编码单元中的第一神经网络层用于根据输入的初始源词向量,得到第一源词向量和第一语义向量;
所述编码单元中的第n神经网络层用于:将第n-1源词向量输入所述编码单元中的第n神经网络层,得到第n源词向量和第n语义向量,其中,n为2至N-1之间的整数;
所述编码单元中的第N神经网络层用于:将第N-1源词向量输入所述编码单元中的第N神经网络层,得到第N语义向量;
所述N个语义空间中的第一语义空间用于:确定所述第一语义向量对应的语义向量;
所述解码单元中的第一神经网络层用于:根据输入的所述第一语义向量对应的语义向量,得到第一目标词向量;
所述语义空间中的第n语义空间用于:确定所述第n语义向量对应的语义向量,其中,n为2至N之间的整数;
所述解码单元中的第n神经网络层用于:根据输入的所述第n语义向量对应的语义向量和所述第n-1目标词向量,得到第n目标词向量,其中,n为2至N之间的整数:
所述目标词生成单元用于:根据输入的第N目标词向量,得到目标语句。
7.根据权利要求6所述的装置,其特征在于,所述N个语义空间相互独立,且将每个语义空间的长度不相同或相同。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5任一所述的方法中的步骤。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行时实现如权利要求1-5任一所述的方法的步骤。
10.一种深度级联神经网络翻译模型,其特征在于,所述深度级联神经网络翻译模型包括:词向量生成单元、编码单元、解码单元、N个语义空间以及目标词生成单元,所述编码单元和所述解码单元分别包括N个级联的神经网络层,且与所述N个语义空间一一对应连接;
所述深度级联神经网络翻译模型用于执行如权利要求1-5任一所述的方法中的步骤。

说明书全文

机器翻译的方法、装置、电子设备、存储介质及翻译模型

技术领域

[0001] 本申请涉及机器翻译领域,尤其涉及一种机器翻译方法、装置、电子设备、可读存储介质及深度级联神经网络翻译模型。

背景技术

[0002] 随着全球合作化交流的深化,语言翻译需求日益增加,人工翻译效率较低,且资源较少费用昂贵,并且随着互联网的出现和普及,数据量激增,企业纷纷成立机器翻译研究组,研发了基于互联网大数据的机器翻译系统,从而使机器翻译真正走向实用,满足了人们日常的翻译需求。
[0003] 近年来,随着深度学习的研究取得较大进展,基于人工神经网络的机器翻译逐渐兴起。神经网络是一种强大的相关关系表征模型,在数据量足够和神经元数目够多的前提下,可以表征输入和输出之间的非常复杂的关系。常见的神经网络翻译模型,通常会使用编码-解码框架,也就是根据由多层神经网络构成的编码器、以及由多层神经网络构成的解码器而组成的框架。在机器翻译中,一般使用RNN神经网络及其变种。
[0004] 目前的编码-解码框架中,编码和解码之间的唯一联系就是一个固定长度的语义向量,需要将整个序列的信息压缩进一个固定长度的向量中去,其中语义向量无法完全表达整个序列的信息,并且先输入的内容携带的信息会被后输入的内容携带的信息稀释或者覆盖掉,除此之外从源语言目标语言的转换路径十分长,一部分有一一对应的字词,也需要经过复杂的计算才能得到,存在增加翻译复杂度和计算量,继而导致较差的翻译效果和较慢的翻译速度的问题。发明内容
[0005] 鉴于上述问题,本申请提供了一种机器翻译方法、装置、电子设备、可读存储介质及深度级联神经网络翻译模型,旨在解决现有技术中,编码-解码翻译框架中,存在的语言转换路径长、翻译信息容易丢失的问题。
[0006] 本申请实施例公开了一种机器翻译方法,应用于深度级联神经网络翻译模型,所述深度级联神经网络翻译模型包括:词向量生成单元、编码单元、解码单元、N个语义空间以及目标词生成单元,所述编码单元和所述解码单元分别包括N个级联的神经网络层,且与所述N个语义空间一一对应连接;所述方法包括:
[0007] 将待翻译的源语句输入所述词向量生成单元,得到初始源词向量;
[0008] 将初始源词向量输入所述编码单元中的第一神经网络层,得到第一源词向量和第一语义向量;
[0009] 依次取n从2至N-1,针对所述编码单元中的第n神经网络层,执行步骤:将第n-1源词向量输入所述编码单元中的第n神经网络层,得到第n源词向量和第n语义向量;
[0010] 针对所述编码单元中的第N神经网络层,将第N-1源词向量输入所述编码单元中的第N神经网络层,得到第N语义向量;
[0011] 根据所述N个语义空间中的第一语义空间,确定所述第一语义向量对应的语义向量;
[0012] 将所述第一语义向量对应的语义向量输入所述解码单元中的第一神经网络层,得到第一目标词向量;
[0013] 依次取n从2至N,针对所述解码单元中的第n神经网络层,执行步骤:根据所述语义空间中的第n语义空间,确定所述第n语义向量对应的语义向量;将所述第n语义向量对应的语义向量和所述第n-1目标词向量输入所述解码单元中的第n神经网络层,得到第n目标词向量;
[0014] 将第N目标词向量输入所述目标词生成单元,得到目标语句。
[0015] 可选地,针对所述编码单元中的每一个神经网络层,得到该神经网络层对应的语义向量,包括:
[0016] 利用该神经网络层的隐藏层,对输入的源词向量进行运算,得到该神经网络层对应的语义向量。
[0017] 可选地,针对所述编码单元中的每一个神经网络层,该神经网络层对应的语义向量和源词向量,包括:
[0018] 针对所述编码单元中的每一个神经网络层,对上一源词向量进行两种不同的运算,得到该神经网络层对应的语义向量和源词向量,且该神经网络层对应的语义向量和源词向量不同,其中,所述上一源词向量为该神经网络层的上一神经网络层对应的源词向量。
[0019] 可选地,针对所述编码单元中的每一个神经网络层,该神经网络层对应的语义向量和源词向量,包括:
[0020] 针对所述编码单元中的每一个神经网络层,对上一源词向量进行相同的运算,得到该神经网络层对应的语义向量和源词向量,且该神经网络层对应的语义向量和源词向量相同,其中,所述上一源词向量为该神经网络层的上一神经网络层对应的源词向量。
[0021] 可选地,针对所述编码单元中的第n个神经网络层,得到该神经网络层对应的语义向量,包括:
[0022] 获得所述解码单元中的第n神经网络层对应的第n目标词向量的特征信息;
[0023] 对所述编码单元中的第n-1个神经网络层对应的第n-1源词向量中各向量赋予不同的权重系数;
[0024] 将携带不同权重系数的第n-1源词向量输入所述编码单元中的第n神经网络层,得到携带权重系数的第n语义向量。
[0025] 另一方面,本申请实施例还提供了一种机器翻译装置,应用于深度级联神经网络翻译模型,所述深度级联神经网络翻译模型包括:词向量生成单元、编码单元、解码单元、N个语义空间以及目标词生成单元,所述编码单元和所述解码单元分别包括N个级联的神经网络层,且与所述N个语义空间一一对应连接;
[0026] 所述词向量生成单元用于根据输入的待翻译的源语句,得到初始源词向量;
[0027] 所述编码单元中的第一神经网络层用于根据输入的初始源词向量,得到第一源词向量和第一语义向量;
[0028] 所述编码单元中的第n神经网络层用于:将第n-1源词向量输入所述编码单元中的第n神经网络层,得到第n源词向量和第n语义向量,其中,n为2至N-1之间的整数;
[0029] 所述编码单元中的第N神经网络层用于:将第N-1源词向量输入所述编码单元中的第N神经网络层,得到第N语义向量;
[0030] 所述N个语义空间中的第一语义空间用于:确定所述第一语义向量对应的语义向量;
[0031] 所述解码单元中的第一神经网络层用于:根据输入的所述第一语义向量对应的语义向量,得到第一目标词向量;
[0032] 所述语义空间中的第n语义空间用于:确定所述第n语义向量对应的语义向量,其中,n为2至N之间的整数;
[0033] 所述解码单元中的第n神经网络层用于:根据输入的所述第n语义向量对应的语义向量和所述第n-1目标词向量,得到第n目标词向量,其中,n为2至N之间的整数:
[0034] 所述目标词生成单元用于:根据输入的第N目标词向量,得到目标语句。
[0035] 可选地,所述N个语义空间相互独立,且将每个语义空间的长度不相同或相同。
[0036] 本申请实施例第三方面提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请第一方面所述的方法中的步骤。
[0037] 本申请实施例第四方面提供一种电子设备,包括存储器、处理器及存储在存储器上并可再处理器上运行的计算机程序,所述处理器执行时实现本申请第一方面所述的方法的步骤。
[0038] 本申请实施例第五方面提供一种深度级联神经网络翻译模型,所述深度级联神经网络翻译模型包括:词向量生成单元、编码单元、解码单元、N个语义空间以及目标词生成单元,所述编码单元和所述解码单元分别包括N个级联的神经网络层,且与所述N个语义空间一一对应连接;所述深度级联神经网络翻译模型用于执行如本申请第一方面所述的方法的步骤。
[0039] 采用本申请实施例提供的机器翻译的方法,由于设置了级联的神经网络结构,即设置了N个语义空间,并且语义空间与编码单元当前神经网络层和解码单元当前神经网络层一一对应,所以编码单元的每一层神经网络都能生成对应的语义向量,并通过对应的语义空间,将语义向量输入到解码单元对应的神经网络层,增加了源语言到目标语言的转换路径,缩短了从源语言到目标语言的映射路径,提高了翻译效率。因为在编码单元的每一个神经网络层,都能生成语义向量,每一语义向量都能保存、传递源词向量序列携带的信息,也可理解为源词向量序列携带的信息在每个语义空间都会被保存,因此采用本申请级联的神经网络结构中设置的N个语义空间,能更完整地保存和传递源词向量序列携带的信息。附图说明
[0040] 为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0041] 图1是本申请一实施例提出的深度级联神经网络翻译模型的示意图。
[0042] 图2是本申请一实施例提出机器翻译的方法的流程图
[0043] 图3是本申请一实施例提出机器翻译的方法的示意图。
[0044] 图4是编码单元的当前神经网络层利用其隐藏层,对输入的源词向量进行运算的示意图。

具体实施方式

[0045] 为使本申请实施例的上述目的、特征和优点更加明显易懂,下面结合附图和具体实施方式对本申请实施例作进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的各个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0046] 参考图1,图1是本申请一实施例提出的深度级联神经网络翻译模型的示意图。如图1所示,该模型包括:
[0047] 词向量生成单元101、编码单元102、解码单元104、N个语义空间组成的语义空间部分103以及目标词生成单元105,所述编码单元102和所述解码单元104分别包括N个级联的神经网络层,且与所述N个语义空间103一一对应连接;
[0048] 本申请各实施例中可以基于Encoder-Decoder框架构建上述深度级联神经网络翻译模型。Encoder-Decoder框架即编码-解码框架,本实施例的深度级联神经网络翻译模型分为编码部分、解码部分、和分别与编码部分和解码部分相连的语义空间部分。下面将就各个部分分别进行说明。
[0049] 编码部分具体由词向量生成单元101和编码单元102构成,词向量生成单元101位于编码单元102第一神经网络层的输入前端,用于将自然语言转换为可用于计算机处理的向量或矩阵的形式。为清楚简洁地说明本申请的实施例,以‘向量’代表‘张量’,包括‘向量(一维张量)’,‘矩阵(二维张量)’和‘张量’,具体含义视上下文而定。
[0050] 所述词向量生成单元101用于根据输入的待翻译的源语句,得到初始源词向量;
[0051] 示例地,将以自然语言形式表示的待翻译的源语句tom eats apple输入词向量生成单元101,词向量生成单元101生成对应的初始源词向量[x1,x2,x3]。其中,x1代表Tom的向量,x2代表eats的向量,x3代表apple的向量。
[0052] 所述编码单元102中的第一神经网络层用于根据输入的初始源词向量,得到第一源词向量和第一语义向量;
[0053] 所述编码单元102中的第n神经网络层用于:将第n-1源词向量输入所述编码单元中的第n神经网络层,得到第n源词向量和第n语义向量,其中,n为2至N-1之间的整数;
[0054] 所述编码单元102中的第N神经网络层用于:将第N-1源词向量输入所述编码单元102中的第N神经网络层,得到第N语义向量;
[0055] 编码单元102由N个首尾相连的神经网络层组成,N个首尾相连的神经网络层的输出端分别与语义空间部分103的N个语义空间的输入端一一连接,可以理解为编码单元102的各个神经网络层有且只有一个与之连接的语义空间,编码单元102的第一神经网络层的输入端连接词向量生成单元101。
[0056] 其中,N为深度级联神经网络翻译模型的宏观参数(宏观参数包括模型相关的参数和训练相关的参数。其中,模型相关的参数包括:词向量维度、隐藏层的大小、激活函数的种类、正规化系数、dropout系数;训练相关的参数包括:优化方法的种类、初始学习率、学习衰减函数、训练批大小、迭代次数等),N的具体的取值为整数,该整数由构建深度级联神经网络翻译模型时,根据机器翻译程序应用的领域、翻译程序预计的翻译量等因素设置决定。N个神经网络层中的每一个神经网络层具体可以包括但不限于:全连神经网络、卷积神经网络、循环神经网络、递归神经网络、高速路神经网络及其变种中的至少一者,也可以包括注意机制网络。。
[0057] 人工神经网络(ANN)是一种模拟生物神经传递所建立的用于信息计算的数学模型。ANN的基本元素是神经元,它们之间通过组合形成输入层、隐藏层以及输出层。整体来看,隐藏层的意义就是把输入数据的特征,抽象到另一个维度空间,来展现其更抽象化的特征,这些特征能更好的进行线性划分。一个神经元包含多个输入,为每个输入分配不同的权重,对输出结果产生影响。隐藏层的运算内容通常是对输入做线性加权求和,求和后的结果通过一个非线性运算(例如sigmod或者tanh函数)得到输出,整体的运算可以看成是一个非线性变换。每一层的多个输入经过不同的非线性变换,可以得到多个不同的输出的结果以实现对输入信号的非线性转换。
[0058] 由首尾相连的N个神经网络层组成的编码单元102用于将词向量生成单元101生成的向量或矩阵(源词向量)进行运算,得到抽象的语义表示,即语义向量。
[0059] 为了清楚简洁地说明,在编码单元102中,源词向量逐层通过编码单元102的各个神经网络层,生成N个语义向量。
[0060] 以N=3为例进行说明,编码单元102由三个首尾相连的神经网络层组成,首先,初始源词向量[x1,x2,x3]由词向量生成单元101输入编码单元102的第一神经网络层,基于第一神经网络层隐藏层的运算内容,得到经过第一神经网络层处理的第一源词向量[x11,x21,x31],和第一语义向量[C(x11),C(x21),C(x31)];其中,将第一语义向量[C(x11),C(x21),C(x31)]输入与编码单元102第一神经网络层对应连接的第一语义空间,同时将第一源词向量[x11,x21,x31]输入与第一神经网络层连接的第二神经网络层,基于第二神经网络层隐藏层的运算内容,得到经过第二神经网络层处理的第二源词向量[x12,x22,x32],和第二语义向量[C(x12),C(x22),C(x32)],其中,将第二语义向量[C(x12),C(x22),C(x32)]输入与编码单元102第二神经网络层对应连接的第二语义空间,同时将第二源词向量[x12,x22,x32]输入与第二神经网络层连接的第三神经网络层,基于第三神经网络层隐藏层的运算内容,得到第三语义向量[C(x13),C(x23),C(x33)],将第三语义向量[C(x13),C(x23),C(x33)]输入编码单元102第三神经网络层对应连接的第三语义空间。
[0061] 所述N个语义空间中的第一语义空间用于:确定所述第一语义向量对应的语义向量;
[0062] 所述语义空间中的第n语义空间用于:确定所述第n语义向量对应的语义向量,其中,n为2至N之间的整数;
[0063] 语义空间部分103包括N个语义空间,当前语义空间的输入端连接编码部分编码单元102对应的神经网络层,当前语义空间的输出端连接解码部分解码单元104对应神经网络层的输入端。每个语义空间都可以用Rd表示(即,d维实数语义向量空间),也就是用向量空间Rd表示语句的内容,每一个输入的语义向量都可以被映射到空间的一个点或坐标。
[0064] 以三维向量空间R3举例,对于三维向量空间,一般地,建立x-y-z轴,对应,通过坐标x-C(x11),y-C(x21),z-C(x31)可以确定第一语义向量[C(x11),C(x21),C(x31)]在三维向量空间R3的位置坐标,解码单元104再通过语义向量在对应语义空间的坐标[C(x11),C(x21),C(x31)]得到第一语义向量对应的语义向量。
[0065] 继续沿用上述N=3的示例,编码单元包括三个首尾相连的神经网络层,相应地,语义空间部分103包括三个语义空间。将编码单元102第一神经网络层输出的第一语义向量[C(x11),C(x21),C(x31)]输入语义空间部分103的第一语义空间,映射到第一语义空间的一个点或坐标,基于第一语义空间相应的点或坐标,解码单元104的第一神经网络层获得第一语义向量对应的语义向量[C(y11),C(y21),C(y31)];相应地,编码单元102第二神经网络层输出的第二语义向量[C(x12),C(x22),C(x32)]输入语义空间部分103的第二语义空间,映射到第二语义空间的一个点或坐标,基于第二语义空间相应的点或坐标,解码单元104的第二神经网络层获得第二语义向量对应的语义向量[C(y12),C(y22),C(y32)];编码单元102第三神经网络层输出的第三语义向量[C(x13),C(x23),C(x33)]输入语义空间部分103的第三语义空间,映射到第三语义空间的一个点或坐标,基于第三语义空间相应的点或坐标,解码单元102的第三神经网络层获得第三语义向量对应的语义向量[C(y13),C(y23),C(y33)]。
[0066] 解码部分包括解码单元104和目标词生成单元105,解码单元104包括N个首尾相连的神经网络层,N个首尾相连的神经网络层的输入端分别与语义空间部分103的N个语义空间的输出端一一连接,可以理解为解码单元104的各个神经网络层有且只有一个与之连接的语义空间。解码单元104用于将抽象的语义表示(即语义向量)转换为目标词向量,目标词向量为目标语言的向量或矩阵的表示。
[0067] 所述解码单元104中的第一神经网络层用于:根据输入的所述第一语义向量对应的语义向量,得到第一目标词向量;
[0068] 所述解码单元104中的第n神经网络层用于:根据输入的所述第n语义向量对应的语义向量和所述第n-1目标词向量,得到第n目标词向量,其中,n为2至N之间的整数。
[0069] 继续沿用上述N=3的示例,解码单元104由三个首尾相连的神经网络层组成。将第一语义向量对应的语义向量[C(y11),C(y21),C(y31)]输入解码单元104的第一神经网络层,得到第一目标词向量[y11,y21,y31];将第二语义向量对应的语义向量[C(y12),C(y 22),C(y32)],和第一目标词向量[y11,y21,y31]输入解码单元104的第二神经网络层,得到第二目标词向量[y12,y22,y32];将第三语义向量对应的语义向量[C(y13),C(y23),C(y33)],和第二目标词向量[y12,y22,y32]输入解码单元104的第三神经网络层,得到第三目标词向量[y13,y23,y33]。
[0070] 所述目标词生成单元105用于根据输入的第N目标词向量,得到目标语句。
[0071] 目标词生成单元105位于解码单元104第N神经网络层的输出后端,用于将向量或矩阵的表示转换为自然语言的形式。具体地,将上述解码单元104得到的第三目标词向量[y13,y23,y33]输入目标词生成单元105,得到目标语言:汤姆吃苹果。
[0072] 综上,本申请实施例的机器翻译模型具备以下优点:
[0073] 本申请实施例的机器翻译模型采用了级联的神经网络结构,将原本串联的网络结构,转变成串联和并联相结合的方式。编码单元的各个神经网络层串联,解码单元的各个神经网络层串联,各个语义空间并联,相互独立互不影响。对于复杂的源语言,其向量或矩阵的表达序列(源词向量)携带的复杂的信息,源词向量逐层通过编码单元串联的神经网络层,保证了源词向量能经过足够的信息处理;同时,源词向量逐层通过的每一神经网络层都能根据当前神经网络层的隐藏层的运算内容生成语义向量,即使源词向量在逐层通过神经网络层的路径中丢失或者稀释了部分的序列信息,丢失的序列信息也会在之前的神经网络层中保存,并通过当前神经网络层对应的语义空间映射到解码单元的神经网络层,因此,采用本申请实施例深度级联神经网络翻译模型进行语言翻译,可以得到更加完整和准确的翻译结果。
[0074] 另一方面,每个神经网络层对应的语义空间都能完成源语言的语义向量到目标语言的语义向量的映射,增加了源语言和目标语言的直接映射。对于简单的源语言,例如一些一一对应的字词(“朵”和“c l oud”),第一语义空间就能完成其源词向量到目标词向量的映射,缩短了目标语言和源语言之间的计算路径。另外,本申请实施例中神经网络层串联和语义空间并联相结合的方式,使编码单元的神经网络层对源语言的处理、语义空间处理源语言和目标语言的映射关系、解码单元对目标语言处理三者能同时进行,极大地缩短了机器翻译的信息处理时间,提高了机器翻译的效率。
[0075] 在本申请的一种可选实施例中,可设置语义空间的长度,即语义空间的维度。
[0076] 所述N个语义空间相互独立,且将每个语义空间的长度不相同或相同。
[0077] 各个相互独立的语义空间本身之间并没有连接关系,所以,各个语义空间所包含内容(映射关系、向量分布特点等),也只是受到与其连接的编码单元对应神经网络层和解码单元对应神经网络层的影响。
[0078] 同时,语义空间的长度也是可以定义的,根据语言的复杂程度,或是神经网络的层级关系,或是当前编码单元的神经网络层可能表达序列的长短,有针对性地定义语义空间的长度,例如,有一一对应的关系的源语言和目标语言(“云朵”和“cloud”)可以在第一语义空间完成映射,而比较复杂的源语言和目标语言的对应关系(“云层厚度的计算”和“Calculation of Cloud Thickness”)可以在第N语义空间完成,根据不同的处理内容,可以分别设置第一语义空间的长度d和第N语义空间的长度d’,长度为Rd的第一语义空间和长度为Rd’的第N语义空间互不影响,不再需要将源语言向量整个序列的内容压缩进一个固定长度的向量中去,先输入内容携带的信息和后输入内容携带的信息,分别在长度不同或者长度相同的各个语义空间进行处理,可以有效地解决只有一个语义空间时,因需要将整个序列的信息压缩进一个固定的长度向量中,造成的后输入的内容携带的信息稀释或者覆盖掉先输入内容携带的信息的问题。同时,有一一对应的关系的源语言和目标语言(“云朵”和“cloud”)可以在第一语义空间Rd直接完成映射,不需要再经过编码单元N个神经网络层复杂的运算,有效的降低了翻译的复杂度,达到了较快的翻译速度。
[0079] 参考图2,图2是本申请一实施例提出机器翻译的方法的流程图。该方法应用于深度级联神经网络翻译模型(例如:图1所示的模型)。如图2所示,所述方法包括:
[0080] 步骤S201:将待翻译的源语句输入所述词向量生成单元,得到初始源词向量。
[0081] 自然语言是符号化的表示,而计算机擅长数值计算,因此需要将自然语言的符号表示成数字。在实际应用中将自然语言转换为向量或矩阵的方法可以有多种,具体不限于以下实施方式:
[0082] 在一种实施方式中,可以用one-hot进行自然语言的向量化表示,建立起常用的5000个汉字和1,2,3,…,5000的对应关系。One-hot向量就是一个5000维的向量,每一维的数值取值为0或1;为了将数字i转换成one-hot向量,我们定义向量X=[x1,x2,…,x5000],其中xi=1,xj=0(j不等于i)。
[0083] 在另一种实施方式中,自然语言的向量化表示也可以用分布式词向量表示方式(Word2Vec)。
[0084] 步骤S202:将初始源词向量输入所述编码单元中的第一神经网络层,得到第一源词向量和第一语义向量;
[0085] 步骤S203:依次取n从2至N-1,针对所述编码单元中的第n神经网络层,执行步骤:将第n-1源词向量输入所述编码单元中的第n神经网络层,得到第n源词向量和第n语义向量;
[0086] 步骤S204:针对所述编码单元中的第N神经网络层,将第N-1源词向量输入所述编码单元中的第N神经网络层,得到第N语义向量;
[0087] 本申请实施例中,针对输入编码单元的同一源语句向量序列,在逐层通过每一神经网络层时,都可以生成语义向量,每一层得到的语义向量都可以通过对应的语义空间,输入解码单元对应的神经网络层。输入编码单元N个神经网络层的同一源语句向量序列,会以两条路径(输入下一神经网络层的向量序列和输入语义空间的语义向量)保存、计算和传递本身携带的信息,使源语言向量序列先输入的内容的携带的信息由不会被干扰的路径输入到解码单元的神经网络层,进而保证在神经网络组成结构单一的情况下(例如只使用循环神经网络),源语言向量序列在依次通过N个神经网络层的漫长的运算中,向量序列先输入的内容携带的信息不会被向量序列后输入的内容携带的信息所覆盖和稀释,使整个源语句向量序列输入到解码单元神经网络的语义向量始终携带完整的信息。
[0088] 步骤S205:根据所述N个语义空间中的第一所述语义空间,确定所述第一语义向量对应的语义向量;
[0089] 步骤S206:将所述第一语义向量对应的语义向量输入所述解码单元中的第一神经网络层,得到第一目标词向量;
[0090] 步骤S207:依次取n从2至N,针对所述解码单元中的第n神经网络层,执行步骤:根据所述语义空间中的第n语义空间,确定所述第n语义向量对应的语义向量;将所述第n语义向量对应的语义向量和所述第n-1目标词向量输入所述解码单元中的第n神经网络层,得到第n目标词向量;
[0091] 步骤S208:将第N目标词向量输入所述目标词生成单元,得到目标语句。
[0092] 参考图3,图3是本申请一实施例提出机器翻译的方法的示意图。以下结合图1所示的深度级联神经网络的翻译模型,对本申请实施例提供的机器翻译方法作进一步说明。
[0093] 通过编码单元的第一神经网络层执行步骤(2):输入源词向量,得到第一源词向量和第一语义向量,能同时得到第一源词向量和第一语义向量,通过编码单元的第二神经网络层执行步骤(3):输入第一源词向量,得到第二源词向量和第二语义向量,通过编码单元第一神经网络对应的第一语义空间执行步骤(6):确定第一语义向量对应的语义向量。其中,步骤(2)、(3)(6)可以同时进行。
[0094] 基于上述分析,通过编码单元执行步骤(5):输入第N-1源词向量,得到第N源词向量和第N语义向量的当时或者前一时刻,可以通过语义空间执行步骤(7)(8),也可以通过解码单元执行步骤(11)(12),那么,语义空间对语义向量的处理、解码单元神经网络层的运算,不必再在源词向量逐层通过编码单元的N个神经网络层之后才能运行,而是能够在源词向量逐层通过编码单元的N个神经网络层的同时进行,大大缩短了翻译时间,进而提高了翻译效率。
[0095] 结合上述实施例,在本申请的另一个实施例中,针对编码单元中的每一个神经网络层,得到该神经网络层对应的语义向量,包括:
[0096] 利用该神经网络层的隐藏层,对输入的源词向量进行运算,得到该神经网络层对应的语义向量。
[0097] 参考图4,图4是编码单元的当前神经网络层利用其隐藏层,对输入的源词向量进行运算的示意图。
[0098] 可以理解的是,编码单元当前神经网络层得到语义向量的运算过程,不是对经过该神经网络层处理的源词向量(第n源词向量)的进一步处理,也不是对历史源词向量(第1源词向量到第n-1源词向量)的简单求和,而是基于当前神经网络隐藏层的运算内容,同时得到语义向量和经过该神经网络层处理的源词向量,所以,编码单元当前神经网络层输出的语义向量和经过该神经网络层处理的源词向量是同一级的输出,不分前后。
[0099] 同时,在本实施方式中,针对所述编码单元中的每一个神经网络层,该神经网络层对应的语义向量和源词向量,包括:
[0100] 针对所述编码单元中的每一个神经网络层,对上一源词向量进行两种不同的运算,得到该神经网络层对应的语义向量和源词向量,且该神经网络层对应的语义向量和源词向量不同,其中,所述上一源词向量为该神经网络层的上一神经网络层对应的源词向量。
[0101] 相应地,针对所述编码单元中的每一个神经网络层,该神经网络层对应的语义向量和源词向量,包括:
[0102] 针对所述编码单元中的每一个神经网络层,对上一源词向量进行相同的运算,得到该神经网络层对应的语义向量和源词向量,且该神经网络层对应的语义向量和源词向量相同,其中,所述上一源词向量为该神经网络层的上一神经网络层对应的源词向量。
[0103] 进一步说明了,针对所述编码单元中的每一个神经网络层,利用隐藏层,对输入的源词向量进行运算,得到的语义向量与经过该神经网络层处理的源词向量是同一级的输出,不分前后。其中,若是当前神经网络层的隐藏层关于得到语义向量的运算,与前神经网络层的隐藏层关于得到经过该神经网络层处理的源词向量的运算不相同,得到的语义向量和经过该神经网络层处理的源词向量也不相同;若是当前神经网络层关于得到语义向量的运算,与前神经网络层关于得到经过该神经网络层处理的源词向量的运算相同,那么对于输入的源词向量,利用当前神经网络层隐藏层的运算,得到的语义向量和经过该神经网络层处理的源词向量也是相同的。因此,编码单元的当前神经网络层输出的语义向量与经过该神经网络层处理的源词向量,均只与当前神经网络层的运算内容相关。
[0104] 编码单元各个神经网络层输出的语义向量,和经过该神经网络层处理的源词向量,都是基于当前网络层的运算内容得到的,对于输入的源词向量,编码单元的隐藏层可同时进行两种互不影响的运算。
[0105] 相比于将编码单元所有神经网络层的运算内容压缩到一个语义向量,可能造成的无法完整表达所有运算内容的信息,当前神经网络层得到的语义向量只包含当前层的运算内容,具有针对性,且不会遗漏信息,保证了翻译结果的完整性,进而保证了翻译质量
[0106] 在一种实施方式中,N个神经网络层中的每一个神经网络层具体都可以包括注意力机制网络,并且每一个神经网络层具体还可以包括但不限于全连神经网络、卷积神经网络、循环神经网络、递归神经网络、高速路神经网络及其变种中的至少一者。以图1为例,对于解码单元的每一神经网络层,都可以添加指向编码单元对应神经网络层的虚线(该虚线即表征注意力机制网络)。在应用包括注意力机制网络的深度级联神经网络翻译模型(如图1所示)的情况下,步骤S202、步骤S203以及步骤S204中得到语义向量的步骤具体包括以下步骤:
[0107] 针对所述编码单元中的第n个神经网络层,得到该神经网络层对应的语义向量,n为1至N之间的任一数值,包括:
[0108] 获得所述解码单元中的第n神经网络层对应的第n目标词向量的特征信息;
[0109] 对所述编码单元中的第n-1个神经网络层对应的第n-1源词向量中各向量赋予不同的权重系数;
[0110] 将携带不同权重系数的第n-1源词向量输入所述编码单元中的第n神经网络层,得到携带权重系数的第n语义向量。
[0111] 通过上述步骤,可以根据解码单元当前神经网络层输出目标词向量,获得目标词向量的特征信息,基于目标词向量的特征信息,对编码单元当前神经网络层的输入的源词向量中不同的向量赋予不同的权重系数,编码单元的当前神经网络层针对解码单元的当前神经网络层的输出内容,对输入的源词向量赋予较大的权重系数并进行计算。
[0112] 此处以示例的方式进行阐释,说明在注意力机制下得到第一语义向量和第二语义向量的过程:
[0113] 根据解码单元第一神经网络层的输出目标向量[y1,y2,y3],得到针对目标向量[y1,y2,y3]不同的权重系数:f(y1),f(y2),f(y3),编码单元第一神经网络层根据权重系数,对输入的源词向量[x1,x2,x3]进行运算,得到携带权重系数的第1语义向量C1=g{f(y1)x1,f(y2)x2,f(y3)x3}。
[0114] 根据解码单元第二神经网络层的输出目标向量[y11,y22,y33],得到针对目标向量[y11,y22,y33]不同的权重系数:f(y11),f(y22),f(y33),编码单元第二神经网络层根据权重系数,对输入的第一源词向量[x11,x22,x33]进行运算,得到携带权重系数的第2语义向量C1=g{f(y11)x11,f(y22)x22,f(y33)x33}。
[0115] 不同于注意力机制网络在只有一个固定长度的语义空间的编码-解码框架模型(例如:相关技术中的编码-解码框架模型)中,其权重系数只能加到编码单元的最后一层神经网络层,若该只有一个固定长度的语义空间的编码-解码框架模型中神经网络层的组成单一(例如:只选用循环神经网络),则会导致源词向量在逐层通过编码器的神经网络层的过程中,不可避免(通过逐层神经网络层进行复杂的计算,才能输入固定长度的语义空间)地出现源词向量信息丢失的情况,那么只能加在编码单元的最后一层神经网络层权重系数,也不可避免地不能历遍所有源词向量所有的向量信息,漏掉源词向量信息丢失的部分,进而得到的携带权重系数的语义向量也会相应地丢失掉源词向量对应的信息。因本实施例中深度级联神经网络翻译模型所具有的级联结构,本实施例中根据解码器任一神经网络层的输出,所得到权重系数,都可以直接应用到编码器的对应神经网络层的输入,保证了权重系数能关注到源词向量逐层通过编码单元的神经网络层时,任一神经网络层的信息,进而保证,编码单元的神经网络层在运算中能更全面地根据解码单元的运算结果,对不同的源词向量赋予不同的权重系数并进行不同的计算。
[0116] 基于同一发明构思,本申请另一实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请上述任一实施例所述的方法中的步骤。
[0117] 基于同一发明构思,本申请另一实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可再处理器上运行的计算机程序,所述处理器执行时实现本申请上述任一实施例所述的方法中的步骤。
[0118] 基于同一发明构思,本申请另一实施例提供一种翻译模型,所述翻译模型执行时实现本申请上述任一实施例所述的方法中的步骤。
[0119] 本说明书中的各个实施例均采用递进或说明的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0120] 本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0121] 本申请实施例是参照根据本申请实施例的方法、装置、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0122] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0123] 这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0124] 尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
[0125] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
[0126] 以上对本申请所提供的一种机器翻译的方法、装置、存储介质、电子设备和深度级联神经网络翻译模型,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈