文本处理方法、装置、计算设备及计算机可读存储介质与流程

文档序号:18465725发布日期:2019-08-17 02:26阅读:132来源:国知局
文本处理方法、装置、计算设备及计算机可读存储介质与流程

本申请涉及自然语言处理技术领域,特别涉及一种文本处理方法。本申请同时涉及一种文本处理装置,一种计算设备,以及一种计算机可读存储介质。



背景技术:

自然语言处理是研究实现人与计算机之间用自然语言进行有效通信的各种理论和方法,而随着自然语言处理的飞速发展,作为自然语言处理领域中一个热门方向的机器阅读理解也受到了广泛关注,机器阅读理解是致力于教会机器阅读人类的语言并理解其内涵的研究,机器阅读理解任务更注重于对于篇章文本的理解,机器必须自己从篇章中学习到相关信息,而不是利用预设好的世界知识、常识来回答问题,所以更具有挑战性。

目前,在长篇章文本中查找问题答案时,通过将答案与长篇章文本中的内容进行匹配计算,在匹配计算的基础上从长篇章文本中找出问题的答案,但这一过程中所需的计算量较大,尤其是对于长篇章文本而言,通过答案与文本内容的匹配计算的计算量无疑是巨大的,从而导致预测答案过程的效率较低,耗时也比较长。



技术实现要素:

有鉴于此,本申请实施例提供了一种文本处理方法,以解决现有技术中存在的技术缺陷。本申请实施例同时提供了一种文本处理装置,一种计算设备,以及一种计算机可读存储介质。

本申请提供一种文本处理方法,包括:

对输入文本进行分句,获得所述输入文本中的语句;

对所述语句和所述输入文本的问题进行向量化处理,获得所述语句的句向量以及所述问题包含的词单元的词向量组成的问题向量序列;

以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布;

将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示。

可选的,所述以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布,包括:

根据所述问题向量序列和所述输入文本中语句的句向量,分别计算所述问题包含的每个词单元与所述输入文本中每个语句的相关度,获得所述问题与所述输入文本中语句的相关度分布矩阵;

对所述相关度分布矩阵进行归一化,将获得的所述输入文本的注意力权重矩阵作为所述输入文本在语句层面的所述注意力权重分布。

可选的,所述对所述相关度分布矩阵进行归一化,包括:

按照行对所述相关度分布矩阵进行归一化。

可选的,所述将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示,包括:

根据所述输入文本中语句的句向量,生成所述输入文本的文本向量矩阵;

计算所述输入文本的注意力权重矩阵与所述输入文本的文本向量矩阵的乘积,作为所述输入文本到所述问题的文本表示。

可选的,所述对所述相关度分布矩阵进行归一化,包括:

按照列对所述相关度分布矩阵进行归一化。

可选的,所述文本处理方法,还包括:

计算所述输入文本的注意力权重矩阵与所述问题向量序列的乘积,作为所述问题到所述输入文本的问题表示。

可选的,所述对所述语句和所述输入文本的问题进行向量化处理,获得所述语句对应的句向量和所述问题包含的词单元对应的词向量组成的问题向量序列步骤执行之前,包括:

利用分词算法对所述输入文本进行分词,获得所述输入文本包含的词单元;

确定所述输入文本包含的词单元在词向量空间中映射的文本词向量。

可选的,所述对所述语句和所述输入文本的问题进行向量化处理,获得所述语句对应的句向量和所述问题包含的词单元对应的词向量组成的问题向量序列,包括:

将所述语句包含的词单元映射的文本词向量输入双向长短期记忆神经网络,由所述双向长短期记忆神经网将其输出作为输入向循环神经网络输入,输出所述语句的句向量;

对所述问题进行分词,获得所述问题包含的词单元;

确定所述问题包含的词单元在所述词向量空间中映射的问题词向量;

根据所述问题包含的词单元映射的问题词向量,生成所述问题向量序列。

可选的,所述将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示步骤执行之后,包括:

基于所述文本表示,确定所述问题在所述输入文本中起始位置对应的起始词向量,以及所述问题在所述输入文本中结尾位置对应的结尾词向量;

根据所述起始词向量和所述结尾词向量,在所述输入文本中提取所述问题在所述输入文本中对应的答案。

本申请还提供一种文本处理装置,包括:

文本分句模块,被配置为对输入文本进行分句,获得所述输入文本中的语句;

向量化处理模块,被配置为对所述语句和所述输入文本的问题进行向量化处理,获得所述语句的句向量以及所述问题包含的词单元的词向量组成的问题向量序列;

注意力权重计算模块,被配置为以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布;

文本融合模块,被配置为将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示。

可选的,所述注意力权重计算模块,包括:

相关度计算子模块,被配置为根据所述问题向量序列和所述输入文本中语句的句向量,分别计算所述问题包含的每个词单元与所述输入文本中每个语句的相关度,获得所述问题与所述输入文本中语句的相关度分布矩阵;

归一化子模块,被配置为对所述相关度分布矩阵进行归一化,将获得的所述输入文本的注意力权重矩阵作为所述输入文本在语句层面的所述注意力权重分布。

可选的,所述归一化子模块,包括:

按行归一化单元,被配置为按照行对所述相关度分布矩阵进行归一化。

可选的,所述文本融合模块,包括:

文本向量矩阵生成子模块,被配置为根据所述输入文本中语句的句向量,生成所述输入文本的文本向量矩阵;

矩阵乘积计算子模块,被配置为计算所述输入文本的注意力权重矩阵与所述输入文本的文本向量矩阵的乘积,作为所述输入文本到所述问题的文本表示。

本申请还提供一种计算设备,包括:

存储器和处理器;

所述存储器用于存储计算机可执行指令,所述处理器执行所述计算机可执行指令时实现所述文本处理方法的步骤。

本申请还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述文本处理方法的步骤。

与现有技术相比,本申请具有如下优点:

本申请提供一种文本处理方法,包括:对输入文本进行分句,获得所述输入文本中的语句;对所述语句和所述输入文本的问题进行向量化处理,获得所述语句的句向量以及所述问题包含的词单元的词向量组成的问题向量序列;以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布;将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示。

本申请提供的文本处理方法,在对输入文本进行处理的过程中,通过将所述输入文本分句为相应的语句,在语句层面对所述输入文本中的语句进行向量化,基于所述输入文本中的语句向量化结果和所述问题的向量化结果,计算在考虑所述问题的前提下所述输入文本中语句的注意力权重分布,最终将注意力权重分布与所述输入文本进行融合,获得所述问题到所述输入文本的融合,从而实现所述输入文本在语句层面的处理,针对所述输入文本的处理效率更高,并且,通过结合所述问题对所述输入文本进行处理,处理的准确度也更高。

附图说明

图1是本申请实施例提供的一种文本处理方法处理流程图;

图2是本申请实施例提供的一种向量转换处理过程的示意图;

图3是本申请实施例提供的一种文本处理装置的示意图;

图4是本申请实施例提供的一种计算设备的结构框图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。

在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

首先,对本发明一个或多个实施例涉及的名词术语进行解释。

注意力权重(attentionweight):是指问题中所蕴涵的信息与输入文本中所有句子所蕴涵的信息之间的相关度,相关度越高,则注意力权重越大。

本申请提供一种文本处理方法,本申请还提供一种文本处理装置,一种计算设备,以及一种计算机可读存储介质。以下分别结合本申请提供的实施例的附图逐一进行详细说明,并且对方法的各个步骤进行说明。

本申请提供的一种文本处理方法实施例如下:

参照附图1,其示出了本实施例提供的一种文本处理方法处理流程图,参照附图2,其示出了本实施例提供的一种向量转换处理过程的示意图。

步骤s102,对输入文本进行分句,获得所述输入文本中的语句。

自动问答场景中,在输入文本中查找问题的答案的过程中,尤其是在长篇章文本中查找问题的答案时,为了提升查找效率,往往会在查找之前对长篇章文本进行预处理,比如机器阅读理解(使用机器学习或者深度学习方法来学习输入文本中所蕴含的语义信息)场景中,对长篇章文本进行段落抽取,抽取出长篇章文本的重点段落或者重点语句组成文本片段,然后在文本片段中查找问题对应的答案。

但是,对输入文本进行段落抽取会导致输入文本丢失部分上下文信息,导致最终查找到的答案的准确度降低,为避免这一缺陷,可行的方式是在输入文本中查找问题的答案的过程中,不进行重点段落或者重点语句的提取,这样就不会丢失输入文本的上下文信息,具体在输入文本中查找问题的答案的过程中,可在输入文本的词单元层面、语句层面或者段落层面进行处理,但在词单元(或者字单元)层面进行处理时所需的计算量较大,在段落层面进行处理的准确较低,基于此,本申请提供的文本处理方法,在语句(句子)层面进行处理,在计算效率较高的情况下同时也能在一定程度保证准确度较高。

本申请实施例中,在语句层面从输入文本查找问题对应的答案,因此,需要对所述输入文本进行分句处理,通过分句处理将所述输入文本划分为语句,然后在语句层面进行后续处理。

例如,长篇章文本text,其中第一段记录的文字信息如下:“我叫安娜,我是英国人,北京的冬天很冷,我有点不习惯;”其余段落的文字信息限于篇幅不再一一列出;针对这一长篇章文本text的问题为“北京冬天怎么样?”;

以长篇章文本text中的第一段文字“我叫安娜,我是英国人,北京的冬天很冷,我有点不习惯;”为例,分句后获得的下述4个语句(句子):

语句s1:“我叫安娜”;

语句s2:“我是英国人”;

语句s3:“北京的冬天很冷”;

语句s4:“我有点不习惯”。

实际应用中,对所述输入文本进行分句以获得所述输入文本中的语句,采用相应的分句算法或者实现方式进行分句处理即可,比如从所述输入文本中的标点符号出发,以所述输入文本中包含的标点符号为依据对所述输入文本进行分句处理,本申请实施例对此不做限定。

具体实施时,在对所述输入文本进行处理的过程中,下述对所述输入文本中的语句进行向量化处理依赖于所述语句包含的词单元的文本词向量,因此,在下述对所述输入文本中的语句进行向量化处理之前,需要对所述输入文本进行向量化处理,具体是将所述输入文本包含的所有词单元进行向量化处理。

需要说明的是,对所述输入文本包含的所有词单元进行向量化处理的过程,可在对所述输入文本进行分句处理之前、分句处理过程中或者分句处理之后,本申请实施例提供的一种可选实施方式中,对所述输入文本对进行向量化处理具体利用分词算法对所述输入文本进行分词,获得所述输入文本包含的词单元,并确定所述输入文本包含的词单元在词向量空间中映射的文本词向量。

以长篇章文本text中的第一段文字“我叫安娜,我是英国人,北京的冬天很冷,我有点不习惯;”为例,利用正向最大匹配算法(forwardmaximummatching)或者双向最大匹配法(bi-directctionmaximummatching,bmm)对这一段文字进行分词处理,分词处理后获得的词单元如下:“我”、“叫”、“安娜”、“英国人”、“北京”、“冬天”、“很冷”、“有点”、“不习惯”;

分别将每个词单元映射到词向量空间,获得每个词单元映射的词向量(3维向量):

词单元“我”映射的词向量为[0.23,0.55,0.68];

词单元“叫”映射的词向量为[0.41,0.43,0.32];

词单元“安娜”映射的词向量为[0.66,0.51,0.82];

词单元“英国人”映射的词向量为[0.71,0.24,0.61];

词单元“北京”映射的词向量为[0.35,0.43,0.76];

词单元“冬天”映射的词向量为[0.21,0.33,0.61];

词单元“很冷”映射的词向量为[0.92,0.72,0.14];

词单元“有点”映射的词向量为[0.50,0.31,0.43];

词单元“不习惯”映射的词向量为[0.82,0.49,0.28]。

步骤s104,对所述语句和所述输入文本的问题进行向量化处理,获得所述语句的句向量以及所述问题包含的词单元的词向量组成的问题向量序列。

上述对所述输入文本进行分句处理之后,对所述输入文本进行分句处理后获得的语句进行向量化处理,获得所述语句的句向量,并且,对针对所述输入文本的问题也进行向量化处理,获得所述问题的向量。

具体的,在上述提供的对所述输入文本分词并对分词获得的词单元进行向量化的可选实施方式的基础上,本申请实施例提供的一种可选实施方式中,采用如下方式对所述输入文本分句或获得语句和所述问题进行向量化处理:

1)将所述语句包含的词单元映射的文本词向量输入双向长短期记忆神经网络(bi-directctionlongshort-termmemory,bilstm),并由所述双向长短期记忆神经网将其输出作为输入向循环神经网络(longshort-termmemory,lstm)输入,输出所述语句的句向量;

以长篇章文本text中的第一段文字“我叫安娜,我是英国人,北京的冬天很冷,我有点不习惯;”为例,分句后获得的下述4个语句(句子):

语句s1:“我叫安娜”,包含3个词向量“我”、“叫”、“安娜”;

语句s2:“我是英国人”,包含2个词向量“我”、“英国人”;

语句s3:“北京的冬天很冷”,包含3个词向量“北京”、“冬天”、“很冷”;

语句s4:“我有点不习惯”,包含3个词向量“我”、“有点”、“不习惯”;

词单元的词向量到语句的句向量的转换如附图2所示,语句s1包含3个词向量“我”、“叫”、“安娜”,词单元“我”映射的词向量为[0.23,0.55,0.68],词单元“叫”映射的词向量为[0.41,0.43,0.32],词单元“安娜”映射的词向量为[0.66,0.51,0.82],则将这3个词向量输入双向长短期记忆神经网络(bi-directctionlongshort-termmemory,bilstm),双向长短期记忆神经网络会将输出作为循环神经网络(longshort-termmemory,lstm)的输入,最终由循环神经网络经处理后输出语句s1的向量表示:[0.23,0.45,0.18],即语句s1“我叫安娜”的句向量为[0.23,0.45,0.18];

类似的,将语句s2包含2个词向量“我”、“英国人”映射的2个词向量为[0.23,0.55,0.68]、[0.71,0.24,0.61]输入双向长短期记忆神经网络(bi-directctionlongshort-termmemory,bilstm),双向长短期记忆神经网络会将输出作为循环神经网络(longshort-termmemory,lstm)的输入,最终由循环神经网络经处理后输出语句s2的向量表示:[0.41,0.13,0.54],即语句s2“我是英国人”的句向量为[0.41,0.13,0.54];

将语句s3包含3个词向量“北京”、“冬天”、“很冷”映射的3个词向量为[0.35,0.43,0.76]、[0.21,0.33,0.61]、[0.92,0.72,0.14]输入双向长短期记忆神经网络(bi-directctionlongshort-termmemory,bilstm),双向长短期记忆神经网络会将输出作为循环神经网络(longshort-termmemory,lstm)的输入,最终由循环神经网络经处理后输出语句s3的向量表示:[0.23,0.45,0.18],即语句s3“北京的冬天很冷”的句向量为[0.31,0.23,0.44];

将语句s4包含3个词向量“我”、“有点”、“不习惯”映射的3个词向量为[0.23,0.55,0.68]、[0.50,0.31,0.43]、[0.82,0.49,0.28]输入双向长短期记忆神经网络(bi-directctionlongshort-termmemory,bilstm),双向长短期记忆神经网络会将输出作为循环神经网络(longshort-termmemory,lstm)的输入,最终由循环神经网络经处理后输出语句s4的向量表示:[0.43,0.25,0.38],即语句s4“我有点不习惯”的句向量为[0.43,0.25,0.38];

2)对所述问题进行分词,获得所述问题包含的词单元;

3)确定所述问题包含的词单元在所述词向量空间中映射的问题词向量;

4)根据所述问题包含的词单元映射的问题词向量,生成所述问题向量序列。

例如,针对长篇章文本text的问题为:“北京冬天怎么样?”,利用正向最大匹配算法(forwardmaximummatching)或者双向最大匹配法(bi-directctionmaximummatching,bmm)进行分词处理后获得的词单元为“北京”、“冬天”、“怎么样”,将这3个词单元映射到词向量空间,获得这3个词单元映射的词向量(3维向量):

词单元“北京”映射的词向量为[0.35,0.43,0.76];

词单元“冬天”映射的词向量为[0.21,0.33,0.61];

词单元“怎么样”映射的词向量为[0.32,0.79,0.11];

基于问题“北京冬天怎么样?”包含的3个词单元映射的词向量,生成问题“北京冬天怎么样?”的问题向量序列如下:

[[0.35,0.43,0.76];

[0.21,0.33,0.61];

[0.32,0.79,0.11]]。

步骤s106,以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布。

本申请实施例中,通过在语句层面对所述输入文本进行处理,从而在保证较高计算效率的情况下也能在一定程度保证较高的准确度,本申请实施例提供的一种可选实施方式中,以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布,具体包括:

1)根据所述问题向量序列和所述输入文本中语句的句向量,分别计算所述问题包含的每个词单元与所述输入文本中每个语句的相关度,获得所述问题与所述输入文本中语句的相关度分布矩阵。

以长篇章文本text中的第一段文字“我叫安娜,我是英国人,北京的冬天很冷,我有点不习惯;”为例,语句s1“我叫安娜”的句向量为[0.23,0.45,0.18],语句s2“我是英国人”的句向量为[0.41,0.13,0.54],语句s3“北京的冬天很冷”的句向量为[0.31,0.23,0.44],语句s4“我有点不习惯”的句向量为[0.43,0.25,0.38];

问题“北京冬天怎么样?”的问题向量序列为:

[[0.35,0.43,0.76];

[0.21,0.33,0.61];

[0.32,0.79,0.11]];

分别计算问题“北京冬天怎么样?”包含的3个词单元与长篇章文本text中每个语句的相关度,获得问题“北京冬天怎么样?”与长篇章文本text中语句的相关度分布矩阵(m*n矩阵,m为长篇章文本text中的语句数目,n为问题包含的词向量数目):

[a11,a12,a13,a14;

a21,a22,a23,a24;

a31,a32,a33,a34];

其中,a11表示问题包含的词向量“北京”与长篇章文本text中语句s1“我叫安娜”的相关度,a12表示问题包含的词向量“北京”与长篇章文本text中语句s2“我是英国人”的相关度,a13表示问题包含的词向量“北京”与长篇章文本text中语句s3“北京的冬天很冷”的相关度,a14表示问题包含的词向量“北京”与长篇章文本text中语句s4“我有点不习惯”的相关度;

a21表示问题包含的词向量“冬天”与长篇章文本text中语句s1“我叫安娜”的相关度,a22表示问题包含的词向量“冬天”与长篇章文本text中语句s2“我是英国人”的相关度,a23表示问题包含的词向量“冬天”与长篇章文本text中语句s3“北京的冬天很冷”的相关度,a24表示问题包含的词向量“冬天”与长篇章文本text中语句s4“我有点不习惯”的相关度;

a31表示问题包含的词向量“怎么样”与长篇章文本text中语句s1“我叫安娜”的相关度,a32表示问题包含的词向量“怎么样”与长篇章文本text中语句s2“我是英国人”的相关度,a33表示问题包含的词向量“怎么样”与长篇章文本text中语句s3“北京的冬天很冷”的相关度,a34表示问题包含的词向量“怎么样”与长篇章文本text中语句s4“我有点不习惯”的相关度;

具体的,相关度分布矩阵中a11至a34的值可根据语句的句向量和问题的问题向量序列,采用相似度算法计算二者的相似度数值,比如,采用余弦相似度算法、欧氏距离相似度算法、曼哈顿距离(manhattandistance)相似度算法、或者皮尔森相关系数(pearsoncorrelation)相似度算法等相似度算法来计算二者的相似度,作为相关度分布矩阵中a11至a34的相关度数值。

2)对所述相关度分布矩阵进行归一化,将归一化之后的矩阵作为注意力权重(attentionweigh)分布矩阵。

本申请实施例提供的第一种可选实施方式中,对所述相关度分布矩阵进行归一化,具体是按照行对所述相关度分布矩阵进行归一化。

例如,针对上述计算获得的相关度分布矩阵:

[a11,a12,a13,a14;

a21,a22,a23,a24;

a31,a32,a33,a34];

按照行对该相关度分布矩阵进行归一化之后,获得的m*n的注意力权重矩阵为:

[a11,a12,a13,a14;

a21,a22,a23,a24;

a31,a32,a33,a34];

其中,a11的值表示语句s1“我叫安娜”相对于问题包含的词单元“北京”的权重,a12的值表示语句s2“我是英国人”相对于问题包含的词单元“北京”的权重,a13的值表示语句s3“北京的冬天很冷”相对于问题包含的词单元“北京”的权重,a14的值表示语句s4“我有点不习惯”相对于问题包含的词单元“北京”的权重;

a21的值表示语句s1“我叫安娜”相对于问题包含的词单元“冬天”的权重,a22的值表示语句s2“我是英国人”相对于问题包含的词单元“冬天”的权重,a23的值表示语句s3“北京的冬天很冷”相对于问题包含的词单元“冬天”的权重,a24的值表示语句s4“我有点不习惯”相对于问题包含的词单元“冬天”的权重;

a31的值表示语句s1“我叫安娜”相对于问题包含的词单元“怎么样”的权重,a32的值表示语句s2“我是英国人”相对于问题包含的词单元“怎么样”的权重,a33的值表示语句s3“北京的冬天很冷”相对于问题包含的词单元“怎么样”的权重,a34的值表示语句s4“我有点不习惯”相对于问题包含的词单元“怎么样”的权重。

本申请实施例提供的第二种可选实施方式中,对所述相关度分布矩阵进行归一化,具体是按照列对所述相关度分布矩阵进行归一化。

需要说明的是,按照列对所述相关度分布矩阵进行归一化的实现方式与上述按照行对所述相关度分布矩阵进行归一化的实现方式类似,区别在于上述按照行对所述相关度分布矩阵进行归一化之后获得的相关度分布矩阵中的数值,表示所述输入文本包含的各个语句相对于所述问题包含的各个词单元的权重,而按照列对所述相关度分布矩阵进行归一化之后获得的相关度分布矩阵中的数值,表示所述问题包含的各个词单元相对于所述输入文本包含的各个语句的权重。

步骤s108,将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示。

在上述按照行对所述相关度分布矩阵进行归一化获得的注意力权重分布矩阵的基础上,本申请实施例提供的一种可选实施方式中,将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示,包括:

根据所述输入文本中语句的句向量,生成所述输入文本的文本向量矩阵;

计算所述输入文本的注意力权重矩阵与所述输入文本的文本向量矩阵的乘积,作为所述输入文本到所述问题的文本表示。

以长篇章文本text中的第一段文字“我叫安娜,我是英国人,北京的冬天很冷,我有点不习惯;”为例,语句s1“我叫安娜”的句向量为[0.23,0.45,0.18],语句s2“我是英国人”的句向量为[0.41,0.13,0.54],语句s3“北京的冬天很冷”的句向量为[0.31,0.23,0.44],语句s4“我有点不习惯”的句向量为[0.43,0.25,0.38];

基于语句s1至语句s4的句向量生成的长篇章文本text的文本向量矩阵为:

[[0.23,0.45,0.18];

[0.41,0.13,0.54];

[0.31,0.23,0.44];

[0.43,0.25,0.38]];

上述计算获得的注意力权重分布矩阵为:

[a11,a12,a13,a14;

a21,a22,a23,a24;

a31,a32,a33,a34];

将注意力权重矩阵与长篇章文本text的文本向量矩阵相乘,可理解为将长篇章文本text中每个语句与对应的注意力权重相乘,通过相乘实现了长篇章文本text到问题的融合,二者的乘积即为长篇章文本text的文本表示。

此外,在上述按照列对所述相关度分布矩阵进行归一化获得的注意力权重分布矩阵的基础上,还可计算所述问题的问题表示,可选的,计算所述输入文本的注意力权重矩阵与所述问题向量序列的乘积,作为所述问题到所述输入文本的问题表示。

例如,问题“北京冬天怎么样?”的问题向量序列为:

[[0.35,0.43,0.76],

[0.21,0.33,0.61],

[0.32,0.79,0.11]];

上述计算获得的注意力权重分布矩阵为:

[a11,a12,a13,a14;

a21,a22,a23,a24;

a31,a32,a33,a34];

将注意力权重矩阵与问题向量序列相乘,可理解为将问题向量序列中每个词单元与对应的注意力权重相乘,通过相乘实现了问题到长篇章文本text的融合,二者的乘积即为问题“北京冬天怎么样?”的问题表示。

需要说明的是,通过本申请提供的文本处理方法获得所述输入文本的文本表示,一方面实现所述输入文本在语句层面的处理,针对所述输入文本的处理效率更高;另一方面,通过结合所述问题对所述输入文本进行处理,获得的所述输入文本的文本表示更加准确。后续在所述输入文本的文本表示基础上,从所述输入文本中查找所述问题的答案的过程中,基于所述输入文本的文本表示来查找所述问题的答案,查找过程的效率更高;并且,上述获得的所述输入文本的文本表示是结合所述问题进行处理后获得的,后续在所述输入文本的文本表示的基础上查找所述问题的答案也会更加准确。

本申请实施例提供的一种可选实施方式中,在获得所述输入文本的文本表示的基础上,进一步在所述输入文本中查找所述问题的答案,本申请实施例提供的一种可选实施方式中,具体采用下述方式在所述输入文本中查找所述问题的答案:

基于所述文本表示,确定所述问题在所述输入文本中起始位置对应的起始词向量,以及所述问题在所述输入文本中结尾位置对应的结尾词向量;

根据所述起始词向量和所述结尾词向量,在所述输入文本中提取所述问题在所述输入文本中对应的答案。

具体的,所述问题在所述输入文本中的答案的起始位置对应的起始词向量,可通过计算所述输入文本包含的词单元为所述答案的起始词的起始概率分布,起始概率分布中包含的概率数值最大的词单元即为起始词向量;类似的,所述答案的起始位置对应的结尾词向量,可通过计算所述输入文本包含的词单元为所述答案的结尾词的结尾概率分布,结尾概率分布中包含的概率数值最大的词单元即为结尾词向量。

综上所述,本申请提供的文本处理方法,在对所述输入文本进行处理的过程中,通过将所述输入文本分句为相应的语句,在语句层面对所述输入文本中的语句进行向量化,基于所述输入文本中的语句向量化结果和所述问题的向量化结果,计算在考虑所述问题的前提下所述输入文本中语句的注意力权重分布,最终将注意力权重分布与所述输入文本进行融合,获得所述问题到所述输入文本的融合,从而实现所述输入文本在语句层面的处理,针对所述输入文本的处理效率更高,并且,通过结合所述问题对所述输入文本进行处理,处理的准确度也更高。

本申请提供的一种文本处理装置实施例如下:

在上述的实施例中,提供了一种文本处理方法,与之相对应的,本申请还提供了一种文本处理装置,下面结合附图进行说明。

参照附图3,其示出了本申请提供的一种文本处理装置实施例的示意图。

由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关的部分请参见上述提供的方法实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。

本申请提供一种文本处理装置,包括:

文本分句模块302,被配置为对输入文本进行分句,获得所述输入文本中的语句;

向量化处理模块304,被配置为对所述语句和所述输入文本的问题进行向量化处理,获得所述语句的句向量以及所述问题包含的词单元的词向量组成的问题向量序列;

注意力权重计算模块306,被配置为以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布;

文本融合模块308,被配置为将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示。

可选的,所述注意力权重计算模块306,包括:

相关度计算子模块,被配置为根据所述问题向量序列和所述输入文本中语句的句向量,分别计算所述问题包含的每个词单元与所述输入文本中每个语句的相关度,获得所述问题与所述输入文本中语句的相关度分布矩阵;

归一化子模块,被配置为对所述相关度分布矩阵进行归一化,将获得的所述输入文本的注意力权重矩阵作为所述输入文本在语句层面的所述注意力权重分布。

可选的,所述归一化子模块,包括:

按行归一化单元,被配置为按照行对所述相关度分布矩阵进行归一化。

可选的,所述文本融合模块308,包括:

文本向量矩阵生成子模块,被配置为根据所述输入文本中语句的句向量,生成所述输入文本的文本向量矩阵;

矩阵乘积计算子模块,被配置为计算所述输入文本的注意力权重矩阵与所述输入文本的文本向量矩阵的乘积,作为所述输入文本到所述问题的文本表示。

可选的,所述归一化子模块,包括:

按列归一化单元,被配置为按照列对所述相关度分布矩阵进行归一化。

可选的,所述文本融合模块308,具体被配置为计算所述输入文本的注意力权重矩阵与所述问题向量序列的乘积,作为所述问题到所述输入文本的问题表示。

可选的,所述文本处理装置,还包括:

文本分词模块,被配置为利用分词算法对所述输入文本进行分词,获得所述输入文本包含的词单元;

文本词向量映射模块,被配置为确定所述输入文本包含的词单元在词向量空间中映射的文本词向量。

可选的,所述向量化处理模块304,包括:

句向量转换子模块,被配置为将所述语句包含的词单元映射的文本词向量输入双向长短期记忆神经网络,由所述双向长短期记忆神经网将其输出作为输入向循环神经网络输入,输出所述语句的句向量;

问分词子模块,被配置为对所述问题进行分词,获得所述问题包含的词单元;

问题词向量映射子模块,被配置为确定所述问题包含的词单元在所述词向量空间中映射的问题词向量;

问题向量序列生成子模块,被配置为根据所述问题包含的词单元映射的问题词向量,生成所述问题向量序列。

可选的,所述文本处理装置,还包括:

位置确定模块,被配置为基于所述文本表示,确定所述问题在所述输入文本中起始位置对应的起始词向量,以及所述问题在所述输入文本中结尾位置对应的结尾词向量;

答案提取模块,被配置为根据所述起始词向量和所述结尾词向量,在所述输入文本中提取所述问题在所述输入文本中对应的答案。

本申请提供的一种计算设备实施例如下:

图4是示出了根据本说明书一实施例的计算设备400的结构框图。该计算设备400的部件包括但不限于存储器410和处理器420。处理器420与存储器410通过总线430相连接,数据库450用于保存数据。

计算设备400还包括接入设备440,接入设备440使得计算设备400能够经由一个或多个网络460通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备440可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。

在本说明书的一个实施例中,计算设备400的上述部件以及图4中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图4所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。

计算设备400可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备400还可以是移动式或静止式的服务器。

本申请提供一种计算设备,包括存储器410、处理器420及存储在存储器上并可在处理器上运行的计算机指令,所述处理器420用于执行如下计算机可执行指令:

对输入文本进行分句,获得所述输入文本中的语句;

对所述语句和所述输入文本的问题进行向量化处理,获得所述语句的句向量以及所述问题包含的词单元的词向量组成的问题向量序列;

以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布;

将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示。

可选的,所述以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布,包括:

根据所述问题向量序列和所述输入文本中语句的句向量,分别计算所述问题包含的每个词单元与所述输入文本中每个语句的相关度,获得所述问题与所述输入文本中语句的相关度分布矩阵;

对所述相关度分布矩阵进行归一化,将获得的所述输入文本的注意力权重矩阵作为所述输入文本在语句层面的所述注意力权重分布。

可选的,所述对所述相关度分布矩阵进行归一化,包括:

按照行对所述相关度分布矩阵进行归一化。

可选的,所述将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示,包括:

根据所述输入文本中语句的句向量,生成所述输入文本的文本向量矩阵;

计算所述输入文本的注意力权重矩阵与所述输入文本的文本向量矩阵的乘积,作为所述输入文本到所述问题的文本表示。

可选的,所述对所述相关度分布矩阵进行归一化,包括:

按照列对所述相关度分布矩阵进行归一化。

可选的,所述处理器420还用于执行如下计算机可执行指令:

计算所述输入文本的注意力权重矩阵与所述问题向量序列的乘积,作为所述问题到所述输入文本的问题表示。

可选的,所述对所述语句和所述输入文本的问题进行向量化处理,获得所述语句对应的句向量和所述问题包含的词单元对应的词向量组成的问题向量序列指令执行之前,所述处理器420还用于执行如下计算机可执行指令:

利用分词算法对所述输入文本进行分词,获得所述输入文本包含的词单元;

确定所述输入文本包含的词单元在词向量空间中映射的文本词向量。

可选的,所述对所述语句和所述输入文本的问题进行向量化处理,获得所述语句对应的句向量和所述问题包含的词单元对应的词向量组成的问题向量序列,包括:

将所述语句包含的词单元映射的文本词向量输入双向长短期记忆神经网络,由所述双向长短期记忆神经网将其输出作为输入向循环神经网络输入,输出所述语句的句向量;

对所述问题进行分词,获得所述问题包含的词单元;

确定所述问题包含的词单元在所述词向量空间中映射的问题词向量;

根据所述问题包含的词单元映射的问题词向量,生成所述问题向量序列。

可选的,所述将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示指令执行之后,所述处理器420还用于执行如下计算机可执行指令:

基于所述文本表示,确定所述问题在所述输入文本中起始位置对应的起始词向量,以及所述问题在所述输入文本中结尾位置对应的结尾词向量;

根据所述起始词向量和所述结尾词向量,在所述输入文本中提取所述问题在所述输入文本中对应的答案。

本申请提供的一种计算机可读存储介质实施例如下:

本申请提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于:

对输入文本进行分句,获得所述输入文本中的语句;

对所述语句和所述输入文本的问题进行向量化处理,获得所述语句的句向量以及所述问题包含的词单元的词向量组成的问题向量序列;

以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布;

将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示。

可选的,所述以所述输入文本中的语句和所述问题包含的词单元为单位,根据所述句向量和所述问题向量序列计算所述输入文本在语句层面的注意力权重分布,包括:

根据所述问题向量序列和所述输入文本中语句的句向量,分别计算所述问题包含的每个词单元与所述输入文本中每个语句的相关度,获得所述问题与所述输入文本中语句的相关度分布矩阵;

对所述相关度分布矩阵进行归一化,将获得的所述输入文本的注意力权重矩阵作为所述输入文本在语句层面的所述注意力权重分布。

可选的,所述对所述相关度分布矩阵进行归一化,包括:

按照行对所述相关度分布矩阵进行归一化。

可选的,所述将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示,包括:

根据所述输入文本中语句的句向量,生成所述输入文本的文本向量矩阵;

计算所述输入文本的注意力权重矩阵与所述输入文本的文本向量矩阵的乘积,作为所述输入文本到所述问题的文本表示。

可选的,所述对所述相关度分布矩阵进行归一化,包括:

按照列对所述相关度分布矩阵进行归一化。

可选的,所述指令被处理器执行时以用于:

计算所述输入文本的注意力权重矩阵与所述问题向量序列的乘积,作为所述问题到所述输入文本的问题表示。

可选的,所述对所述语句和所述输入文本的问题进行向量化处理,获得所述语句对应的句向量和所述问题包含的词单元对应的词向量组成的问题向量序列步骤执行之前,包括:

利用分词算法对所述输入文本进行分词,获得所述输入文本包含的词单元;

确定所述输入文本包含的词单元在词向量空间中映射的文本词向量。

可选的,所述对所述语句和所述输入文本的问题进行向量化处理,获得所述语句对应的句向量和所述问题包含的词单元对应的词向量组成的问题向量序列,包括:

将所述语句包含的词单元映射的文本词向量输入双向长短期记忆神经网络,由所述双向长短期记忆神经网将其输出作为输入向循环神经网络输入,输出所述语句的句向量;

对所述问题进行分词,获得所述问题包含的词单元;

确定所述问题包含的词单元在所述词向量空间中映射的问题词向量;

根据所述问题包含的词单元映射的问题词向量,生成所述问题向量序列。

可选的,所述将所述注意力权重分布与所述输入文本进行融合,获得所述输入文本的文本表示步骤执行之后,包括:

基于所述文本表示,确定所述问题在所述输入文本中起始位置对应的起始词向量,以及所述问题在所述输入文本中结尾位置对应的结尾词向量;

根据所述起始词向量和所述结尾词向量,在所述输入文本中提取所述问题在所述输入文本中对应的答案。

上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的文本处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述文本处理方法的技术方案的描述。

所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

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

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

以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1