Some content of this application is unavailable at the moment.
If this situation persist, please contact us atFeedback&Contact
1. (WO2018082569) SEQUENCE CONVERSION METHOD AND DEVICE
Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115   0116   0117   0118   0119   0120   0121   0122   0123   0124   0125   0126   0127   0128   0129   0130   0131   0132   0133   0134   0135   0136   0137   0138   0139   0140   0141   0142   0143   0144   0145   0146   0147   0148   0149   0150   0151   0152   0153   0154   0155   0156   0157   0158   0159   0160   0161   0162   0163   0164   0165   0166   0167   0168   0169   0170   0171   0172   0173   0174   0175   0176   0177   0178   0179   0180   0181   0182   0183   0184   0185   0186   0187   0188   0189   0190   0191   0192   0193   0194   0195   0196   0197   0198   0199   0200   0201   0202   0203   0204   0205   0206   0207   0208   0209   0210   0211   0212   0213   0214   0215   0216   0217   0218   0219   0220   0221   0222   0223   0224   0225   0226   0227   0228   0229   0230   0231   0232   0233   0234   0235   0236   0237   0238   0239   0240   0241   0242   0243   0244   0245   0246   0247   0248   0249   0250   0251   0252   0253   0254   0255   0256   0257   0258   0259   0260   0261   0262   0263   0264   0265   0266   0267   0268   0269   0270   0271   0272   0273   0274   0275   0276   0277   0278   0279   0280   0281   0282   0283   0284   0285   0286   0287   0288   0289   0290   0291   0292   0293   0294   0295   0296   0297   0298   0299   0300   0301   0302   0303   0304   0305   0306   0307   0308   0309   0310   0311   0312   0313   0314   0315   0316   0317   0318   0319   0320   0321   0322   0323   0324   0325   0326   0327   0328   0329   0330   0331   0332   0333   0334   0335   0336  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17  

附图

0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011  

说明书

发明名称 : 序列转换方法及装置

[0001]
本申请要求于2016年11月4日提交中国专利局、申请号为201610982039.7、发明名称为“序列转换方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。

技术领域

[0002]
本发明涉及计算机技术,具体涉及一种序列转换方法及装置。

背景技术

[0003]
随着计算机技术的飞速发展,深度学习的研究也取得了较大进展,涉及自然语言处理的序列到序列学习(sequence-to-sequence learning)也取得了突破性的进展,序列到序列学习是一种将源端序列映射到目标端序列的学习过程。序列到序列学习的成果主要用于序列转换,典型的序列转换的应用场景包括机器翻译(Machine Translation)、语音识别(speech recognition)、对话系统(dialog system or conversational agent)、自动摘要(automatic summarization)、自动问答(question answering)和图像说明文字生成(image caption generation)等等。
[0004]
一种典型的序列转换方法包括两个阶段:编码阶段和解码阶段。其中,编码阶段一般会通过循环神经网络(Recurrent Neural Network,RNN)将源端序列转化源端向量表示序列,然后再通过注意力机制(attention mechanism)将源端向量表示序列转换为源端上下文向量,,具体地,每次选择源端序列的一部分转化为源端上下文向量,因此源端序列可以被转化为多个源端上下文向量(从而为解码阶段的每个目标端词生成对应的源端上下文向量)。解码阶段通过每次生成一个目标端词的方式生成目标端序列:在每一步中,解码器根据编码阶段获取的当前源端上下文向量,以及上一步的解码器中间状态和上一步生成的目标端词,来计算当前的解码器中间状态,根据该当前的中间状态及源端上下文向量预测当前步骤的目标端词。
[0005]
在序列转换方法应用到自然语言处理时,由于源端序列和目标端序列的长度都是不固定的,因此在解码阶段也可以使用RNN进行处理。
[0006]
由于RNN在预测过程中主要参考的还是已经预测获取的目标端上下文向量,而仅仅将源端上下文向量作为一个额外的输入,导致当前源端上下文向量对应的信息可能不会正确地传递到对应的目标端上下文向量,存在过多的遗漏翻译(under-translation)和过度翻译(over-translation),从而导致预测获取的目标端序列不能忠诚地体现源端序列的信息。
[0007]
发明内容
[0008]
本发明实施例提供了序列转换方法及装置,能够在进行序列转换时提高目标端序列相对于源端序列的准确性。
[0009]
本发明的第一方面提供了一种序列转换方法,包括:
[0010]
接收源端序列;
[0011]
将所述源端序列转换为源端向量表示序列;
[0012]
根据所述源端向量表示序列获取至少两个候选目标端序列,以及所述至少两个候选目标端序列中每一个候选目标端序列的翻译概率值;
[0013]
对所述每一个候选目标端序列的翻译概率值进行调整;
[0014]
根据所述每一个候选目标端序列的调整后的翻译概率值,从所述至少两个候选目标端序列中选择输出目标端序列;输出所述输出目标端序列。
[0015]
其中,对候选目标端序列的翻译概率值进行调整时,可以直接使用预先设置好的调整因子,也可以使用预先设置的调整算法。其中,使用调整因子可以提高系统的处理效率,使用调整算法可以提高调整后的翻译概率值的准确性。
[0016]
其中,具体可以采用词向量化技术将源端序列转换为源端向量表示序列。
[0017]
结合第一方面,在一种可能的实施方式中,所述根据所述源端向量表示序列获取至少两个候选目标端序列包括:
[0018]
基于注意力机制根据所述源端向量表示序列获取至少两个源端上下文向量;
[0019]
获取所述至少两个源端上下文向量各自的解码中间状态序列;
[0020]
获取所述至少两个解码中间状态序列各自的候选目标端序列;
[0021]
所述对所述每一个候选目标端序列的翻译概率值进行调整包括:
[0022]
基于所述每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整。
[0023]
由于解码中间状态序列可以在一定程度上代表对应的候选目标端序列的翻译准确度,因此根据解码中间状态序列对翻译概率值的调整可以提高调整后的翻译概率值的准确性,从而提高最终的目标端序列的准确性。
[0024]
结合第一方面和前述的第一方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述至少两个候选目标端序列包括第一候选目标端序列,所述第一候选目标端序列是所述至少两个候选目标端序列中的任意一个;
[0025]
所述基于所述每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整包括:
[0026]
基于所述第一候选目标端序列的解码中间状态序列获取所述第一候选目标端序列的重构概率值;
[0027]
基于所述第一候选目标端序列的重构概率值对所述第一候选目标端序列的翻译概率值进行调整。
[0028]
由于解码中间状态序列可以在一定程度上代表对应的候选目标端序列的翻译准确度,因此根据解码中间状态序列对翻译概率值的调整可以提高调整后的翻译概率值的准确性,从而提高最终的目标端序列的准确性。
[0029]
结合第一方面和前述的第一方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述基于所述第一候选目标端序列的解码中间状态获取所述第一候选目标端序列的重构概率值包括:
[0030]
基于反向注意力机制获取所述第一候选目标端序列的重构概率值,所述反向注意力机制的输入是所述第一候选目标端序列的解码中间状态序列,所述反向注意力机制的输出是所述第一候选目标端序列的重构概率值。
[0031]
结合第一方面和前述的第一方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述基于反向注意力机制获取所述第一候选目标端序列的重构概率值包括:
[0032]
根据如下函数获取所述第一候选目标端序列的重构概率值:
[0033]
[数0001]


[0034]
其中,g R()是Softmax函数;
[0035]
是通过反向注意力机制总结得到的向量,通过如下的函数获取:
[0036]
[数0002]


[0037]
其中, 是由反向注意力机制输出的对齐概率,通过如下的函数获取:
[0038]
[数0003]


[0039]
其中,e j,k是源端序列中元素的反向注意力机制得分,通过如下的函数获取:
[0040]
[数0004]


[0041]
是获取重构概率值时的中间状态,通过如下的函数获取:
[0042]
[数0005]


[0043]
x j是所述源端序列中的元素,J表示所述源端序列中元素的数量;s i表示所述第一候选目标端序列的解码中间状态序列中的元素,I表示所述第一候选目标端序列的解码中间状态序列中元素的数量;f R是激活函数,R是重构概率值;γ 1,γ 2和γ 3是参数。
[0044]
由于在获取重构概率值时,会根据解码中间状态序列重构回源端序列,而源端序列是确定的,因此可以根据重构回源端序列的具体情况获取对应的重构概率值,因此获取的重构概率值也能够体现候选目标端序列的准确性,因此根据重构概率值对翻译概率值进行调整能够确保调整后的翻译概率值的准确性,从而提高输出的目标端序列的准确性。
[0045]
结合第一方面和前述的第一方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述参数γ 1,γ 2和γ 3通过端到端学习算法训练获取。
[0046]
结合第一方面和前述的第一方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述参数γ 1,γ 2和γ 3通过如下函数训练获取:
[0047]
[0048]
其中,θ和γ是需要训练获取的神经系统的参数,γ表示所述参数γ 1,γ 2或γ 3,N是训练序列集合中训练序列对的数量,X n是训练序列对中的源端序列,Y n是训练序列对中的目标端序列,s n是X n转换成Y n时的解码中间状态序列,λ是线性插值。
[0049]
结合第一方面和前述的第一方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述基于所述第一候选目标端序列的重构概率值对所述第一候选目标端序列的翻译概率值进行调整包括:
[0050]
对所述第一候选目标端序列的翻译概率值和重构概率值使用线性插值的方式求和,以获取所述第一候选目标端序列的调整后的翻译概率值。
[0051]
由于翻译概率值和重构概率值都能够在一定程度上体现对应的候选目标端序列相对于源端序列的准确性,因此使用线性插值的方式对二者求和可以很好地对二者进行平衡,从而使调整后的翻译概率值能够更好地体现对应的候选目标端序列的准确性,从而使输出的目标端序列能够更好地与源端序列吻合。
[0052]
结合第一方面和前述的第一方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述源端序列是一种自然语言文字或基于所述一种自然语言文字获得的文本文件,所述目标端序列是另一种自然语言文字或基于所述另一种自然语言文字获得的文本文件;
[0053]
所述源端序列是人类的语音内容或基于所述人类的语音内容获得的语音数据文件,所述目标端序列是所述语音内容对应的自然语言文字或基于所述自然语言文字获得的文本文件;
[0054]
所述源端序列是人类的语音内容或基于所述人类的语音内容获得的语音数据文件,所述目标端序列是所述人类的语音内容的语音回复或基于所述语音回复获得的语音数据文件;
[0055]
所述源端序列是待摘要的自然语言文字,所述目标端序列是待摘要的自然语言文字的摘要,摘要是自然语言文字或基于所述自然语言文字获得的文本文件;或者
[0056]
所述源端序列是图像或基于所述图像获得的图像数据文件,所述目标端序列是图像的自然语言说明文字或基于所述自然语言说明文字获得的文本文件。
[0057]
本发明的第二方面提供了一种序列转换装置,包括:
[0058]
接收单元,用于接收源端序列;
[0059]
转换单元,用于将所述源端序列转换为源端向量表示序列;
[0060]
获取单元,用于根据所述源端向量表示序列获取至少两个候选目标端序列,以及所述至少两个候选目标端序列中每一个候选目标端序列的翻译概率值;
[0061]
调整单元,用于对所述每一个候选目标端序列的翻译概率值进行调整;
[0062]
选择单元,用于根据所述每一个候选目标端序列的调整后的翻译概率值,从所述至少两个候选目标端序列中选择输出目标端序列;
[0063]
输出单元,用于输出所述输出目标端序列。
[0064]
其中,对候选目标端序列的翻译概率值进行调整时,可以直接使用预先设置好的调整因子,也可以使用预先设置的调整算法。其中,使用调整因子可以提高系统的处理效率,使用调整算法可以提高调整后的翻译概率值的准确性。
[0065]
其中,具体可以采用词向量化技术将源端序列转换为源端向量表示序列。
[0066]
结合第二方面,在一种可能的实施方式中,所述获取单元,具体用于基于注意力机制根据所述源端向量表示序列获取至少两个源端上下文向量;获取所述至少两个源端上下文向量各自的解码中间状态序列;获取所述至少两个解码中间状态序列各自的候选目标端序列;
[0067]
所述调整单元,具体用于基于所述每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整。
[0068]
由于解码中间状态序列可以在一定程度上代表对应的候选目标端序列的翻译准确度,因此根据解码中间状态序列对翻译概率值的调整可以提高调整后的翻译概率值的准确性,从而提高最终的目标端序列的准确性。
[0069]
结合第二方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述至少两个候选目标端序列包括第一候选目标端序列,所述第一候选目标端序列是所述至少两个候选目标端序列中的任意一个;
[0070]
所述调整单元包括:
[0071]
获取子单元,用于基于所述第一候选目标端序列的解码中间状态序列获取所述第一候选目标端序列的重构概率值;
[0072]
调整子单元,用于基于所述第一候选目标端序列的重构概率值对所述第一候选目标端序列的翻译概率值进行调整。
[0073]
结合第二方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述获取子单元具体用于:
[0074]
基于反向注意力机制获取所述第一候选目标端序列的重构概率值,所述反向注意力机制的输入是所述第一候选目标端序列的解码中间状态序列,所述反向注意力机制的输出是所述第一候选目标端序列的重构概率值。
[0075]
结合第二方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述重构概率值获取子单元具体用于:
[0076]
根据如下函数获取所述第一候选目标端序列的重构概率值:
[0077]
[数0006]


[0078]
其中,g R()是Softmax函数;
[0079]
是通过反向注意力机制总结得到的向量,通过如下的函数获取:
[0080]
[数0007]


[0081]
其中, 是由反向注意力机制输出的对齐概率,通过如下的函数获取:
[0082]
[数0008]


[0083]
其中,e j,k是源端序列中元素的反向注意力机制得分,通过如下的函数获取:
[0084]
[数0009]


[0085]
是获取重构概率值时的中间状态,通过如下的函数获取:
[0086]
[数0010]


[0087]
x j是所述源端序列中的元素,J表示所述源端序列中元素的数量;s i表示所述第一候选目标端序列的解码中间状态序列中的元素,I表示所述第一候选目标端序列的解码中间状态序列中元素的数量;f R是激活函数,R是重构概率值;γ 1,γ 2和γ 3是参数。
[0088]
由于在获取重构概率值时,会根据解码中间状态序列重构回源端序列,而源端序列是确定的,因此可以根据重构回源端序列的具体情况获取对应的重构概率值,因此获取的重构概率值也能够体现候选目标端序列的准确性,因此根据重构概率值对翻译概率值进行调整能够确保调整后的翻译概率值的准确性,从而提高输出的目标端序列的准确性。
[0089]
结合第二方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述装置还包括训练单元,用于通过端到端学习算法训练获取所述参数γ 1,γ 2和γ 3
[0090]
结合第二方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述训练单元,具体用于通过如下函数训练获取所述参数γ 1,γ 2和γ 3
[0091]
[0092]
其中,θ和γ是需要训练获取的神经系统的参数,γ表示所述参数γ 1,γ 2或γ 3,N是训练序列集合中训练序列对的数量,X n是训练序列对中的源端序列,Y n是训练序列对中的目标端序列,s n是X n转换成Y n时的解码中间状态序列,λ是线性插值。
[0093]
结合第二方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述调整子单元,具体用于:
[0094]
对所述第一候选目标端序列的翻译概率值和重构概率值使用线性插值的方式求和,以获取所述第一候选目标端序列的调整后的翻译概率值。
[0095]
由于翻译概率值和重构概率值都能够在一定程度上体现对应的候选目标端序列相对于源端序列的准确性,因此使用线性插值的方式对二者求和可以很好地对二者进行平衡,从 而使调整后的翻译概率值能够更好地体现对应的候选目标端序列的准确性,从而使输出的目标端序列能够更好地与源端序列吻合。
[0096]
结合第二方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,
[0097]
所述源端序列是一种自然语言文字或基于所述一种自然语言文字获得的文本文件,所述目标端序列是另一种自然语言文字或基于所述另一种自然语言文字获得的文本文件;
[0098]
所述源端序列是人类的语音内容或基于所述人类的语音内容获得的语音数据文件,所述目标端序列是所述语音内容对应的自然语言文字或基于所述自然语言文字获得的文本文件;
[0099]
所述源端序列是人类的语音内容或基于所述人类的语音内容获得的语音数据文件,所述目标端序列是所述人类的语音内容的语音回复或基于所述语音回复获得的语音数据文件;
[0100]
所述源端序列是待摘要的自然语言文字,所述目标端序列是待摘要的自然语言文字的摘要,摘要是自然语言文字或基于所述自然语言文字获得的文本文件;或者
[0101]
所述源端序列是图像或基于所述图像获得的图像数据文件,所述目标端序列是图像的自然语言说明文字或基于所述自然语言说明文字获得的文本文件。
[0102]
本发明的第三方面提供了一种序列转换装置,包括处理器和存储器,所述存储器存储了可执行指令,所述可执行指令用于指示所述处理器执行如下步骤:
[0103]
接收源端序列;
[0104]
将所述源端序列转换为源端向量表示序列;
[0105]
根据所述源端向量表示序列获取至少两个候选目标端序列,以及所述至少两个候选目标端序列中每一个候选目标端序列的翻译概率值;
[0106]
对所述每一个候选目标端序列的翻译概率值进行调整;
[0107]
根据所述每一个候选目标端序列的调整后的翻译概率值,从所述至少两个候选目标端序列中选择输出目标端序列;
[0108]
输出所述输出目标端序列。
[0109]
其中,对候选目标端序列的翻译概率值进行调整时,可以直接使用预先设置好的调整因子,也可以使用预先设置的调整算法。其中,使用调整因子可以提高系统的处理效率,使用调整算法可以提高调整后的翻译概率值的准确性。
[0110]
其中,具体可以采用词向量化技术将源端序列转换为源端向量表示序列。
[0111]
结合第三方面,在一种可能的实施方式中,所述处理器在根据所述源端向量表示序列获取至少两个候选目标端序列时用于执行如下步骤:
[0112]
基于注意力机制根据所述源端向量表示序列获取至少两个源端上下文向量;
[0113]
获取所述至少两个源端上下文向量各自的解码中间状态序列;
[0114]
获取所述至少两个解码中间状态序列各自的候选目标端序列;
[0115]
所述处理器在对所述每一个候选目标端序列的翻译概率值进行调整时用于执行如下步骤:
[0116]
基于所述每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整。
[0117]
由于解码中间状态序列可以在一定程度上代表对应的候选目标端序列的翻译准确度,因此根据解码中间状态序列对翻译概率值的调整可以提高调整后的翻译概率值的准确性,从而提高最终的目标端序列的准确性。
[0118]
结合第三方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述至少两个候选目标端序列包括第一候选目标端序列,所述第一候选目标端序列是所述至少两个候选目标端序列中的任意一个;
[0119]
所述处理器在基于所述每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整时用于执行如下步骤:
[0120]
基于所述第一候选目标端序列的解码中间状态序列获取所述第一候选目标端序列的重构概率值;
[0121]
基于所述第一候选目标端序列的重构概率值对所述第一候选目标端序列的翻译概率值进行调整。
[0122]
结合第三方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述处理器在将所述源端序列转换为源端上下文向量序列时用于执行如下步骤:
[0123]
基于注意力机制将所述源端序列转换为源端上下文向量序列;
[0124]
所述处理器在基于所述第一候选目标端序列的解码中间状态获取所述第一候选目标端序列的重构概率值时用于执行如下步骤:
[0125]
基于反向注意力机制获取所述第一候选目标端序列的重构概率值,所述反向注意力机制的输入是所述第一候选目标端序列的解码中间状态序列,所述反向注意力机制的输出是所述第一候选目标端序列的重构概率值。
[0126]
结合第三方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述处理器在基于反向注意力机制获取所述第一候选目标端序列的重构概率值时用于执行如下步骤:
[0127]
根据如下函数获取所述第一候选目标端序列的重构概率值:
[0128]
[数0011]


[0129]
其中,g R()是Softmax函数;
[0130]
是通过反向注意力机制总结得到的向量,通过如下的函数获取:
[0131]
[数0012]


[0132]
其中, 是由反向注意力机制输出的对齐概率,通过如下的函数获取:
[0133]
[数0013]


[0134]
其中,e j,k是源端序列中元素的反向注意力机制得分,通过如下的函数获取:
[0135]
[数0014]


[0136]
是获取重构概率值的处理的中间状态,通过如下的函数获取:
[0137]
[数0015]


[0138]
x j是所述源端序列中的元素,J表示所述源端序列中元素的数量;s i表示所述第一候选目标端序列的解码中间状态序列中的元素,I表示所述第一候选目标端序列的解码中间状态序列中元素的数量;f R是激活函数,R是重构概率值;γ 1,γ 2和γ 3是参数。
[0139]
由于在获取重构概率值时,会根据解码中间状态序列重构回源端序列,而源端序列是确定的,因此可以根据重构回源端序列的具体情况获取对应的重构概率值,因此获取的重构概率值也能够体现候选目标端序列的准确性,因此根据重构概率值对翻译概率值进行调整能够确保调整后的翻译概率值的准确性,从而提高输出的目标端序列的准确性。
[0140]
结合第三方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述可执行指令还用于指示所述处理器执行如下步骤:通过端到端学习算法训练获取参数γ 1,γ 2和γ 3
[0141]
结合第三方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述在通过如下函数训练获取参数γ 1,γ 2和γ 3时执行如下步骤:
[0142]
[0143]
其中,θ和γ是需要训练获取的神经系统的参数,γ表示所述参数γ 1,γ 2或γ 3,N是训练序列集合中训练序列对的数量,X n是训练序列对中的源端序列,Y n是训练序列对中的目标端序列,s n是X n转换成Y n时的解码中间状态序列,λ是线性插值。
[0144]
结合第三方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,所述处理器在基于所述第一候选目标端序列的重构概率值对所述第一候选目标端序列的翻译概率值进行调整时用于执行如下步骤:
[0145]
对所述第一候选目标端序列的翻译概率值和重构概率值使用线性插值的方式求和,以获取所述第一候选目标端序列的调整后的翻译概率值。
[0146]
由于翻译概率值和重构概率值都能够在一定程度上体现对应的候选目标端序列相对于源端序列的准确性,因此使用线性插值的方式对二者求和可以很好地对二者进行平衡,从而使调整后的翻译概率值能够更好地体现对应的候选目标端序列的准确性,从而使输出的 目标端序列能够更好地与源端序列吻合。
[0147]
结合第三方面和前述的第二方面的可能的实施方式中的任意一个,在一种可能的实施方式中,
[0148]
所述源端序列是一种自然语言文字或基于所述一种自然语言文字获得的文本文件,所述目标端序列是另一种自然语言文字或基于所述另一种自然语言文字获得的文本文件;
[0149]
所述源端序列是人类的语音内容或基于所述人类的语音内容获得的语音数据文件,所述目标端序列是所述语音内容对应的自然语言文字或基于所述自然语言文字获得的文本文件;
[0150]
所述源端序列是人类的语音内容或基于所述人类的语音内容获得的语音数据文件,所述目标端序列是所述人类的语音内容的语音回复或基于所述语音回复获得的语音数据文件;
[0151]
所述源端序列是待摘要的自然语言文字,所述目标端序列是待摘要的自然语言文字的摘要,摘要是自然语言文字或基于所述自然语言文字获得的文本文件;或者
[0152]
所述源端序列是图像或基于所述图像获得的图像数据文件,所述目标端序列是图像的自然语言说明文字或基于所述自然语言说明文字获得的文本文件。
[0153]
本发明的第四方面提供了一种序列转换系统,包括输入接口,输出接口以及本发明的第二方面,第二方面的可能的实施方式,第三方面,第三方面的可能的实施方式中的任意一个提供的序列转换装置;
[0154]
其中,所述输入接口用于接收源端数据并将所述源端数据转换为所述源端序列;
[0155]
所述输出接口,用于输出所述序列转换装置输出的输出目标端序列。
[0156]
其中,输入接口和输出接口根据序列转换系统的具体表现形式的不同会有不同,例如在序列转换系统是服务器或部署在云端时,输入接口可以是网络接口,源端数据来自于客户端,源端数据可以是经客户端采集获取的语音数据文件,图像数据文件,文本文件等等;相应的,输出接口也可以是前述的网络接口,用于将所述输出目标端序列输出给所述客户端。
[0157]
在序列转换系统是手机,终端等本地设备时,输入接口根据需要源端数据的类型不同会有不同,例如在源端数据是自然语言文字时,输入接口可以是键盘,鼠标,触摸屏,手写板等手动输入设备,输出接口可以是网络接口或显示接口等。在源端数据是人类语言时,输入接口可以是麦克风等声音采集设备,输出接口可以是扬声器,网络接口或显示接口等(具体根据输出目标端序列的呈现形式的不同会有不同)。在源端数据是图像数据时,输入接口可以是摄像头等图像采集设备,输出接口可以是网络接口或显示接口等。
[0158]
本发明的第五方面提供了一种计算机存储介质,用于存储可执行指令,所述可执行指令被执行时可以实现第一方面以及第一方面的可能的实施方式中的任意一种方法。
[0159]
从本发明实施例提供的以上技术方案可以看出,由于本发明实施例在进行序列转换时,会对候选目标端序列的翻译概率值进行调整,使得调整后的翻译概率值更能够体现目标端序列与源端序列的吻合度,因此在根据调整后的翻译概率值选择输出候选目标端序列时, 能够使得选择的输出目标端向量序列更能够与源端序列吻合,从而使得获取的目标端序列能够更好地忠于源端序列,从而提高目标端序列相对于源端序列的准确性。

附图说明

[0160]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获取其他的附图。
[0161]
图1为本发明的一种计算机的结构图;
[0162]
图2为本发明一个实施例提供的序列转换方法的流程图;
[0163]
图3为本发明的一种神经元的结构图;
[0164]
图4为本发明另一个实施例提供的序列转换方法的流程图;
[0165]
图5为本发明一个实施例提供的调整方法的流程图;
[0166]
图6为本发明一个实施例提供的序列转换方法中序列的转换流程图;
[0167]
图7为本发明一个实施例提供的序列转换装置的结构图;
[0168]
图8为本发明一个实施例提供的调整单元的结构图;
[0169]
图9为本发明另一个实施例提供的序列转换装置的结构图;
[0170]
图10为本发明另一个实施例提供的序列转换装置的结构图;
[0171]
图11位本发明一个实施例提供的序列转换系统的结构图。

具体实施方式

[0172]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获取的所有其他实施例,都属于本发明保护的范围。
[0173]
本发明实施例提供了序列转换方法,可以应用在机器翻译、语音识别、对话系统、自动摘要、自动问答和图像说明文字生成等等任何需要使用序列转换的应用场景。
[0174]
其中,机器翻译(Machine Translation,经常简写为MT,俗称机翻)属于计算语言学的范畴,其研究借由计算机程序将文字或演说从一种自然语言(Natural language)翻译成另一种自然语言。自然语言通常是指自然地随文化演化的语言,例如英语、汉语、法语、西班牙语和日语等等都是自然语言。其中,输入的自然语言文字可以由用户手动通过键盘,鼠标,触摸屏,手写板等手动输入设备输入,也可以是由远端设备通过网络输入;输出的自然语言文字可以通过显示屏直接进行呈现,也可以通过网络输出给远端设备由远端设备呈现。
[0175]
语音识别是通过计算机将人类语音内容转换为自然语言文字。输入的人类语音内容可以由麦克风等声音采集设备采集后输入,也可以由远端设备采集后通过网络输入;输出的 自然语言文字可以通过显示屏直接进行呈现,也可以通过网络输出给远端设备由远端设备呈现。
[0176]
对话系统是通过计算机与人类进行语音对话,其输入的是人类语音内容,输出的是与输入语音内容对应的语音回复。输入的人类语音内容可以由麦克风等声音采集设备采集后输入,也可以由远端设备采集后通过网络输入;输出的语音回复可以通过扬声器等放音设备直接呈现,也可以通过网络输出给远端设备由远端设备呈现。
[0177]
自动问答是通过计算机对人类语言问题进行回答。自动问答的输入输出可以与对话系统类似,此处不再赘述。
[0178]
现在主流商用的语音助手涉及到的应用场景就包括语音识别,对话系统和自动问答等。
[0179]
自动摘要是通过计算机生成一段自然文字的大意,通常用于提供已知领域的文章摘要,例如生成报纸上某篇文章的摘要。输入的一段自然文字可以由用户手动通过键盘,鼠标,触摸屏,手写板等手动输入设备输入,也可以是由远端设备通过网络输入,也可以通过光学字符识别(OCR,Optical Character Recognition)技术识别输入;输出的摘要由自然语言文字组成,可以通过显示屏直接进行呈现,也可以通过网络输出给远端设备由远端设备呈现。
[0180]
图像说明文字生成是通过计算机产生一幅图像的说明文字。输入的图像可以由远端设备采集后通过网络输入,也可以由摄像头等图像采集设备采集输入;输出的说明文字由自然语言文字组成,可以通过显示屏直接进行呈现,也可以通过网络输出给远端设备由远端设备呈现。
[0181]
本发明实施例提供的序列转换方法可以通过计算机实现,具体地可以是由一台通用计算机或专用计算机来实现,也可以通过计算机集群来实现,当然也可以通过云来实现。可以理解的是,不管采用前述哪种方式实现,其最终都可以认为是通过计算机来实现,图1描述了一种计算机100的结构,包括至少一个处理器101,至少一个网络接口104,存储器105,和至少一个通信总线102,用于实现这些装置之间的连接通信。处理器101用于执行存储器105中存储的可执行模块来实现本发明的序列转换方法,其中的可执行模块可以是计算机程序。其中,根据计算机100在系统中的作用,以及序列转换方法的应用场景,该计算机100还可以包括有至少一个输入接口106和至少一个输出接口107。
[0182]
其中,输入接口106和输出接口107根据序列转换方法的应用场景不同会有不同。例如,在序列转换方法应用于机器翻译时,如果输入的自然语言文字由用户手动通过键盘,鼠标,触摸屏,手写板等手动输入设备输入,则输入接口106需要包括与键盘,鼠标,触摸屏,手写板等手动输入设备进行通信的接口;如果输出的自然语言文字通过显示屏直接进行呈现,则输出接口107需要包括与显示屏通信的接口。
[0183]
在序列转换方法应用于语音识别时,如果输入的人类语音内容由麦克风等声音采集设备采集后输入,则输入接口106需要包括与麦克风等声音采集设备通信的接口;如果输出的自然语言文字通过显示屏直接进行呈现,则输出接口107需要包括与显示屏通信的接口。
[0184]
在序列转换方法应用于对话系统时,如果输入的人类语音内容由麦克风等声音采集设备采集后输入,则输入接口106需要包括与麦克风等声音采集设备通信的接口;如果输出 的语音回复通过扬声器等放音设备直接呈现,则输出接口107需要包括与扬声器等放音设备通信的接口。
[0185]
在序列转换方法应用于自动问答时,如果输入的人类语音内容由麦克风等声音采集设备采集后输入,则输入接口106需要包括与麦克风等声音采集设备通信的接口;如果输出的语音回复通过扬声器等放音设备直接呈现,则输出接口107需要包括与扬声器等放音设备通信的接口。
[0186]
在序列转换方法应用于自动摘要时,如果输入的一段自然文字由用户手动通过键盘,鼠标,触摸屏,手写板等手动输入设备输入时,则输入接口106需要包括与键盘,鼠标,触摸屏,手写板等手动输入设备进行通信的接口;如果输入的一段自然文字由OCR模块识别输入时,则输出接口107需要包括与OCR模块通信的接口;如果输出的摘要通过显示屏直接进行呈现,则输入输出接口106需要包括与显示屏通信的接口。
[0187]
在序列转换方法应用于图像说明文字生成时,如果输入的图像由摄像头等图像采集设备采集输入,则输入接口106需要包括与摄像头等图像采集设备通信的接口;如果输出的说明文字通过显示屏直接进行呈现,则输出接口107需要包括与显示屏通信的接口。
[0188]
如下先介绍本发明实施例提供的序列转换方法,图2描述了本发明一个实施例提供的序列转换方法的流程,该方法可以基于递归神经网络技术实现,如图2所示,该方法包括:
[0189]
201、接收源端序列。
[0190]
源端序列根据应用场景的不同会有不同,例如在应用于机器翻译时,源端序列是一种自然语言的文字,可以是一个短语,也可以是一句话,甚至可以是一段文字。在应用于语音识别时,源端序列是一段人类语音内容。在应用于对话系统时,源端序列是一段人类语音内容。在应用于自动问答时,源端序列是一段人类语音内容。在应用于自动摘要时,源端序列是待摘要的一段自然文字。在应用于图像说明文字生成时,源端序列是待生成说明文字的一幅图像。
[0191]
源端序列的具体接收过程已经在前面进行了详细的描述,此处不再赘述。
[0192]
在如下的实施例描述中,源端序列用(x 1,x 2,x 3,…,x J)表示,其中J是源端序列中元素的数量。
[0193]
202、将源端序列转换为源端向量表示序列。
[0194]
其中,源端向量表示序列中的元素(源端向量表示)的数量可以为一个或多个,具体数量根据源端序列的情况以及所使用的转换算法的不同会有不同。
[0195]
具体地,在一种实施方式中,可以通过循环神经网络(Recurrent Neural Network,RNN)将源端序列(x 1,x 2,x 3,…,x J)转换成源端向量表示序列(h 1,h 2,h 3,…,h J)。具体可以采用词向量化技术将源端序列转换成源端向量表示序列。
[0196]
其中,在应用场景为机器翻译时,在将源端序列转换为源端向量表示序列时,可以采用词向量化的方式,词向量化是指通过对大量文本的学习(不需要标注),根据前后文自动学习到每个词的语义,然后把每个词映射为一个实数向量形式的表达,在这种情况下,每个词向量会被转换成一个源端向量表示,例如vec(中国)减去vec(北京)约等于vec(英国)减 去vec(伦敦)。在词向量的基础上,可扩展地把一句话映射为一个向量,甚至把一段文字映射为一个向量。
[0197]
可以理解的是,在应用场景不是机器翻译时,也可以采用与上述词向量类似的方式将源端序列转换为源端向量表示序列。
[0198]
203、根据所述源端向量表示序列获取至少两个候选目标端序列,以及所述至少两个候选目标端序列中每一个候选目标端序列的翻译概率值。
[0199]
具体地,可以通过RNN来获取候选目标端序列,以及候选目标端序列的翻译概率值。
[0200]
在一种可能的实施方式中,可以基于注意力机制根据所述源端向量表示序列获取至少两个源端上下文向量;再获取所述至少两个源端上下文向量各自的解码中间状态序列;然后再获取所述至少两个解码中间状态序列各自的候选目标端序列。
[0201]
其中,在基于注意力机制将源端向量表示序列(h 1,h 2,h 3,…,h J)转换成源端上下文向量(c 1,c 2,…,c I)时,具体可以通过注意力机制为源端向量表示序列(h 1,h 2,h 3,…,h J)中每一个向量赋予一个权重(该权重可以从训练语料中自动学习到的),该权重表示源端向量表示序列(h 1,h 2,h 3,…,h J)中的向量与即将生成的目标端词的对齐概率,对源端向量表示序列中每一个向量加权后获取向量组成的序列即为源端上下文序列。其中,I和J的取值可以不同。
[0202]
在另一些实施方式中,可以将源端向量表示序列中最后一个向量作为源端上下文向量;也可以使用注意力机制根据具体需要在不同解码时刻将源端向量表示序列中的所有向量使用加权和的方式总结成一个源端上下文向量;也可以使用卷积神经网络(Convolutional Neural Network)将源端序列总结成一个源端上下文向量。
[0203]
其中,在一些实施方式中,具体的候选目标端序列中目标端词的获取过程可以包括如下两个步骤:
[0204]
1.更新当前的解码中间状态。其中,解码中间状态是过去翻译信息的总结,具体可以使用通用的RNN模型来进行更新。该更新步骤的输入包括:当前的源端上下文向量(c i),前一个的解码中间状态(s i-1),以及前一个的目标端词(y i-1);该更新步骤的输出包括当前的解码中间状态(s i)。其中,需要说明的是,在当前的解码中间状态是s 1时,由于没有前一个解码中间状态可以输入,因此在实际实现过程中,可以预先设置一个初始化解码中间状态,该初始化解码中间状态携带的信息可以为空(即全零),也可以是预先设置的信息。
[0205]
2.生成当前的目标端词。该生成步骤的输入包括:当前的源端上下文向量(c i),当前的解码中间状态(s i)和前一个的目标端词(y i-1);该生成步骤的输出包括当前的目标端词(y i)和翻译概率值。其中,翻译概率值表示的是对应的目标端词与源端上下文向量的吻合度,根据具体的算法不同,翻译概率值可以是越高越好,也可以是越低越好,还可以是与预先设置的一个基准值越接近越好。其中,需要说明的是,在当前的目标端词是y 1时,由于没有前一个目标端词可以输入,因此在实际实现过程中,可以预先设置一个初始化目标端词,该初始化目标端词携带的信息可以为空(即全零),也可以是预先设置的信息。
[0206]
在目标端序列中的每一个目标端词都确定了之后,可以直接将每一个目标端词对应的翻译概率值相乘得到该目标端序列的翻译概率值;也可以将各个目标端词对应的翻译概率 值的乘积,再基于目标端词的数量对乘积进行归一化获得的值作为该目标端序列的翻译概率值。
[0207]
可以理解但是,如上两个步骤可能会循环执行多次,循环执行的次数根据源端上下文向量序列中元素(即源端上下文向量)的数量的不同会有不同。
[0208]
其中,目标端序列中元素的表现形式跟目标端序列的表现形式的不同会有不同,例如,在目标端序列是自然语言文字序列时,目标端序列中元素的表现形式可以是词向量,对应的是一个或一组目标端词。
[0209]
具体的目标端序列的获取过程根据应用场景的不同会有不同,在各个应用场景下都有对应的主流通用技术可以使用,本发明并不对具体的预测方法进行限定。
[0210]
需要说明的是,为了所述至少两个候选目标端序列可以是并行获取的,即可以同时执行获取至少两个候选目标端序列的获取过程;也可以是串行获取的,即在获取了一个候选目标端序列后再去获取另一个候选目标端序列。本发明实施例不对具体的获取顺序进行限定,只要能够获取至少两个候选目标端序列都不会影响本发明实施例的实现。
[0211]
204.对每一个候选目标端序列的翻译概率值进行调整。
[0212]
其中,在对候选目标端序列的翻译概率值进行调整时,可以根据预先设置的方式进行。一种可能的实施方式是预先设置好一些调整因子,在对翻译概率值进行调整时可以直接使用这些预先设置好的调整因子对翻译概率值进行调整,从而可以获取调整后的翻译概率值;另一种可能的实施方式是预先设置好调整因子的获取算法,该获取算法的输入可以是候选目标端序列,或候选目标端序列的翻译概率值,或者也可以是获取候选目标端序列的过程中的一些中间信息,所述的中间信息可以是解码中间状态序列,和/或目标端序列等。在本发明的一种实施方式中,该中间信息可以是解码中间状态序列,解码中间状态序列与候选目标端序列时一一对应的关系,解码中间状态序列包括了获取对应的候选目标端序列时获取的解码中间状态。
[0213]
其中,使用调整因子可以提高系统的处理效率,使用调整算法可以进一步提高调整的准确性,从而提高输出目标端序列与源端序列的吻合度。
[0214]
需要说明的是,在对至少两个候选目标端序列的翻译概率值进行调整时,可以同时执行该至少两个翻译概率值的调整过程,也可以在调整完一个翻译概率值后再调整另一个翻译概率值。本发明实施例并不对具体的调整顺序进行限定。
[0215]
205.根据每一个候选目标端序列的调整后的翻译概率值,从所述的至少两个候选目标端序列中选择输出目标端序列。
[0216]
具体地,由于翻译概率值表示了对应的候选目标端序列与源端序列的吻合度(忠诚度越好,以及流畅度越高则吻合度越高),因此在从至少两个候选目标端序列中选择输出目标端序列时,根据翻译概率值的大小与吻合度的对应关系,可以直接选择翻译概率值最高的候选目标端序列,或者选择翻译概率值最低的候选目标端序列,或者选择翻译概率值与预先设置的基准值最接近的候选目标端序列。
[0217]
206、输出选择的输出目标端序列。
[0218]
具体的输出过程根据应用场景的不同会有不同,在各个应用场景下都有对应的主流通用技术可以使用,本发明并不对具体的输出方法进行限定。
[0219]
从上可知,本发明在进行序列转换时,会对候选目标端序列的翻译概率值进行调整,使得调整后的翻译概率值更能够体现目标端序列与源端序列的吻合度,因此在根据调整后的翻译概率值选择输出候选目标端序列时,能够使得选择的输出目标端序列更能够与源端序列吻合,从而使得获取的目标端序列能够更好地忠于源端序列同时不会影响流畅度,从而提高目标端序列相对于源端序列的准确性,其中,准确性包括忠诚度和流畅度。
[0220]
神经元是一种最简单的神经网络,神经网络是20世纪80年代以来人工智能领域兴起的研究热点。它从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型,按不同的连接方式组成不同的网络。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的神经元(节点)相互联接构成。每个节点代表一种特定的输出函数,称为激活函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激活函数的不同而不同。
[0221]
图3描述了一种神经元的结构。如图3所示,该神经元是一个以x 1,x 2,x 3及截距+1为输入值的运算单元,神经元的具体表现形式可以为激活函数,例如,图3所示的神经元的输出可以表示成如下的函数(1)的形式:
[0222]
[数0016]


[0223]
其中,W i为权重向量,b为偏置单元,函数f为激活函数,在一些实施方式中,激活函数可以用sigmoid函数实现,一种典型的sigmoid函数的表现形式如下的函数(2)所示:
[0224]
[数0017]


[0225]
在涉及自然语言文字处理的序列到序列转换中,源端序列的长度和目标端序列的长度都不是固定的。本发明的一个实施例采用循环神经网络(RNN,Recurrent Neural Network)来处理这种变长的源端序列和目标端序列。RNN的主要思想是循环地将输入的序列压缩成一个固定维度的向量,该固定维度向量也称为中间状态。具体地,RNN循环读取输入序列,根据当前源端上下文向量和前一解码中间状态计算当前源端上下文向量对应的解码中间状态,再根据当前解码中间状态和当前源端上下文向量来预测当前源端上下文向量对应的目标端上词。在本发明的一个实施例中,还可以使用当前源端上下文向量,前一解码中间状态以及前一目标端词来计算当前源端上下文向量对应的解码中间状态,再根据当前解码中间状态,当前源端上下文向量以及前一目标端词来预测当前源端上下文向量对应的目标端词。最后可以根据获得的所有目标端词获取最终的目标端序列。
[0226]
图4描述了本发明另一个实施例提供的序列转换方法的流程,包括:
[0227]
401、接收源端序列。
[0228]
402、将源端序列转换为源端向量表示序列。
[0229]
403、根据所述源端向量表示序列获取至少两个候选目标端序列,以及所述至少两个候选目标端序列中每一个候选目标端序列的翻译概率值以及解码中间状态序列。
[0230]
其中,步骤401-403的具体实现可以参考步骤201-203的具体实现,此处不再赘述。
[0231]
404、基于每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整。
[0232]
具体地,可以根据预先设置的方法对翻译概率值进行调整。
[0233]
例如,图5描述了本发明一个实施例提供的调整方法的流程,包括:
[0234]
4041.基于第一候选目标端序列的解码中间状态序列获取第一候选目标端序列的重构概率值;该第一候选目标端序列是所述的至少两个候选目标端序列中的任意一个。
[0235]
其中,在获取重构概率值时具体可以通过注意力机制来获取,例如可以采用主流的是反向注意力(inverse attention)机制来获取重构概率值。
[0236]
在通过反向注意力机制来获取重构概率值时,可以将第一候选目标端序列的解码中间状态序列(s 1,s 2,…,s I)作为该反向注意力机制的输入,该反向注意力机制的输出即是第一候选目标端序列的重构概率值。其中,重构是指的将解码中间状态序列(s 1,s 2,…,s I)强制反向解码至源端序列(x 1,x 2,…,x J),由于源端序列是已知的,因此可以确定将解码中间状态序列(s 1,s 2,…,s I)强制反向解码至源端序列(x 1,x 2,…,x J)的重构概率值,在具体的重构过程中,可以分别获得重构回x 1,x 2,…,x J的J个重构概率值,然后基于该J个重构概率值得到最终的重构概率值。重构概率值表示的是解码中间状态序列与源端序列之间的吻合度,具体可以是重构概率值越高吻合度越高,或者是重构概率值越低则吻合度越高,或者是重构概率值与预先设置的基准值越接近则吻合度越高。
[0237]
在一种实施方式中,具体可以根据如下函数(3)来获取第一候选目标端序列的重构概率值:
[0238]
[数0018]


[0239]
其中,g R()是Softmax函数,Softmax函数可以对重构获取的源端序列中所有词向量进行归一化操作获取每个词向量的重构概率值,再通过上述函数(3)就可以确定第一候选目标端序列的重构概率值。其中,Softmax函数是神经网络中通用的一个函数,此处不对其进行赘述。
[0240]
是通过反向注意力机制总结得到的向量,可以通过如下的函数(4)获取:
[0241]
[数0019]


[0242]
其中, 是由反向注意力机制输出的对齐概率,可以通过如下的函数(5)获取:
[0243]
[数0020]


[0244]
其中,e j,k是源端序列中元素的反向注意力机制得分,,可以通过如下的函数(6)获取:
[0245]
[数0021]


[0246]
是重构过程的中间状态,可以通过如下的函数(7)获取:
[0247]
[数0022]


[0248]
x j是所述源端序列中的元素,J表示所述源端序列中元素的数量;s i表示所述第一候选目标端序列的解码中间状态序列中的元素,I表示所述第一候选目标端序列的解码中间状态序列中元素的数量;f R是激活函数,R是重构概率值;γ 1是函数(3)的参数,γ 2是函数(6)的参数,γ 3是函数(7)的参数;在一些实施方式中,γ 1,γ 2和γ 3可以是不同的参数,在一些实施方式中,γ 1,γ 2和γ 3也可以是部分不同的参数,在一些实施例中γ 1,γ 2和γ 3还可以是相同的参数;γ 1,γ 2和γ 3可以通过端到端学习算法训练获取。具体的端到端学习算法可以预先设定。
[0249]
4042.基于第一候选目标端序列的重构概率值对第一候选目标端序列的翻译概率值进行调整。
[0250]
其中,具体可以对所述第一候选目标端序列的翻译概率值和重构概率值使用线性插值的方式求和,以获取所述第一候选目标端序列的调整后的翻译概率值;在一些实施方式中,可以直接将线性插值求和的结果作为调整后的翻译概率值,在一些实施方式中,也可以对线性插值求和的结果做进一步的处理,将处理后的结果作为调整后的翻译概率值。也可以对所述第一候选目标端序列的翻译概率值和重构概率值使用加权平均的方式求和,以获取所述第一候选目标端序列的调整后的翻译概率值。还可以直接将第一候选目标端序列的翻译概率值和重构概率值相加,将得到的和作为所述第一候选目标端序列的调整后的翻译概率值。
[0251]
由于翻译概率值和重构概率值都能够在一定程度上体现对应的候选目标端序列相对于源端序列的准确性,因此使用线性插值的方式对二者求和可以很好地对二者进行平衡,从而使调整后的翻译概率值能够更好地体现对应的候选目标端序列的准确性,从而使最终得到的目标端序列能够更好地与源端序列吻合。
[0252]
其中,步骤4041和4042可以针对每一个候选目标端序列均执行一次,即有几个候选目标端序列就循环执行几次,从而获取每个候选目标端序列的调整后的翻译概率值。
[0253]
405.根据每一个候选目标端序列的调整后的翻译概率值,从所述的至少两个候选目标端序列中选择输出目标端序列。
[0254]
406、输出选择的输出目标端序列。
[0255]
其中,步骤405和406的具体实现可以参考步骤205和206的具体实现,此处不再赘述。
[0256]
从上可知,本实施例在进行序列转换时,会对候选目标端序列的翻译概率值进行调整,使得调整后的翻译概率值更能够体现目标端序列与源端序列的吻合度,因此在根据调整后 的翻译概率值选择输出候选目标端序列时,能够使得选择的输出目标端序列更能够与源端序列吻合,从而使得获取的目标端序列能够更好地忠于源端序列,从而提高目标端序列相对于源端序列的准确性;同时,由于候选目标端序列的获取需要基于对应的解码中间状态序列,因此增加获取所述每一个候选目标端序列的解码中间状态序列的步骤并不会实质增加序列转换装置的处理负荷;同时,由于解码中间状态序列可以在一定程度上代表对应的候选目标端序列的翻译准确度,因此根据解码中间状态序列对翻译概率值的调整可以提高调整后的翻译概率值的准确性,从而提高最终的目标端序列的准确性。
[0257]
如上所述,所述的参数γ 1,γ 2和γ 3是通过端到端的学习算法训练获取的,在本发明的一种实施方式中,所述的参数γ 1,γ 2和γ 3具体可以是通过如下的函数(8)训练获取的:
[0258]
[0259]
其中,θ和γ是需要训练获取的神经系统的参数,γ表示所述参数γ 1,γ 2或γ 3,N是训练序列集合中训练序列对的数量,X n是训练序列对中的源端序列,Y n是训练序列对中的目标端序列,s n是X n转换成Y n时的解码中间状态序列,λ是线性插值。其中,λ可以人工提前设定,也可以通过函数控制通过训练得到。可以看出,函数(8)包含两部分:(likelihood)概率和重构(reconstruction)概率,其中似然概率可以很好地评估翻译的流畅度,而重构概率可以评价翻译的忠诚度。将两者结合起来可以更好地评估翻译的质量,从而有效引导参数训练以生成更好的翻译结果。其中,训练序列对的具体表现形式根据序列转换方法应用的具体场景不同会有不同;例如,在应用场景为机器翻译时,每一个训练序列对都是一对互为翻译的自然语言句子。
[0260]
在一些实施方式中,为了在进行序列转换时能够更好地将解码中间状态重构回源端序列,在训练获取参数γ 1,γ 2和γ 3时,可以鼓励解码器中间状态尽可能包含完整的源端信息,从而提高目标端序列的忠诚度。
[0261]
图6描述了本发明一个实施例提供的序列转换方法中序列的转换流程,如图6所示,
[0262]
在执行本发明的序列转换方法过程中,包括了如下的序列转换:
[0263]
A,源端序列(x 1,x 2,x 3,…,x J)先被转换成了源端向量表示序列(h 1,h 2,h 3,…,h J)。该过程具体可以采用词向量化技术实现。
[0264]
B,源端向量表示序列(h 1,h 2,h 3,…,h J)通过注意力机制转换成了源端上下文向量(c 1,c 2,…,c I);需要注意的是,I和J的取值可以相同也可以不同。
[0265]
C,通过源端上下文向量(c 1,c 2,…,c I)获得了对应的解码中间状态序列(s 1,s 2,…,s I),从图中可以看出,在获得当前的解码中间状态s i时参考了前一个的解码中间状态s i-1其中,1≤i≤I。需要说明的是,由于在获得解码中间状态s 1时并没有可以参考的前一个的解码中间状态,此时参考预先设置好的初始化解码中间状态,该初始化解码中间状态可以携带空信息(即全零),也可以是预先设置好的信息,本发明实施例不对携带的信息进行具体限定。
[0266]
D,基于解码中间状态序列(s 1,s 2,…,s I)和源端上下文向量序列(c 1,c 2,…,c I)获取候选目标 端序列(y 1,y 2,…,y I);同时,在这个步骤会同时输出该候选目标端序列(y 1,y 2,…,y I)的翻译概率值,具体地,在获取目标端序列(y 1,y 2,…,y I)的过程中,可以分别计算通过s 1和c 1得到目标端词y 1的翻译概率值1,通过s 2和c 2得到目标端词y 2的翻译概率值2,……,通过s J和c J得到目标端词y J的翻译概率值J,然后就可以基于得到的翻译概率值1,翻译概率值2,……,翻译概率值J获得候选目标端序列(y 1,y 2,…,y I)的翻译概率值。具体地,可以将翻译概率值1,翻译概率值2,……,和翻译概率值J相乘得到最终的翻译概率值;也可以在得到翻译概率值1,翻译概率值2,……,和翻译概率值J的乘积后,再基于J的值对乘积进行归一化获得最终的翻译概率值。
[0267]
E,基于反向注意力机制将解码中间状态序列(s 1,s 2,…,s I)转换为重构源端上下文向量
[0268]
F,基于重构源端上下文向量 获取重构中间状态序列 其中,如图6所示,在获取当前的重构源端向量表示 时参考了前一个重构中间状态 其中,1≤j≤J。需要说明的是,由于在获取重构中间状态 时并没有可以参考的前一个重构中间状态,此时参考预先设置好的初始化重构中间状态,该初始化重构中间状态可以携带空信息(即全零),也可以是预先设置好的信息,本发明实施例不对携带的信息进行具体限定。
[0269]
G,基于重构中间状态序列 和重构源端上下文向量 获取源端序列(x 1,x 2,x 3,…,x J)。由于源端序列(x 1,x 2,x 3,…,x J)是已知的,因此在通过重构中间状态序列 和重构源端上下文向量 输出源端序列(x 1,x 2,x 3,…,x J)时,可以分别计算通过 得到x 1的重构概率值1,通过 得到x 2的重构概率值2,……,通过 得到x J的重构概率值J,然后就可以基于得到的重构概率值1,重构概率值2,……,重构概率值J获得通过解码中间状态序列重构回源端序列的重构概率值。具体地,可以将重构概率值1,重构概率值2,……,和重构概率值J相乘得到最终的重构概率值;也可以在得到重构概率值1,重构概率值2,……,和重构概率值J的乘积后,再基于J的值对乘积进行归一化获得最终的重构概率值。
[0270]
可以理解的是,为了获取至少两个候选目标端序列,步骤B-D需要执行至少两次,该至少两次执行可以是同时进行的,也可以是顺序进行的,本发明不对具体的执行顺序进行限定,只要能够得到至少两个候选目标端序列都不会影响本发明实施例的实现。同理,为了获得与所述两个候选目标端序列分别对应的至少两个重构概率值,步骤E-G也需要执行至少两次,该至少两次执行可以是同时进行的,也可以是顺序进行的,本发明不对具体的执行顺序进行限定,只要能够得到至少两个重构概率值都不会影响本发明实施例的实现。
[0271]
如上对本发明提供的序列转换方法进行了详细描述,为了验证本发明提供的序列转换方法的有效性,发明人在应用场景为机器翻译的情况下对本发明提供的序列转换方法进行了测试,以测试将汉语翻译成英语的准确性。为了表示测试的公平,现有技术和本发明都是在神经网络下实现的,其中,现有技术采用的是标准神经网络机器翻译(NMT)系统,本发明测试结果是在NMT的基础上增加实现本发明方案获取的。
[0272]
表1描述了在具有125万个训练序列对的训练序列集合进行了训练获取了参数γ 1,γ 2 或γ 3,然后在标准的公开测试集上使用测试本发明技术和现有技术获取的双语评估替代(BLEU,Bilingual Evaluation Understudy)得分。
[0273]
表1
[0274]
[0275]
其中,表1中Beam是搜索空间,Tuning是开发集,MT05,MT06和MT08是三种不同的测试集,All表示的是测试集序列,Oracle表示的是理论最优值。
[0276]
从表1可以看出,本发明技术的BLEU得分在每一个条件下都高于现有技术,平均来看,相比现有技术提高了2.3个BLEU得分。同时,需要注意的是,现有技术在增加搜索空间(表1中的Beam)时,翻译质量反而下降,而本发明也很好地克服了现有技术的这个缺陷,即搜索空间越大,翻译质量也越好。
[0277]
为了进一步地验证本发明技术的效果,发明人测试了将本发明技术应用在训练和在线测试时分别的效果,结果如表2所示。
[0278]
表2
[0279]
[0280]
从表2可以看出,在仅将本发明技术应用在训练时,BLEU得分就已经高于现有技术了,即仅仅将本发明技术应用在训练就可以提高序列转换的质量。在将将本发明技术应用在训练和测试时,可以进一步提高序列转换的质量。
[0281]
为了更全面的评估本发明技术的效果,发明人评估了序列转换(机器翻译)时遗漏翻译和过度翻译问题的情况,结果如表3所示。
[0282]
表3
[0283]
[表0001]
Model 遗漏翻译 过度翻译
现有技术 18.2% 3.9%
本发明技术 16.2% 2.4%

[0284]
从表3可以看出,使用本发明技术后,相对现有技术可以减少11.0%的遗漏翻译,以及减少38.5%的过度翻译,效果提升显著。
[0285]
进一步地,发明人测试了本发明技术与现有的相关增强技术的兼容度,发明人具体测 试了本发明技术与覆盖率模型(Coverage Model)和上下文门(Context Gates)机制的兼容度,结果如表4所示。
[0286]
表4
[0287]
[0288]
从表4可以看出,本发明技术与现有的相关增强技术,即覆盖率模型和上下文门机制的技术兼容性比较好,在应用本发明技术之后都能够提高BLEU得分,因此能够与现有的相关增强技术互补,进一步提高序列转换(机器翻译)的质量。
[0289]
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
[0290]
图7描述了本发明一个实施例提供的序列转换装置500的结构,如图7所示,该序列转换装置500包括:
[0291]
接收单元501,用于接收源端序列。具体实现可以参考步骤201的描述,此处不再赘述。
[0292]
转换单元502,用于将所述源端序列转换为源端向量表示序列。具体实现可以参考步骤202的描述,此处不再赘述。
[0293]
获取单元503,用于根据所述源端向量表示序列获取至少两个候选目标端序列,以及所述至少两个候选目标端序列中每一个候选目标端序列的翻译概率值。具体实现可以参考步骤203的描述,此处不再赘述。
[0294]
调整单元504,用于对所述每一个候选目标端序列的翻译概率值进行调整。具体实现可以参考步骤204的描述,此处不再赘述。
[0295]
选择单元505,用于根据所述每一个候选目标端序列的调整后的翻译概率值,从所述至少两个候选目标端序列中选择输出目标端序列。具体实现可以参考步骤205的描述,此处不再赘述。
[0296]
输出单元506,用于输出所述输出目标端序列。具体实现可以参考步骤206的描述,此处不再赘述。
[0297]
从上可知,本发明在进行序列转换时,会对候选目标端序列的翻译概率值进行调整,使得调整后的翻译概率值更能够体现目标端序列与源端序列的吻合度,因此在根据调整后的翻译概率值选择输出候选目标端序列时,能够使得选择的输出目标端序列更能够与源端序列吻合,从而使得获取的目标端序列能够更好地忠于源端序列,从而提高目标端序列相对于源端序列的准确性。
[0298]
在本发明的一些实施方式中,图7中的获取单元503可以具体用于基于注意力机制根据所述源端向量表示序列获取至少两个源端上下文向量;获取所述至少两个源端上下文向量各自的解码中间状态序列;获取所述至少两个解码中间状态序列各自的候选目标端序列。相应的,调整单元504,可以具体用于基于所述每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整。
[0299]
由于候选目标端序列的获取需要基于对应的解码中间状态序列,因此基于解码中间状态序列对翻译概率值进行调整并不会进一步增加序列转换装置的处理负荷;同时,由于解码中间状态序列可以在一定程度上代表对应的候选目标端序列的翻译准确度,因此根据解码中间状态序列对翻译概率值的调整可以提高调整后的翻译概率值的准确性,从而提高最终的目标端序列的准确性。
[0300]
如图8所示,在一种具体实施方式中,本发明实施例提供的序列转换装置所包括的调整单元504具体可以包括:获取子单元5041,用于基于所述第一候选目标端序列的解码中间状态序列获取所述第一候选目标端序列的重构概率值,所述第一候选目标端序列是所述至少两个候选目标端序列中的任意一个;调整子单元5042,用于基于所述第一候选目标端序列的重构概率值对所述第一候选目标端序列的翻译概率值进行调整。
[0301]
其中,在一种具体实施方式中,获取子单元5041可以具体用于:基于反向注意力机制获取所述第一候选目标端序列的重构概率值,所述反向注意力机制的输入是所述第一候选目标端序列的解码中间状态序列,所述反向注意力机制的输出是所述第一候选目标端序列的重构概率值。
[0302]
在一种实施方式中,获取子单元5041可以用于根据如下函数获取所述第一候选目标端序列的重构概率值:
[0303]
[数0023]


[0304]
其中,g R()是Softmax函数;
[0305]
是通过反向注意力机制总结得到的向量,可以通过如下的函数获取:
[0306]
[数0024]


[0307]
其中, 是由反向注意力机制输出的对齐概率,可以通过如下的函数获取:
[0308]
[数0025]


[0309]
其中,e j,k是源端序列中元素的反向注意力机制得分,可以通过如下的函数获取:
[0310]
[数0026]


[0311]
是获取重构概率值时的中间状态,可以通过如下的函数获取:
[0312]
[数0027]


[0313]
x j是所述源端序列中的元素,J表示所述源端序列中元素的数量;s i表示所述第一候选目标端序列的解码中间状态序列中的元素,I表示所述第一候选目标端序列的解码中间状态序列中元素的数量;f R是激活函数,R是重构概率值;γ 1,γ 2和γ 3是参数。
[0314]
其中,在一种实施方式中,所述的调整子单元5042,具体用于对所述第一候选目标端序列的翻译概率值和重构概率值使用线性插值的方式求和,以获取所述第一候选目标端序列的调整后的翻译概率值。
[0315]
由于翻译概率值和重构概率值都能够在一定程度上体现对应的候选目标端序列相对于源端序列的准确性,因此使用线性插值的方式对二者求和可以很好地对二者进行平衡,从而使调整后的翻译概率值能够更好地体现对应的候选目标端序列的准确性,从而使最终得到的目标端序列能够更好地与源端序列吻合。
[0316]
图9描述了本发明另一个实施例提供的序列转换装置800的结构,图9描述的序列转换装置800与图7描述的序列转换装置500相比增加了训练单元801,用于通过端到端学习算法训练获取所述参数γ 1,γ 2和γ 3;获取单元503就可以通过训练单元训练获取的参数γ 1,γ 2和γ 3来获取候选目标端序列。其余的输入单元501,转换单元502,获取单元503,调整单元504,选择单元505,和输出单元506的实现可以参考前面的描述,不再赘述。
[0317]
在一种实施方式中,训练单元801,具体用于通过如下函数训练获取所述参数γ 1,γ 2和γ 3
[0318]
[0319]
其中,θ和γ是需要训练获取的神经系统的参数,γ表示所述参数γ 1,γ 2或γ 3,N是训练序列集合中训练序列对的数量,X n是训练序列对中的源端序列,Y n是训练序列对中的目标端序列,s n是X n转换成Y n时的解码中间状态序列,λ是线性插值。
[0320]
图10描述了本发明另一个实施例提供的序列转换装置900的结构,包括至少一个处理器902(例如CPU),至少一个网络接口905或者其他通信接口,存储器906,和至少一个通信总线903,用于实现这些装置之间的连接通信。处理器902用于执行存储器906中存储的可执行模块,例如计算机程序。存储器906可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至 少一个磁盘存储器。通过至少一个网络接口705(可以是有线或者无线)实现该系统网关与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
[0321]
在一些实施方式中,存储器906存储了程序9061,程序9061可以被处理器902执行,这个程序被执行时可以执行上述本发明提供的序列转换方法。
[0322]
在本发明的实施例中,在序列转换方法/装置应用于机器翻译时,源端序列是一种自然语言文字或基于所述一种自然语言文字获得的文本文件,目标端序列是另一种自然语言文字或基于所述另一种自然语言文字获得的文本文件;
[0323]
在序列转换方法/装置应用于语音识别时,源端序列是人类的语音内容或基于所述人类的语音内容获得的语音数据文件,目标端序列是所述语音内容对应的自然语言文字或基于所述自然语言文字获得的文本文件;
[0324]
在序列转换方法/装置应用于自动对话时,源端序列是人类的语音内容或基于所述人类的语音内容获得的语音数据文件,目标端序列是所述人类的语音内容的语音回复或基于所述语音回复获得的语音数据文件;
[0325]
在序列转换方法/装置应用于自动摘要时,源端序列是待摘要的自然语言文字,目标端序列是待摘要的自然语言文字的摘要,摘要是自然语言文字或基于所述自然语言文字获得的文本文件;
[0326]
在序列转换方法/装置应用于图像说明文字生成时,源端序列是图像或基于所述图像获得的图像数据文件,目标端序列是图像的自然语言说明文字或基于所述自然语言说明文字获得的文本文件。
[0327]
本发明实施例提供的序列转换装置在进行序列转换时,会对候选目标端序列的翻译概率值进行调整,使得调整后的翻译概率值更能够体现目标端序列与源端序列的吻合度,因此在根据调整后的翻译概率值选择输出候选目标端序列时,能够使得选择的输出目标端序列更能够与源端序列吻合,从而使得获取的目标端序列能够更好地忠于源端序列,从而提高目标端序列相对于源端序列的准确性。
[0328]
图11描述了本发明一个实施例提供的序列转换系统1100的结构,如图11所示,该系统包括:
[0329]
输入接口1101,输出接口1103以及序列转换装置1102;其中,序列转换装置1102可以是本发明实施例提供的任意一个序列转换装置,此处不再赘述其功能和实现。
[0330]
其中,所述输入接口1101用于接收源端数据并将所述源端数据转换为所述源端序列;转换获得的源端序列可以输入所述序列转换装置1102;
[0331]
其中将源端数据转换为源端序列的具体处理过程根据源端数据的呈现形式的不同会有不同,例如源端数据是人类语音时,则会将人类语音转换成语音数据文件作为源端序列;源端数据是图像时,则会将图像转换成图像数据文件作为源端序列;源端数据是自然语言文字时,则会将自然语言文字转换为文本文件作为源端序列。可以理解的是,具体的转换过程可以使用现有的通用公知技术,本发明并不对具体的转换过程进行限定。
[0332]
所述输出接口1103,用于输出所述序列转换装置1102输出的输出目标端序列。
[0333]
其中,输入接口1101和输出接口1103根据序列转换系统的具体表现形式的不同会有不同,例如在序列转换系统是服务器或部署在云端时,输入接口1101可以是网络接口,源端数据来自于客户端,源端数据可以是经客户端采集获取的语音数据文件,图像数据文件,文本文件等等;相应的,输出接口1103也可以是前述的网络接口,用于将所述输出目标端序列输出给所述客户端。
[0334]
上述装置和系统内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
[0335]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(ROM:Read-Only Memory)或RAM等。
[0336]
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

权利要求书

[权利要求 1]
一种序列转换方法,其特征在于,包括: 接收源端序列; 将所述源端序列转换为源端向量表示序列; 根据所述源端向量表示序列获取至少两个候选目标端序列,以及所述至少两个候选目标端序列中每一个候选目标端序列的翻译概率值; 对所述每一个候选目标端序列的翻译概率值进行调整; 根据所述每一个候选目标端序列的调整后的翻译概率值,从所述至少两个候选目标端序列中选择输出目标端序列; 输出所述输出目标端序列。
[权利要求 2]
根据权利要求1所述的方法,其特征在于,所述根据所述源端向量表示序列获取至少两个候选目标端序列包括: 基于注意力机制根据所述源端向量表示序列获取至少两个源端上下文向量; 获取所述至少两个源端上下文向量各自的解码中间状态序列; 获取所述至少两个解码中间状态序列各自的候选目标端序列; 所述对所述每一个候选目标端序列的翻译概率值进行调整包括: 基于所述每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整。
[权利要求 3]
根据权利要求2所述的方法,其特征在于,所述至少两个候选目标端序列包括第一候选目标端序列,所述第一候选目标端序列是所述至少两个候选目标端序列中的任意一个; 所述基于所述每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整包括: 基于所述第一候选目标端序列的解码中间状态序列获取所述第一候选目标端序列的重构概率值; 基于所述第一候选目标端序列的重构概率值对所述第一候选目标端序列的翻译概率值进行调整。
[权利要求 4]
根据权利要求3所述的方法,其特征在于,所述基于所述第一候选目标端序列的解码中间状态获取所述第一候选目标端序列的重构概率值包括: 基于反向注意力机制获取所述第一候选目标端序列的重构概率值,所述反向注意力机制的输入是所述第一候选目标端序列的解码中间状态序列,所述反向注意力机制的输出是所述第一候选目标端序列的重构概率值。
[权利要求 5]
根据权利要求4所述的方法,其特征在于,所述基于反向注意力机制获取所述第一候选目标端序列的重构概率值包括: 根据如下函数获取所述第一候选目标端序列的重构概率值: [数0001]


其中,g R()是Softmax函数; 是通过反向注意力机制总结得到的向量,通过如下的函数获取: [数0002]


其中, 是由反向注意力机制输出的对齐概率,通过如下的函数获取: [数0003]


其中,e j,k是源端序列中元素的反向注意力机制得分,通过如下的函数获取: [数0004]


是获取重构概率值时的中间状态,通过如下的函数获取: [数0005]


x j是所述源端序列中的元素,J表示所述源端序列中元素的数量;s i表示所述第一候选目标端序列的解码中间状态序列中的元素,I表示所述第一候选目标端序列的解码中间状态序列中元素的数量;f R是激活函数,R是重构概率值;γ 1,γ 2和γ 3是参数。
[权利要求 6]
根据权利要求5所述的方法,其特征在于,所述参数γ 1,γ 2和γ 3通过端到端学习算法训练获取。
[权利要求 7]
根据权利要求6所述的方法,其特征在于,所述参数γ 1,γ 2和γ 3通过如下函数训练获取: 其中,θ和γ是需要训练获取的神经系统的参数,γ表示所述参数γ 1,γ 2或γ 3,N是训练序列集合中训练序列对的数量,X n是训练序列对中的源端序列,Y n是训练序列对中的目标端序列,s n是X n转换成Y n时的解码中间状态序列,λ是线性插值。
[权利要求 8]
根据权利要求3至7任一所述的方法,其特征在于,所述基于所述第一候选目标端序列的重构概率值对所述第一候选目标端序列的翻译概率值进行调整包括: 对所述第一候选目标端序列的翻译概率值和重构概率值使用线性插值的方式求和,以获取所述第一候选目标端序列的调整后的翻译概率值。
[权利要求 9]
一种序列转换装置,其特征在于,包括: 接收单元,用于接收源端序列; 转换单元,用于将所述源端序列转换为源端向量表示序列; 获取单元,用于根据所述源端向量表示序列获取至少两个候选目标端序列,以及所述至少两个候选目标端序列中每一个候选目标端序列的翻译概率值; 调整单元,用于对所述每一个候选目标端序列的翻译概率值进行调整; 选择单元,用于根据所述每一个候选目标端序列的调整后的翻译概率值,从所述至少两个候选目标端序列中选择输出目标端序列; 输出单元,用于输出所述输出目标端序列。
[权利要求 10]
根据权利要求9所述的装置,其特征在于,所述获取单元,具体用于基于注意力机制根据所述源端向量表示序列获取至少两个源端上下文向量;获取所述至少两个源端上下文向量各自的解码中间状态序列;获取所述至少两个解码中间状态序列各自的候选目标端序列; 所述调整单元,具体用于基于所述每一个候选目标端序列的解码中间状态序列对各自的翻译概率值进行调整。
[权利要求 11]
根据权利要求10所述的装置,其特征在于,所述至少两个候选目标端序列包括第一候选目标端序列,所述第一候选目标端序列是所述至少两个候选目标端序列中的任意一个; 所述调整单元包括: 获取子单元,用于基于所述第一候选目标端序列的解码中间状态序列获取所述第一候选目标端序列的重构概率值; 调整子单元,用于基于所述第一候选目标端序列的重构概率值对所述第一候选目标端序列的翻译概率值进行调整。
[权利要求 12]
根据权利要求11所述的装置,其特征在于,所述获取子单元具体用于: 基于反向注意力机制获取所述第一候选目标端序列的重构概率值,所述反向注意力机制的输入是所述第一候选目标端序列的解码中间状态序列,所述反向注意力机制的输出是所述第一候选目标端序列的重构概率值。
[权利要求 13]
根据权利要求12所述的装置,其特征在于,所述获取子单元具体用于: 根据如下函数获取所述第一候选目标端序列的重构概率值: [数0006]


其中,g R()是Softmax函数; 是通过反向注意力机制总结得到的向量,通过如下的函数获取: [数0007]


其中, 是由反向注意力机制输出的对齐概率,通过如下的函数获取: [数0008]


其中,e j,k是源端序列中元素的反向注意力机制得分,通过如下的函数获取: [数0009]


是获取重构概率值时的中间状态,通过如下的函数获取: [数0010]


x j是所述源端序列中的元素,J表示所述源端序列中元素的数量;s i表示所述第一候选目标端序列的解码中间状态序列中的元素,I表示所述第一候选目标端序列的解码中间状态序列中元素的数量;f R是激活函数,R是重构概率值;γ 1,γ 2和γ 3是参数。
[权利要求 14]
根据权利要求13所述的装置,其特征在于,所述装置还包括训练单元,用于通过端到端学习算法训练获取所述参数γ 1,γ 2和γ 3
[权利要求 15]
根据权利要求14所述的装置,其特征在于,所述训练单元,具体用于通过如下函数训练获取所述参数γ 1,γ 2和γ 3 其中,θ和γ是需要训练获取的神经系统的参数,γ表示所述参数γ 1,γ 2或γ 3,N是训练序列集合中训练序列对的数量,X n是训练序列对中的源端序列,Y n是训练序列对中的目标端序列,s n是X n转换成Y n时的解码中间状态序列,λ是线性插值。
[权利要求 16]
根据权利要求11至15任一所述的装置,其特征在于,所述调整子单元,具体用于: 对所述第一候选目标端序列的翻译概率值和重构概率值使用线性插值的方式求和,以获取所述第一候选目标端序列的调整后的翻译概率值。
[权利要求 17]
一种序列转换系统,其特征在于,包括输入接口,输出接口以及如权利要求9至16任一所述的序列转换装置; 所述输入接口,用于接收源端数据并将所述源端数据转换为所述源端序列; 所述输出接口,用于输出所述序列转换装置输出的输出目标端序列。

附图

[ 图 0001]  
[ 图 0002]  
[ 图 0003]  
[ 图 0004]  
[ 图 0005]  
[ 图 0006]  
[ 图 0007]  
[ 图 0008]  
[ 图 0009]  
[ 图 0010]  
[ 图 0011]