翻译方法和装置、存储介质及电子设备

文档序号:169374 发布日期:2021-10-29 浏览:10次 >En<

阅读说明:本技术 翻译方法和装置、存储介质及电子设备 (Translation method and device, storage medium and electronic equipment ) 是由 梁云龙 孟凡东 徐金安 陈钰枫 于 2021-02-25 设计创作,主要内容包括:本发明公开了一种基于人工智能的翻译方法和装置、存储介质及电子设备。其中,该方法包括:在第一对象与第二对象的会话过程中,获取第一对象当前输入的待翻译的第一语种的原始语句;获取与原始语句关联的历史语句;对原始语句与历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,第一目标向量用于表示第一对象的角色偏好,第二目标向量用于表示历史语句的顺序,第三目标向量用于表示历史语句之间的内容关联;将第一目标向量、第二目标向量和第三目标向量拼接为组合向量;对组合向量进行解码,得到原始语句翻译后的第二语种的翻译结果。本发明解决了翻译结果不具备对角色特征和对话连贯性,翻译结果准确度低的技术问题。(The invention discloses a translation method and device based on artificial intelligence, a storage medium and electronic equipment. Wherein, the method comprises the following steps: in the conversation process of a first object and a second object, acquiring an original sentence, to be translated, of a first language, currently input by the first object; acquiring historical sentences associated with original sentences; encoding an original statement and a historical statement to obtain a first target vector, a second target vector and a third target vector, wherein the first target vector is used for expressing role preference of a first object, the second target vector is used for expressing the sequence of the historical statement, and the third target vector is used for expressing content association between the historical statements; splicing the first target vector, the second target vector and the third target vector into a combined vector; and decoding the combined vector to obtain a translation result of the second language after the original sentence is translated. The invention solves the technical problems that the translation result does not have role characteristics and conversation continuity and the accuracy of the translation result is low.)

翻译方法和装置、存储介质及电子设备

技术领域

本发明涉及计算机领域,具体而言,涉及一种翻译方法和装置、存储介质及电子设备。

背景技术

现有技术中,在进行语句的翻译的过程中,如将第一语种的语句翻译为第二语种的语句,通常,并未注意到翻译过程中的角色偏好、语句之间的连贯性和语句之间的内容关联,从而造成翻译得到的第二语种的语句准确度低。

针对上述的问题,目前尚未提出有效的解决方案。

发明内容

本发明实施例提供了一种翻译方法和装置、存储介质及电子设备,以至少解决翻译结果不具备对角色特征和对话连贯性,翻译结果准确度低的技术问题。

根据本发明实施例的一个方面,提供了一种翻译方法,包括:在第一对象与第二对象的会话过程中,获取上述第一对象当前输入的待翻译的第一语种的原始语句;获取与上述原始语句关联的历史语句,其中,上述历史语句包括在上述第一对象与上述第二对象之间的历史会话过程中上述第一对象产生的语句和上述第二对象产生的语句;对上述原始语句与上述历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,上述第一目标向量用于表示上述第一对象的角色偏好,上述第二目标向量用于表示上述历史语句的顺序,上述第三目标向量用于表示上述历史语句之间的内容关联;将上述第一目标向量、上述第二目标向量和上述第三目标向量拼接为组合向量;对上述组合向量进行解码,以得到上述原始语句翻译后的第二语种的翻译结果。

根据本发明实施例的另一方面,还提供了一种翻译装置,包括:第一获取单元,用于在第一对象与第二对象的会话过程中,获取上述第一对象当前输入的待翻译的第一语种的原始语句;第二获取单元,用于获取与上述原始语句关联的历史语句,其中,上述历史语句包括在上述第一对象与上述第二对象之间的历史会话过程中上述第一对象产生的语句和上述第二对象产生的语句;编码单元,用于对上述原始语句与上述历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,上述第一目标向量用于表示上述第一对象的角色偏好,上述第二目标向量用于表示上述历史语句的顺序,上述第三目标向量用于表示上述历史语句之间的内容关联;拼接单元,用于将上述第一目标向量、上述第二目标向量和上述第三目标向量拼接为组合向量;解码单元,用于对上述组合向量进行解码,以得到上述原始语句翻译后的第二语种的翻译结果。

作为一种可选的示例,上述拼接单元包括:拼接模块,用于在上述原始语句包括编码向量的情况下,将上述第一目标向量、上述第二目标向量、上述第三目标向量和编码向量拼接为上述组合向量,其中,上述编码向量为在翻译上述原始语句的第一个词以后的任意一个词的情况下,上述原始语句中上述任意一个词之前的每一个词的词嵌入向量。

根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为被处理器运行时执行上述翻译方法。

根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过上述计算机程序执行上述的翻译方法。

在本发明实施例中,采用了在第一对象与第二对象的会话过程中,获取上述第一对象当前输入的待翻译的第一语种的原始语句;获取与上述原始语句关联的历史语句;对上述原始语句与上述历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,上述第一目标向量用于表示上述第一对象的角色偏好,上述第二目标向量用于表示上述历史语句的顺序,上述第三目标向量用于表示上述历史语句之间的内容关联;将上述第一目标向量、上述第二目标向量和上述第三目标向量拼接为组合向量;对上述组合向量进行解码,以得到上述原始语句翻译后的第二语种的翻译结果的方法,由于在上述方法中,在翻译语句的过程中,对原始语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,上述第一目标向量用于表示上述第一对象的角色偏好,上述第二目标向量用于表示上述历史语句的顺序,上述第三目标向量用于表示上述历史语句之间的内容关联,从而可以获取原始语句的角色偏好、语句顺序和语句的内容关联,再对第一目标向、第二目标向量、第三目标向量的组合向量进行解码,得到翻译结果,实现了提高翻译的准确度的效果,进而解决了翻译结果不具备对角色特征和对话连贯性,翻译结果准确度低的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种可选的翻译方法的应用环境的示意图;

图2是根据本发明实施例的另一种可选的翻译方法的应用环境的示意图;

图3是根据本发明实施例的一种可选的翻译方法的流程的示意图;

图4是根据本发明实施例的一种可选的翻译方法的翻译场景的示意图;

图5是根据本发明实施例的另一种可选的翻译方法的翻译场景的示意图;

图6是根据本发明实施例的一种可选的翻译方法的历史语句的示意图;

图7是根据本发明实施例的一种可选的翻译方法的目标神经网络模型的示意图;

图8是根据本发明实施例的一种可选的翻译方法的数据处理层的示意图;

图9是根据本发明实施例的一种可选的翻译装置的结构示意图;

图10是根据本发明实施例的一种可选的电子设备的结构示意图。

具体实施方式

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

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。

根据本发明实施例的一个方面,提供了一种翻译方法,可选地,作为一种可选的实施方式,上述翻译方法可以但不限于应用于如图1所示的环境中。

如图1所示,终端设备102包括了存储器104,用于存储终端设备102运行过程中产生的各项数据、处理器106,用于处理运算上述各项数据、显示器108,用于显示原始语句与翻译结果。终端设备102可以通过网络110与服务器112之间进行数据交互。服务器112包括数据库114,用于存储各项数据,处理引擎116,用于处理上述各项数据。步骤S102到步骤S106,终端设备102向服务器112发送原始语句,服务器112翻译原始语句得到翻译结果,将翻译结果发送给终端设备102。

作为一种可选的实施方式,上述翻译方法可以但不限于应用于如图2所示的环境中。

如图2所示,终端设备202包括了存储器204,用于存储终端设备202运行过程中产生的各项数据、处理器206,用于处理运算上述各项数据、显示器208,用于显示原始语句与翻译结果。终端设备202可以执行步骤S202,也就是由终端设备202完成对原始语句的翻译,得到翻译结果。

可选地,在本实施例中,上述终端设备可以是配置有目标客户端的终端设备,可以包括但不限于以下至少之一:手机(如Android手机、iOS手机等)、笔记本电脑、平板电脑、掌上电脑、MID(Mobile Internet Devices,移动互联网设备)、PAD、台式电脑、智能电视等。目标客户端可以是视频客户端、即时通信客户端、浏览器客户端、教育客户端等。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、WIFI及其他实现无线通信的网络。上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器。上述仅是一种示例,本实施例中对此不作任何限定。

可选地,作为一种可选的实施方式,如图3所示,上述翻译方法包括:

S302,在第一对象与第二对象的会话过程中,获取第一对象当前输入的待翻译的第一语种的原始语句;

S304,获取与原始语句关联的历史语句,其中,历史语句包括在第一对象与第二对象之间的历史会话过程中第一对象产生的语句和第二对象产生的语句;

S306,对原始语句与历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,第一目标向量用于表示第一对象的角色偏好,第二目标向量用于表示历史语句的顺序,第三目标向量用于表示历史语句之间的内容关联;

S308,将第一目标向量、第二目标向量和第三目标向量拼接为组合向量;

S310,对组合向量进行解码,以得到原始语句翻译后的第二语种的翻译结果。

可选地,上述翻译方法,可以但不限于应用于翻译语句的过程中。语句的语种并不进行限制。例如,语种可以为任意国家或地区使用的语言。可以但不限于应用与两方或者多方进行对话的过程中。两方或者多方之间,可以每一方使用不同的语种,如果是多方对话,也可以至少两方可以使用同一语种,其他方使用不同的语种。

可选地,上述翻译方法可以应用在客户端上,不同的用户使用客户端进行通信或者即时通信的过程中,可以使用本实施例中的方法来进行翻译。或者,不同的用户面对面进行交流的过程中,也可以使用客户端进行对话内容的翻译。客户端可以为一个客户端,接收两者或多者的交流内容并翻译,或者两个用户可以各使用一个客户端,进行交流内容的翻译。

例如,以两名用户使用一个客户端进行翻译为例,如图4所示,图4中,两名用户使用一个客户端进行翻译,客户端会接收到每一名用户的原始语句,然后翻译得到翻译结果,并提示翻译结果。当将一名用户的原始语句翻译为翻译结果的时候,该用户即为第一对象,另一位用户即为第二对象。客户端接收用户A的第一语种语句,然后,将其翻译为翻译后的第二语种语句402。客户端接收用户B的第二语种语句,然后,将其翻译为翻译后的第一语种语句404。用户A和用户B可以通过客户端进行交流。

或者,以多名用户使用各自的客户端进行翻译为例,如图5所示。图5中。三名用户之间进行交互,三名用户每一名用户各使用一个客户端。三名用户可能使用不同的语种。对于用户A,将第一语种语句发送给用户B和用户C后,用户B和用户C的客户端会翻译出第一语种语句对应的第二语种语句和第三语种语句。而用户A的客户端会将用户B的第二语种语句和用户C的第三语种语句翻译为第一语种语句。

可选地本申请实施例中,对第一对象、第二对象的对象身份并不限定。例如,可以为导游与游客,可以为店主与顾客等。只要为两者使用两种语种的语句即可使用本申请实施例的翻译方法。本申请实施例中,获取原始语句的方式并不限定。例如,可以获取输入的文本形式的原始语句,或者获取输入的语音形式的原始语句等。

本申请实施例中的历史语句可以为原始语句之前的第一对象和第二对象会话过程中产生的语句。可以包括第一对象产生的第一语种的第一历史语句、第二对象产生的第二语种的第二历史语句、第一历史语句的第一译文语句和第二历史语句的第二译文语句,第一译文语句为第二语种的语句,第二译文语句为第一语种的语句。

通过本实施例,通过上述方法,从而在对原始语句进行翻译的过程中,对原始语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,第一目标向量用于表示第一对象的角色偏好,第二目标向量用于表示历史语句的顺序,第三目标向量用于表示历史语句之间的内容关联,从而可以获取原始语句的角色偏好、语句顺序和语句的内容关联,再对第一目标向、第二目标向量、第三目标向量的组合向量进行解码,得到翻译结果,实现了提高翻译的准确度的效果。

作为一种可选的实施方式,对原始语句与历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量包括:

获取第一语句、第二语句、第三语句和第四语句,其中,第一语句为第一历史语句,第二语句为第一历史语句和第二译文语句,第三语句为历史语句,第四语句为原始语句;

获取第一向量、第二向量、第三向量和第四向量,其中,第一向量为第一语句映射得到的低纬度向量,第二向量为第二语句映射得到的低纬度向量,第三向量为第三语句映射得到的低纬度向量,第四向量为第四语句映射得到的低纬度向量;

将第一向量编码为第一目标向量、将第二向量和第四向量编码为第二目标向量,将第三向量编码为第三目标向量。

可选地,本实施例中所提到的第一语句、第二语句、第三语句,可以为从历史语句中获取的语句。第四语句可以为原始语句。具体地,将历史语句中,第一角色的第一历史语句作为第一语句,将第一历史语句和第二译文语句作为第二语句,将历史语句的所有的内容作为第三语句,以及将原始语句作为第四语句。可以使用Embedding层来将第一到第四语句映射为低纬度的向量,从而得到第一到第四向量。并将第一向量编码为第一目标向量,将第二向量和第四向量编码为第二目标向量,将第三向量编码为第三目标向量。

通过本实施例,可以从第一对象的原始语句和第一对象与第二对象会话的历史语句中得到第一目标向量、第二目标向量与第三目标向量,从而确定出第一对象的角色偏好、语句的顺序和语句之间的内容关联。

作为一种可选的实施方式,将第一向量编码为第一目标向量、将第二向量和第四向量编码为第二目标向量,将第三向量编码为第三目标向量包括:

使用第一编码层将第一向量编码为第一目标向量与将第三向量编码为第三目标向量;

使用第一编码层将第二向量和第四向量编码为第一中间向量和第二中间向量,使用第二编码层将第二中间向量编码为结果向量,将第一中间向量和结果向量组合为第二目标向量,其中,第一编码层包括一层编码层,第二编码层包括五层编码层。

可选地,上述第一编码层和第二编码层可以但不限于为目标神经网络的编码层。不同的编码层具有不同的层数,以及编码不同的内容。第一编码层具有一层编码层,用于编码第一向量和第三向量,得到第一目标向量和第三目标向量。以及用于编码第二向量和第四向量,得到第一中间向量和第二中间向量,然后,由第二层编码层编码第一中间向量和第二中间向量,得到第二目标向量。第二层编码层有五层编码层。

本实施例通过使用不同的编码层对第一到第四向量进行编码,从而可以得到更加准确的第一目标向量、第二目标向量和第三目标向量。

作为一种可选的实施方式,将第一目标向量、第二目标向量和第三目标向量拼接为组合向量包括:

在原始语句包括编码向量的情况下,将第一目标向量、第二目标向量、第三目标向量和编码向量拼接为组合向量,其中,编码向量为在翻译原始语句的第一个词以后的任意一个词的情况下,原始语句中任意一个词之前的每一个词的词嵌入向量。

可选地,在翻译原始语句的时候,可以对原始语句进行整句翻译或者逐词翻译。而对于逐词翻译,可以在翻译原始语句的任意一个词的时候,将原始语句中任意一个词前的每一个词的词嵌入向量作为编码向量,然后将编码向量和第一目标向量、第二目标向量和第三目标向量进行拼接,得到组合向量。最后对组合向量进行解码得到原始语句的翻译结果。

本实施例中加入编码向量可以在翻译原始语句中的任意一个词的时候,使用任意一个词前边的每一个词影响到当前翻译的任意一个词,以提高翻译的准确度。也避免了相同的第一语种的词翻译为不同的第二语种的词的情况。

作为一种可选的实施方式,对原始语句与历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量包括:将历史语句输入到目标神经网络模型中,由目标神经网络模型的特征提取层提取第一目标向量、第二目标向量和第三目标向量;对组合向量进行解码,以得到原始语句翻译后的第二语种的翻译结果包括:将使用目标神经网络模型的解码层对组合向量进行解码得到的结果确定为翻译结果,其中,目标神经网络模型为预训练的模型,特征提取层和解码层中包括对原始参数训练后的目标参数。

可选地,本实施例中的目标神经网络模型可以包括特征提取层和解码层。特征提取层用于从第一向量到第四向量中提取特征,得到第一目标向量、第二目标向量和第三目标向量。而解码层负责对组合向量进行解码,得到原始语句的翻译结果。上述特征提取层和解码层中都包括有模型的参数。如果是训练过程,则模型的参数会随着训练的进度进行调整。如果是使用过程,模型参数一般都固定,根据模型参数,可以在输入第一向量到第四向量之后,编码得到第一目标向量到第三目标向量。以及将组合向量解码为翻译结果。目标神经网络模型为使用样本数据对原始神经网络模型进行训练得到的成熟模型。目标神经网络模型学习到了第一对象的角色偏好以及语句顺序和语句间的内容关联,因此翻译的准确度高。

作为一种可选的实施方式,在将历史语句输入到目标神经网络模型中,由目标神经网络模型的特征提取层提取第一目标向量、第二目标向量和第三目标向量之前,方法还包括:

获取原始神经网络模型,其中,原始神经网络模型包括特征提取层和解码层,特征提取层和解码层中包括原始参数;

获取样本原始语句、样本翻译结果和样本原始语句的样本历史语句,其中,样本原始语句为第三对象产生的第一语种的语句,样本翻译结果为样本原始语句翻译得到的第二语种的语句,样本历史语句包括第三对象与第四对象对话过程中第三对象产生的第一语种的第一样本历史语句、第四对象产生的第二语种的第二样本历史语句、第一样本历史语句的第一样本译文语句和第二样本历史语句的第二样本译文语句,第一样本译文语句为第二语种的语句,第二样本译文语句为第一语种的语句;

使用样本原始语句、样本翻译结果和样本历史语句训练原始神经网络模型的原始参数,得到目标神经网络模型。

可选地,本申请实施例中的样本数据可以包括多条。每一条样本数据中包括了样本原始语句、样本翻译结果和样本历史语句。样本原始语句是第一语种的语句,样本翻译结果为第二语种的语句。样本历史语句中既包括了第一语种的语句,也包括了第二语种的语句。也就是说,样本数据包括了两个对象之间进行会话产生的语句,以及产生的语句的翻译结果。但是,两个对象可以不为上述的第一对象与第二对象。即,任意对象使用第一语句和第二语句进行会话的语句记录都可以作为训练样本。

作为一种可选的实施方式,使用样本原始语句、样本翻译结果和样本历史语句训练原始神经网络模型的原始参数,得到目标神经网络模型包括:

对原始神经网络模型执行以下操作,直到原始神经网络模型的识别准确度大于第一阈值,以得到目标神经网络模型:

将样本翻译结果输入到特征提取层,得到第一目标样本向量、第二目标样本向量和第三目标样本向量;

将样本原始语句输入到特征提取层,得到第一原始样本向量、第二原始样本向量和第三原始样本向量;

将第一原始样本向量、第二原始样本向量、第三原始样本向量和样本原始语句的样本编码向量合并为样本组合向量,其中,样本编码向量为在翻译样本原始语句的第一个词以后的任意一个词的情况下,样本原始语句中任意一个词之前的每一个词的词嵌入向量;

使用解码层对样本组合向量进行解码,得到预估语句;

在第一目标样本向量和第一原始样本向量的差异大于第一阈值,或第二目标样本向量和第二原始样本向量的差异大于第二阈值,或第三目标样本向量和第三原始样本向量的差异大于第三阈值,或样本原始语句和预估语句的差异大于第四阈值的情况下,调整原始参数的值。

也就是说,在对模型进行训练的过程中,原始神经网络模型可以接收到对第一语句到第四语句映射得到的第一向量到第四向量,然后使用特征提取层将第一向量到第四向量编码得到第一目标向量到第三目标向量。而同样对样本数据中的样本原始语句的样本翻译结果进行编码,得到第一原始样本向量、第二原始样本向量和第三原始样本向量。以及,使用目标神经网络模型的解码层将组合向量解码为预估语句,通过第一原始样本向量、第二原始样本向量和第三原始样本向量和预估语句来约束原始神经网络模型中的特征提取层和解码层的模型参数,从而起到训练的作用。最后,得到训练成熟的目标神经网络模型。

以下结合一个具体示例进行说明。本实施例中,以两个对象互相之间交流为例进行说明。两个对象之间使用各自的语种。第一对象使用第一语种,第二对象使用第二语种。第一语种可以为英语,第二语种可以为德语,如图6所示,第一对象产生了第一语种的602-1、606-1和610-1,其中的602-1和606-1被翻译为了第二语种的602-2和606-2,其中的610-1为待翻译为610-2的语句。而第二对象产生了第二语种的604-1和608-1,被翻译为了第一语种的604-2和608-2。对于上述610-2已知的情况,则可以将图6中的原始语句、历史语句和翻译结果作为一个样本训练原始神经网络模型。如果上述610-2为未知的,则可以使用训练后的目标神经网络模型来翻译原始语句得到翻译结果。如果是上述610-2已知的情况,则图6中的数据作为训练样本数据,Role-Specific Contexts(c1)为训练样本数据中对象A产生的英语的语句,也就是图6中的602-1和606-1。Coherent Chat Context(c2)为对象A产生的英语的语句,和对象B的德语的语句翻译后得到的英语的语句,也就是图6中的602-1、604-2、606-1和608-2。而Contexts of Inter-Linguistic relationships(c3)为对象A和对象C产生的历史对话记录和历史对话记录的翻译记录,也就是上述样本历史语句,即图6中的602-1、602-2一直到608-1、608-2的语句。而Source Inputs(x)为对象A的的样本数据中待翻译的样本原始语句,即图6中的610-1。而样本翻译结果是已知的。如果是610-2未知的情况,则Role-Specific Contexts(c1)为第一语句,Coherent Chat Context(c2)为第二语句,Contexts of Inter-Linguistic relationships(c3)为第三语句。第一对象或第二对象产生的原文可以用Src表示,第一对象或第二对象产生的原文的译文可以用Tgt表示。如果是待翻译的语句翻译后的目标语句,可以用Ref表示。

对于待翻译的原始语句,使用目标神经网络模型来翻译得到翻译结果。目标神经网络模型为预训练的模型。目标神经网络模型(或原始神经网络模型)的结构如图7所示。图7中,对模型的训练和使用进行说明。

首先为训练过程,训练过程需要获取到训练样本数据。训练样本包括样本原始语句、样本翻译结果和样本原始语句的样本历史语句。样本原始语句就是训练样本数据中的待翻译的语句,如英语,样本翻译结果就是训练样本数据中的待翻译的语句翻译后的结果,如翻译后的德语。而样本历史语句就是样本原始语句之前的历史记录,包括了英语和德语的语句。具体包括第三对象与第四对象对话过程中产生的英语的第一样本历史语句、第四对象产生的德语的第二样本历史语句、第一样本历史语句的第一样本译文语句和第二样本历史语句的第二样本译文语句,第一样本译文语句为德语,第二样本译文语句为英语。上述的第三对象可以为第一对象或者不为第一对象,上述第四对象可以为第二对象或者不为第二对象。上述样本原始语句、样本历史语句和样本翻译结果作为一个训练样本,训练原始神经网络模型,直到得到目标神经网络模型。

训练过程中,可以获取多个训练样本,以其中一个训练样本的训练过程为例进行说明。一个训练样本中包括上述的样本原始语句、样本历史语句和样本翻译结果。

首先,处理包含对话历史信息部分。也就是数据获取。从样本原始语句、样本历史语句和样本翻译结果中,获取第一样本语句、第二样本语句、第三样本语句和第四样本语句。第一样本语句是上述历史语句中,第三对象产生的英语。第二样本语句是第三对象产生的英语和第四对象产生的德语翻译成的英语。第三样本语句包括了第三对象产生的英语和翻译成的德语和第四对象产生的德语和翻译成的英语。也就是所有的历史样本语句。第四样本语句为第三对象产生的样本原始语句,也就是待翻译为德语的英语。对应图7,训练过程,获取训练样本数据Role-Specific Contexts(c1)、Coherent Chat Context(c2)、Contexts of Inter-Linguistic relationships(c3)和Source Inputs(x)。也就是第一到第四样本语句。

以图6为一种示例,获取第一样本语句到第三样本语句如下:

对于Role-Specific的Context(c1):

其中的SEP可以视为“以及”或者“和”,CLS为公共语言规范表示(CommonLanguageSpecification,简称为CLS)。也就是说,获取第三对象的英语。

对于Coherent Chat Context(c2):

也就是说,获取第三对象的英语和第四对象的德语翻译后的英语。

对于用来建模语言间关系的Context(c3):

也就是获取第三对象的英语和第四对象的德语翻译后的英语,以及获取第三对象的英语翻译后的德语和第四对象的德语。也就是获取所有的样本历史语句。

其中,x表示即将要翻译的原文,s0~sn-1(src/tgt)表示不同形式的对话历史。

通过Transformer学习之后,获得如下几种表示:

Source句子表示(Masked后的表示和):Hx

Target句子表示(Masked后的表示和):Hy

Role-Specific的Context表示(即[CLS]对应的隐层状态表示)

Dialog-level Coherent Context表示(即[CLS]对应的隐层状态表示)

Inter-Linguistic Context表示(即[CLS]对应的隐层状态表示)

也就是说,在获取到上述第一到第四样本语句之后,将上述信息经过Embedding层,得到对应的token表示(其中包含context信息的部分会多加一个Turn embeddings和Role embeddings),图8为一种可选的Embeddings层示意图,总共包括四个Embeddings层,分别是Token Embeddings(也就是Word Embneddings)、Positional Embeddings、Turnembeddings和Role Embeddings。在embedding层,对于source/target输入,有tokenembeddings和positional embeddings层进行处理,对于包含对话历史部分,会加上额外的Turn embeddings和Role Embeddings层进行处理。图8中的+为求和运算。也就是说,对于第一到第三样本语句,会经过上述的四个Embedding层,而对于第四样本语句,会经过WordEmbedding和Position Embedding层,得到对应的低纬向量。也就是第一样本向量到第四样本向量。然后,第一样本向量到第四样本向量会用于训练原始神经网络模型。原始神经网络模型包括特征提取层和解码层。由特征提取层将第一到第四样本向量转换为第一目标样本向量到第三目标样本向量。

对于Coherent Chat Context+Source Context(Source Inputs(x)),过第一编码层Transformer Bottom Block层和第二编码层Transformer Top Block层,其中通过MASK操作使得Top Block层只编码Source Inputs信息,作为Decoder的输入;而Context信息部分表示,用过Transformer Bottom Block层的[CLS]隐层状态表示作为Context表示,为采样隐变量Z2做准备;也就是说,在训练过程中,上述的第二样本向量和第四样本向量被原始神经网络模型的特征提取层提取特征,得到第二目标样本向量Z2。建模特定角色偏好和语言间关系的Context表示用只经过Transformer Bottom Block层的[CLS]隐层状态表示,为采样隐变量Z1和Z3做准备。即,对于Role-Specific Contexts(c1)和Contexts of Inter-Linguistic relationships(c3),分别经过特征提取层的第一编码层编码得到第一目标样本向量Z1和第三目标样本向量Z3(对应图7中702特征提取层输出的Z1到Z3)。

确定第一目标样本向量Z1到第三目标样本向量Z3的具体公式如下:

构建特定角色偏好的先验分布和后验分布,可以有效建模特定角色的偏好。隐变量服从多元高斯分布,即q1(z1|y,x,c1)~N(u1,σ1 2I)和p1(z1|x,c1)~N(u′1,σ′1 2I),所以其后验分布和先验分布如下:

其中,Wr和br是待学习的参数。

在训练阶段,使用后验分布确定Z1。在使用阶段,使用先验分布确定Z1。

通过建模对话连贯性的先验分布和后验分布,可以有效提升对话连贯性,同理假设隐变量服从多元高斯分布,即q2(z2|y,x,c2)~N(u2,σ2 2I)和p2(z2|x,c2)~N(u′2,σ′2 2I)其后验分布和先验分布如下:

Wc和bc是待学习的参数。在训练阶段,使用后验分布确定Z2。在使用阶段,使用先验分布确定Z2。

通过建模语言间关系的先验分布和后验分布,可以有效改进词汇不一致翻译问题,q3(z3|y,x,c3)~N(u3,σ3 2I),和p3(z3|x,c3)~N(u′3,σ′3 2I)其后验分布和先验分布如下:

Wl和bl是待学习的参数。其中c3包含两部分Context(源端和目标端)。在训练阶段,使用后验分布确定Z3。在使用阶段,使用先验分布确定Z3。

也就是说,在训练过程中,原始神经网络模型通过上述后验分布的公式确定出Z1和Z2和Z3(对应图7中原始神经网络模型的特征提取层702输出的Z1到Z3),同时,用经过和Transformer Top Block层和Transformer Bottom Block层的Target表示,作为后验,即将训练过程中样本数据中的样本翻译结果即Target Inputs(y)(y<t)输入到第一编码层和第二编码层706中,并使用上述后验分布公式确定出Target Inputs的Z1、Z2和Z3(对应图7中过第一编码层和第二编码层706得到的Z1到Z3)比对两个Z1,两个Z2,两个Z3的距离,即图7中的KL(*||*)如果有任意一个距离不符合预设的阈值,则调整原始神经网络中的模型参数,也就是上述待学习的参数W和b。

此外,用Decoder的表示和采样的三个隐变量信息Z1,Z2和Z3表示进行特征聚合(训练阶段用后验分布采样的Z1,Z2,Z3,测试阶段用先验分布采样的Z1,Z2,Z3),然后通过Softmax进行解码,产生合适的译文。也就是说,还需要对原始神经网络模型输出的Z1到Z3进行解码。如图7中的解码层704。解码过程中,首先,在生成第t个词yt时,首先对Target内容的历史部分y1:t-1用自注意机制进行编码学习:

Hy=MultiHead(y,y,y)

其中y是y1:t-1的词嵌入向量表示。y的数量根据词嵌入向量确定。之后通过另一个自注意机制得到编码器表示Hx与内容回复表示Hy的交互表示:

O=FFN(MultiHead(Hy,Hx,Hx))

然后通过拼接操作将多个隐变量进行合并表示:

Z=FFN(z1,z2,z3)

最后,进行解码生成最后的回复:P(yt|y1:t-1;x,z1,z2,z3,θ)=Soft max(Wo[Ot,Z]),其中Wo是待学习参数。

P即为预测词的概率。将概率最大的词作为对原始语句的翻译的词的翻译结果。在确定出原始语句的每一个翻译的词的翻译结果后,得到原始语句的翻译结果。。通过比对预估语句和样本翻译结果,从而调整上述待学习参数Wo。至此原始神经网络模型训练完成,得到目标神经网络模型。

上述解码过程中的MultiHead,也可替换为单头自注意机制。

在目标神经网络模型的使用的过程中,会获取待翻译的原始语句和历史语句,然后获取第一向量到第四向量。通过将第一向量到第四向量输入到目标神经网络模型中,从而目标神经网络模型可以使用训练好的特征提取层提取第一目标向量到第三目标向量。接着,可以获取原始语句中当前翻译的任意一个词前的每一个词的词嵌入向量,将第一目标向量到第三目标向量和词嵌入向量拼接为组合向量,最后使用目标神经网络模型训练后的解码层对组合向量进行解码,得到翻译结果。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

根据本发明实施例的另一个方面,还提供了一种用于实施上述翻译方法的翻译装置。如图9所示,该装置包括:

第一获取单元902,用于在第一对象与第二对象的会话过程中,获取第一对象当前输入的待翻译的第一语种的原始语句;

第二获取单元904,用于获取与原始语句关联的历史语句,其中,历史语句包括在第一对象与第二对象之间的历史会话过程中第一对象产生的语句和第二对象产生的语句;

编码单元906,用于对原始语句与历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,第一目标向量用于表示第一对象的角色偏好,第二目标向量用于表示历史语句的顺序,第三目标向量用于表示历史语句之间的内容关联;

拼接单元908,用于将第一目标向量、第二目标向量和第三目标向量拼接为组合向量;

解码单元910,用于对组合向量进行解码,以得到原始语句翻译后的第二语种的翻译结果。

本实施例的其他示例请参见上述示例,在此不再赘述。

根据本发明实施例的又一个方面,还提供了一种用于实施上述翻译方法的电子设备,该电子设备可以是图10所示的终端设备或服务器。本实施例以该电子设备为终端为例来说明。如图10所示,该电子设备包括存储器1002和处理器1004,该存储器1002中存储有计算机程序,该处理器1004被设置为通过计算机程序执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

在第一对象与第二对象的会话过程中,获取第一对象当前输入的待翻译的第一语种的原始语句;

获取与原始语句关联的历史语句,其中,历史语句包括在第一对象与第二对象之间的历史会话过程中第一对象产生的语句和第二对象产生的语句;

对原始语句与历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,第一目标向量用于表示第一对象的角色偏好,第二目标向量用于表示历史语句的顺序,第三目标向量用于表示历史语句之间的内容关联;

将第一目标向量、第二目标向量和第三目标向量拼接为组合向量;

对组合向量进行解码,以得到原始语句翻译后的第二语种的翻译结果。

可选地,本领域普通技术人员可以理解,图10所示的结构仅为示意,电子装置电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图10其并不对上述电子装置电子设备的结构造成限定。例如,电子装置电子设备还可包括比图10中所示更多或者更少的组件(如网络接口等),或者具有与图10所示不同的配置。

其中,存储器1002可用于存储软件程序以及模块,如本发明实施例中的翻译方法和装置对应的程序指令/模块,处理器1004通过运行存储在存储器1002内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的翻译方法。存储器1002可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1002可进一步包括相对于处理器1004远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1002具体可以但不限于用于存储原始语句与翻译结果、历史语句等信息。作为一种示例,如图10所示,上述存储器1002中可以但不限于包括上述翻译装置中的第一获取单元902、第二获取单元904、编码单元906、拼接单元908和解码单元910。此外,还可以包括但不限于上述翻译装置中的其他模块单元,本示例中不再赘述。

可选地,上述的传输装置1006用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1006包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1006为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。

此外,上述电子设备还包括:显示器1008,用于显示原始语句和翻译结果;和连接总线1010,用于连接上述电子设备中的各个模块部件。

在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(P2P,Peer To Peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。

根据本发明的实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:

在第一对象与第二对象的会话过程中,获取第一对象当前输入的待翻译的第一语种的原始语句;

获取与原始语句关联的历史语句,其中,历史语句包括在第一对象与第二对象之间的历史会话过程中第一对象产生的语句和第二对象产生的语句;

对原始语句与历史语句进行编码,得到第一目标向量、第二目标向量和第三目标向量,其中,第一目标向量用于表示第一对象的角色偏好,第二目标向量用于表示历史语句的顺序,第三目标向量用于表示历史语句之间的内容关联;

将第一目标向量、第二目标向量和第三目标向量拼接为组合向量;

对组合向量进行解码,以得到原始语句翻译后的第二语种的翻译结果。

可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

24页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种车载单元测试系统及方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!