信息处理方法、装置、电子设备及计算机可读存储介质与流程

文档序号:24968693发布日期:2021-05-07 22:38阅读:60来源:国知局
信息处理方法、装置、电子设备及计算机可读存储介质与流程
本申请涉及自然语言处理
技术领域
,具体而言,本申请涉及一种信息处理方法、装置、电子设备及计算机可读存储介质。
背景技术
:随着信息技术的发展,自然语言处理领域也随之发展,自然语言处理领域是计算机科学,人工智能,语言学关注计算机和人类(自然)语言之间相互作用的领域,在自然语言处理领域中存在很多序列到序列的自然语言生成任务,例如机器翻译、文本风格转换等。现有技术中,针对序列到序列的自然语言生成任务,一般通过编码器-解码器的架构,在编码器中将源序列编码成隐藏向量序列,然后解码器抽取编码的隐藏向量序列信息,生成并输出目标序列。由于输出的目标序列是由多个词单元组成的,因此在生成目标序列时需要多个词单元的生成,而每个词单元的生成过程中需要计算目标词单元表中每个词单元的概率,并将概率最大的词单元输出,由于目标词单元表空间较大,每个词单元的生成需要较长的时间,从而导致目标序列的输出的延时较大,进而导致用户体验较差。技术实现要素:本申请提供了一种信息处理方法、装置、电子设备及计算机可读存储介质,可以解决上述至少一项技术问题。所述技术方案如下:第一方面,提供了一种信息处理方法,该方法包括:将待处理信息进行编码,得到待处理信息对应的编码结果;基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表;基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息。在一种可能的实现方式中,待处理信息对应的编码结果包括待处理信息所包含的各词单元分别对应的编码结果;其中,基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表,包括:将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果;基于融合后的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表。在另一种可能的实现方式中,基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表,包括:针对原始词单元表中每个词单元,基于待处理信息对应的编码结果确定待处理信息对应的目标信息中包含该词单元的概率;基于确定出的概率信息,从原始词单元表中筛选出待处理信息对应的候选词单元表。在另一种可能的实现方式中,基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表,包括:针对原始词单元表中每个词单元,基于待处理信息对应的编码结果确定待处理信息对应的目标信息中包含该词单元的概率;基于确定出的概率信息,从原始词单元表中筛选出待处理信息对应的候选词单元表。在另一种可能的实现方式中,将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果,之前还包括:对待处理信息所包含的各词单元分别对应的编码结果进行再编码处理,得到待处理信息所包含的各词单元分别对应的再编码结果。在另一种可能的实现方式中,将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果,包括:通过池化方式对各词单元分别对应的编码结果进行融合处理,得到融合后的编码结果。在另一种可能的实现方式中,基于确定出的概率信息,从原始词单元表中筛选出待处理信息对应的候选词单元表,包括:基于原始词单元表中各词单元分别对应的概率信息对原始词单元表中各词单元进行排序处理;基于排序结果从原始词单元表中各词单元中筛选出预设个数的候选词单元,得到候选词单元表。在另一种可能的实现方式中,基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息,包括:针对待处理信息中的每个词单元,基于待处理信息中的每个词单元对应的编码结果,确定待处理信息中的每个词单元对应的目标词单元为候选词单元表中各候选词单元的概率信息;基于确定出的概率信息,从各候选词单元中确定待处理信息中的每个词单元所对应的目标词单元,以得到待处理信息所对应的目标信息。第二方面,提供了一种信息处理装置,该装置包括:编码模块,用于将待处理信息进行编码,得到待处理信息对应的编码结果;筛选模块,用于基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表;确定单元,用于基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息。在一种可能的实现方式中,待处理信息对应的编码结果包括待处理信息所包含的各词单元分别对应的编码结果;筛选模块在基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表时,具体用于:将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果;基于融合后的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表。在另一种可能的实现方式中,筛选模块在基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表时,具体用于:针对原始词单元表中每个词单元,基于待处理信息对应的编码结果确定待处理信息对应的目标信息中包含该词单元的概率;基于确定出的概率信息,从原始词单元表中筛选出待处理信息对应的候选词单元表。在另一种可能的实现方式中,筛选模块,还用于在将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果之前,对待处理信息所包含的各词单元分别对应的编码结果进行再编码处理,得到待处理信息所包含的各词单元分别对应的再编码结果。在另一种可能的实现方式中,筛选模块在将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果时,具体还用于:通过池化方式对各词单元分别对应的编码结果进行融合处理,得到融合后的编码结果。在另一种可能的实现方式中,筛选模块在基于确定出的概率信息,从原始词单元表中筛选出待处理信息对应的候选词单元表时,具体还用于:基于原始词单元表中各词单元分别对应的概率信息对原始词单元表中各词单元进行排序处理;基于排序结果从原始词单元表中各词单元中筛选出预设个数的候选词单元,得到候选词单元表。在另一种可能的实现方式中,确定模块在基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息时,具体用于:针对待处理信息中的每个词单元,基于待处理信息中的每个词单元对应的编码结果,确定待处理信息中的每个词单元对应的目标词单元为候选词单元表中各候选词单元的概率信息;基于确定出的概率信息,从各候选词单元中确定待处理信息中的每个词单元所对应的目标词单元,以得到待处理信息所对应的目标信息。第三方面,提供了一种电子设备,该电子设备包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据第一方面或者第一方面任一可能的实现方式所示的信息处理方法对应的操作。第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面或者第一方面任一可能的实现方式所示的信息处理方法。本申请提供的技术方案带来的有益效果是:本申请提供了一种信息处理方法、装置、电子设备及计算机可读存储介质,与现有技术相比,本申请将待处理信息进行编码,得到待处理信息对应的编码结果,然后基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表,然后基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息。即本申请先通过待处理信息对应的编码结果从原始词单元表中筛选出候选词单元表,因此在输出目标信息中的每个词单元时仅需要计算候选词单元表中各个词单元的概率,并输出最大概率的词单元,由于候选词单元表的空间远小于原始词单元表的空间,从而基于上述方式可以降低每个词单元输出的延时,进而可以降低目标信息的输出延时,进一步地可以提升用户体验。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。图1为现有技术中机器翻译的结构示意图;图2为本申请实施例提供的一种信息处理方法的流程示意图;图3为本申请实施例提供的一种直接通过池化方式得到词表空间选择器的示意图;图4为本申请实施例提供的一种通过再编码以及池化方式得到词表空间选择器的示意图;图5为本申请实施例提供的一种通过词表空间选择器以实现机器翻译的结构示意图;图6为本申请实施例提供的一种信息处理装置的结构示意图;图7为本申请实施例提供的一种电子设备的装置结构示意图;图8为本申请实施例提供的另一种通过词表空间选择器以实现机器翻译的示意图。具体实施方式下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。本
技术领域
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。现有技术中,针对序列到序列的自然语言生成任务,以机器翻译任务为例介绍序列到序列的自然语言生成过程,其中针对机器翻译任务可以通过图1所示的机器翻译模型来实现,具体如下所示:其中,该机器翻译模型可以包括:编码器以及解码器,待翻译序列(原序列)通过编码器进行编码处理,得到各个词单元分别对应的编码结果,然后将各个词单元分别对应的编码结果以及解码开始标志符(解码开始标志符用于标识编码结果序列中开始解码位置的标识符)输入至解码器,以使得解码器对各个词单元分别对应的编码结果进行解码处理。其中,解码器对各个词单元分别对应的编码结果进行解码处理的方式为:在解码过程中,基于第一词单元对应的编码结果计算原始词单元表(原始词单元表为模型所有可能的输入所对应的输出词单元全集)中所有词单元的概率,并选择概率最大的词单元输出,作为翻译后的词单元,对之后每个词单元对应的编码结果进行解码处理时,均基于每个词单元对应的编码结果以及前序输出的翻译后的词单元计算原始词单元表中所有词单元的概率,输出概率最大的词单元,直至输出最后一个词单元对应的翻译后的词单元。在本申请实施例中,在对每个词单元的编码结果进行解码处理,具体可以包括:基于每个词单元对应的编码结果得到对应的中间状态数据,然后基于对应的中间状态数据,进行原始词单元概率计算,输出对应的词单元。例如,针对编码器输出的编码结果中第一词单元对应的编码结果计算原始词单元表中所有词单元的概率,输出概率最大的词单元,记为词单元1,基于词单元1以及第二词单元对应的编码结果计算原始词单元表中所有词单元的概率,同样输出概率最大的词单元,记为词单元2,……基于第n个词单元对应的编码结果以及词单元1、词单元2直至词单元n-1计算原始词单元表中所有词单元的概率,输出概率最大的词单元,记为词单元n,其中由输出的词单元1、词单元2……词单元n组成的序列为输出序列。由上述可知,在解码过程中或者在得到输出序列的过程中,需要多次输出词单元,并且在输出每个词单元的过程中均需要计算原始词单元表中所有词单元的概率,当原始词单元表的空间较大,每输出一个词单元将导致大量的概率计算,计算量较大以及时延较长。针对原始词单元表空间过大的问题,现有技术中存在两种解决方案,以缩减词表空间,一种方式为:通过直接提升词频阈值,即仅保留原始词单元表中不小于词频阈值的词单元,缩减了词表空间,但是仅通过提升词频阈值的方式缩减词表空间,可能导致未知词单元的问题,即可能导致在解码过程中无法基于原始词单元表中保留的词单元输出对应目标词单元,降低了序列到序列模型的质量。针对上述通过直接提升词频阈值以缩减词表空间的方式提供了一个实例,例如,原始词单元表中包含的各个词单元以及各个词单元分别对应的词频包含:词单元a对应的词频为10,词单元b对应的词频为9,词单元c对应的词频为8,词单元d对应的词频为7,词单元e对应的词频为6以及词单元f对应的词频为5,若初始词频阈值为6,则原始词单元表中包含的词单元包括:词单元a、词单元b、词单元c、词单元d以及词单元e,但是若提升词频阈值为8,则原始词单元表中可能仅包含:词单元a、词单元b以及词单元c,由此可知词表长度由5减小至3,但是语料中包含词单元d、词单元e以及词单元f的地方就会为替换为<unknown>,因此词频阈值越大,词表空间越小,但是<unknown>出现的越多,并且过多的<unknown>可能会影响模型质量,其中<unknown>为未知词单元的标识符。另外一种缩减词表空间的方式为:将原始词单元表中的词单元以更为细化的粒度切分,也可以降低词表空间,但是间接增大了在编码之前分词的更为细化,即针对相同的待处理信息得到更多的词单元对应的编码序列,计算词单元概率的数量,其实对降低输出序列延时并无明显作用。例如,为了降低词表空间将词单元切分后存储,假设原始词单元表中包含的词单元为:go,goes,going,do,does,doing,……,首先切分词单元为go,go+es,go+ing,do,do+es,do+ing,……,然后将go,do,es,ing,……存储至原始词单元表中,即词表空间由6缩小至4,但是当待处理的信息中包含going、或者doing等时,在分词中得到的词单元数量就会更多,当切分粒度更细,假设一种极端情况,所有词单元都被分成了字母,所有词单元都可以用26个字母表示,这样词表只需要有26个字母即可表示所有词单元,但是每个词所占有的词单元数量会进一步变大(由1变为词包含字母的数量,比如going词单元数量由1变为5)。词单元数量变大导致迭代输出的次数增加,计算概率部分缩小的计算时间被迭代输出时间所抵消,甚至会增加计算时间。基于此,本申请实施例提供了一种自然语言处理的方式,即在现有的编码器-解码器的架构下增加词表空间选择器,即将编码器输出的编码结果经过词表选择器从原始词单元表中确定候选词单元,组成候选词单元表,在针对编码器输出的每个词单元对应的编码结果进行解码的过程中,仅计算候选词单元表中每个词单元的概率,输出概率最大的词单元。以实现通过本申请实施例的处理方式,降低输出时延。进一步地,假设模型原始词单元表大小为w,解码端输出序列中包含的词单元的个数为n,编码器时间复杂度为o(enc),解码器时间复杂度为o(dec),词表概率计算时间复杂度为o(w),则整个模型的时间复杂度o(t1)为:o(t1)=o(enc)+[o(dec)+o(w)]×n(公式1),进一步地针对本申请实施例可以将词表空间选择器得到候选词单元表的时间复杂度记为o(s),针对每个词单元计算概率的时间复杂度记为o(k),则模型时间复杂度o(t2)为:o(t2)=o(enc)+[o(s)+o(w)]+[o(dec)+o(k)]×n(公式2),由o(t1)-o(t2)得到o(δt)=[o(w)-o(k)]×n-o(w)-o(s),由于[o(w)-o(k)]>0,即序列中包含词单元的个数n越大,模型速度提升效果越明显。即本申请实施例提供的处理方式针对降低时延,提升速度具备明显效果。在本申请实施例中时间复杂度越高,时延越长。下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。本申请实施例提供了一种信息处理方法,由电子设备执行,其中该电子设备可以为终端设备,也可以为服务器,如图2所示,该方法包括:步骤s201、将待处理信息进行编码,得到待处理信息对应的编码结果。对于本申请实施例,待处理信息可以为文本格式的待处理信息,也可以为语音格式的待处理信息。对于本申请实施例,若待处理信息长度较长,一般情况下可以对待处理信息进行信息截取后,然后再对截取后的每个片段进行编码。当然还可以不进行信息截取,直接对待处理信息进行编码。在本申请实施例中,对待处理信息进行编码处理,具体可以包括:通过编码器将待处理信息转换为词向量序列。其中本申请实施例中的编码器可以为循环神经网络(recurrentneuralnetwork,rnn)和长短时记忆(longshort-termmemory,lstm)网络,当然还可以为其他网络模型。进一步地,在现有技术中将待处理信息通过编码器得到待处理信息对应的编码结果之后,将待处理信息对应的编码结果通过解码器进行解码处理,即在将待处理信息通过编码器得到待处理信息对应的编码结果(各个词单元分别对应的编码结果)之后,基于待处理信息对应的编码结果计算原始词单元表中各个词单元的概率,以输出待处理信息对应的目标序列。但是本申请实施例中为了降低词表空间,以及降低输出目标序列的延时,首先基于编码结果从原始词单元表中筛选出待处理信息对应的候选词单元表,然后基于编码结果以及候选词单元表进行解码处理得到待处理信息对应的目标序列。其中得到候选词单元表和基于候选词单元表得到待处理信息所对应的目标信息的方式详见下述实施例。步骤s202、基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表。对于本申请实施例,基于待处理信息对应的编码结果从原始词单元表中筛选出待处理信息对应的候选词单元表具体方式可以包括:将待处理信息对应的编码结果输入至词表空间选择器以输出待处理信息对应的候选词单元表,以对解码器词表概率矩阵进行剪枝,仅保留候选词单元表对应的词表概率矩阵部分。步骤s203、基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息。对于本申请实施例,在步骤s202通过词表空间选择器筛选出待处理信息对应的候选词单元表之后,将待处理信息对应的编码结果以及开始标志符一同输入至解码器中,并在解码过程中利用剪枝后的词表概率矩阵,分别选取最大概率的词单元作为输出。具体地,在利用剪枝后的词表概率矩阵分别选取最大概率的词单元作为输出可以包括:基于开始标志符针对待处理信息的第一个词单元对应的编码结果利用剪枝后的词表概率矩阵选取最大概率的词单元作为输出,记为词单元1,然后基于词单元1以及第二个词单元对应的编码结果利用剪枝后的词表概率矩阵选取最大的词单元作为输出,记为词单元2,……,然后基于词单元1、词单元2、……词单元n-1以及第n个词单元对应的编码结果,并利用剪枝后的词表概率矩阵选取最大概率的词单元作为输出,记为词单元n,因此词单元1、词单元2……词单元n可以作为解码器的输出序列,即得到待处理信息所对应的目标信息。本申请实施例提供了一种信息处理方法,与现有技术相比,本申请实施例将待处理信息进行编码,得到待处理信息对应的编码结果,然后基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表,然后基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息。即本申请实施例先通过待处理信息对应的编码结果从原始词单元表中筛选出候选词单元表,因此在输出目标信息中的每个词单元时仅需要计算候选词单元表中各个词单元的概率,并输出最大概率的词单元,由于候选词单元表的空间远小于原始词单元表的空间,从而基于上述方式可以降低每个词单元输出的延时,进而可以降低目标信息的输出延时,进一步地可以提升用户体验。上述实施例中介绍了将编码器的输出结果(待处理信息对应的编码结果)通过词表空间选择器从原始词单元表中筛选出候选词单元表,然后基于候选词单元表进行解码处理,但是上述方式均需要保证词表空间选择器的时间复杂度不要过高,基于此,下述实施例中提供了两种方式以实现通过词表空间选择器筛选出候选词单元表。本申请实施例的一种可能的实现方式,待处理信息对应的编码结果包括:各词单元分别对应的编码结果;步骤s202具体可以包括:将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果;基于融合后的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表。对于本申请实施例,编码器的输出可以视为以词单元为单位的矩阵输出,为了收集输出的所有词单元的信息,因此先对待处理信息中包含的各词单元分别对应的编码结果进行融合处理。具体地,对各词单元分别对应的编码结果进行融合处理,得到融合后的编码结果,具体可以包括:通过池化方式对各词单元分别对应的编码结果进行融合处理,得到融合后的编码结果。在本申请实施例中,池化方式可以包括:均值池化、最大池化以及最小池化的至少一种。在上述实施例中介绍了先对编码器输出的各词单元分别对应的编码结果进行融合处理,以得到句单元对应的编码结果,然后基于融合处理后的编码结果(句单元对应的编码结果)从原始词单元表筛选候选词单元表的方式,其中,下述实施例可以在上述融合处理的基础上进一步地实现从原始词单元表中筛选候选词单元表,当然也可以不在上述融合处理的基础上实现从原始词单元表中筛选候选词单元。具体地,基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表,包括:针对原始词单元表中每个词单元,基于待处理信息对应的编码结果确定待处理信息对应的目标信息中包含该词单元的概率;基于确定出的概率信息,从原始词单元表中筛选出待处理信息对应的候选词单元表。进一步地,基于确定出的概率信息,从原始词单元表中筛选出待处理信息对应的候选词单元表,具体可以包括:基于原始词单元表中各词单元分别对应的概率信息对原始词单元表中各词单元进行排序处理;基于排序结果从原始词单元表中各词单元中筛选出预设个数的候选词单元,得到候选词单元表。具体地,在得到原始词单元表中各词单元分别对应的概率信息之后,对原始词单元表中各词单元按照概率从大到小排序(当然也可以从小到大进行排序),并基于排序结果截取预设个数(k个)词单元作为候选词单元,以得到候选词单元表。在本申请实施例中,预设个数(k)可以为固定值,也可以为用户输入的值(由词表空间选择器基于用户输入选择的数值),还可以基于待处理信息的长度按照预设规则计算得到的值(例如由词表空间选择器基于待处理信息的序列长度按照预设规则计算得到的值)。例如,原始词单元表中包含20000个词单元,若基于上述实施例筛选得到k个(例如2000)候选词单元,得到候选词单元表,因此在基于2000个候选词单元进行概率计算的时延远小于基于20000个词单元计算概率,以降低词单元序列输出时延。针对上述实施例通过池化处理得到候选词单元表的方式给出了一个具体实例(以机器翻译模型为例),如图3所示,其中,将n*h的待处理信息输入至编码器得到n*h的编码结果(编码矩阵),然后将n*h的编码结果通过池化处理得到1*h的矩阵,然后将池化处理得到的1*h的矩阵通过词表概率预测,得到1*w的矩阵,将1*w的矩阵按照概率进行排序以及截取处理,得到k个候选词单元,即得到候选词单元表。其中,n表示输入序列(待处理信息对应的序列)中包含的词单元的数量,h表示输入序列隐含状态的大小,w表示原始词单元表的大小,k表示候选词单元表的大小。由上述实施例可知,在上述实施例中介绍一种可能的实现方式以得到候选词单元表,下述实施例介绍了另一种可能的实现方式以得到候选词单元表,具体如下所示:进一步地,将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果之前还可以包括:对待处理信息所包含的各词单元分别对应的编码结果进行再编码处理,得到待处理信息所包含的各词单元分别对应的再编码结果;进一步地,将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果,具体可以包括:对待处理信息所包括的各词单元分别对应的再编码结果进行融合处理得到融合处理后的编码结果。在本申请实施例中,在保证词表选择器的时间复杂度不宜过高的基础上,为了进一步地提升词表空间选择器筛选出候选词单元表的准确度,可以先将编码器的编码结果先进行再编码处理,然后按照上一种可能的实现方式中对再编码处理后的编码结果通过池化方式进行融合处理,得到融合处理后的编码结果,然后利用融合处理后预测原始词单元表中各个词单元的概率,然后按照概括从大到小的顺序(也可以从小到大)对原始词单元表中各个词单元进行排序,截取k个词单元作为候选词单元,以得到候选词单元表。其中对再编码处理后的编码结果进行融合处理,以及利用融合处理后预测原始词单元表中各个词单元的概率,并得到候选词单元表的方式详见上述实施例,在此不再赘述。具体地,上述实施例中对编码器的编码结果(待处理信息所包含的各词单元分别对应的编码结果)进行再编码处理,具体可以通过循环神经网络或者卷积神经网络对编码器的编码结果进行再编码处理。当然在本申请实施例中并未对再编码处理的具体方式或者所依赖的网络模型进行限定,任何可以对编码器的编码结果进行再编码处理的方式,均在本申请实施例的保护范围之内。下述还是通过一个具体实例的方式(机器翻译为例)介绍通过对编码器的编码结果经过再编码处理、池化处理等以得到候选词单元表,如图4所示,其中,将n*h的待处理信息输入至编码器得到n*h的编码结果,然后将n*h的编码结果通过循环神经网络进行再编码处理得到n*h的再编码结果,然后将n*h再编码结果通过池化处理得到1*h的矩阵,然后将池化处理得到的1*h的矩阵通过词表概率预测,得到1*w的矩阵,将1*w的矩阵按照概率进行排序以及截取处理,得到k个候选词单元,即得到候选词单元表。其中,n表示输入序列(待处理信息对应的序列)中包含的词单元的数量,h表示输入序列隐含状态的大小,w表示原始词单元表的大小,k表示候选词单元表的大小。进一步地,上述实施例中介绍了两种可能的实现方式以通过词表空间选择器得到候选词单元表,但是为了词表空间选择器具备上述筛选得到候选词单元表的目的需要对词表空间选择器进行训练,具体的训练方式详见下述实施例。本申请实施例中可以将词表空间选择器分为挂载式以及复用式两种,其中挂载式词表空间选择器在训练阶段与编码器以及解码器互相独立,两者之间不存在复用的矩阵,即将词表空间选择器既可以与编码器以及解码器同时训练,又可以在编码器以及解码器训练好的基础上,再对词表空间选择器进行训练。挂载式词表空间选择器使用较为方便灵活,能够在现有模型的基础上对词表空间选择器进行训练,缩短训练周期,但是同时由于词表空间选择器需要一定的矩阵参数,添加挂载式词表空间选择器的模型(例如,机器翻译模型)将会增加模型的物理存储体积。另一种可能的实现方式,考虑到词表空间选择器中的参数矩阵与解码器的参数矩阵有部分形状重合,复用式词表空间选择器将词表空间选择器中与解码器参数矩阵形状重合的矩阵进行复用,在保持词表空间选择器的基本功能的同时,又能够保持模型之前的模型参数量,或仅有极少量模型参数增加,基本保持模型的物理存储体积。但是由于存在复用矩阵,其复用矩阵需要分别承担解码器输出概率计算与词表空间选择器输出概率计算的角色,所以复用式词表空间选择器无法单独训练,需要与翻译模型一同训练,在训练灵活性方面逊色于挂载式词表空间选择器。上述实施例中介绍了训练词表空间选择器的两种可能的实现方式,下述通过一个更为具体的实例介绍训练词表空间选择器的过程(以词表空间选择器应用于翻译模型为例),具体如下所示:步骤一:针对每一组训练数据,假设训练集目标端词单元集合为:t={w0,w1,…,wl}其中l为序列长度,对t求取并集作为训练样本ct:步骤二:输入特征经过编码器和词表空间选择器后得到词表上的概率分布;步骤三:在步骤一中得到的训练样本上根据步骤二得到的概率分布计算sigmoid交叉熵损失,作为词表空间选择器模型的损失ls;其中,ls的计算公式如下:其中zw=1意味着w属于ct,zw=0意味着w不属于ct;步骤四:通过线性插值计算翻译模型的总体损失l:l=λlm+(1-λ)ls其中lm为原翻译模型损失,λ为调整原翻译模型与词表选择器损失占比的超参数;进一步的,上述步骤一可以扩展为对目标端训练样本进行改写,并对改写的样本中的词求取并集作为训练样本。具体的改写方式可以包括:获取原翻译模型的实际输出,并基于模型的实际输出添加至目标端训练样本中,得到修改后的目标端训练样本,以使得基于修改后的目标端训练样本进行上述步骤,以实现对词表空间选择器的训练。例如,若已由的翻译模型为中-英翻译,通过已有翻译模型对中文进行翻译,得到多个翻译结果,并通过得到的翻译结果对目标端训练样本进行改写。进一步地,通过基于模型的实际输出对目标端训练样本进行改写,以根据改写后的训练样本训练词表空间选择器,以减少在进行概率计算时出现未知词的问题,进一步地提升了训练后模型的质量。在通过上述实施例训练得到词表空间选择器,并通过词表空间选择器从原始词单元表中筛选出候选词单元表,下述实施例中具体介绍了通过候选词单元表进行解码,以得到待处理信息所对应的目标信息的过程中,具体如下所示:本申请实施例的另一种可能的实现方式,步骤s203具体可以包括:针对待处理信息中的每个词单元,基于待处理信息中的每个词单元对应的编码结果,确定待处理信息中的每个词单元对应的目标词单元为候选词单元表中各候选词单元的概率信息;基于确定出概率信息,从各候选词单元中确定待处理信息中的每个词单元所对应的目标词单元,以得到待处理信息所对应的目标信息。在本申请实施例中,在基于待处理信息中包含的各个词单元对应的编码结果,得到待处理信息所对应的目标信息,即基于待处理信息中包含的各个词单元对应的编码结果得到待处理信息中包含的各个词单元所对应的目标词单元的过程,例如,针对机器翻译,基于待处理信息所包含的各个词单元对应的编码结果得到待处理信息所对应的目标信息的过程即基于待处理信息所包含的各个词单元对应的编码结果得到各个词单元所对应的翻译后的词单元的过程。具体地,在针对待处理信息中每个词单元,基于每个词单元所对应的编码结果得到该词单元对应的目标词单元,包括:针对待处理信息的第一个词单元,基于该词单元对应的编码结果计算候选词单元表中各个候选词单元分别对应的概率信息,并输出概率最大的词单元,记为词单元1,后续输出的词单元基于对应的编码信息以及前序输出的词单元,即针对待处理信息的第二词单元,基于第二词单元对应的编码结果以及词单元1,计算候选词单元表中的各个候选词单元分别对应的概率信息,并输出概率信息最大的词单元,记为词单元2,……,基于第n词单元,基于第n词单元对应的编码结果以及输出的词单元1、词单元2,……,词单元n-1,计算候选词单元表中各个候选词单元分别对应的概率信息,并输出概率信息最大的词单元,记为词单元n,进一步地,输出的词单元1、词单元2,……,词单元n为待处理信息对应的目标序列,例如,针对机器翻译领域,输出的词单元1、词单元2,……,词单元n为待处理信息对应的目标序列。其中,上述具体的通过候选词单元表进行解码,以得到待处理信息所对应的目标信息的过程如图5所示。需要说明的是,图1和图5中的解码器均为一个解码器,图1和图5中仅是为了更清楚的体现由编码器输出的编码结果通过解码器输出对应目标词单元的过程中而示出多个解码器。上述实施例中介绍了通过词表空间选择器得到候选词单元表,并在后续得到输出序列的过程中针对每个词单元,计算候选词单元表中每个词单元表的概率以输出概率最大的词单元作为目标词单元,以得到目标序列,下述实施例中针对此以语音-文本机器翻译模型为例进一步地详细介绍具体的实现流程。如图8所示,图8中示出了一种编码器与解码器的具体内部构造,但是总体结构与图5互相对应。其中语音特征对应图5中编码器输入,在此实例可以表征待翻译的语音对应的语音特征,解码器输出对应图5中的输出序列,在此实例中可以表征输入的语音特征所对应的翻译后的文本信息;编码器中可以包括:卷积神经网络层、共享自注意力层以及前馈网络,解码器中可以包括:共享自注意力层、注意力层以及前馈网络;为了更加清晰的表述解码器的内部构造,图8省略了输出序列循环输出的表述,但是解码器具体输出的方式与图5一样,均为循环输出的方式。具体地,语音特征输入至编码器,编码器对其进行编码操作。其中,首先,利用卷积神经网络层对语音特征进行特征提取,然后对提取到的特征通过自注意力层进行自注意力计算,使特征间信息共享,然后通过前馈网络将特征规整,最后将自注意力层与前馈网络循环b次,最后一层循环的输出即为编码器输出;在解码器中,首先通过词表征查询词单元表征,并通过共享自注意力层对其进行自注意力计算,然后将自注意力计算后的特征信息输入至注意力层,使其与编码器输出之间进行特征共享,然后通过前馈神经网络将特征规整,最后将自注意力层、注意力层、前馈网络循环b次,最后一层循环的输出进行候选词单元表概率计算,并选择最大概率的词单元作为解码器输出。在如图8中,编码器中的共享自注意力层与上述编码器中的自注意力层相同,解码器中的共享自注意力层与上述解码器中的自注意力层相同,其中编码器中的共享自注意力层和解码器中的共享自注意力层仅是表征编码器中自注意力层的参数和解码器中的自注意力层的参数共享,以减少存储空间。进一步地,图8中所示的词表空间选择器模块用法与图5中用法完全一样,均是用于从原始词单元表中筛选出候选词单元表,在此不再赘述。由上述可知,通过上述词表空间选择器(挂载式和复用式)得到候选词单元表,并基于候选词单元表得到目标序列(目标信息)的方式,相对于现有的通过原始词单元表得到目标序列的方式在存储空间、双语评估替换(bilingualevaluationunderstudy,bleu)(衡量一个有多个正确输出结果的模型的精确度的评估指标)以及速度(例如翻译速度)上均存在改进,具体的改进效果如表一所示。表一存储空间bleu速度基准模型--22.800.9s+挂载式+7m22.150.5s+复用式+0m21.530.5s由表一可知,本申请实施例的方式相对于现有模型在保证损失较小的模型输出准确度的同时,大幅度降低了时延。上述实施例中从方法流程的角度介绍了信息处理的方法,下述实施例从虚拟模块或者虚拟单元的角度介绍一种信息处理的装置,同样适用于上述方法实施例,具体如下所示。本申请实施例提供了一种信息处理装置,如图6所示,该信息处理装置60可以包括:编码模块61、筛选模块62以及确定模块63,其中,编码模块61,用于将待处理信息进行编码,得到待处理信息对应的编码结果;筛选模块62,用于基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表;确定模块63,用于基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息。本申请实施例的一种可能的实现方式,待处理信息对应的编码结果包括待处理信息所包含的各词单元分别对应的编码结果;其中,筛选模块62在基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表时,具体用于:将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果;基于融合后的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表。本申请实施例的另一种可能的实现方式,筛选模块62在基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表时,具体用于:针对原始词单元表中每个词单元,基于待处理信息对应的编码结果确定待处理信息对应的目标信息中包含该词单元的概率;基于确定出的概率信息,从原始词单元表中筛选出待处理信息对应的候选词单元表。本申请实施例的另一种可能的实现方式,筛选模块62,还用于在将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果之前,对待处理信息所包含的各词单元分别对应的编码结果进行再编码处理,得到待处理信息所包含的各词单元分别对应的再编码结果。本申请实施例的另一种可能的实现方式,筛选模块62在将待处理信息所包含的各词单元分别对应的编码结果进行融合,得到融合后的编码结果时,具体还用于:通过池化方式对各词单元分别对应的编码结果进行融合处理,得到融合后的编码结果。本申请实施例的另一种可能的实现方式,筛选模块62在基于确定出的概率信息,从原始词单元表中筛选出待处理信息对应的候选词单元表时,具体还用于:基于原始词单元表中各词单元分别对应的概率信息对原始词单元表中各词单元进行排序处理;基于排序结果从原始词单元表中各词单元中筛选出预设个数的候选词单元,得到候选词单元表。本申请实施例的另一种可能的实现方式,确定模块在基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息时,具体用于:针对待处理信息中的每个词单元,基于待处理信息中的每个词单元对应的编码结果,确定待处理信息中的每个词单元对应的目标词单元为候选词单元表中各候选词单元的概率信息;基于确定出的概率信息,从各候选词单元中确定待处理信息中的每个词单元所对应的目标词单元,以得到待处理信息所对应的目标信息。本申请实施例提供了一种信息处理装置,与现有技术相比,本申请实施例将待处理信息进行编码,得到待处理信息对应的编码结果,然后基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表,然后基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息。即本申请实施例先通过待处理信息对应的编码结果从原始词单元表中筛选出候选词单元表,因此在输出目标信息中的每个词单元时仅需要计算候选词单元表中各个词单元的概率,并输出最大概率的词单元,由于候选词单元表的空间远小于原始词单元表的空间,从而基于上述方式可以降低每个词单元输出的延时,进而可以降低目标信息的输出延时,进一步地可以提升用户体验。本申请实施例的信息处理装置可执行本申请上述方法实施例所示的信息处理方法,其实现原理相类似,此处不再赘述。在上述实施例中从方法流程的角度介绍了一种信息处理方法以及从虚拟模块的角度介绍了一种信息处理装置,下述实施例中介绍了一种电子设备,可以用于执行上述方法实施例所示的信息处理方法。在本申请实施例中电子设备可以为终端设备,也可以为服务器,并不对此进行限定,针对电子设备的介绍详见下述实施例。本申请实施例提供了一种电子设备,如图7所示,图7所示的电子设备7000包括:处理器7001和存储器7003。其中,处理器7001和存储器7003相连,如通过总线7002相连。可选地,电子设备7000还可以包括收发器7004。需要说明的是,实际应用中收发器7004不限于一个,该电子设备7000的结构并不构成对本申请实施例的限定。处理器7001可以是cpu,通用处理器,dsp,asic,fpga或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器7001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。总线7002可包括一通路,在上述组件之间传送信息。总线7002可以是pci总线或eisa总线等。总线7002可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。存储器7003可以是rom或可存储静态信息和指令的其他类型的静态存储设备,ram或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom、cd-rom或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器7003用于存储执行本申请方案的应用程序代码,并由处理器7001来控制执行。处理器7001用于执行存储器7003中存储的应用程序代码,以实现前述任一方法实施例所示的内容。本申请实施例提供了一种电子设备,本申请实施例中的电子设备包括:存储器和处理器;至少一个程序,存储于所述存储器中,用于被所述处理器执行时,与现有技术相比可实现:本申请实施例将待处理信息进行编码,得到待处理信息对应的编码结果,然后基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表,然后基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息。即本申请实施例先通过待处理信息对应的编码结果从原始词单元表中筛选出候选词单元表,因此在输出目标信息中的每个词单元时仅需要计算候选词单元表中各个词单元的概率,并输出最大概率的词单元,由于候选词单元表的空间远小于原始词单元表的空间,从而基于上述方式可以降低每个词单元输出的延时,进而可以降低目标信息的输出延时,进一步地可以提升用户体验。本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,本申请实施例将待处理信息进行编码,得到待处理信息对应的编码结果,然后基于待处理信息对应的编码结果,从原始词单元表中筛选出待处理信息对应的候选词单元表,然后基于待处理信息对应的编码结果和候选词单元表,确定待处理信息所对应的目标信息。即本申请实施例先通过待处理信息对应的编码结果从原始词单元表中筛选出候选词单元表,因此在输出目标信息中的每个词单元时仅需要计算候选词单元表中各个词单元的概率,并输出最大概率的词单元,由于候选词单元表的空间远小于原始词单元表的空间,从而基于上述方式可以降低每个词单元输出的延时,进而可以降低目标信息的输出延时,进一步地可以提升用户体验。应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。以上所述仅是本发明的部分实施方式,应当指出,对于本
技术领域
的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1