一种问句复述识别方法、装置、设备及可读存储介质与流程

文档序号:17222400发布日期:2019-03-27 12:07阅读:171来源:国知局
一种问句复述识别方法、装置、设备及可读存储介质与流程

本发明涉及语言识别技术领域,更具体地说,涉及一种问句复述识别方法、装置、设备及可读存储介质。



背景技术:

问句复述识别在自动问答、检索等领域起着重要作用。问句复述识别的定义如下:对于给定的两个自然问句,判别二者是否语义一致;若语义一致,则表明两个自然问句互为复述;否则,不互为复述。在问句复述识别任务中,给定的两句自然问句通常比较相近,在问句组成上只是少量的短语或单词的不同,甚至只是一些单词上的语序不同。

现有的问句复述识别方法可以分为以下两类:

第一类方法为:基于问句编码模型,将两个自然问句通过相同的网络架构进行编码映射成向量表示,然后通过两个句子向量表示之间的计算进行句子关系之间的衡量,例如孪生卷积网络(siamese-cnn)和孪生循环神经网络(siamese-lstm),都是利用相同的编码网络(cnn或lstm)将句子编码成句子向量;通过两个问句的句子向量计算得出最终结果。其中,在编码过程中,忽略了两个句子之间一些低粒度上的交互特征,而且也没有更好地捕获影响结果的重要特征,从而导致识别结果不够准确。

第二类方法为:基于问句之间匹配聚合,通过词对齐机制、注意力匹配机制等将两个问句聚合成一个交互向量,通过对这个交互向量进行计算得到最终的结果。例如:匹配金字塔模型(matchpyramidmodel),将两个问句的词向量表示直接进行点乘,得到两个问句之间的交互向量,通过对这个交互向量的进行多层cnn卷积得到特征矩阵,最后通过全连接得到最后的结果。或序列匹配序列模型(seqmatchseqmodel),通过注意力机制对两个问句的向量表示进行各种匹配计算,得到一个聚合两个问句特征的向量表示,通过cnn进行卷积进行最后的分类操作得到结果。其中,匹配金字塔模型和序列匹配序列模型均更关注于如何进行更好地句子交互匹配,针对交互匹配后的向量,简单地运用cnn进行卷积得到特征向量,因此忽略了问句的向量表示和优化,从而导致识别结果不够准确。

因此,如何提高问句复述识别的准确性,是本领域技术人员需要解决的问题。



技术实现要素:

本发明的目的在于提供一种问句复述识别方法、装置、设备及可读存储介质,以提高问句复述识别的准确性。

为实现上述目的,本发明实施例提供了如下技术方案:

一种问句复述识别方法,包括:

获取表示第一问句的第一向量,以及表示第二问句的第二向量;

将所述第一向量和所述第二向量分别作为目标向量,执行目标向量优化步骤,以获得所述第一问句对应的拼接向量和所述第二问句对应的拼接向量;

其中,所述目标向量优化步骤包括:将所述目标向量输入预设数量个卷积神经网络,得到预设数量个子向量,将任意一个子向量作为目标子向量,并通过激活函数将所述目标子向量激活为权重值,按照优化公式优化所述目标向量,得到优化向量;所述优化公式为:y=(1-g)×x+g×(x1+...+xi),其中,y表示所述优化向量,g表示所述权重值,x表示所述目标向量,x1...xi表示除所述目标子向量之外的其他子向量;对所述优化向量分别进行最大池化操作和平均池化操作后,将所述最大池化操作得到的向量和所述平均池化操作得到的向量进行拼接,得到拼接向量;

将所述第一问句对应的拼接向量和所述第二问句对应的拼接向量融合为交互向量,并利用归一化指数函数对所述交互向量进行处理,当输出的第一目标值不大于输出的第二目标值时,确定所述第一问句和所述第二问句互为复述。

其中,所述获取表示第一问句的第一向量,以及表示第二问句的第二向量,包括:

获取所述第一问句和所述第二问句,并对所述第一问句和所述第二问句分别进行词干还原;

计算所述第一问句的字符串和所述第二问句的字符串的编辑距离,并判断所述编辑距离是否为0;

若否,则对所述第一问句和所述第二问句分别进行向量化,得到所述第一向量和所述第二向量。

其中,所述对所述第一问句和所述第二问句分别进行向量化,包括:

将所述第一问句和所述第二问句分别作为目标问句,执行下述步骤进行向量化:通过glove词向量、位置向量和特征向量分别表示所述目标问句,得到用所述glove词向量、所述位置向量和所述特征向量分别表示的三个表示向量,将所述三个表示向量进行拼接,得到中间向量;通过高速网络对所述中间向量进行融合,得到所述目标问句的融合向量;

其中,所述特征向量为问句的二元特征表示,以单词是否均出现在所述第一问句和所述第二问句中为特征进行表示。

其中,所述通过高速网络对所述中间向量进行融合,得到所述目标问句的融合向量,包括:

采用第一融合公式计算所述中间向量对应的第一子中间向量;采用第二融合公式计算所述中间向量对应的第二子中间向量;基于所述第一子中间向量、所述第二子中间向量以及调整公式对所述中间向量进行融合,得到所述目标问句的融合向量;

其中,所述第一融合公式为q=sigmoid(w1×s+b1),q表示所述第一子中间向量,sigmoid为激活函数,w1和b1均表示模型变量,s表示所述中间向量;所述第二融合公式为p=w2×s+b2,p表示所述第二子中间向量,w2和b2均表示模型变量;所述调整公式为s′=p×(1-q)+s×q,s’表示所述融合向量。

其中,还包括:

当所述编辑距离为0时,确定所述第一问句和所述第二问句互为复述。

其中,所述将所述第一向量和所述第二向量分别作为目标向量与执行所述目标向量优化步骤之间,还包括:

采用基于池化的匹配方法和/或基于注意力的匹配方法分别对所述目标向量进行匹配计算,并将匹配计算获得的向量作为所述目标向量。

一种问句复述识别装置,包括:

获取模块,用于获取表示第一问句的第一向量,以及表示第二问句的第二向量;

执行模块,用于将所述第一向量和所述第二向量分别作为目标向量,执行目标向量优化步骤,以获得所述第一问句对应的拼接向量和所述第二问句对应的拼接向量;其中,所述目标向量优化步骤包括:将所述目标向量输入预设数量个卷积神经网络,得到预设数量个子向量,将任意一个子向量作为目标子向量,并通过激活函数将所述目标子向量激活为权重值,按照优化公式优化所述目标向量,得到优化向量;所述优化公式为:y=(1-g)×x+g×(x1+...+xi),其中,y表示所述优化向量,g表示所述权重值,x表示所述目标向量,x1...xi表示除所述目标子向量之外的其他子向量对所述优化向量分别进行最大池化操作和平均池化操作后,将所述最大池化操作得到的向量和所述平均池化操作得到的向量进行拼接,得到拼接向量;

识别模块,用于将所述第一问句对应的拼接向量和所述第二问句对应的拼接向量融合为交互向量,并利用归一化指数函数对所述交互向量进行处理,当输出的第一目标值不大于输出的第二目标值时,确定所述第一问句和所述第二问句互为复述。

其中,所述获取模块包括:

获取单元,用于获取所述第一问句和所述第二问句,并对所述第一问句和所述第二问句分别进行词干还原;

判断单元,用于计算所述第一问句的字符串和所述第二问句的字符串的编辑距离,并判断所述编辑距离是否为0;

向量化单元,用于当所述编辑距离不为0时,对所述第一问句和所述第二问句分别进行向量化,得到所述第一向量和所述第二向量。

一种问句复述识别设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现上述任意一项所述的问句复述识别方法的步骤。

一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的问句复述识别方法的步骤。

通过以上方案可知,本发明实施例提供的一种问句复述识别方法,包括:获取表示第一问句的第一向量,以及表示第二问句的第二向量;将第一向量和第二向量分别作为目标向量,执行目标向量优化步骤,以获得第一问句对应的拼接向量和第二问句对应的拼接向量;其中,目标向量优化步骤包括:将目标向量输入预设数量个卷积神经网络,得到预设数量个子向量,将任意一个子向量作为目标子向量,并通过激活函数将目标子向量激活为权重值,按照优化公式优化目标向量,得到优化向量;优化公式为:y=(1-g)×x+g×(x1+...+xi),其中,y表示优化向量,g表示权重值,x表示目标向量,x1...xi表示除目标子向量之外的其他子向量;对优化向量分别进行最大池化操作和平均池化操作后,将最大池化操作得到的向量和平均池化操作得到的向量进行拼接,得到拼接向量;将第一问句对应的拼接向量和第二问句对应的拼接向量融合为交互向量,并利用归一化指数函数对交互向量进行处理,当输出的第一目标值不大于输出的第二目标值时,确定第一问句和第二问句互为复述。

可见,所述方法针对第一问句和第二问句的向量,将其通过多个卷积神经网络进行处理,并将得到的其中一个处理结果作为权重值,优化其他处理结果;进而将优化得到的所有处理结果利用优化公式进行优化,得到优化向量;并对优化向量进行分别进行最大池化操作和平均池化操作后,将最大池化操作得到的向量和平均池化操作得到的向量进行拼接,得到拼接向量;最后将第一问句对应的拼接向量和第二问句对应拼接向量融合为交互向量,基于交互向量得出识别结果。其中,该方法通过多个卷积神经网络对第一问句和第二问句的向量分别进行了优化处理,得到了第一问句对应的拼接向量和第二问句对应拼接向量,并将这两个拼接向量融合为交互向量,从而解决了问句的向量优化问题以及两个句子之间的低粒度交互问题,更好地捕获了影响识别结果的重要特征,提高了问句复述识别的准确性。

相应地,本发明实施例提供的一种问句复述识别装置、设备及可读存储介质,也同样具有上述技术效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例公开的一种问句复述识别方法流程图;

图2为本发明实施例公开的一种目标向量优化步骤流程图;

图3为本发明实施例公开的另一种问句复述识别方法流程图;

图4为本发明实施例公开的一种问句复述识别装置示意图;

图5为本发明实施例公开的一种问句复述识别设备示意图。

具体实施方式

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

本发明实施例公开了一种问句复述识别方法、装置、设备及可读存储介质,以提高问句复述识别的准确性。

参见图1,本发明实施例提供的一种问句复述识别方法,包括:

s101、获取表示第一问句的第一向量,以及表示第二问句的第二向量;

s102、将第一向量和第二向量分别作为目标向量,执行目标向量优化步骤,以获得第一问句对应的拼接向量和第二问句对应的拼接向量;

s103、将第一问句对应的拼接向量和第二问句对应的拼接向量融合为交互向量,并利用归一化指数函数对交互向量进行处理,当输出的第一目标值不大于输出的第二目标值时,确定第一问句和第二问句互为复述。

具体的,将第一问句对应的拼接向量和第二问句对应的拼接向量融合为交互向量,即:将第一问句对应的拼接向量和第二问句对应的拼接向量的乘积作为交互向量。

所述利用归一化指数函数对交互向量进行处理,当输出的第一目标值不大于输出的第二目标值时,确定第一问句和第二问句互为复述,包括:

通过quora语料确定第一问句和第二问句是否互为复述。quora语料中的每个问句对有是否为复述的标签:0或1,0表示不是复述,1表示是复述。

通过如下操作:y=[0,0],y[labe1]=1;如果不是复述,则y[0]=1,y=[1,0];如果是复述,则y[1]=1,y=[0,1]。因此所述第一目标值是表示不是复述的标签值,所述第二目标值是表示是复述的标签值。

请参见图2,目标向量优化步骤包括:

s201、将目标向量输入预设数量个卷积神经网络,得到预设数量个子向量,将任意一个子向量作为目标子向量,并通过激活函数将目标子向量激活为权重值,按照优化公式优化目标向量,得到优化向量;

优化公式为:y=(1-g)×x+g×(x1+...+xi),其中,y表示优化向量,g表示权重值,x表示目标向量,x1...xi表示除目标子向量之外的其他子向量。

优选地,当卷积神经网络为两个时,将目标向量输入两个卷积神经网络,得到两个子向量,将任意一个子向量作为目标子向量,并通过激活函数将目标子向量激活为权重值,按照优化公式优化目标向量,得到优化向量。

此时,优化公式为:y=(1-g)×x+g×x1,其中,y表示所述优化向量,g表示所述权重值,也表示所述目标子向量,x表示所述目标向量,x1表示除所述目标子向量外的子向量。

s202、对优化向量分别进行最大池化操作和平均池化操作后,将最大池化操作得到的向量和平均池化操作得到的向量进行拼接,得到拼接向量。

可见,本实施例提供了一种问句复述识别方法,所述方法针对第一问句和第二问句的向量,将其通过多个卷积神经网络进行处理,并将得到的其中一个处理结果作为权重值,优化其他处理结果;进而将优化得到的所有处理结果利用优化公式进行优化,得到优化向量;并对优化向量进行分别进行最大池化操作和平均池化操作后,将最大池化操作得到的向量和平均池化操作得到的向量进行拼接,得到拼接向量;最后将第一问句对应的拼接向量和第二问句对应拼接向量融合为交互向量,基于交互向量得出识别结果。其中,该方法通过多个卷积神经网络对第一问句和第二问句的向量分别进行了优化处理,得到了第一问句对应的拼接向量和第二问句对应拼接向量,并将这两个拼接向量融合为交互向量,从而解决了问句的向量优化问题以及两个句子之间的低粒度交互问题,更好地捕获了影响识别结果的重要特征,提高了问句复述识别的准确性。

基于上述实施例,需要说明的是,所述获取表示第一问句的第一向量,以及表示第二问句的第二向量,包括:

获取所述第一问句和所述第二问句,并对所述第一问句和所述第二问句分别进行词干还原;

计算所述第一问句的字符串和所述第二问句的字符串的编辑距离,并判断所述编辑距离是否为0;

若否,则对所述第一问句和所述第二问句分别进行向量化,得到所述第一向量和所述第二向量。

其中,还包括:当所述编辑距离为0时,确定所述第一问句和所述第二问句互为复述。

具体的,词干还原就是将语句中的“is、are、am”还原为“be”,将单词的复数形式、ing形式或其他形式还原为最初始的单词形式,将大写转换为小写,以便于后续步骤的处理。例如:原语句为“i’m18.ihaveeaten3apples.”,那么还原后的语句为“ibe18.ihaveeat3apple.”。

编辑距离又称levenshtein距离,指两个字符串a、b之间,由a转成b所需的变少编辑操作次数,如果它们的距离越大,说明越不同。许可的编辑操作包括:将一个字符替换成另一个字符;插入一个字符;删除一个字符。

其中,所述对所述第一问句和所述第二问句分别进行向量化,包括:

将所述第一问句和所述第二问句分别作为目标问句,执行下述步骤进行向量化:通过glove词向量、位置向量和特征向量分别表示所述目标问句,得到用所述glove词向量、所述位置向量和所述特征向量分别表示的三个表示向量,将所述三个表示向量进行拼接,得到中间向量;通过高速网络对所述中间向量进行融合,得到所述目标问句的融合向量;

其中,所述特征向量为问句的二元特征表示,以单词是否均出现在所述第一问句和所述第二问句中为特征进行表示。

具体的,当所述目标问句为所述第一问句时,所述目标问句的融合向量为所述第一向量;当所述目标问句为所述第二问句时,所述目标问句的融合向量为所述第二向量。

其中,所述通过高速网络对所述中间向量进行融合,得到所述目标问句的融合向量,包括:

采用第一融合公式计算所述中间向量对应的第一子中间向量;采用第二融合公式计算所述中间向量对应的第二子中间向量;基于所述第一子中间向量、所述第二子中间向量以及调整公式对所述中间向量进行融合,得到所述目标问句的融合向量;

其中,所述第一融合公式为q=sigmoid(w1×s+b1),q表示所述第一子中间向量,sigmoid为激活函数,w1和b1均表示模型变量,s表示所述中间向量;所述第二融合公式为p=w2×s+b2,p表示所述第二子中间向量,w2和b2均表示模型变量;所述调整公式为s′=p×(1-q)+s×q,s’表示所述融合向量。

基于上述实施例,需要说明的是,所述将所述第一向量和所述第二向量分别作为目标向量与执行所述目标向量优化步骤之间,还包括:

采用基于池化的匹配方法和/或基于注意力的匹配方法分别对所述目标向量进行匹配计算,并将匹配计算获得的向量作为所述目标向量。

其中,当采用基于池化的匹配方法和基于注意力的匹配方法分别对所述目标向量进行匹配计算时,包括:

将所述基于池化的匹配方法对应的匹配计算结果与所述基于注意力的匹配方法对应的匹配计算结果进行拼接,得到所述目标向量的匹配计算向量,将所述匹配计算向量作为所述目标向量。

其中,当采用基于池化的匹配方法或基于注意力的匹配方法分别对所述目标向量进行匹配计算时,包括:

当采用基于池化的匹配方法对所述目标向量进行匹配计算时,将所述基于池化的匹配方法对应的匹配计算结果作为所述目标向量;

当采用基于注意力的匹配方法对所述目标向量进行匹配计算时,将所述基于注意力的匹配方法对应的匹配计算结果作为所述目标向量。

具体的,采用基于池化的匹配方法对目标向量进行匹配计算,包括:当目标向量为第一向量时,将第二向量作为基准向量;当目标向量为第二向量时,将第一向量作为基准向量,则有:

通过不同的模型变量优化目标向量和基准向量,并计算优化后的目标向量和基准向量的第一余弦向量;将第一余弦向量的维度上的最大值和平均值进行拼接,得到基于池化的匹配方法对应的匹配计算结果。

具体的,采用基于注意力的匹配方法对目标向量进行匹配计算,包括:当目标向量为第一向量时,将第二向量作为基准向量;当目标向量为第二向量时,将第一向量作为基准向量,则有:

计算目标向量和基准向量的第二余弦向量,并将目标向量与第二余弦向量的乘积与第二余弦向量在其维度上进行加和操作得到的向量的比值,作为基于注意力的匹配方法对应的匹配计算结果。

例如:用a2表示第一向量,用b2表示第二向量,那么当对第一向量进行匹配计算时,

基于池化的匹配计算包括:分别将a2、b2与训练好的模型变量w1、w2相乘,再计算两者之间的余弦向量,基于得到的余弦向量,余弦向量的维度是(batch,a2_len,b2_len,dim),在b2_len这个维度上分别取最大值和平均值,得到两个向量进行拼接,得到最后的a2表示向量a2_match_pool,其中维度是(batch,a2_len,2*dim)。

基于注意力的匹配计算包括:先是直接计算a2与b2的余弦向量r,其中r的维度是(batch,a2_len,b2_len),再以a2与r元素乘得到一个向量t1,其维度是(batch,a2_len,dim),对r在b2_len这个维度上做加和操作得到一个向量t2,其维度是(batch,a2_len),最后将t1除以t2,得到最终的a2_match_att,其维度是(batch,a2_len,dim)。

若当采用基于池化的匹配方法和基于注意力的匹配方法分别对第一向量进行匹配计算,则将a2_match_pool与a2_match_at进行拼接,获得第一向量的匹配计算的最终向量。

同理,可得到第二向量的匹配计算的最终向量。得到的这两个最终向量用于输入卷积神经网络。

本说明书中的拼接操作的具体过程包括:一个问句通过glove词向量、位置向量和特征向量分别表示为:

用glove词向量表示为:[0.1,0.32,0.21],其维度为(batch,max_len,dim1);

用位置向量表示为:[0.24,0.54,0.5],其维度为(batch,max_len,dim2);

用特征向量表示为:[0.3,0.43,0.26],其维度为(batch,max_len,dim3);

那么拼接结果为:[0.1,0.32,0.21,0.24,0.54,0.5,0.3,0.43,0.26],其维度为(batch,max_len,dim1+dim2+dim3)。

其中,拼接操作用公式表示为:[x1:x2],表示向量x1和向量x2进行拼接操作。

本发明实施例公开了另一种问句复述识别方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。

参见图3,本发明实施例提供的另一种问句复述识别方法,包括:

s301、针对给定的两个问句,对每个问句进行分词和词干还原,计算两个问句之间的编辑距离,直接得出问句对互为复述的结论,如果编辑距离不为0,则进入s202;

s302、针对编辑距离不为0的两个问句,通过glove词向量、位置向量和构建的特征向量的拼接,得到两个问句的向量表示,通过双向的匹配交互得到最终的每个问句的向量表示;

其中,问句对的特征向量构建,通过统计每个问句中的单词是否在两句中都存在,都存在标记为0,没有都存在标记为1,这样每个问句都表示成了01的二元表示,每个表示都随机初始成100维的向量,位置向量采用的是谷歌提出的位置向量编码方式得出的50维位置向量,三个向量都是可训练的,并不是固定的,通过将三者拼接得到一个问句的向量表示,并不通过循环神经网络rnn或者是卷积神经网络cnn进行问句的整体编码,而是通过简单的高速网络(highwaynet)得到最终的问句编码s1与s2。

在通过highway网络得到的两个问句向量表示s1和s2之后,通过双向匹配计算,对两个问句进行交互融合调整句子表示。首先,针对问句表示s1与s2,从两个方向上计算(s1到s2,s2到s1),通过对每个词维度上计算余弦距离得到s1与s2之间的匹配向量表示,通过对匹配向量进行取最大和均方计算,拼接得到两个问句匹配之后的向量表示sm1和sm2。

s303、利用卷积神经网络,针对每个问句表示进行两次卷积,通过基于门控的交互方式将两次卷积的特征向量进行更好地交融得到更优的特征向量,并将两个问句更优的特征向量进行池化;

具体的,在得到双向匹配交互后的问句对表示向量sm1、sm2之后,针对交互匹配后的问句表示向量sm1,利用2个窗口大小为5的cnn,对sm1进行卷积操作得到两个特征向量表示f1与f2,其中卷积过程采用填充,保证卷积出的特征向量维度与句子表示向量sml维度一致,通过sigmoid激活函数,将其中一个特征表示f1激活成一个表示重要性的向量g1,将其作为一个门控,通过(1-g1)与句子向量表示sm1相乘,将g1与f2直接相乘,两者拼接得到一个更优的特征向量表示,然后再进行最大池化和平均池化,拼接两个池化结果得到一个问句最终的特征向量表示fs1,这样操作能够在词级别与短语级别这两个不同粒度上捕获更好的特征,对另一个匹配交互后的问句表示sm2进行同样的操作得到最终特征向量表示fs2。

s304、将池化后的两个问句的向量进行融合,并通过一个softmax全连接层进行处理,得到最终结果。

对于得到的两个问句特征向量fs1和fs2,进行元素相乘融合得到两个问句之间最终的交互特征向量,最后通过全连接得到最后的结果。

可见,本实施例提供了另一种问句复述识别方法,所述方法针对每个问句表示向量,都由两个cnn进行卷积得到两个特征向量,将其中一个卷积特征向量进行sigmod函数激活,得到一个关于问句向量的权重表示向量,衡量句子向量的重要性,将其作为一个门,通过将句子向量表示乘以1与权重表示向量的差值,得到了削弱句子向量中无关词级别的特征向量表示,将另一个卷积特征向量直接与权重表示向量相乘,得到削弱后的短语级别的特征向量,将两者拼接得到了更优的多粒度句子特征向量,这样是考虑到直接利用cnn卷积的特征向量只有短语级粒度特征,通过门控机制调和,将原始句子向量中的一些词级别的重要特征向量跟卷积后的短语级别特征向量更好地进行多粒度交融,得到更优的特征向量,以此辅助更好地进行最终结果的分类。

下面对本发明实施例提供的一种问句复述识别装置进行介绍,下文描述的一种问句复述识别装置与上文描述的一种问句复述识别方法可以相互参照。

参见图4,本发明实施例提供的一种问句复述识别装置,包括:

获取模块401,用于获取表示第一问句的第一向量,以及表示第二问句的第二向量;

执行模块402,用于将所述第一向量和所述第二向量分别作为目标向量,执行目标向量优化步骤,以获得所述第一问句对应的拼接向量和所述第二问句对应的拼接向量;其中,所述目标向量优化步骤包括:将所述目标向量输入预设数量个卷积神经网络,得到预设数量个子向量,将任意一个子向量作为目标子向量,并通过激活函数将所述目标子向量激活为权重值,按照优化公式优化所述目标向量,得到优化向量;所述优化公式为:y=(1-g)×x+g×(x1+...+xi),其中,y表示所述优化向量,g表示所述权重值,x表示所述目标向量,x1...xi表示除所述目标子向量之外的其他子向量;对所述优化向量分别进行最大池化操作和平均池化操作后,将所述最大池化操作得到的向量和所述平均池化操作得到的向量进行拼接,得到拼接向量;

识别模块403,用于将所述第一问句对应的拼接向量和所述第二问句对应的拼接向量融合为交互向量,并利用归一化指数函数对所述交互向量进行处理,当输出的第一目标值不大于输出的第二目标值时,确定所述第一问句和所述第二问句互为复述。

其中,所述获取模块包括:

获取单元,用于获取所述第一问句和所述第二问句,并对所述第一问句和所述第二问句分别进行词干还原;

判断单元,用于计算所述第一问句的字符串和所述第二问句的字符串的编辑距离,并判断所述编辑距离是否为0;

向量化单元,用于当所述编辑距离不为0时,对所述第一问句和所述第二问句分别进行向量化,得到所述第一向量和所述第二向量。

其中,所述向量化单元具体用于:

将所述第一问句和所述第二问句分别作为目标问句,执行下述步骤进行向量化:通过glove词向量、位置向量和特征向量分别表示所述目标问句,得到用所述glove词向量、所述位置向量和所述特征向量分别表示的三个表示向量,将所述三个表示向量进行拼接,得到中间向量;通过高速网络对所述中间向量进行融合,得到所述目标问句的融合向量;

其中,所述特征向量为问句的二元特征表示,以单词是否均出现在所述第一问句和所述第二问句中为特征进行表示。

其中,所述向量化单元具体用于:

采用第一融合公式计算所述中间向量对应的第一子中间向量;采用第二融合公式计算所述中间向量对应的第二子中间向量;基于所述第一子中间向量、所述第二子中间向量以及调整公式对所述中间向量进行融合,得到所述目标问句的融合向量;

其中,所述第一融合公式为q=sigmoid(w1×s+b1),q表示所述第一子中间向量,sigmoid为激活函数,w1和b1均表示模型变量,s表示所述中间向量;所述第二融合公式为p=w2×s+b2,p表示所述第二子中间向量,w2和b2均表示模型变量;所述调整公式为s′=p×(1-q)+s×q,s’表示所述融合向量。

其中,还包括:

确定模块,用于当所述编辑距离为0时,确定所述第一问句和所述第二问句互为复述。

其中,还包括:

匹配计算模块,用于采用基于池化的匹配方法和/或基于注意力的匹配方法分别对所述目标向量进行匹配计算,并将匹配计算获得的向量作为所述目标向量。

下面对本发明实施例提供的一种问句复述识别设备进行介绍,下文描述的一种问句复述识别设备与上文描述的一种问句复述识别方法及装置可以相互参照。

参见图5,本发明实施例提供的一种问句复述识别设备,包括:

存储器501,用于存储计算机程序;

处理器502,用于执行所述计算机程序时实现上述任意实施例所述的问句复述识别方法的步骤。

下面对本发明实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种问句复述识别方法、装置及设备可以相互参照。

一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意实施例所述的问句复述识别方法的步骤。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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