文本翻译方法、装置、存储介质和计算机设备与流程

专利2022-06-29  53


本申请是于2019年03月25日提交中国专利局,申请号为201910228498.x,发明名称为“文本翻译方法、装置、存储介质和计算机设备”的分案申请,其全部内容通过引用结合在本申请中。

本申请涉及机器学习技术领域,特别是涉及一种文本翻译方法、装置、存储介质和计算机设备。



背景技术:

机器翻译是通过计算机将一种自然语言文本(需翻译的自然语言文本一般称为源文本)翻译为另一种自然语言文本(翻译后的自然语言文本称为目标译文),以实现不同语种的文本之间的转换。而不同的语种之间会有不同的语法及句式习惯,比如,在汉语和日语等语言中,指代词缺略是极为常见的现象,与之相反,在英、法等语言中,指代词作为句子成分则必不可少。当从指代词缺略语言(比如汉语)到非指代词缺略语言(比如英语)翻译时,需要将隐含的缺略词(也就是缺少的指代词)召回并正确地翻译出来,这给机器翻译带来了极大挑战,机器翻译很难将源端的隐性信息在目标端显性地解码出来。

传统的机器翻译方式,以中译英为例,通常采用词对齐算法和语言模型,自动标注并还原中文句子中的缺略代词,将补全了缺略代词的句子传递给统计机器翻译系统进行翻译。然而传统的机器翻译方式,常常由于缺略词还原的低准确率带来错误传递,导致源端被添加了错误的指代词从而使得翻译结果错误,导致了文本翻译准确率低的问题。



技术实现要素:

基于此,有必要针对文本翻译准确率低的技术问题,提供一种文本翻译方法、装置、计算机可读存储介质和计算机设备,以及模型训练方法、装置、计算机可读存储介质和计算机设备。

一种文本翻译方法,包括:

获取源文本的词序列、以及与所述源文本对应的篇章文本;所述源文本为指代词缺略文本;

对所述源文本的词序列进行语义编码,得到源端向量序列;

对所述源端向量序列进行解码处理,得到多于一组的候选译文、各所述候选译文对应的目标端向量序列、及各所述候选译文对应的翻译得分;

将所述词序列和所述源端向量序列,与各所述目标端向量序列分别进行重构处理,得到与各所述候选译文分别对应的重构隐层向量序列;所述重构隐层向量序列包括所述源文本所缺少的指代词的词信息;

对所述篇章文本进行编码处理得到篇章向量,并将所述篇章向量与各所述重构隐层向量序列分别进行融合,得到与各所述候选译文分别对应的第一融合向量序列;

将所述源文本的词序列,与各所述第一融合向量序列分别进行重构评估处理,得到与各所述候选译文分别对应的重构得分;

对各所述候选译文分别对应的翻译得分和重构得分进行加权求和,得到对应的综合得分,从所述候选译文中筛选相应综合得分满足预设条件的目标译文。

一种文本翻译装置,所述装置包括:

获取模块,用于获取源文本的词序列、以及与所述源文本对应的篇章文本;所述源文本为指代词缺略文本;

编码模块,用于对所述源文本的词序列进行语义编码,得到源端向量序列;

解码模块,用于对所述源端向量序列进行解码处理,得到多于一组的候选译文、各所述候选译文对应的目标端向量序列、及各所述候选译文对应的翻译得分;

重构模块,用于将所述词序列和所述源端向量序列,与各所述目标端向量序列分别进行重构处理,得到与各所述候选译文分别对应的重构隐层向量序列;所述重构隐层向量序列包括所述源文本所缺少的指代词的词信息;

所述编码模块还用于对所述篇章文本进行编码处理得到篇章向量;

融合模块,用于将所述篇章向量与各所述重构隐层向量序列分别进行融合,得到与各所述候选译文分别对应的第一融合向量序列;

评估模块,用于将所述源文本的词序列,与各所述第一融合向量序列分别进行重构评估处理,得到与各所述候选译文分别对应的重构得分;

筛选模块,用于对各所述候选译文分别对应的翻译得分和重构得分进行加权求和,得到对应的综合得分,从所述候选译文中筛选相应综合得分满足预设条件的目标译文。

一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述文本翻译方法的步骤。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述文本翻译方法的步骤。

上述文本翻译方法、装置、计算机可读存储介质和计算机设备,对缺少指代词的源文本进行语义编码,得到源端向量序列,并继续对源端向量序列进行解码,得到候选译文、各候选译文对应的目标端向量序列、及各候选译文对应的翻译得分,这样可充分提取出源端和目标端的隐层信息。再通过融合源端和目标端的隐层信息可以共享两端的共性信息,在根据源文本进行重构处理时可以减少冗余信息并能避免重要信息的缺失,不需要额外的缺略词标注信息就可重构回包括缺少的指代词的词信息的重构隐层向量序列,这样使得确定的重构得分可以很好的衡量缺少的指代词信息的召回程度。因此,依据重构得分和翻译得分所筛选出的目标译文,可以减少翻译时缺少缺略代词所带来的影响,大大提高了翻译质量。并且,通过对篇章文本进行编码处理,得到篇章向量,再将篇章向量融合到重构隐层向量序列中,加强了在翻译过程中对篇章信息的感知,从而使得确定的重构得分更为准确,进而提高了目标译文的准确性。

附图说明

图1为一个实施例中文本翻译方法和/或模型训练方法的应用环境图;

图2为一个实施例中文本翻译方法的流程示意图;

图3为一个实施例中在汉语表达中缺略词被省略的实例示意图;

图4为一个实施例中对源端向量序列进行解码处理的结构框图;

图5为一个实施例中通过机器翻译模型对源文本进行翻译得到目标译文的流程示意图;

图6为一个实施例中一个实施例中对篇章文本进行编码的结构示意图;

图7为一个实施例中通过包括编码器-解码器结构的机器翻译模型进行文本翻译的流程示意图;

图8为一个实施例中模型训练步骤的流程示意图:

图9为一个实施例中机器翻译模型在训练时的训练任务示意图;

图10为一个实施例中在模型训练过程中引入篇章信息的结构示意图;

图11为一个具体实施例中文本翻译方法的流程示意图;

图12为一个实施例中通过已训练的机器翻译模型翻译文本的步骤的流程示意图;

图13为一个实施例中文本翻译装置的结构框图;

图14为另一个实施例中文本翻译装置的结构框图;

图15为一个实施例中模型训练装置的结构框图;

图16为另一个实施例中模型训练装置的结构框图;

图17为一个实施例中计算机设备的结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

图1为一个实施例中文本翻译方法和/或模型训练方法的应用环境图。参照图1,该文本翻译方法和/或模型训练方法应用于文本处理系统。该文本处理系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。终端110和服务器120均可单独用于执行本申请实施例中提供的文本翻译方法和/或模型训练方法。终端110和服务器120也可协同用于执行本申请实施例中提供的文本翻译方法和/或模型训练方法。

可以理解,本申请各实施例所提及的文本翻译方法,主要可通过人工智能技术训练出机器翻译模型,再通过机器翻译模型执行文本翻译方法。其中,人工智能(artificialintelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

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

可以理解,本申请各实施例中的文本翻译方法具体涉及到人工智能的机器学习技术,其中,机器学习(machinelearning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。

本申请实施例提供的方案涉及人工智能的机器学习技术,具体通过如下实施例进行详细说明:

如图2所示,在一个实施例中,提供了一种文本翻译方法。本实施例主要以该方法应用于计算机设备来举例说明,该计算机设备具体可以是上图中的终端110或者服务器120。参照图2,该文本翻译方法具体包括如下步骤:

s202,获取源文本的词序列;源文本为指代词缺略文本。

其中,源文本是待翻译的文本,具体可以是词、句子、段落或篇章等文本。源文本可以是任意语种的文本,比如,中文文本或日文文本等。指代词缺略文本是指缺少至少一部分的指代词文本,文本中缺少的指代词可称作缺略词,通常是缺略代词(dp,droppedpronoun)。

在特定语言(如,汉语、日语)表达中,一些指代词常常会被省略从而使表达更加简洁。虽然这些指代词被省略了,但可以通过上下文语境推断出缺失的信息(即,缺略代词及其指代的先行词),因而这种表达并不会影响人们对内容的理解。此现象属于篇章理论中的零指代或空指代范畴。参考图3,图3示出了一个实施例中在汉语表达中缺略词被省略的实例示意图。如图3所示,汉语端括号中的主格代词“你”、“我”和宾格代词“它”都被省略了(括号中的文字被省略了),但在英文端对应的指代词则没有被省略。

具体地,计算机设备可从本地或其他计算机设备处获取待翻译的源文本,并对源文本进行分词处理后得到的各个词所组成的词序列。其中,对于源文本为中文文本的分词处理,可采用基于词典或基于统计的分词方式,在本申请中不做限定。

在一个实施例中,计算机设备在获取源文本的词序列后,可通过词嵌入(wordembedding)处理将离散的词序列转换成连续的空间表示向量序列。再将空间表示向量序列输入至预训练的机器翻译模型的输入层,通过预训练的机器翻译模型执行文本翻译方法,以得到目标译文。

s204,对源文本的词序列进行语义编码,得到源端向量序列。

其中,对源文本进行语义编码,是将源文本转换为向量的过程。源端向量序列,是指对源文本的词序列进行语义编码后得到的向量序列。具体地,计算机设备可分别对源文本的词序列中的各词进行语义编码,提取各词的语义特征,将各词转换成向量表示。拼接各词所对应的向量表示,得到源端向量序列。

在一个实施例中,在一个实施例中,计算机设备在获取源文本的词序列后,可通过词嵌入处理将离散的词序列转换成连续的空间表示向量序列。再将空间表示向量序列输入至预训练的机器翻译模型的输入层,通过预训练的机器翻译模型中的编码器对与源文本对应的空间表示向量序列进行语义编码处理,得到源端向量序列。其中,源端向量序列中的每个源端向量分别对应源文本的词序列中的各词。

其中,预训练的机器翻译模型采用基于神经网络的sequence-to-sequence(序列-序列)框架。sequence-to-sequence框架是包含encoder-decoder(编码器-解码器)结构的框架。encoder-decoder结构将输入序列转换为另一个序列输出。在该框架中,编码器将输入序列转化成向量,解码器则接受向量并按时间顺序依次生成输出序列。编码器以及解码器可以采用相同类型的神经网络模型,也可以是不同类型的神经网络模型。神经网络模型比如cnn(convolutionalneuralnetworks,卷积神经网络)模型、rnn(recurrentneuralnetworks)模型、长短时记忆模型(longshort-termmemory,lstm)、时延网络模型或闸控卷积神经网络模型等。

在一个实施例中,计算机设备可将源文本的词序列输入到预训练的机器翻译模型中编码器的输入层,通过编码器中各隐层进行语义编码处理,得到隐层所输出的向量序列。其中,隐层是神经网络模型中的一种术语,是相对于输入层和输出层的中间层,隐层中包括对神经网络模型训练得到的模型参数。这里编码器的隐层是相对于编码器的输入层和编码器的输出层的中间层。编码器的隐层可包括多个神经网络层。这里将编码器的隐层当作“黑盒”进行描述。

举例说明,以源文本的词序列为一个长度为m的序列为例,将源文本的词序列输入到编码器中进行语义编码,得到词序列中各词对应的向量。编码器的处理过程如下:计算机设备可以对源文本进行分词,得到源文本的词序列为x=(x1,x2,...,xm),通过词嵌入方式将词序列转换成连续的空间表示向量,可记为p=(p1,p2,...,pm)。通过编码器的神经网络结构,对空间表示向量进行语义编码,得到源端向量序列,可记为

s206,对源端向量序列进行解码处理,得到候选译文、各候选译文对应的目标端向量序列、及各候选译文对应的翻译得分。

其中,解码处理是将向量转换为序列输出的过程。候选译文是解码所得到的与源文本对应的备选译文。可以理解,源文本具体可以是词、句子、段落或者篇章等。相应的,候选译文也可以是与源文本对应的词、句子、段落或者篇章等。源文本可以是任意语种的文本,候选译文则为异于源文本所属语种的其他语种的文本。

目标端向量序列,是指对源文本对应的源端向量进行解码计算得到的向量所组成的序列。候选译文对应的目标端向量序列,是指构成候选译文的各候选词所对应的目标端向量所组成的序列。可以理解,计算机设备的解码过程是有时序的,在解码的过程中,计算机设备会根据前次解码得到的候选词的词向量,对源端向量序列进行解码,得到当次的目标端向量,进而根据当次的目标端向量确定当次的候选词。对于各候选译文而言,候选译文中的候选词所对应的目标端向量是可以确定的。因而,计算机设备在解码得到候选译文时,则可相应地确定与各候选译文分别对应的目标端向量序列。

翻译得分是衡量候选译文的翻译质量的量化值。计算机设备在对源端向量序列进行解码处理时,可根据源端向量序列、历史解码得到的候选词、及历史解码得到的目标端向量序列,确定与各候选词对应的翻译得分。具体通过以下公式计算各候选词的翻译得分:其中,yi-1是前次解码得到的候选词;si是当次的目标端向量;ci是对源端向量序列进行当次的注意力机制处理后得到的当次的内容向量;g表示softmax函数;∏()函数表示连乘运算。关于目标端向量的具体计算方式及源端内容向量的具体计算方式在后面的实施例中会进行详细介绍。

进一步地,计算机设备在计算出各候选词所对应的翻译得分后,确定构成各候选译文的各候选词所对应的翻译得分,将候选译文的各候选词所对应的翻译得分相加即可得到该候选译文对应的翻译得分。

在一个实施例中,计算机设备可通过预训练的机器翻译模型中的解码器依次对源端向量序列进行解码,以得到目标端向量,进而根据当次的目标端向量确定当次的候选词、以及与该候选词对应的翻译得分。其中,机器翻译模型可将源端向量序列输入到解码器的隐层中计算得到目标端向量、候选词及翻译得分。这里解码器的隐层是相对于解码器的输入层和解码器的输出层的中间层。解码器的隐层可包括多个神经网络层。这里将解码器的隐层当做“黑盒”进行描述。在一个实施例中,解码器在初始时刻的隐层状态向量可以是模型训练得到的模型参数,也可以是默认设置的模型参数。

在一个实施例中,计算机设备根据目标端向量确定的候选词可以是一个,也可以是多个。具体地,解码器可根据当次(也可称作当前时刻)的目标端向量,计算得到当次(也可称作当前时刻)的输出概率序列。其中,机器翻译模型当次确定的输出概率序列是指在输出端词集中各候选词为当次输出的目标词的概率所组成的序列。进一步地,机器翻译模型可选择输出概率序列中的最大概率所对应的候选词作为当次的候选词,或者选择输出概率序列中的概率值最大的前几名(比如前十名)所对应的候选词作为当次的候选词。

在一个实施例中,解码器可根据当次的目标端向量,确定当次的翻译得分序列。其中,机器翻译模型当次确定的翻译得分序列是指在输出端词集中各候选词所对应的翻译得分的序列。翻译得分用于评价该候选词作为目标词时的翻译准确性。候选词所对应的翻译得分越大,表示该候选词作为目标词的概率越大。进一步地,机器翻译模型可选择翻译得分序列中的最大分数所对应的候选词作为当次的候选词。计算机设备也可选择翻译得分序列中的翻译得分最大的前几名(比如前十名)所对应的候选词作为当次的候选词。

当当次确定的候选词的数量为多个时,计算机设备在下次解码时,可分别并行进行多组解码处理。机器翻译模型的解码器可分别根据前次确定的各候选词分别计算当次的目标端向量。这样,计算得到的当次的目标端向量的数量也是多个,再根据当次的目标端向量确定当次的候选目标词。依次类推,直到解码得到多组候选译文。

在一个实施例中,为减轻计算机的计算压力,在得到多组候选译文后,可根据各组候选译文所对应的翻译得分,筛选翻译得分较高的预设数量的候选译文。筛选的候选译文所对应的目标端向量序列才参与到后续的重构处理中。这样,在计算各候选译文所对应的重构得分时,预先筛选掉一部分的候选译文,仅留下翻译质量较高的候选译文,再计算相应的重构得分,从而确定目标译文,可大大减轻计算机设备的计算压力,提高了翻译效率。

在一个实施例中,计算机设备在对源端向量序列进行解码时,可采用贪心算法(greedysearch)或集束搜索算法(beamsearch)等算法进行解码处理,从而得到多组候选译文。

在一个实施例中,步骤s206具体包括:依次对源端向量序列进行解码得到目标端向量,且每次解码时根据前次确定的候选词的词向量进行解码,并根据当次的目标端向量确定当次的多于一个的候选词;将依次解码得到的各候选词,按候选词的生成时序,拼接得到多于一组的候选译文;通过构成各候选译文的候选词所对应的目标端向量,确定与各候选译文分别对应的目标端向量序列;根据源端向量序列、历史解码得到的候选词、及历史解码得到的目标端向量序列,确定与各候选词对应的翻译得分;依据构成各候选译文的各候选词所对应的翻译得分,计算得到与各候选译文对应的翻译得分。

具体地,计算机设备每次解码时根据前次确定的候选词进行解码,得到当次的目标端向量,并根据当次的目标端向量确定当次的多于一个的候选词。计算机设备再将当次的多于一个的候选词分别作为下次解码的前次候选词并行解码,每组解码过程都会得到多于一个的候选词,直到结束解码。在解码过程中,每个候选词所对应的目标端向量是确定的,该候选词的前一词的词向量也是确定的,因而,每个候选词所对应的翻译得分也是确定的。

进一步地,计算机设备可采用反向回溯的方式,从最后得到的候选词进行反向回溯,确定该候选词的前一词,依次回溯直到解码得到的初始候选词。这样,每一组回溯路径所包括的各候选词按相应的生成时序,即可拼接得到一组候选译文。对应地,将构成该候选译文的各候选词所对应的目标端向量进行拼接处理,即可得到与该候选译文对应的目标端向量序列。对应地,将构成该候选译文的各候选词所对应的翻译得分相加,即可得到与该候选译文对应的翻译得分。

参考图4,图4为一个实施例中对源端向量序列进行解码处理的结构框图。如图4所示,计算机设备每次解码时根据前次确定的候选词进行解码,并确定当次的候选词,比如当次确定的候选词有3个。在下次解码时,则分别进行三组解码,每组解码依据一个候选词确定下次的3个候选词,依次解码直到解码过程的结束。采用这样并行的多组解码方式进行解码,可得到多组候选译文,以及相应的翻译得分{p1,p2,...,pk}。

在一个实施例中,在每次根据前次解码得到的候选词进行解码的过程中,计算机设备可依次获取当次的与源端向量序列对应的注意力分配权重向量,根据注意力分配权重向量、以及源端向量序列,计算得到当次的内容向量;依次根据当次的内容向量、前次的目标端向量、以及前次确定的候选词的词向量,计算得到当次的目标端向量,并根据当次的目标端向量确定当次的候选词。

在一个实施例中,计算机设备在生成当次(也称当前时刻)的候选词之前,可获取当次(也称当前时刻)的与源端向量序列对应的注意力分配权重向量。其中,当次的注意力分配权重向量可根据源端向量序列、以及解码器中前次(前一时刻)的目标端向量所确定。具体地,可参考以下公式:ei,j=att(si-1,hj)。其中,i指第i次,j指源端向量序列中第j个向量,αi,j指第i次中源端向量序列中第j个向量所对应的注意力分配权重。将每次源端向量序列中各个向量所对应的注意力分配权重进行拼接,即可得到当次与源端向量序列对应的注意力分配权重向量。

进一步地,计算机设备可根据当次的注意力分配权重向量、以及源端向量序列,计算得到当次的内容向量。当次的内容向量是对各源端向量加权求和得到的,相应的加权系数就是注意力分配权重。举例说明,对于当次的注意力分配权重向量,可以表示为αi,j={α1,α2,...,αj}。其中,源端向量序列可以表示为则当次的内容向量可以通过以下公式计算:相应的,对于每一次的内容向量都可以通过上述公式计算得到。

进一步地,计算机设备可依次根据当次的内容向量、前次的目标端向量、以及前次确定的候选词的词向量,计算得到当次的目标端向量,并根据当次的目标端向量确定当次的候选词。举例说明,对于当次的目标端向量,可以用si表示,前次的候选词可以用yi-1表示,当次的内容向量可以用ci表示,则si=f(si-1,yi-1,ci);其中,f()表示激活函数。相应的,对于每一次的目标端向量都可以通过上述公式计算得到。进一步地,可通过以下公式计算确定当次的候选词:yi=g(yi-1,si,ci);其中,g()是softmax函数。对于每个候选词所对应的翻译得分,计算机设备可通过以下公式计算:

这样通过注意力机制处理,可以使得当次的目标端向量包含源文本中对当次而言更重要的语义信息,再综合了前次所输出候选词的语义信息,可以使得生成的候选译文更为连贯,信息量更为丰富。

可以理解的是,解码器首次解码得到候选词的解码方式和后面时刻解码的方式一样,对于首次解码时所需的前一时刻的相应的数据则可以根据经验预设初始值或随机生成初始值,以进行下一步的处理。

可以理解,本申请所使用的“当次”或“当前时刻”用于描述机器翻译模型的解码器进行解码并确定当次的目标词的时刻,“前次”或“前一时刻”用于描述解码器进行解码并确定前次的目标词的时刻。比如,前次为第i-1次,机器翻译模型所输出的目标词则为yi-1;当次为第i次,机器翻译模型所输出的目标词则为yi。并且,当次是一个相对变化的次数,比如,机器翻译模型在输出当次i的下次i 1的目标词时,则可将该下次i 1作为新的当次,将当次i作为新的前次。

上述实施例中,依次对源端向量序列进行解码得到目标端向量,且每次解码时根据前次确定的候选目标词的词向量进行解码,并根据当次的目标端向量确定当次的多于一个候选词。可使得解码生成的候选词不仅包含了源文本的语义信息,还综合了前次的候选词的语义信息,使得生成的候选译文更为连贯,翻译结果更准确。由于在每次解码时都可解码得到多于一个的候选词,在不断地解码过程中,根据每个候选词又可解码得到下次的多于一个的候选词,因而根据各候选词的生成时序可拼接得到多个候选译文,根据各候选词的目标端向量可拼接得到与候选译文对应的目标端向量序列,根据各候选词的翻译得分可计算得到候选译文的翻译得分。

s208,将词序列和源端向量序列,与各目标端向量序列分别进行重构处理,得到与各候选译文分别对应的重构隐层向量序列;重构隐层向量序列包括源文本所缺少的指代词的词信息。

其中,重构处理是将源端向量序列和目标端向量序列重构回源文本的处理,可以理解成一个自动编码器(auto-encoder)操作。重构隐层向量序列是将源端向量序列和目标端向量序列重构回源文本的过程中隐层所输出的向量序列。指代词的词信息具体可以是指代词的位置信息和/或指代词的词本身。

具体地,计算机设备可根据源端向量序列和各目标端向量序列,重新构建与源文本的词序列对应的重构隐层向量序列。对于每组候选译文,计算机设备均采用以下方式计算各组候选译文对应的重构隐层向量序列:计算机设备可根据源文本中当前词的前一词的词向量、前次重构得到的重构隐层向量、源端向量序列和该组候选译文对应的目标端向量序列,重构得到当次重构隐层向量。依次重构处理,直到得到每次重构处理的重构隐层向量,将每次得到的重构隐层向量构成重构隐层向量序列。

在一个实施例中,可通过预训练的机器翻译模型执行文本翻译方法。计算机设备可将源端向量序列和目标端向量序列输入至机器翻译模型的重构器中,通过重构器的隐层将编码器端的隐层向量序列和解码器端的隐层向量序列重构回源语端句子。这相当于一个自动编码器(auto-encoder)操作,我们假设此过程可以使源端向量序列和目标端向量序列学习到源文本中缺少的指代词的词信息。其中,重构器可以由深层神经网络所构成。这里重构器的隐层是相对于重构器的输入层和重构器的输出层的中间层。重构器的隐层可包括多个神经网络层。这里将重构器的隐层当做“黑盒”进行描述。

在一个实施例中,机器翻译模型在训练时,可联合词序列标注任务联合训练,也就是,在训练时,一方面将源端向量序列和目标端向量序列重构回源文本;另一方面通过预先与源文本进行序列标注所得到的标注词序列,引导重构隐层向量序列学习到指代词的词信息。这样训练得到的机器翻译模型的模型参数,在通过机器翻译模型重构得到重构隐层向量序列时,无需额外输入源文本所缺少的指代词的词信息作为参考,就可通过已训练好的机器翻译模型的模型参数,使得构建的重构隐层向量序列包括源文本所缺少的指代词的词信息。避免了由于额外对源文本进行还原所带来的错误而影响翻译质量。虽然通过平行语料训练还原模型,可以实现对源文本中缺少的指代词的还原和位置预测,但一般来说,对源文本中缺少的指代词的词还原的准确率只有66%左右,对源文本中缺少的指代词的位置预测的准确率最高也只能达到88%左右。因而在对源文本进行翻译的过程中,由于引入源文本所缺少的指代词的词信息作为参考,在模型计算的迭代过程中,引入的词信息中的错误部分会不断迭代放大,最终影响到机器翻译的翻译质量。而本申请所提供的各种实施例中,在通过机器翻译模型对源文本进行翻译时,无需引入额外的缺略词的词信息作为参考,通过训练得到的机器翻译模型的模型参数,使得机器翻译模型在构建重构隐层向量序列时,自动包括了源文本所缺少的指代词的词信息,大大提高了翻译质量。其中,关于机器翻译模型的训练步骤在后面的实施例中再做详细介绍。

s210,将源文本的词序列,与各重构隐层向量序列分别进行重构评估处理,得到与各候选译文分别对应的重构得分。

其中,重构评估处理是通过对经重构处理所得到的重构隐层向量序列和源文本进行比较,以评估从重构隐层向量序列到生成源文本的代价的负。其中,代价的负是指重构得分越大,重构的代价越小,说明重构隐层向量序列越容易重构需要的内容。而重构得分是衡量缺略代词信息召回程度的分值。重构得分可用来衡量各候选译文的翻译质量,重构得分越高,则表示该候选译文作为目标译文的可能性越高。

在一个实施例中,对于每组候选译文的重构得分,计算机设备可通过如下方式计算:首先,计算机设备可根据源文本中当前词的前一词的词向量、源端向量序列、以及该候选译文对应的当次的重构隐层向量和目标端向量序列,计算得到与该候选译文对应、且与源文本中当前词对应的重构得分。再对与源文本中各词所对应的重构得分进行连乘运算,得到与该候选译文对应的重构得分。

在一个实施例中,可通过预训练的机器翻译模型执行文本翻译方法。对于每组候选译文的重构得分,计算机设备可通过如下方式计算:计算机设备可将源端向量序列和该候选译文所对应的目标端向量序列输入至机器翻译模型的重构器中,通过源文本的词序列,重构得到重构隐层向量序列。再通过机器翻译模型的重构器,对源文本的词序列、重构隐层向量序列、源端向量序列和目标端向量序列进行重构评估处理,得到重构得分。

s212,从候选译文中筛选相应翻译得分和重构得分满足预设条件的目标译文。

其中,目标译文是对源文本进行机器翻译得到的最终文本。目标译文为异于源文本所属语种的其他语种的文本。目标译文具体可以是与源文本对应的词、句子、段落或者篇章等。

预设条件是预先设置的条件,具体可以是通过翻译得分和重构得分计算得到的综合得分大于或等于阈值。其中,综合得分的计算方式不限定,比如可对翻译得分和重构得分进行加权求和得到综合得分,或将翻译得分和重构得分相乘得到综合得分等。或者,翻译得分及重构得分各自分别大于预设的相应阈值。还或者,将根据翻译得分和重构得分计算得到的综合得分进行从高到低排序后,排序名次小于预设名次等。

具体地,计算机设备可根据各候选译文各自所对应的翻译得分和重构得分,筛选出翻译得分和重构得分,满足预设条件的候选译文,将筛选出的候选译文作为目标译文。

在一个实施例中,步骤s212,也就是从候选译文中筛选相应翻译得分和重构得分满足预设条件的目标译文的步骤具体包括:对各候选译文分别对应的翻译得分和重构得分进行加权求和计算,得到各候选译文各自所对应的综合得分;从候选译文中,筛选相应综合得分为最高得分的候选译文;将筛选出的候选译文作为目标译文并输出。

具体地,计算机设备可对各候选译文各自所对应的翻译得分和重构得分进行加权求和计算,得到各候选译文各自所对应的综合得分。进而选择综合得分最大的候选译文为与源文本对应的目标译文。这样,依据翻译得分和重构得分,从候选译文中筛选出目标译文,可以极大地缓解源文本中代词缺失的痛点问题,大大提高了翻译的准确性。

参考图5,图5示出了一个实施例中,通过机器翻译模型对源文本进行翻译得到目标译文的流程示意图。如图5所示,计算机设备可将源文本(sourcesentence)输入至机器翻译模型的编码器-解码器(encoder-decoder)中,得到候选译文{cand1,cand2,...,candk},以及各候选译文所对应的翻译得分{p1,p2,...,pk}。其中,候选译文对应的翻译得分可以通过将候选译文中各候选目标词对应的翻译得分进行加法计算得到。再将源文本、源端向量序列和目标端向量序列输入至机器翻译模型的重构器中进行重构处理,得到各候选译文对应的重构隐层向量序列。再通过重构器对源文本的词序列、重构隐层向量序列、源端向量序列、及目标端向量序列进行重构评估处理,得到各候选译文对应的重构得分{r1,r2,...,rk}。计算机设备可对各候选译文的翻译得分和重构得分进行加权求和,得到综合得分,比如综合得分y=pk λrk,其中,λ为加权系数。最后通过选择器将最高的综合得分所对应的候选译文作为目标译文输出。

上述文本翻译方法,对缺少指代词的源文本进行语义编码,得到源端向量序列,并继续对源端向量序列进行解码,得到候选译文、各候选译文对应的目标端向量序列、及各候选译文对应的翻译得分,这样可充分提取出源端和目标端的隐层信息。再通过融合源端和目标端的隐层信息可以共享两端的共性信息,在根据源文本进行重构处理时可以减少冗余信息并能避免重要信息的缺失,不需要额外的缺略词标注信息就可重构回包括缺少的指代词的词信息的重构隐层向量序列,这样使得确定的重构得分可以很好的衡量缺少的指代词信息的召回程度。因此,依据重构得分和翻译得分所筛选出的目标译文,可以减少翻译时缺少缺略代词所带来的影响,大大提高了翻译质量。

在一个实施例中,该文本翻译方法还包括分别对源端向量序列和目标端向量序列进行注意力机制处理的步骤,该步骤具体包括:获取与源端向量序列对应的源端注意力分配权重向量;根据源端注意力分配权重向量、以及源端向量序列,计算得到源端内容向量;分别获取与各目标端向量序列对应的目标端注意力分配权重向量;根据目标端注意力分配权重向量、以及相对应的目标端向量序列,计算得到与各候选译文分别对应的目标端内容向量。将词序列和源端向量序列,与各目标端向量序列分别进行重构处理,得到与各候选译文分别对应的重构隐层向量序列的步骤,包括:将词序列和源端内容向量,与各目标端内容向量分别进行重构处理,得到与各候选译文分别对应的重构隐层向量序列。

在一个实施例中,计算机设备对源端向量序列、以及目标端向量序列进行注意力机制处理的过程中可采用独立注意力机制处理或交叉注意力机制处理的方式。其中独立注意力机制处理是指对源端向量序列、以及目标端向量序列进行注意力机制处理的注意力分配权重各自独立计算;交叉注意力机制处理是指对源端向量序列、以及目标端向量序列进行注意力机制处理的注意力分配权重交叉计算。

在一个实施例中,获取与源端向量序列对应的源端注意力分配权重向量的步骤具体包括:对源文本中当前词的前一词的词向量、重构器所输出的与源文本中前一词对应的重构隐层向量、以及源端向量序列进行注意力机制处理,得到与源端向量序列对应的源端注意力分配权重向量;或,对源文本中当前词的前一词的词向量、重构器所输出的与源文本中前一词对应的重构隐层向量、源端向量序列、以及目标端内容向量进行注意力机制处理,得到与源端向量序列对应的源端注意力分配权重向量。

在一个实施例中,获取与目标端向量序列对应的目标端注意力分配权重向量的步骤包括:对源文本中当前词的前一词的词向量、重构器所输出的与源文本中前一词对应的重构隐层向量、以及目标端向量序列进行注意力机制处理,得到与目标端向量序列对应的目标端注意力分配权重向量;或,对源文本中当前词的前一词的词向量、重构器所输出的与源文本中前一词对应的重构隐层向量、目标端向量序列、以及源端内容向量进行注意力机制处理,得到与目标端向量序列对应的目标端注意力分配权重向量。

下面通过举例说明来介绍计算机设备对源端向量序列、以及目标端向量序列进行独立注意力机制处理的方式。以源文本的词序列的词数为次数基准,源文本的第i个词对应第i次重构处理,本申请实施例中的第i次重构处理也可以理解成当次重构处理。计算机设备可采用以下公式计算得到与各源端向量分别对应的源端注意力分配权重:其中,att表示注意力机制处理;xi-1表示源文本中的第i-1个词的词向量;表示与源文本中的第i-1个词对应的重构隐层向量;表示各源端向量。计算机设备可采用以下公式计算得到与各目标端向量分别对应的目标端注意力分配权重:其中,att表示注意力机制处理;xi-1表示源文本中的第i-1个词的词向量;表示与源文本中的第i-1个词对应的重构隐层向量;表示各目标端向量。

在一个实施例中,计算机设备对源端向量序列、以及目标端向量序列进行交叉注意力机制处理过程中注意力分配权重的计算有多种方式,下面通过多种举例来进行说明。

方式一:计算机设备可采用以下公式计算得到与各源端向量分别对应的源端注意力分配权重:其中,att表示注意力机制处理;xi-1表示源文本中的第i-1个词的词向量;表示与源文本中的第i-1个词对应的重构隐层向量;表示各源端向量。计算机设备可采用以下公式计算得到与各目标端向量分别对应的目标端注意力分配权重:其中,att表示注意力机制处理;xi-1表示源文本中的第i-1个词的词向量;表示与源文本中的第i-1个词对应的重构隐层向量;表示各目标端向量;表示当次的,也就是与源文本中的第i个词对应的源端内容向量;表示当次的源端注意力分配权重;表示各源端向量;·表示向量点乘运算。

方式二:计算机设备可采用以下公式计算得到与各源端向量分别对应的源端注意力分配权重:其中,att表示注意力机制处理;xi-1表示源文本中的第i-1个词的词向量;表示与源文本中的第i-1个词对应的重构隐层向量;表示各源端向量;表示当次的也就是与源文本中的第i个词对应的目标端内容向量;表示各目标端向量;表示当次的目标端注意力分配权重;·表示向量点乘运算。计算机设备可采用以下公式计算得到与各目标端向量分别对应的目标端注意力分配权重:其中,att表示注意力机制处理;xi-1表示源文本中的第i-1个词的词向量;表示与源文本中的第i-1个词对应的重构隐层向量;表示各目标端向量。

方式三:计算机设备可采用以下公式计算得到与各源端向量对应的源端注意力分配权重:其中,att表示注意力机制处理;xi-1表示源文本中的第i-1个词的词向量;表示与源文本中的第i-1个词对应的重构隐层向量;表示各源端向量;表示当次的,也就是与源文本中的第i个词对应的目标端内容向量;表示各目标端向量;表示与各目标端向量分别对应的目标端注意力分配权重;·表示向量点乘运算。计算机设备可采用以下公式计算得到与各目标端向量分别对应的目标端注意力分配权重:其中,att表示注意力机制处理;xi-1表示源文本中的第i-1个词的词向量;表示与源文本中的第i-1个词对应的重构隐层向量;表示当次的,也就是与源文本中的第i个词对应的源端内容向量;表示与各源端向量分别对应的源端注意力分配权重;表示各源端向量;·表示向量点乘运算。

进一步地,当计算机设备分别确定了当次的源端注意力分配权重向量和当次的目标端注意力分配权重向量时,可根据源端注意力分配权重向量、以及源端向量序列,计算得到当次的源端内容向量;根据目标端注意力分配权重向量、以及目标端向量序列,计算得到当次的目标端内容向量。这样,通过独立或交叉的关注机制处理源端向量序列和目标端向量序列,可更好地利用源端和目标端的共性知识,能更好的共享源端和目标端的隐层特征,提高文本翻译的准确性。

在一个实施例中,计算机设备可通过以下公式计算当次的源端内容向量:其中,表示各源端向量;表示与各源端向量分别对应的源端注意力分配权重;·表示向量点乘运算。计算机设备可通过以下公式计算当次的目标端内容向量:其中,表示各目标端向量;表示与各目标端向量分别对应的目标端注意力分配权重;·表示向量点乘运算。

进一步地,计算机设备在计算得到当次的源端内容向量和当次的目标端内容向量后,可按照源文本,对源端内容向量和目标端内容向量进行重构处理,得到当次的重构隐层向量。

在一个实施例中,将词序列和源端内容向量,与各目标端内容向量分别进行重构处理,得到与各候选译文分别对应的重构隐层向量序列的步骤具体包括:对于每组候选译文,分别根据源文本中当前词的前一词的词向量、前次重构得到的重构隐层向量、源端内容向量和各候选译文各自所对应的目标端内容向量,重构得到当次重构隐层向量;对于每组候选译文,分别将依次重构得到的重构隐层向量构成重构隐层向量序列;重构得到的重构隐层向量序列包括源文本所缺少的指代词的词信息。

在一个实施例中,对于每组候选译文分别所对应的重构隐层向量序列,计算机设备均可通过下面的方式计算得到;首选,计算机设备可通过以下公式计算与源文本中当前词对应的重构隐层向量:其中,fr()为激活函数;xi-1表示源文本中的第i-1个词向量;表示与源文本中的第i个词对应的重构隐层向量;表示当次的源端内容向量;表示当次的目标端内容向量。依次计算,直到得到与源文本中各个词分别对应的重构隐层向量。接着,计算机设备可将依次重构得到的重构隐层向量构成重构隐层向量序列。其中,重构得到的重构隐层向量序列包括源文本所缺少的指代词的词信息。这样,通过将各候选译文分别对应的目标端内容向量,依次与源文本的词序列和源端内容向量进行重构处理,可以很好地构建包括缺略词的词信息的重构隐层向量序列,可以用于后续步骤中重构得分的计算。

可以理解,计算机设备可通过预训练的机器翻译模型对源文本进行处理,而机器翻译模型在训练时,可结合源文本重构任务和词序列标注任务联合训练,也就是,在训练时,一方面将源端向量序列和目标端向量序列重构回源文本;另一方面通过预先与源文本进行序列标注所得到的标注词序列,引导重构隐层向量序列学习到指代词的位置信息,并具备还原缺略词的能力。这样训练得到的机器翻译模型的模型参数,在通过机器翻译模型重构得到重构隐层向量序列时,无需额外输入源文本所缺少的指代词的词信息作为参考,就可通过已训练好的机器翻译模型的模型参数,使得构建的重构隐层向量序列包括源文本所缺少的指代词的词信息。

上述实施例中,分别对源端向量序列和各目标端向量序列进行注意力机制处理,得到对应的源端内容向量和目标端内容向量。将源文本和源端内容向量,与各目标端内容向量分别进行重构处理,可以得到融合了源端和目标端信息的重构隐层向量序列,且该隐层向量序列还包括了源文本所缺少的指代词的词信息,可以帮助生成能准确衡量缺略词找回程度的重构得分。

在一个实施例中,将源文本的词序列,与各重构隐层向量序列分别进行重构评估处理,得到与各候选译文分别对应的重构得分的步骤具体包括:对于每组候选译文,分别根据源文本中当前词的前一词的词向量、源端内容向量、以及各候选译文对应的当次的重构隐层向量和目标端内容向量,计算得到与各候选译文分别对应、且与源文本中当前词对应的重构得分;对于每组候选译文,分别对与源文本中各词所对应的重构得分进行连乘运算,得到与各候选译文分别对应的重构得分。

具体地,对于每组候选译文所对应的重构得分,计算机设备都可通过以下方式计算得到:计算机设备可根据源文本的词序列、源端内容向量、该组候选译文对应的目标端内容向量、以及该组候选译文对应的重构隐层向量序列,计算得到相应的重构得分。

在一个实施例中,对于每组候选译文所对应的重构得分均可通过以下公式计算得到:其中,gr()为归一化函数;xi-1表示源文本中的第i-1个词向量;表示与源文本中的第i个词对应的重构隐层向量;表示当次的源端内容向量;表示当次的目标端内容向量;π()表示连乘运算。

上述实施例中,根据源文本的词序列、源端内容向量、该组候选译文对应的目标端内容向量、以及该组候选译文对应的重构隐层向量序列,计算得到相应的重构得分,可以通过量化的重构得分的分值来衡量重构隐层向量序列和源文本的差异,也就是可以评估出将重构隐层向量序列重构回源文本的代价。

在实际应用中,对源文本进行翻译的过程中,与源文本中缺少的指代词对应的先行词可能在该源文本的前述文本中。比如,“这块蛋糕很美味!你烤的吗?”,假如当前句子为“你烤的吗?”,很明显,当前句子所缺少的指代词是“它”,该句子完整的表述应是“你烤的(它)吗”,而指代词(也就是该句中的缺略词)“它”的先行词为前一句中的“蛋糕”。如果仅考虑当前句子,在机器翻译的时候可能根据当前句很难将缺略词还原准确。

基于上述的情况,可通过引入篇章信息来进一步提高机器翻译的准确率。在本申请的各实施例中,篇章信息具体包括跨句子的信息,比如当前句子的前n句话的词级建模信息,以及句子之前起承转合的关系。这些都将有助于机器翻译模型对缺略词预测和还原的学习。

在一个实施例中,计算机设备可通过层次级网络对源文本的篇章文本进行建模,将篇章信息融入到重构隐层向量中,通过模型的训练,使机器翻译模型的重构器学习到缺略词补全的能力。其中,计算机设备将篇章信息融入到重构隐层向量中,具体可以是将篇章信息分别和各候选译文对应的目标端向量序列进行融合,还可以是将篇章信息分别和各重构隐层向量序列进行融合。

在一个实施例中,该文本翻译方法还包括融合篇章信息的步骤,该步骤具体包括:获取与源文本对应的篇章文本;对篇章文本进行编码处理,得到篇章向量;将篇章向量,与各重构隐层向量序列分别进行融合,得到与各候选译文分别对应的第一融合向量序列。将源文本的词序列,与各重构隐层向量序列分别进行重构评估处理,得到与各候选译文分别对应的重构得分的步骤包括:将源文本的词序列,与各第一融合向量序列分别进行重构评估处理,得到与各候选译文分别对应的重构得分。

其中,与源文本对应的篇章文本具体可以是当前待翻译的句子之前和/或之后的预设数量的句子。具体地,计算机设备可从待翻译文本中,确定位于当前待翻译的句子之前的篇章文本(也就是该句子的上下文)。继而,计算机设备可对篇章文本进行编码处理,得到篇章向量。通过建模的方式,将篇章文本的信息压缩到篇章向量中。这样,在计算重构得分时,可分别融合篇章向量来进行计算。对于每组候选译文各自对应的重构得分,计算机设备都可采用如下方式计算:将篇章向量与该候选译文所对应的重构隐层向量序列进行融合,得到第一融合向量序列。再根据第一融合向量序列计算得到该候选译文所对应的重构得分。

在一个实施例中,计算机设备可通过神经网络结构,比如rnn网络(recurrentneuralnetwork,循环神经网络)结构、cnn网络(convolutionalneuralnetworks,卷积神经网络)结构、或者san网络(storageareanetworks)结构等,对篇章文本进行编码处理,输出相应的篇章向量。

在一个实施例中,对篇章文本进行编码处理,得到篇章向量的步骤具体包括:确定篇章文本所包括的整句;对各整句分别进行分词处理,得到各整句各自对应的词序列;对各整句各自对应的词序列分别进行词级编码处理,得到与各整句分别对应的句子向量序列;将与各整句分别对应的句子向量序列进行句子级编码处理,得到与篇章文本对应的篇章向量。

具体地,计算机设备可根据篇章文本中包括的结束符来确定篇章文本中的各整句。其中,结束符是表示句子结束的符号,比如句号、问号或感叹号等。计算机设备可将两个结束符之间的字符构建成一个整句。

进一步地,计算机设备对分别对各整句进行分词处理,得到各整句各自对应的词序列。计算机设备可对各整句各自对应的词序列分别进行词级编码处理,得到与各整句分别对应的句子向量序列。将与各整句分别对应的句子向量序列进行句子级编码处理,得到与篇章文本对应的篇章向量。

举例说明,将源文本的前k句话作为篇章文本x={x-k,......,x-1},计算机设备可通过层次级神经网络对篇章文本进行建模。对每一个整句,都通过词级编码器对句子进行编码,得到对应的句子向量序列:h-k=encoderword(x-k)。当得到所有的句子向量序列hx={h-k,......,h-1}后,将所有的句子向量序列输入至句子级编码器进行编码处理,得到篇章向量m,其中,m=encodersentence(hx)。其中,这里编码得到的句子向量m不仅包含了词与词之间的语义关系,更隐含了句子之间的逻辑关系。

在一个实施例中,参考图6,图6示出了一个实施例中对篇章文本进行编码的结构示意图。如图6所示,计算机设备可通过词级编码器对各个整句分别进行编码,得到各个整句各自对应的句子向量序列。再根据多组句子向量序列构建出一组长度为句子数的综合句子向量序列。比如,计算机设备可分别提取将各组句子向量序列中的一个向量,共同拼接组成一组包含所有句子信息的综合句子向量序列。其中,计算机设备提取各组句子向量序列中的一个向量的方式,具体可以是提取各句子向量序列中相同位置处的向量,比如各组句子向量序列中的第一个向量或最后一个向量;也可以是提取各句子向量序列中不同位置处的向量等,在此不做限定。还比如,计算机设备可将各组句子向量序列分别再次进行编码,得到代表该组句子向量序列的单个句子向量,根据得到的单个句子向量共同拼接生成综合句子向量序列。进一步地,参考图6,计算机设备可通过句子级编码器对综合句子向量序列进行句子级编码,得到表示篇章信息的篇章向量m。

上述实施例中,分层级对篇章文本进行编码,可得到包含了词与词之间的语义关系,更隐含了句子之间的逻辑关系的篇章向量。

在一个实施例中,计算机设备可直接将篇章向量融入到重构器中。具体地,计算机设备可以将篇章向量与重构隐层向量序列进行融合。比如,采用以下公式融合篇章向量:其中,表示源文本中的第i个词对应的第一融合向量;fc()表示串联(concatenation)操作函数;m表示篇章向量;表示与源文本中的第i个词对应的重构隐层向量。

在一个实施例中,计算机设备可将m的长度复制多次与重构隐层向量的长度一致,从而进行concatenation操作。融合后的每个位置的隐层状态的维度为m的维度与该位置处原重构隐层状态的维度之和。

上述实施例中,通过对篇章文本进行编码处理,得到篇章向量,再将篇章向量融合到重构隐层向量序列中,加强了在翻译过程中对篇章信息的感知,从而使得确定的重构得分更为准确,进而提高了目标译文的准确性。

在一个实施例中,该文本翻译方法还包括将篇章信息与编码端融合的步骤,该步骤具体包括:获取与源文本对应的篇章文本;对篇章文本进行编码处理,得到篇章向量;将篇章向量,与各目标端向量序列分别进行融合,得到与各候选译文分别对应的第二融合向量序列。将词序列和源端向量序列,与各目标端向量序列分别进行重构处理,得到与各候选译文分别对应的重构隐层向量序列的步骤具体包括:将词序列和源端向量序列,与各第二融合向量序列分别进行重构处理,得到与各候选译文分别对应的重构隐层向量序列。

具体地,计算机设备可从待翻译文本中,确定位于当前待翻译的句子之前和/或之后的预设数据的多个句子作为与源文本对应的篇章文本。继而,计算机设备可对篇章文本进行编码处理,得到篇章向量。通过建模的方式,将篇章文本的信息压缩到篇章向量中。再将篇章向量,与各目标端向量序列分别进行融合,得到与各候选译文分别对应的第二融合向量序列。在重构隐层向量序列时,可根据融合了篇章信息的第二融合向量序列,重构得到相应的重构隐层向量序列。这样,在计算重构得分时,也充分考虑了篇章信息。

关于将篇章向量与目标端向量序列融合的方式,具体可参考前述实施例中将篇章向量与重构隐层向量序列进行融合的方式。比如,采用以下公式融合篇章向量:其中,表示源文本中的第i个词对应的第一融合向量;fc()表示串联(concatenation)操作函数;m表示篇章向量;表示与源文本中的第i个词对应的重构隐层向量。相应的,重构隐层向量序列的计算公式相应更新为:其中,为对第二融合向量序列进行注意力机制处理后所得到的目标端内容向量。

上述实施例中,通过对篇章文本进行编码处理,得到篇章向量,再融合篇章向量和各目标端向量序列,从而得到第二融合向量序列。再第二融合向量序列,计算得到与各候选译文分别对应的重构隐层向量序列,加强了在翻译过程中对篇章信息的感知,从而使得确定的重构得分更为准确,进而提高了目标译文的准确性。

在一个实施例中,参考图7,图7示出了一个实施例中,通过包括编码器-解码器结构的机器翻译模型进行文本翻译的流程示意图。首先将源文本(也就是输入句子)输入机器翻译模型的编码器中,通过编码器模块输出源端向量序列。再将源端向量序列输入注意力模块,通过注意力机制处理模块对源端向量序列进行注意力机制处理,得到当次的源端内容向量,也就是当前时刻的源端上下文。再将当前时刻的源端上下文输入机器翻译模型的解码器中,通过解码器模块对当前时刻的源端上下文进行解码处理,输出当前时刻的目标端向量,并根据当前时刻的目标端向量确定当前时刻的候选词。依次重复上述步骤,直到多组候选译文、各候选译文对应的目标端向量序列、及各候选译文对应的翻译得分。通过注意力机制处理模块对源端向量序列进行注意力机制处理,得到源端内容向量;通过注意力机制处理模块依次对各组目标端向量序列进行注意力机制处理,得到相应的目标端内容向量。将源文本、源端内容向量和目标端内容向量输入至机器翻译模型的重构器中进行重构处理,得到与各组候选译文分别对应的重构隐层向量序列。另一方面,通过层次级神经网络结构对篇章文本进行建模,得到篇章向量表示(也就是篇章向量)。通过重构器融合重构隐层向量序列和篇章向量表示,进而通过融合后的向量序列确定与各候选译文分别对应的重构得分。最后通过选择器,根据重构得分和翻译得分,从候选译文中筛选出目标译文并输出。

在一个实施例中,该文本翻译方法通过已训练的机器翻译模型执行,该机器翻译模型的训练步骤包括:

s802,获取样本源文本、参考目标译文、以及与源文本对应的标注词序列;标注词序列是对样本源文本进行缺略词标注处理所得到的词序列。

其中,样本源文本、参考目标译文、以及与源文本对应的标注词序列为训练数据。参考目标译文是样本源文本的标准翻译译文,是低噪声或无噪声的翻译文本。参考目标译文具体可以是人工根据样本源文本进行翻译所得到的翻译文本,也可以是人工对机器翻译文本进行校正后所得到的翻译文本。计算机设备可从网络爬取低噪声或无噪声的平行语料作为样本源文本和相应的参考目标译文。可以理解,参考目标译文至少满足语句通顺、所表达的含义与源文本的表达含义相同或相近等条件。源文本具体可以是词、句子、段落或者篇章等。相应的,参考目标译文可以是与源文本对应的词、句子、段落或者篇章等。源文本可以是任意语种的文本,参考目标译文则为异于源文本所属语种的其他语种的文本。

标注词序列是对样本源文本进行缺略词标注处理后所得到的词序列。对样本源文本进行缺略词标注处理,是指标注出样本源文本中缺少的指代词的过程。在一个实施例中,计算机设备可通过对样本源文本和参考目标译文进行词对齐处理,再确定出样本源文本中所缺少的指代词。或者,计算机设备可通过缺略代词语料库自动标注方法,得到平行语料中的样本源文本的缺略词的信息。

举例说明,当样本源文本为“你烤的吗?</s>”(其中,“</s>”为结束符),参考目标译文为“didyoubakeit?”,计算机设备可通过对样本源文本和参考目标译文进行词对齐处理,识别出样本源文本中缺略词的位置并在该位置处生成相应的指代词,得到“你烤的(它)吗?”,从而得到标注词序列“nnn它nn”。其中,标注词序列中,除还原的指代词外的其他词均可用同一指代符比如字母“n”替代,从而达到标注缺略词的效果。标注词序列中包含了缺略词的位置信息和缺略词本身。

s804,将样本源文本输入机器翻译模型中进行训练,得到预测目标译文。

具体地,计算机设备可将样本源文本的词序列输入到机器翻译模型中,根据机器翻译模型执行前述的文本翻译方法,得到预测目标译文。计算机设备可朝着减小预测目标译文和参考目标译文之间的差异的方向,调整模型参数。这样,通过不断的输入样本源文本的词序列,得到预测目标译文,根据预测目标译文和参考目标译文之间的差异调整模型参数,以训练机器翻译模型。

s806,依据参考目标译文和预测目标译文构建最大似然函数。

其中,最大似然函数用于评估参考目标译文与预测目标译文之间的差异程度。最大似然函数承担了训练得到好的机器翻译模型的责任,使模型生成语法正确、文字流畅的目标文本。

在一个实施例中,可通过以下公式构建最大似然函数:其中,argmax是表示寻找具有最大值的参量的函数,就是求使得logp(yn|xn;θ)的值最大时的θ值。是模型训练中的训练样本对。log为对数函数,∑()为叠加运算,θ为模型参数。

s808,通过机器翻译模型,获取与样本源文本对应的源端样本向量序列、以及目标端样本向量序列。

具体地,计算机设备可将源文本的词序列输入至机器翻译模型,通过机器翻译模型中的编码器对源文本进行语义编码,得到与源文本对应的源端向量序列。通过机器翻译模型的解码器,依次对源端向量序列进行解码得到目标端向量,且每次解码时根据前次确定的候选词的词向量进行解码,并根据当次的目标端向量确定当次的候选词。将依次解码得到的目标端向量拼接成目标端向量序列。

s810,依据样本源文本,对源端样本向量序列、以及目标端样本向量序列进行重构处理,得到样本重构隐层向量序列。

具体地,计算机设备可将源端样本向量序列和目标端样本向量序列输入至机器翻译模型的重构器中,通过重构器将编码器端的隐层向量序列和解码器端的隐层向量序列重构回源语端句子。这相当于一个自动编码器(auto-encoder)操作。计算机设备可根据源文本中当前词的前一词的词向量、前次重构得到的重构隐层向量、源端向量序列和该组候选译文对应的目标端向量序列,重构得到当次重构隐层向量。依次重构处理,直到得到每次重构处理的重构隐层向量,将每次得到的重构隐层向量构成重构隐层向量序列。

在一个实施例中,计算机设备可通过以下公式计算与源文本中当前词对应的重构隐层向量:其中,fr()为激活函数;xi-1表示源文本中的第i-1个词向量;表示与源文本中的第i个词对应的重构隐层向量;表示当次的源端内容向量;表示当次的目标端内容向量。依次计算,直到得到与源文本中各个词分别对应的重构隐层向量。接着,计算机设备可将依次重构得到的重构隐层向量构成重构隐层向量序列。

s812,依据样本源文本、样本重构隐层向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数。

其中,重构评估函数用来衡量缺略代词信息召回程度,可以辅助机器翻译模型的重构器所输出的隐层表示可以更好的学习得关于缺略词的词信息。具体地,计算机设备可通过样本源文本的词序列、样本重构隐层向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数。

在一个实施例中,可通过以下公式构建重构评估函数:

jreconstruction(θ,γ)=argmaxθ,γlogr(x|henc,hdec;θ,γ);

其中,r(x|henc,hdec)表示重构得分;θ和γ分别是模型参数;gr()和fr()分别为归一化函数和激活函数;xi-1表示源文本中的第i-1个词的词向量;表示与源文本中的第i个词对应的隐层状态向量序列;hj表示各源端向量或目标端向量;αi,j表示源端注意力分配权重或目标端注意力分配权重;·表示点乘运算。

s814,依据标注词序列和样本重构隐层向量序列,构建词序列标注损失函数。

其中,词序列标注损失函数用来衡量缺略词信息标注的程度,可以辅助机器翻译模型的重构器可以的学习关于缺略词的标注信息。具体地,计算机设备可依据标注词序列和样本重构隐层向量序列,构建词序列标注损失函数。

在一个实施例中,可通过以下公式构建词序列标注损失函数:

jlabeling(θ,γ,ψ)=argmaxθ,γ,ψlogp(dp|hrec;θ,γ,ψ);

其中,gl()是归一化函数;dp={dp1,dp2,...,dpi}是样本标注词序列;表示与源文本中的第i个词对应的重构隐层向量。

s816,根据最大似然函数、重构评估函数和词序列标注损失函数,确定目标函数。

具体地,计算机设备可对最大似然函数、重构评估函数和词序列标注损失函数进行加权求和计算,将加权求和函数作为机器翻译模型的目标函数。机器翻译模型可通过以下公式得到机器学习模型在训练过程中的目标函数:j=jlikelihood λjreconstruction τjlabeling。其中,其中,λ和τ分别是加权系数。

在一个实施例中,可通过以下函数表示目标函数:

其中,

其中,其中,θ、γ和τ分别是模型参数;是模型训练中的样本平行语料对;gr()和fr()分别为归一化函数和激活函数;gl()是归一化函数;xi-1表示样本源文本中的第i-1个词的词向量;表示与样本源文本中的第i个词对应的样本重构隐层向量;hj表示各源端样本向量或目标端样本向量;αi,j表示源端注意力分配权重或目标端注意力分配权重;·表示向量点乘运算;dp={dp1,dp2,...,dpi}是样本标注词序列。

s818,将目标函数最大化时的模型参数作为机器翻译模型的模型参数,返回将样本源文本输入机器翻译模型中进行训练,得到预测目标译文的步骤并继续训练,直至满足训练停止条件时停止训练。

其中,训练停止条件是结束模型训练的条件。训练停止条件可以是达到预设的迭代次数,或者是调整模型参数后的机器翻译模型的性能指标达到预设指标。调整机器翻译模型的模型参数,是对机器翻译模型的模型参数进行调整。

具体地,对于每个样本序列对应的目标函数,取目标函数最大时的模型参数作为机器翻译模型的模型参数,然后在该模型参数的基础上对下一个样本序列进行预测,以对模型参数继续进行训练,直至满足训练停止条件时停止训练。

在一个实施例中,参考图9,图9示出了机器翻译模型在训练时的训练任务示意图。如图9所示,计算机设备可通过编码器(encoder)和解码器(decoder)对样本源文本x“你烤的吗?</s>”进行编解码处理,得到预测目标译文y“didyoubakeit?</s>”。并将编码器输出的与样本源文本对应的源端样本向量序列,以及解码器输出的与预测目标译文对应的目标端样本向量序列输入至机器翻译模型的重构器中。重构器依据样本源文本的词序列,根据源端样本向量序列和目标端样本向量序列,重构得到样本重构隐层向量序列。机器翻译模型在进行重构处理的过程中,会做两个任务。参考图9,图9左侧上方表示重构回样本源文本的训练任务;图9左侧下方表示的是依据标注词序列做缺略词标注的训练任务。这样,就能通过多任务的联合训练的方式,使得机器翻译模型在重构得到样本重构隐层向量序列时可以学习到缺略词的词信息。进而重构器可通过样本重构隐层向量序列和样本源文本的词序列计算得到重构得分,用于辅助衡量编码器和解码器对缺略代词的还原能力。

机器翻译模型引入额外的共享式重构层(也就是重构器),其输入为编码器端和解码器端的隐层状态向量序列和样本源文本的词序列,输出为重构得分。训练时,最大似然函数可以衡量翻译质量;重构评估函数可以衡量源端表示和目标端表示对源语端句子的总结能力;词序列标注损失函数可以辅助编解码器和重构器学习更好的预测缺略词的词信息。合并三个学习函数可以统一地加强整体翻译质量,并且有效地引导模型参数朝还原缺略代词的方向发展。

模型训练完毕后,通过标准的编码器—解码器框架、重构器、及训练好的模型参数进行文本翻译,源端和目标端的隐层向量表示在通过自动编码器操作后,已经具有了对源文本所缺少的指代词的召回能力,因此,可以提高翻译质量。

上述实施例中,在模型训练过程中一方面将源端样本向量序列和目标端样本向量序列重构回样本源文本,另一方面依据标注词序列对重构得到的隐层向量序列进行缺略词标注。训练时,最大似然函数、重构评估函数和词序列标注损失函数叠加一起优化,使得翻译模型不仅可以学习到缺略词的位置信息,更具备还原缺略词的能力,使得训练得到的机器翻译模型具有更高的翻译准确性。

在一个实施例中,该机器翻译模型的训练步骤还包括:获取与样本源文本对应的样本篇章文本;对样本篇章文本进行编码处理,得到样本篇章向量;融合样本篇章向量和样本重构隐层向量序列,得到样本融合向量序列。依据样本源文本、样本重构隐层向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数的步骤包括:依据样本源文本、样本融合向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数。依据标注词序列和样本重构隐层向量序列,构建词序列标注损失函数的步骤包括:依据标注词序列和样本融合向量序列,构建词序列标注损失函数。

其中,与样本源文本对应的样本篇章文本具体可以是当前用于训练机器翻译模型的源文本之前的预设数量的句子。具体地,计算机设备在获取样本源文本时,可一并获取该样本源文本之前的预设数量的句子作为样本篇章文本。继而,计算机设备可对样本篇章文本进行编码处理,得到样本篇章向量。通过建模的方式,将样本篇章文本的信息压缩到样本篇章向量中。关于对样本篇章文本进行编码的具体处理方式,可参考前述实施例中计算机设备对篇章文本进行编码得到篇章向量的说明。

进一步地,计算机设备在训练机器学习模型时,可将样本篇章向量融入到样本重构隐层向量中进行训练,以此加强机器翻译模型对缺略词的标注信息和翻译的学习。计算机设备可采取不同的融合方式来融合样本篇章向量,比如,计算机设备可将样本篇章向量和目标端样本向量进行融合,或者将样本篇章向量和样本重构隐层向量序列进行融合等。

在一个实施例中,计算机设备可融合样本篇章向量和样本重构隐层向量序列,得到样本融合向量序列。具体可通过以下公式融合样本篇章向量和样本重构隐层向量序列:

其中,表示源文本中的第i个词对应的样本融合向量;fc()表示串联操作函数;m表示样本篇章向量;表示与源文本中的第i个词对应的样本重构隐层向量。这样,通过拼接各样本融合向量,得到样本融合向量序列。

进一步地,步骤s812,也就是依据样本源文本、样本重构隐层向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数的步骤,具体可包括:依据样本源文本、样本融合向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数。具体可通过以下公式构建重构评估函数:

其中,r(x|henc,hdec,m)表示重构得分;θ和γ分别是模型参数;gr()和fr()分别为归一化函数和激活函数;fc()为串联操作函数;xi-1表示样本源文本中的第i-1个词的词向量;表示与样本源文本中的第i个词对应的样本隐层状态向量;m表示样本篇章向量;表示与样本源文本中的第i个词对应的样本融合向量;hj表示各源端样本向量或目标端样本向量;αi,j表示源端注意力分配权重或目标端注意力分配权重;·表示点乘运算。

进一步地,步骤s814,也就是根据最大似然函数、重构评估函数和词序列标注损失函数,确定目标函数的步骤,具体包括:依据标注词序列和样本融合向量序列,构建词序列标注损失函数。具体可通过以下公式构建词序列标注损失函数:

其中,gl()是归一化函数;dp={dp1,dp2,...,dpi}是样本标注词序列;表示与源文本中的第i个词对应的重构隐层向量;m表示样本篇章向量;表示与样本源文本中的第i个词对应的样本融合向量。

可以理解,对于融入了篇章信息的机器学习模型在训练过程中的目标函数可通过以下公式计算:

可以理解,对于将样本篇章向量和目标端样本向量进行融合处理的机器学习模型,其训练过程可以参考上述将样本篇章向量和样本重构隐层向量序列进行融合处理的机器学习模型的训练步骤,其区别仅在于将样本篇章向量和目标端样本向量进行融合的机器学习模型,在将样本篇章向量和目标端样本向量进行融合后,再根据融合后的向量序列计算得到相应的样本重构隐层向量。此时的样本重构隐层向量间接地融入了样本篇章的信息。再根据样本重构隐层向量构建相应的重构评估函数和词序列标注损失函数,从而构建相应的目标函数。

进而,在机器翻译模型的训练过程中,计算机设备可对于每个样本序列对应的目标函数,取目标函数最大时的模型参数作为机器翻译模型的模型参数,然后在该模型参数的基础上对下一个样本序列进行预测,以对模型参数继续进行训练,直至满足训练停止条件时停止训练。

在一个实施例中,参考图10,图10示出了一个实施例中在模型训练过程中,引入篇章信息的结构示意图。参考图10,计算机设备可通过编码器(encoder)和解码器(decoder)对样本源文本x“你烤的吗?</s>”进行编解码处理,得到预测目标译文y“didyoubakeit?</s>”。并将编码器输出的与样本源文本对应的源端向量序列,以及解码器输出的与预测目标译文对应的目标端向量序列输入至机器翻译模型的重构器(reconstructor)中。重构器依据样本源文本的词序列,根据源端样本向量序列和目标端样本向量序列,重构得到样本重构隐层向量序列。如图10中间框架中的上部分所示,机器翻译模型会依据样本源文本的词序列,将源端样本向量序列和目标端样本向量序列,重构回样本重构隐层向量序列。或者,计算机设备可依据融合了篇章向量的样本重构隐层向量,来重构得到下次的样本重构隐层向量,从而更好地融合篇章的信息。

在另一方面,计算机设备可对样本源文本的样本篇章文本进行编码处理,得到样本篇章向量。比如,将篇章文本x={x-k,......,x-1},“你在烤什么?</s>”……“这块蛋糕很美味</s>”进行编码,得到样本篇章向量m。计算机设备可将样本篇章m的长度复制多次与样本重构隐层向量的长度一致,从而进行concatenation操作。如图10中间框架中的下部分所示,机器翻译模型根据标注词序列和样本融合向量序列,做缺略词标注(dplabeling)的训练任务。这样,就能通过多任务的联合训练的方式,使得机器翻译模型在重构得到样本重构隐层向量序列时可以学习到缺略词的词信息。进而重构器可通过样本重构隐层向量序列和样本源文本的词序列计算得到重构得分,用于辅助衡量编码器和解码器对缺略代词的还原能力。

机器翻译模型引入额外的共享式重构层(也就是重构器),其输入为编码器端和解码器端的隐层状态向量序列和样本源文本的词序列,输出为重构得分。训练时,最大似然函数可以衡量翻译质量;重构评估函数可以衡量源端表示和目标端表示对源语端句子的总结能力;词序列标注损失函数可以辅助编解码器和重构器学习更好的预测缺略词的词信息。合并三个学习函数可以统一地加强整体翻译质量,并且有效地引导模型参数朝还原缺略代词的方向发展。

在一个实施例中,本申请提供的依据机器翻译模型实施的各种实施例,一方面共享编码器端和解码器端的隐层状态向量信息,另一方面可以对缺略代词的词表层还原任务和翻译任务进行统一建模。这样基于共享重构机制的缺略代词还原与神经网络机器翻译联合学习的文本翻译方法,进一步增强了机器翻译模型对缺略代词的关注和学习能力,从而进一步提高翻译质量。通过上述各种实施例中的模型训练方法训练得到的机器翻译模型,是一种端到端模型,也就是在通过机器翻译模型进行翻译任务时,不需要额外的部件进行流水线作业(pipelinemodel),也就是,在翻译时无需先利用额外的dp还原装置对输入的源文本进行dp补充,再借助补充发dp词信息辅助翻译。

本申请提供的方法可以用在所有主流神经网络机器翻译系统中,比如,rnn模型或transformer(变压器)框架系统,并适用于所有代词缺略语言到非代词缺略语言的翻译任务(如,日语到英语、阿拉伯语到英语等)。并且,本申请各种实施例在文本翻译上,翻译质量都有显著提升。

在实际应用中,通过本发明各种实施例所提供的方法可极大地提高文本翻译质量。如下表1:

表1多种翻译模型的翻译效果比对

其中,bleu(bilingualevaluationunderstudy,双语评价指标)是一种译文评价指标,一般提高超过1个点即是显著提高;δ是指提高的绝对数值。其中,模型1是通过采用不进行篇章融合方式训练得到的机器翻译模型;模型2是通过采用进行篇章融合处理方式训练得到的机器翻译模型。这两种模型都能很好地提升翻译质量。

在一个具体的实施例中,参考图11,该文本翻译方法具体包括以下步骤:

s1102,获取源文本的词序列;源文本为指代词缺略文本。

s1104,对源文本的词序列进行语义编码,得到源端向量序列。

s1106,依次对源端向量序列进行解码得到目标端向量,且每次解码时根据前次确定的候选词的词向量进行解码,并根据当次的目标端向量确定当次的多于一个的候选词。

s1108,将依次解码得到的各候选词,按候选词的生成时序,拼接得到多于一组的候选译文。

s1110,通过构成各候选译文的候选词所对应的目标端向量,确定与各候选译文分别对应的目标端向量序列。

s1112,根据源端向量序列、历史解码得到的候选词、及历史解码得到的目标端向量序列,确定与各候选词对应的翻译得分。

s1114,依据构成各候选译文的各候选词所对应的翻译得分,计算得到与各候选译文对应的翻译得分。

s1116,获取与源端向量序列对应的源端注意力分配权重向量。

s1118,根据源端注意力分配权重向量、以及源端向量序列,计算得到源端内容向量。

s1120,分别获取与各目标端向量序列对应的目标端注意力分配权重向量。

s1122,根据目标端注意力分配权重向量、以及相对应的目标端向量序列,计算得到与各候选译文分别对应的目标端内容向量。

s1124,对于每组候选译文,分别根据源文本中当前词的前一词的词向量、前次重构得到的重构隐层向量、源端内容向量和各候选译文各自所对应的目标端内容向量,重构得到当次重构隐层向量。

s1126,对于每组候选译文,分别将依次重构得到的重构隐层向量构成重构隐层向量序列;重构得到的重构隐层向量序列包括源文本所缺少的指代词的词信息。

s1128,获取与源文本对应的篇章文本。

s1130,确定篇章文本所包括的整句。

s1132,对各整句分别进行分词处理,得到各整句各自对应的词序列。

s1134,对各整句各自对应的词序列分别进行词级编码处理,得到与各整句分别对应的句子向量序列。

s1136,将与各整句分别对应的句子向量序列进行句子级编码处理,得到与篇章文本对应的篇章向量。

s1138,将篇章向量,与各重构隐层向量序列分别进行融合,得到与各候选译文分别对应的第一融合向量序列。

s1140,对于每组候选译文,分别根据源文本中当前词的前一词的词向量、源端内容向量、以及各候选译文对应的当次的第一融合向量序列和目标端内容向量,计算得到与各候选译文分别对应、且与源文本中当前词对应的重构得分。

s1142,对于每组候选译文,分别对与源文本中各词所对应的重构得分进行连乘运算,得到与各候选译文分别对应的重构得分。

s1144,对各候选译文分别对应的翻译得分和重构得分进行加权求和计算,得到各候选译文各自所对应的综合得分。

s1146,从候选译文中,筛选相应综合得分为最高得分的候选译文。

s1148,将筛选出的候选译文作为目标译文并输出。

上述文本翻译方法,对缺少指代词的源文本进行语义编码,得到源端向量序列,并继续对源端向量序列进行解码,得到候选译文、各候选译文对应的目标端向量序列、及各候选译文对应的翻译得分,这样可充分提取出源端和目标端的隐层信息。再通过融合源端和目标端的隐层信息可以共享两端的共性信息,在根据源文本进行重构处理时可以减少冗余信息并能避免重要信息的缺失,不需要额外的缺略词标注信息就可重构回包括缺少的指代词的词信息的重构隐层向量序列,这样使得确定的重构得分可以很好的衡量缺少的指代词信息的召回程度。因此,依据重构得分和翻译得分所筛选出的目标译文,可以减少翻译时缺少缺略代词所带来的影响,大大提高了翻译质量。

图11为一个实施例中文本翻译方法的流程示意图。应该理解的是,虽然图11的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图11中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,提供了一种模型训练方法。本实施例主要以该方法应用于计算机设备来举例说明,该计算机设备具体可以是上图中的终端110或者服务器120。

该模型训练方法具体包括如下步骤:获取样本源文本、参考目标译文、以及与源文本对应的标注词序列;标注词序列是对样本源文本进行缺略词标注处理所得到的词序列;将样本源文本输入机器翻译模型中进行训练,得到预测目标译文;依据参考目标译文和预测目标译文构建最大似然函数;通过机器翻译模型,获取与样本源文本对应的源端样本向量序列、以及目标端样本向量序列;依据样本源文本,对源端样本向量序列、以及目标端样本向量序列进行重构处理,得到样本重构隐层向量序列;依据样本源文本、样本重构隐层向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数;依据标注词序列和样本重构隐层向量序列,构建词序列标注损失函数;根据最大似然函数、重构评估函数和词序列标注损失函数,确定目标函数;将目标函数最大化时的模型参数作为机器翻译模型的模型参数,返回将样本源文本输入机器翻译模型中进行训练,得到预测目标译文的步骤并继续训练,直至满足训练停止条件时停止训练。

关于模型训练方法中各个步骤的详细说明可参考前述实施例中机器翻译模型的模型训练步骤的说明,训练方式是一致的,在此不做重复说明。

在一个实施例中,该机器训练方法还包括融合篇章信息的步骤,该步骤具体包括:获取与样本源文本对应的样本篇章文本;对样本篇章文本进行编码处理,得到样本篇章向量;融合样本篇章向量和样本重构隐层向量序列,得到样本融合向量序列。依据样本源文本、样本重构隐层向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数的步骤,包括:依据样本源文本、样本融合向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数。依据标注词序列和样本重构隐层向量序列,构建词序列标注损失函数的步骤,包括:依据标注词序列和样本融合向量序列,构建词序列标注损失函数。

关于模型训练方法中对样本篇章文本进行编码、及融合样本篇章向量的步骤的说明可参考前述实施例中对样本篇章文本进行编码、及融合样本篇章向量的步骤的说明,以及对融合了篇章信息的机器学习模型的训练方式的说明可参考前述实施例中融合了篇章信息的机器学习模型的训练方式,训练方式是一致的,在此不做重复说明。

上述模型训练方法,在模型训练过程中一方面将源端样本向量序列和目标端样本向量序列重构回样本源文本,另一方面依据标注词序列对重构得到的隐层向量序列进行缺略词标注。训练时,最大似然函数、重构评估函数和词序列标注损失函数叠加一起优化,使得翻译模型不仅可以学习到缺略词的位置信息,更具备还原缺略词的能力,使得训练得到的机器翻译模型具有更高的翻译准确性。

在一个实施例中,通过上述模型训练方法训练得到的机器翻译模型,可以用来翻译文本。参照图12,通过该机器翻译模型翻译文本的步骤具体包括以下步骤:

s1202,获取待翻译文本的词序列。

具体地,计算机设备可从本地或其他计算机设备处获取待翻译文本,并对待翻译文本进行分词处理,得到待翻译文本的词序列。

s1204,通过已训练的机器翻译模型的编码器,对待翻译文本的词序列进行语义编码处理,得到语义向量序列。

具体地,计算机设备可将待翻译文本的词序列输入至通过前述各实施例所描述的模型训练方法训练得到的机器翻译模型中。通过已训练的机器翻译模型的编码器对源文本的词序列进行语义编码,得到相应的语义向量序列。

s1206,通过已训练的机器翻译模型的解码器,根据机器翻译模型前次输出的目标词的词向量,对语义向量序列进行解码,得到当次的解码隐层向量。

其中,解码隐层向量是将词序列中各词的词向量对应的语义向量序列输入到解码器的隐层中计算得到的向量。这里解码器的隐层是相对于解码器的输入层和解码器的输出层的中间层。解码器的隐层可包括多个神经网络层。

具体地,当机器翻译模型在生成当次的目标词之前,可获取前次输出的目标词。依据前次机器翻译模型所输出目标词的词向量,通过解码器对编码器输出的语义向量序列进行解码,得到当次的解码隐层向量。解码隐层向量不仅包含了待翻译文本的词序列中各词的语义信息,且综合了前次所输出目标词的语义信息,使得最终生成的目标译文更为连贯,翻译结果更准确。

在一个实施例中,机器翻译模型可在要生成当次的解码隐层向量时,获取前次所输出目标词。机器翻译模型可对前次输出的目标词做词嵌入处理,将目标词转换成用实数表示的词向量。

关于机器翻译模型的解码器对语义向量序列进行解码的详细步骤,可参考前述实施例中机器翻译模型的解码器对源端向量序列进行解码的描述,在此不再赘述。

s1208,根据解码隐层向量,确定机器翻译模型当次输出的目标词。

具体地,当机器翻译模型在生成当次的待输出的目标词时,可通过机器翻译模型的输出层,根据解码器解码得到的解码隐层向量,计算得到当次的输出概率序列。其中,机器翻译模型输出的当次的输出概率序列是指在输出端词集中各候选词为当次输出的目标词的概率所组成的序列。进一步地,机器翻译模型可选择输出概率序列中的最大概率所对应的候选词作为当次的目标词。依次重复上述解码步骤,直到输出结束词为止。

关于机器翻译模型的解码器根据解码隐层向量,确定机器翻译模型当次输出的目标词步骤的详细内容,可参考前述实施例中机器翻译模型的解码器生成当次输出的目标词的描述,在此不再赘述。

s1210,根据机器翻译模型输出的各目标词,生成待翻译文本对应的目标译文。

具体地,计算机设备可通过机器翻译模型的输出层,按照输出各个目标词的顺序,将输出的各个目标词进行拼接,生成与待翻译对应的目标译文。在一个实施例中,目标译文与待翻译文本为不同语言的文本。

在一个实施例中,通过前述模型训练方法训练得到的机器翻译模型,在执行翻译操作时,可只使用该机器翻译模型中编码器和解码器结构相关的模型参数,通过encoder-decoder(编码器-解码器)结构,对输入的待翻译文本进行处理,输出目标译文,也可以得到翻译质量高的目标译文。因为机器翻译模型中encoder-decoder结构的部分模型参数,在模型训练时已经学习到了一定缺略词信息,因而在对待翻译文本进行编解码处理时,在一定程度上也可以提升机器翻译的翻译质量。

上述实施例中,通过已训练的机器翻译模型中的通过编码-解码框架对待翻译文本进行翻译,可以学习到源文本的语义和句法信息,更充分利用机器翻译模型中各隐层表示,减少了在模型处理中有效信息的丢失,大大提高了文本翻译的准确率。

如图13所示,在一个实施例中,提供了文本翻译装置1300,包括获取模块1301、编码模块1302、解码模块1303、重构模块1304、评估模块1305和筛选模块1306。

获取模块1301,用于获取源文本的词序列;源文本为指代词缺略文本。

编码模块1302,用于对源文本的词序列进行语义编码,得到源端向量序列。

解码模块1303,用于对源端向量序列进行解码处理,得到候选译文、各候选译文对应的目标端向量序列、及各候选译文对应的翻译得分。

重构模块1304,用于将词序列和源端向量序列,与各目标端向量序列分别进行重构处理,得到与各候选译文分别对应的重构隐层向量序列;重构隐层向量序列包括源文本所缺少的指代词的词信息。

评估模块1305,用于将源文本的词序列,与各重构隐层向量序列分别进行重构评估处理,得到与各候选译文分别对应的重构得分。

筛选模块1306,用于从候选译文中筛选相应翻译得分和重构得分满足预设条件的目标译文。

在一个实施例中,该文本翻译装置1300还包括融合模块1307,其中:

获取模块1301还用于获取与源文本对应的篇章文本。

编码模块1302还用于对篇章文本进行编码处理,得到篇章向量。

融合模块1307,用于将篇章向量,与各重构隐层向量序列分别进行融合,得到与各候选译文分别对应的第一融合向量序列。

评估模块1305还用于将源文本的词序列,与各第一融合向量序列分别进行重构评估处理,得到与各候选译文分别对应的重构得分。

在一个实施例中,获取模块1301还用于获取与源文本对应的篇章文本。编码模块1302还用于对篇章文本进行编码处理,得到篇章向量。融合模块1307还用于将篇章向量,与各目标端向量序列分别进行融合,得到与各候选译文分别对应的第二融合向量序列。重构模块1304还用于将词序列和源端向量序列,与各第二融合向量序列分别进行重构处理,得到与各候选译文分别对应的重构隐层向量序列。

在一个实施例中,编码模块1302还用于确定篇章文本所包括的整句;对各整句分别进行分词处理,得到各整句各自对应的词序列;对各整句各自对应的词序列分别进行词级编码处理,得到与各整句分别对应的句子向量序列;将与各整句分别对应的句子向量序列进行句子级编码处理,得到与篇章文本对应的篇章向量。

在一个实施例中,解码模块1303还用于依次对源端向量序列进行解码得到目标端向量,且每次解码时根据前次确定的候选词的词向量进行解码,并根据当次的目标端向量确定当次的多于一个的候选词;将依次解码得到的各候选词,按候选词的生成时序,拼接得到多于一组的候选译文;通过构成各候选译文的候选词所对应的目标端向量,确定与各候选译文分别对应的目标端向量序列;根据源端向量序列、历史解码得到的候选词、及历史解码得到的目标端向量序列,确定与各候选词对应的翻译得分;依据构成各候选译文的各候选词所对应的翻译得分,计算得到与各候选译文对应的翻译得分。

在一个实施例中,该文本翻译方法还包括计算模块1308,其中:获取模块1301还用于获取与源端向量序列对应的源端注意力分配权重向量。计算模块1308,用于根据源端注意力分配权重向量、以及源端向量序列,计算得到源端内容向量。获取模块1301还用于分别获取与各目标端向量序列对应的目标端注意力分配权重向量。计算模块1308还用于根据目标端注意力分配权重向量、以及相对应的目标端向量序列,计算得到与各候选译文分别对应的目标端内容向量。重构模块1304还用于将词序列和源端内容向量,与各目标端内容向量分别进行重构处理,得到与各候选译文分别对应的重构隐层向量序列。

在一个实施例中,重构模块1304还用于对于每组候选译文,分别根据源文本中当前词的前一词的词向量、前次重构得到的重构隐层向量、源端内容向量和各候选译文各自所对应的目标端内容向量,重构得到当次重构隐层向量;对于每组候选译文,分别将依次重构得到的重构隐层向量构成重构隐层向量序列;重构得到的重构隐层向量序列包括源文本所缺少的指代词的词信息。

在一个实施例中,评估模块1305还用于对于每组候选译文,分别根据源文本中当前词的前一词的词向量、源端内容向量、以及各候选译文对应的当次的重构隐层向量和目标端内容向量,计算得到与各候选译文分别对应、且与源文本中当前词对应的重构得分;对于每组候选译文,分别对与源文本中各词所对应的重构得分进行连乘运算,得到与各候选译文分别对应的重构得分。

在一个实施例中,筛选模块1306还用于对各候选译文分别对应的翻译得分和重构得分进行加权求和计算,得到各候选译文各自所对应的综合得分;从候选译文中,筛选相应综合得分为最高得分的候选译文;将筛选出的候选译文作为目标译文并输出。

参考图14,在一个实施例中,该文本翻译装置1300还包括训练模块1309,用于获取样本源文本、参考目标译文、以及与源文本对应的标注词序列;标注词序列是对样本源文本进行缺略词标注处理所得到的词序列;将样本源文本输入机器翻译模型中进行训练,得到预测目标译文;依据参考目标译文和预测目标译文构建最大似然函数;通过机器翻译模型,获取与样本源文本对应的源端样本向量序列、以及目标端样本向量序列;依据样本源文本,对源端样本向量序列、以及目标端样本向量序列进行重构处理,得到样本重构隐层向量序列;依据样本源文本、样本重构隐层向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数;依据标注词序列和样本重构隐层向量序列,构建词序列标注损失函数;根据最大似然函数、重构评估函数和词序列标注损失函数,确定目标函数;将目标函数最大化时的模型参数作为机器翻译模型的模型参数,返回将样本源文本输入机器翻译模型中进行训练,得到预测目标译文的步骤并继续训练,直至满足训练停止条件时停止训练。

在一个实施例中,训练模块1309还用于将最大似然函数、重构评估函数和词序列标注损失函数的加权和函数作为机器翻译模型的目标函数;其中,通过以下公式表示目标函数:

其中,

其中,其中,θ、γ和τ分别是模型参数;是模型训练中的样本平行语料对;gr()和fr()分别为归一化函数和激活函数;gl()是归一化函数;xi-1表示样本源文本中的第i-1个词的词向量;表示与样本源文本中的第i个词对应的样本重构隐层向量;hj表示各源端样本向量或目标端样本向量;αi,j表示源端注意力分配权重或目标端注意力分配权重;·表示向量点乘运算;dp={dp1,dp2,...,dpi}是样本标注词序列。

在一个实施例中,训练模块1309还用于获取与样本源文本对应的样本篇章文本;对样本篇章文本进行编码处理,得到样本篇章向量;融合样本篇章向量和样本重构隐层向量序列,得到样本融合向量序列;依据样本源文本、样本融合向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数;依据标注词序列和样本融合向量序列,构建词序列标注损失函数。

在一个实施例中,训练模块1309还用于通过以下公式融合样本篇章向量和样本重构隐层向量序列:其中,表示样本源文本中的第i个词对应的样本融合向量;fc()表示串联操作函数;m表示样本篇章向量;表示与样本源文本中的第i个词对应的样本重构隐层向量。

上述文本翻译装置,对缺少指代词的源文本进行语义编码,得到源端向量序列,并继续对源端向量序列进行解码,得到候选译文、各候选译文对应的目标端向量序列、及各候选译文对应的翻译得分,这样可充分提取出源端和目标端的隐层信息。再通过融合源端和目标端的隐层信息可以共享两端的共性信息,在根据源文本进行重构处理时可以减少冗余信息并能避免重要信息的缺失,不需要额外的缺略词标注信息就可重构回包括缺少的指代词的词信息的重构隐层向量序列,这样使得确定的重构得分可以很好的衡量缺少的指代词信息的召回程度。因此,依据重构得分和翻译得分所筛选出的目标译文,可以减少翻译时缺少缺略代词所带来的影响,大大提高了翻译质量。

如图15所示,在一个实施例中,提供了模型训练装置1500,包括样本获取模块1501、输入模块1502、构建模块1503、确定模块1504和重构模块1505。

样本获取模块1501,用于获取样本源文本、参考目标译文、以及与源文本对应的标注词序列;标注词序列是对样本源文本进行缺略词标注处理所得到的词序列。

输入模块1502,用于将样本源文本输入机器翻译模型中进行训练,得到预测目标译文。

构建模块1503,用于依据参考目标译文和预测目标译文构建最大似然函数。

确定模块1504,用于通过机器翻译模型,获取与样本源文本对应的源端样本向量序列、以及目标端样本向量序列。

重构模块1505,用于依据样本源文本,对源端样本向量序列、以及目标端样本向量序列进行重构处理,得到样本重构隐层向量序列。

构建模块1503还用于依据样本源文本、样本重构隐层向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数。

构建模块1503还用于依据标注词序列和样本重构隐层向量序列,构建词序列标注损失函数。

确定模块1505还用于根据最大似然函数、重构评估函数和词序列标注损失函数,确定目标函数。

确定模块1505还用于将目标函数最大化时的模型参数作为机器翻译模型的模型参数,返回将样本源文本输入机器翻译模型中进行训练,得到预测目标译文的步骤并继续训练,直至满足训练停止条件时停止训练。

在一个实施例中,该模型训练装置1500还包括编码模块1506和融合模块1507,其中:

样本获取模块1501还用于获取与样本源文本对应的样本篇章文本。

编码模块1506,用于对样本篇章文本进行编码处理,得到样本篇章向量。

融合模块1507,用于融合样本篇章向量和样本重构隐层向量序列,得到样本融合向量序列。

构建模块1503还用于依据样本源文本、样本融合向量序列、源端样本向量序列、以及目标端样本向量序列构建重构评估函数。

构建模块1503还用于依据标注词序列和样本融合向量序列,构建词序列标注损失函数。

参考图16,在一个实施例中,该模型训练装置1500还包括使用模块1508,用于获取待翻译文本的词序列;通过已训练的机器翻译模型的编码器,对待翻译文本的词序列进行语义编码处理,得到语义向量序列;通过已训练的机器翻译模型的解码器,根据机器翻译模型前次输出的目标词的词向量,对语义向量序列进行解码,得到当次的解码隐层向量;根据解码隐层向量,确定机器翻译模型当次输出的目标词;根据机器翻译模型输出的各目标词,生成待翻译文本对应的目标译文。

上述模型训练装置,在模型训练过程中一方面将源端样本向量序列和目标端样本向量序列重构回样本源文本,另一方面依据标注词序列对重构得到的隐层向量序列进行缺略词标注。训练时,最大似然函数、重构评估函数和词序列标注损失函数叠加一起优化,使得翻译模型不仅可以学习到缺略词的位置信息,更具备还原缺略词的能力,使得训练得到的机器翻译模型具有更高的翻译准确性。

图17示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110或服务器120。如图17所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现文本翻译方法和/或模型训练方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行文本翻译方法和/或模型训练方法。

本领域技术人员可以理解,图17中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,本申请提供的文本翻译装置可以实现为一种计算机程序的形式,计算机程序可在如图17所示的计算机设备上运行。计算机设备的存储器中可存储组成该文本翻译装置的各个程序模块,比如,图13所示的获取模块、编码模块、解码模块、重构模块、评估模块、和筛选模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的文本翻译方法中的步骤。

例如,图17所示的计算机设备可以通过如图13所示的文本翻译装置中的获取模块执行步骤s202。计算机设备可通过编码模块执行步骤s204。计算机设备可通过解码模块执行步骤s206。重构模块执行步骤s208。计算机设备可通过评估模块执行步骤s210。计算机设备可通过筛选模块执行步骤s212。

在一个实施例中,本申请提供的模型训练装置可以实现为一种计算机程序的形式,计算机程序可在如图17所示的计算机设备上运行。计算机设备的存储器中可存储组成该模型训练装置的各个程序模块,比如,图15所示的样本获取模块、输入模块、构建模块、确定模块和重构模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的模型训练方法中的步骤。例如,图17所示的计算机设备可以通过如图15所示的模型训练装置中的各个模块执行该模型训练方法中的各个步骤

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述文本翻译方法和/或模型训练方法的步骤。此处文本翻译方法和/或模型训练方法的步骤可以是上述各个实施例的文本翻译方法和/或模型训练方法中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述文本翻译方法和/或模型训练方法的步骤。此处文本翻译方法和/或模型训练方法的步骤可以是上述各个实施例的xx方法中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。


技术特征:

1.一种文本翻译方法,包括:

获取源文本的词序列、以及与所述源文本对应的篇章文本;所述源文本为指代词缺略文本;

对所述源文本的词序列进行语义编码,得到源端向量序列;

对所述源端向量序列进行解码处理,得到多于一组的候选译文、各所述候选译文对应的目标端向量序列、及各所述候选译文对应的翻译得分;

将所述词序列和所述源端向量序列,与各所述目标端向量序列分别进行重构处理,得到与各所述候选译文分别对应的重构隐层向量序列;所述重构隐层向量序列包括所述源文本所缺少的指代词的词信息;

对所述篇章文本进行编码处理得到篇章向量,并将所述篇章向量与各所述重构隐层向量序列分别进行融合,得到与各所述候选译文分别对应的第一融合向量序列;

将所述源文本的词序列,与各所述第一融合向量序列分别进行重构评估处理,得到与各所述候选译文分别对应的重构得分;

对各所述候选译文分别对应的翻译得分和重构得分进行加权求和,得到对应的综合得分,从所述候选译文中筛选相应综合得分满足预设条件的目标译文。

2.根据权利要求1所述的方法,其特征在于,所述对所述篇章文本进行编码处理得到篇章向量,包括:

确定所述篇章文本所包括的整句;

对各整句分别进行分词处理,得到各整句各自对应的词序列;

对各整句各自对应的词序列分别进行词级编码处理,得到与各整句分别对应的句子向量序列;

将与各整句分别对应的句子向量序列进行句子级编码处理,得到与所述篇章文本对应的篇章向量。

3.根据权利要求1所述的方法,其特征在于,所述对所述源端向量序列进行解码处理,得到多于一组的候选译文、各所述候选译文对应的目标端向量序列、及各所述候选译文对应的翻译得分,包括:

依次对所述源端向量序列进行解码得到目标端向量,且每次解码时根据前次确定的候选词的词向量进行解码,并根据当次的目标端向量确定当次的多于一个的候选词;

将依次解码得到的各候选词,按所述候选词的生成时序,拼接得到多于一组的候选译文;

通过构成各候选译文的候选词所对应的目标端向量,确定与各候选译文分别对应的目标端向量序列;

根据所述源端向量序列、历史解码得到的候选词、及历史解码得到的目标端向量序列,确定与各候选词对应的翻译得分;

依据构成各所述候选译文的各候选词所对应的翻译得分,计算得到与各所述候选译文对应的翻译得分。

4.根据权利要求1所述的方法,其特征在于,所述方法还包括:

获取与所述源端向量序列对应的源端注意力分配权重向量;

根据所述源端注意力分配权重向量、以及所述源端向量序列,计算得到源端内容向量;

分别获取与各目标端向量序列对应的目标端注意力分配权重向量;

根据所述目标端注意力分配权重向量、以及相对应的目标端向量序列,计算得到与各候选译文分别对应的目标端内容向量;

所述将所述词序列和所述源端向量序列,与各所述目标端向量序列分别进行重构处理,得到与各所述候选译文分别对应的重构隐层向量序列,包括:

将所述词序列和所述源端内容向量,与各所述目标端内容向量分别进行重构处理,得到与各所述候选译文分别对应的重构隐层向量序列。

5.根据权利要求4所述的方法,其特征在于,所述将所述词序列和所述源端内容向量,与各所述目标端内容向量分别进行重构处理,得到与各所述候选译文分别对应的重构隐层向量序列,包括:

对于每组候选译文,分别根据所述源文本中当前词的前一词的词向量、前次重构得到的重构隐层向量、所述源端内容向量和各候选译文各自所对应的目标端内容向量,重构得到当次重构隐层向量;

对于每组候选译文,分别将依次重构得到的重构隐层向量构成重构隐层向量序列;重构得到的重构隐层向量序列包括所述源文本所缺少的指代词的词信息。

6.根据权利要求4所述的方法,其特征在于,所述将所述源文本的词序列,与各所述重构隐层向量序列分别进行重构评估处理,得到与各所述候选译文分别对应的重构得分,包括:

对于每组候选译文,分别根据所述源文本中当前词的前一词的词向量、所述源端内容向量、以及各候选译文对应的当次的重构隐层向量和目标端内容向量,计算得到与各候选译文分别对应、且与所述源文本中当前词对应的重构得分;

对于每组候选译文,分别对与所述源文本中各词所对应的重构得分进行连乘运算,得到与各候选译文分别对应的重构得分。

7.根据权利要求1所述的方法,其特征在于,所述从所述候选译文中筛选相应综合得分满足预设条件的目标译文,包括:

从所述候选译文中,筛选相应综合得分为最高得分的候选译文;

将筛选出的候选译文作为目标译文并输出。

8.根据权利要求1至7中任一项所述的方法,其特征在于,所述文本翻译方法通过机器翻译模型执行,所述机器翻译模型的训练步骤包括:

获取样本源文本、参考目标译文、以及与所述源文本对应的标注词序列;所述标注词序列是对所述样本源文本进行缺略词标注处理所得到的词序列;

将所述样本源文本输入机器翻译模型中进行训练,得到预测目标译文;

依据所述参考目标译文和预测目标译文构建最大似然函数;

通过所述机器翻译模型,获取与所述样本源文本对应的源端样本向量序列、以及目标端样本向量序列;

依据所述样本源文本,对所述源端样本向量序列、以及目标端样本向量序列进行重构处理,得到样本重构隐层向量序列;

依据所述样本源文本、所述样本重构隐层向量序列、所述源端样本向量序列、以及所述目标端样本向量序列构建重构评估函数;

依据所述标注词序列和所述样本重构隐层向量序列,构建词序列标注损失函数;

根据所述最大似然函数、所述重构评估函数和所述词序列标注损失函数,确定目标函数;

将所述目标函数最大化时的模型参数作为机器翻译模型的模型参数,返回所述将所述样本源文本输入机器翻译模型中进行训练,得到预测目标译文的步骤并继续训练,直至满足训练停止条件时停止训练。

9.根据权利要求8所述的方法,其特征在于,所述根据所述最大似然函数、所述重构评估函数和所述词序列标注损失函数,确定目标函数包括:

将所述最大似然函数、所述重构评估函数和所述词序列标注损失函数的加权和函数作为所述机器翻译模型的目标函数;其中,通过以下公式表示所述目标函数:

其中,

其中,其中,θ、γ和τ分别是模型参数;是模型训练中的样本平行语料对;gr()和fr()分别为归一化函数和激活函数;gl()是归一化函数;xi-1表示所述样本源文本中的第i-1个词的词向量;表示与所述样本源文本中的第i个词对应的样本重构隐层向量;hj表示各源端样本向量或目标端样本向量;αi,j表示源端注意力分配权重或目标端注意力分配权重;·表示向量点乘运算;dp={dp1,dp2,…,dpi}是样本标注词序列。

10.根据权利要求8所述的方法,其特征在于,所述方法还包括:

获取与所述样本源文本对应的样本篇章文本;

对所述样本篇章文本进行编码处理,得到样本篇章向量;

融合所述样本篇章向量和所述样本重构隐层向量序列,得到样本融合向量序列;

所述依据所述样本源文本、所述样本重构隐层向量序列、所述源端样本向量序列、以及所述目标端样本向量序列构建重构评估函数,包括:

依据所述样本源文本、所述样本融合向量序列、所述源端样本向量序列、以及所述目标端样本向量序列构建重构评估函数;

所述依据所述标注词序列和所述样本重构隐层向量序列,构建词序列标注损失函数,包括:

依据所述标注词序列和所述样本融合向量序列,构建词序列标注损失函数。

11.根据权利要求10所述的方法,其特征在于,所述融合所述样本篇章向量和所述样本重构隐层向量序列,得到样本融合向量序列,包括:

通过以下公式融合所述样本篇章向量和所述样本重构隐层向量序列:

其中,表示所述样本源文本中的第i个词对应的样本融合向量;fc()表示串联操作函数;m表示样本篇章向量;表示与所述样本源文本中的第i个词对应的样本重构隐层向量。

12.一种文本翻译装置,所述装置包括:

获取模块,用于获取源文本的词序列、以及与所述源文本对应的篇章文本;所述源文本为指代词缺略文本;

编码模块,用于对所述源文本的词序列进行语义编码,得到源端向量序列;

解码模块,用于对所述源端向量序列进行解码处理,得到多于一组的候选译文、各所述候选译文对应的目标端向量序列、及各所述候选译文对应的翻译得分;

重构模块,用于将所述词序列和所述源端向量序列,与各所述目标端向量序列分别进行重构处理,得到与各所述候选译文分别对应的重构隐层向量序列;所述重构隐层向量序列包括所述源文本所缺少的指代词的词信息;

所述编码模块还用于对所述篇章文本进行编码处理得到篇章向量;

融合模块,用于将所述篇章向量与各所述重构隐层向量序列分别进行融合,得到与各所述候选译文分别对应的第一融合向量序列;

评估模块,用于将所述源文本的词序列,与各所述第一融合向量序列分别进行重构评估处理,得到与各所述候选译文分别对应的重构得分;

筛选模块,用于对各所述候选译文分别对应的翻译得分和重构得分进行加权求和,得到对应的综合得分,从所述候选译文中筛选相应综合得分满足预设条件的目标译文。

13.根据权利要求12所述的装置,其特征在于,所述编码模块还用于确定所述篇章文本所包括的整句;对各整句分别进行分词处理,得到各整句各自对应的词序列;对各整句各自对应的词序列分别进行词级编码处理,得到与各整句分别对应的句子向量序列;将与各整句分别对应的句子向量序列进行句子级编码处理,得到与所述篇章文本对应的篇章向量。

14.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至11中任一项所述的方法的步骤。

15.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。

技术总结
本申请涉及一种文本翻译方法,包括:获取缺少指代词的源文本的词序列和篇章文本;对词序列进行编码得到源端向量序列;对源端向量序列进行解码,得到候选译文、各候选译文对应的目标端向量序列和翻译得分;将词序列和源端向量序列,与各目标端向量序列分别进行重构处理,得到与各候选译文对应且包括所缺少指代词的词信息的重构隐层向量序列;对篇章文本进行编码得到篇章向量,将篇章向量与各重构隐层向量序列分别进行融合,得到对应的第一融合向量序列;将词序列与各第一融合向量序列分别进行重构评估处理,得到重构得分;将翻译得分和重构得分进行加权求和,得到综合得分,根据综合得分从候选译文中筛选目标译文。本申请可以提高翻译质量。

技术研发人员:王龙跃;涂兆鹏;王星;史树明
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2019.03.25
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-54673.html

最新回复(0)