一种文本处理方法、装置以及相关设备与流程

文档序号:16628696发布日期:2019-01-16 06:21阅读:141来源:国知局
一种文本处理方法、装置以及相关设备与流程

本发明涉及计算机技术领域,尤其涉及一种文本处理方法、装置以及相关设备。



背景技术:

自动问答系统,又称为人机对话系统,用户以自然语言形式描述问题,自动问答系统从大量的数据中查找除准确、简洁、人性化的回答并反馈给用户。自动问答系统是自然语言处理领域的一个重要方向,旨在让用户直接用自然语言提问并获得答案。例如,用户询问:上海交大在哪,问答系统回答:上海市闵行去东川路800号。相比传统搜索引擎是根据关键词返回大量的文档集合,自动问答系统不需要用户亲自查找相关资料,就可以快速获取到问题的答案。

由于用户是直接用自然语言的方式语音输入,因此语音信号中就可能包括一些与提问不想关的信息,例如,用户语音输入:你能告诉我上海交大在哪里么,或者用户语音输入:你知不知道上海交大具体在哪里,如果将上述语音信号转换为查询文本后,查询文本中就包括一些和问题无关的字符。当自动问答系统对查询文本进行识别时,多余的字符会干扰问答系统对查询文本所对应的查询意图的识别,使得系统识别查询意图的准确率下降,进而降低向用户推送问题回答的正确率。



技术实现要素:

本发明实施例提供一种文本处理方法、装置以及相关设备,可以识别查询意图,进而提高向用户推送问题回答的正确率。

本发明一方面提供了一种文本处理方法,包括:

获取目标文本以及知识图谱;所述知识图谱包括多个实体对应的实体字符串和多个谓词对应的谓词字符串;

在所有实体字符串中,查找属于所述目标文本的实体字符串,作为目标实体字符串,并在所有谓词字符串中,查找属于所述目标文本的谓词字符串,作为目标谓词字符串;

将所述目标实体字符串和所述目标谓词字符串组合为目标查询文本,在知识库中查找与所述目标查询文本对应的查询结果,作为目标查询结果,并输出所述目标查询结果。

其中,所述将所述目标实体字符串和所述目标谓词字符串组合为目标查询文本,包括:

将所述目标实体字符串和所述目标谓词字符串组合为第一辅助文本;

获取所述第一辅助文本中与目标实体字符串对应的目标领域标识,并获取所述第一辅助文本中与目标谓词字符串对应的目标同义词;所述目标领域标识用于表征与所述目标实体字符串对应的目标实体所在的业务领域;

若在第一关系库中存在所述目标领域标识和所述目标同义词之间的映射关系,则将所述第一辅助文本确定为所述目标查询文本;所述第一关系库中包括多个领域标识以及与每个领域标识对应的至少一个同义词。

其中,所述将所述第一辅助文本确定为所述目标查询文本,包括:

在第二关系库中,提取与所述目标领域标识和所述目标同义词对应的谓词别称,作为样本谓词别称;所述第二关系库中包括多个领域标识、与每个领域标识对应的至少一个同义词、以及与每个同义词对应的至少一个谓词别称;

若存在一个样本谓词别称和所述目标谓词字符串相同,则将所述第一辅助文本确定为所述目标查询文本。

其中,所述在所有实体字符串中,查找属于所述目标文本的实体字符串,作为目标实体字符串,包括:

根据所述所有实体字符串,构建第一字典树;所述第一字典树中的一个节点包括一个实体字符串中的一个字符;

根据宽度优先搜索,为所述第一字典树中的各节点设置失配指针;

根据所述第一字典树和所述第一字典树中各节点对应的失配指针,将所述目标文本进行多模式串匹配处理,得到所述目标文本中与所述第一字典树中的实体字符串相匹配的字符串的第一位置信息;

在所述目标文本中,将所述第一位置信息中的起始位置和终止位置之间的字符串,作为所述目标实体字符串,并从所述第一字典树中获取与所述目标实体字符串对应的目标领域标识。

其中,还包括:

提取出具有相同目标领域标识的目标实体字符串;

根据提取出来的目标实体字符串对应的第一位置信息,保留具有最大第一位置信息的目标实体字符串,并删除在具有相同目标领域标识的所有目标实体字符串中,除所述具有最大第一位置信息的目标实体字符串以外的目标实体字符串;所述具有最大第一位置信息的目标实体字符串是在所有具有相同目标领域标识的目标实体字符串对应的第一位置信息中,具有最大起始位置的目标实体字符串。

其中,所述在所有谓词字符串中,查找属于所述目标文本的谓词字符串,作为目标谓词字符串,包括:

根据所述所有谓词字符串,构建第二字典树;所述第二字典树中的一个节点包括一个谓词字符串中的一个字符;

根据宽度优先搜索,为所述第二字典树中的各节点设置失配指针;

根据所述第二字典树和所述第二字典树中各节点对应的失配指针,将所述目标文本进行多模式串匹配处理,得到所述目标文本中与所述第二字典树中的谓词字符串相匹配的字符串的第二位置信息;

在所述目标文本中,将所述第二位置信息中的起始位置和终止位置之间的字符串,作为所述目标谓词字符串,并从所述第二字典树中获取与所述目标谓词字符串对应的目标同义词。

其中,所述将所述目标实体字符串和所述目标谓词字符串组合为目标查询文本,包括:

将所述目标实体字符串和所述目标谓词字符串组合为第二辅助文本;

若所述第二辅助文本所对应的第一位置信息和第二位置信息之间存在重叠位置信息,则将存在重叠位置信息的第二辅助文本删除;所述重叠位置信息中的起始位置和终止位置既处于所述第一位置信息的范围内,也处于所述第二位置信息的范围内;

将删除后剩余的第二辅助文本确定为所述目标查询文本。

其中,还包括:

获取多个待测试文本,为所述多个待测试文本设置轮询优先级;

根据所述轮询优先级,在所述多个待测试文本中选取用于当前轮询的辅助测试文本;

在所述所有实体字符串中,查找属于所述辅助测试文本的实体字符串,并在所述所有谓词字符串中,查找属于所述辅助测试文本的谓词字符串;

将查找到的实体字符串和谓词字符串组合为测试查询文本,在所述知识库中查找与所述测试查询文本对应的查询结果,作为测试查询结果;

当每个待测试文本均被确定为辅助测试文本时,停止轮询,并统计具有相同测试查询结果的测试查询文本的数量。

本发明另一方面提供了一种文本处理装置,包括:

获取模块,用于获取目标文本以及知识图谱;所述知识图谱包括多个实体对应的实体字符串和多个谓词对应的谓词字符串;

第一查找模块,用于在所有实体字符串中,查找属于所述目标文本的实体字符串,作为目标实体字符串;

第二查找模块,用于在所有谓词字符串中,查找属于所述目标文本的谓词字符串,作为目标谓词字符串;

组合模块,用于将所述目标实体字符串和所述目标谓词字符串组合为目标查询文本;

输出模块,用于在知识库中查找与所述目标查询文本对应的查询结果,作为目标查询结果,并输出所述目标查询结果。

其中,所述组合模块,包括:

第一组合单元,用于将所述目标实体字符串和所述目标谓词字符串组合为第一辅助文本;

获取单元,用于获取所述第一辅助文本中与目标实体字符串对应的目标领域标识,并获取所述第一辅助文本中与目标谓词字符串对应的目标同义词;所述目标领域标识用于表征与所述目标实体字符串对应的目标实体所在的业务领域;

确定单元,用于若在第一关系库中存在所述目标领域标识和所述目标同义词之间的映射关系,则将所述第一辅助文本确定为所述目标查询文本;所述第一关系库中包括多个领域标识以及与每个领域标识对应的至少一个同义词。

其中,所述确定单元,包括:

提取子单元,用于在第二关系库中,提取与所述目标领域标识和所述目标同义词对应的谓词别称,作为样本谓词别称;所述第二关系库中包括多个领域标识、与每个领域标识对应的至少一个同义词、以及与每个同义词对应的至少一个谓词别称;

第一确定子单元,用于若存在一个样本谓词别称和所述目标谓词字符串相同,则将所述第一辅助文本确定为所述目标查询文本。

其中,所述第一查找模块,包括:

第一构建单元,用于根据所述所有实体字符串,构建第一字典树;所述第一字典树中的一个节点包括一个实体字符串中的一个字符;

第一设置单元,用于根据宽度优先搜索,为所述第一字典树中的各节点设置失配指针;

第一匹配单元,用于根据所述第一字典树和所述第一字典树中各节点对应的失配指针,将所述目标文本进行多模式串匹配处理,得到所述目标文本中与所述第一字典树中的实体字符串相匹配的字符串的第一位置信息;

第一提取单元,用于在所述目标文本中,将所述第一位置信息中的起始位置和终止位置之间的字符串,作为所述目标实体字符串,并从所述第一字典树中获取与所述目标实体字符串对应的目标领域标识。

其中,还包括;

提取模块,用于提取出具有相同目标领域标识的目标实体字符串;

删除模块,用于根据提取出来的目标实体字符串对应的第一位置信息,保留具有最大第一位置信息的目标实体字符串,并删除在具有相同目标领域标识的所有目标实体字符串中,除所述具有最大第一位置信息的目标实体字符串以外的目标实体字符串;所述具有最大第一位置信息的目标实体字符串是在所有具有相同目标领域标识的目标实体字符串对应的第一位置信息中,具有最大起始位置的目标实体字符串。

其中,所述第二查找模块,包括:

第二构建单元,用于根据所述所有谓词字符串,构建第二字典树;所述第二字典树中的一个节点包括一个谓词字符串中的一个字符;

第二设置单元,用于根据宽度优先搜索,为所述第二字典树中的各节点设置失配指针;

第二匹配单元,用于根据所述第二字典树和所述第二字典树中各节点对应的失配指针,将所述目标文本进行多模式串匹配处理,得到所述目标文本中与所述第二字典树中的谓词字符串相匹配的字符串的第二位置信息;

第二提取单元,用于在所述目标文本中,将所述第二位置信息中的起始位置和终止位置之间的字符串,作为所述目标谓词字符串,并从所述第二字典树中获取与所述目标谓词字符串对应的目标同义词。

其中,所述组合模块,还包括:

第二组合单元,用于将所述目标实体字符串和所述目标谓词字符串组合为第二辅助文本;

删除单元,用于若所述第二辅助文本所对应的第一位置信息和第二位置信息之间存在重叠位置信息,则将存在重叠位置信息的第二辅助文本删除;所述重叠位置信息中的起始位置和终止位置既处于所述第一位置信息的范围内,也处于所述第二位置信息的范围内;

删除单元,还用于将删除后剩余的第二辅助文本确定为所述目标查询文本。

其中,还包括:

所述获取模块,还用于获取多个待测试文本,为所述多个待测试文本设置轮询优先级;

选取模块,用于根据所述轮询优先级,在所述多个待测试文本中选取用于当前轮询的辅助测试文本;

所述第一查找模块,还用于在所述所有实体字符串中,查找属于所述辅助测试文本的实体字符串,并在所述所有谓词字符串中,查找属于所述辅助测试文本的谓词字符串;

所述组合模块,还用于将查找到的实体字符串和谓词字符串组合为测试查询文本,在所述知识库中查找与所述测试查询文本对应的查询结果,作为测试查询结果;

统计模块,用于当每个待测试文本均被确定为辅助测试文本时,停止轮询,并统计具有相同测试查询结果的测试查询文本的数量。

本发明另一方面提供了一种电子设备,包括:处理器和存储器;

所述处理器和存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如本发明实施例中一方面中的方法。

本发明另一方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如本发明实施例中一方面中的方法。

本发明实施例通过获取目标文本以及知识图谱;知识图谱包括多个实体对应的实体字符串和多个谓词对应的谓词字符串;在所有实体字符串中,查找属于目标文本的实体字符串,作为目标实体字符串,并在所有谓词字符串中,查找属于目标文本的谓词字符串,作为目标谓词字符串;将目标实体字符串和目标谓词字符串组合为目标查询文本,在知识库中查找与目标查询文本对应的查询结果,作为目标查询结果,并输出目标查询结果。上述可知,根据知识图谱所包含的实体字符串和谓词字符串,从目标文本自身中查找出目标实体字符串和目标谓词字符串,从而根据目标实体字符串和目标谓词字符串确定目标文本的查询意图,可以摒弃查询文本中与问题无关的字符,准确识别出目标文本的查询意图,提高在知识库中查找目标文本答案的准确率。

附图说明

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

图1a是本发明实施例提供的一种文本处理方法的系统架构图;

图1b-图1c是本发明实施例提供的一种文本处理方法的场景示意图;

图2a是本发明实施例提供的一种文本处理方法的流程示意图;

图2b是本发明实施例提供的一种知识图谱的示意图;

图2c是本发明实施例提供的一种多模式串匹配的示意图;

图3是本发明实施例提供的另一种文本处理方法的流程示意图;

图4是本发明实施例提供的另一种文本处理方法的流程示意图;

图5是本发明实施例提供的一种文本处理装置的结构示意图;

图6是本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

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

请参见图1a,是本发明实施例提供的一种文本处理方法的系统架构图,服务器20a为用户终端集群提供服务,用户终端集群可以包括:用户终端10b、用户终端20c、...、用户终端20d。当用户(可以是用户10a、20e或者20f)需要提问时,可以向用户终端(可以是用户终端10b、用户终端20c或用户终端20d)发送语音或者输入文本,用户终端获取到语音后或者文本后,发送至服务器20a,由服务器20a识别用户的查询意图,并根据查询意图查找提问的答案。服务器20a将查找到的答案发送至用户终端,用户终端向用户显示答案。当然,如果用户终端自身具有识别用户查询意图的功能和查找问题答案的功能,那么可以在用户终端中直接进行识别和查找,而不必发送至服务器。下述图1b-图1c以一个用户10a和一个用户终端10b为例进行说明,如何对文本进行查询意图的识别,以及如何查找问题答案。

其中,用户终端可以包括手机、平板电脑、笔记本电脑、掌上电脑、智能音响、智能音箱、智能机器人、智能家居、移动互联网设备(mid,mobileinternetdevice)、pos(pointofsales,销售点)机、可穿戴设备(例如智能手表、智能手环等)等。

请参见图1b—图1c,是本发明实施例提供的一种文本处理方法的场景示意图。如图1b所示,用户终端10b(此处以智能音响为例)中包括一个问答系统,该问答系统可以回答用户以自然语言方式的提问。用户10a向智能音响10b发送语音:广东省深圳市邮编。智能音响10b将获取到的语音信号转换的文本10c。智能音响10b得到待查询的文本10c后,基于字典树10d,对文本10c执行多模式串匹配,用于查找在字典树10d的所有实体字符串中,与文本10c匹配的字符串。匹配后输出的结果是匹配成功的字符串在文本10c中的位置信息(位置信息包括起始位置、终止位置)以及该字符串所携带的领域标识,将输出的位置信息在文本10c中对应的字符串提取出来,作为目标实体字符串。匹配处理后,输出的结果是:[0,2,1]和[3,5,1],对输出结果“[0,2,1]”来说,文本10c中位于第一位和第三位(在计算机中,从0开始计数,即起始位置用数值0表示)之间的字符串就是目标实体字符串,即字符串“广东省”为目标实体字符串,且目标实体字符串“广东省”对应的领域标识为1(领域标识“1”对应的业务领域为行政单位)。相似地,对输出结果“[3,5,1]”来说,文本10c中位于第四位和第六位之间的字符串也是目标实体字符串,即字符串“深圳市”为目标实体字符串,且目标实体字符串“深圳市”对应的领域标识也为1。

如图1b所示,字典树10d是根据知识图谱10p中的多个实体对应的实体字符串构建而来的,字典树10d中的每个节点包括一个实体的一个字符,且字典树10d是一颗前缀树,对于具有相同前缀的实体字符串可以共用节点,采用字典树这种数据结构可以节约存储空间。同时,在字典树10d中,每个实体字符串的最后一个字符对应的节点设均携带该实体字符串对应的领域标识,领域标识的数量可以是一个也可以是多个。领域标识是用于表征对应实体字符串的实体所处的业务领域,对于携带的方式可以是将节点的键值对(key-value)中的key设置为实体字符串的一个字符,value设置为该实体字符串对应的实体所在业务领域的领域标识。举例来说,对实体字符串“清华大学”来说,对应的业务领域为行政单位和教育,其中业务领域“行政单位”对应的领域标识为:1;业务领域“教育”对应的领域标识为:4。因此,为实体字符串“清华大学”在字典树中设置4个节点,每个节点分别包括字符“清”“华”“大”“学”,且在字符“学”所在的节点携带领域标识:1、4。

同理,基于字典树10e,对文本10c执行多模式串匹配,用于查找在字典树10e的所有谓词字符串中,与文本10c匹配的字符串,作为目标谓词字符串。匹配处理后,输出的是:[6,7,zipcode],对输出结果“[6,7,zipcode]”来说,文本10c中位于第七位和第八位之间的字符串“邮编”为目标谓词字符串,且该目标谓词字符串“邮编”对应的同义词为zipcode(zipcode为邮编的英文同义词)。如图1b所示,字典树10e是根据知识图谱10p中的多个谓词对应的谓词字符串构建而来的,字典树10e中的每个节点包括一个谓词的一个字符。同时,在字典树10e中,每个谓词字符串的最后一个字符对应的节点均携带该谓词字符串对应的同义词,同义词可以是对应谓词字符串的英文单词。

将查找到的携带领域标识的目标实体字符串和携带同义词的目标谓词字符串进行组合,可以得到2个文本:广东省1,邮编zipcode;深圳市1,邮编zipcode,组合而成的文本中包括一个目标实体字符串和一个目标谓词字符串。由于上述两个文本中的目标实体字符串所携带的业务领域标识均为1,在上述两个文本中的目标实体字符串对应的位置信息中选择起始位置更大的目标实体字符串所在的文本作为查询文本,即选择文本10g“深圳市1,邮编zipcode”作为查询文本10g。

选择文本10g作为查询文本的具体过程是:上述2个文本中的实体字符串分别为:广东省、深圳市。匹配实体字符串时输出的匹配成功的实体字符串“广东省”在待查询的文本10c中的位置信息:[0,2],实体字符串“深圳市”在待查询的文本10c中的位置信息:[3,5]。上述位置信息中的数值“0”和数值“3”分别表示两个实体字符串的在待查询文本10c中的起始位置,位置信息中的数值“2”和数值“5”分别表示两个实体字符串在待查询文本10c中的终止位置,由于在2个起始位置中,起始位置“3”大于起始位置“0”,因此上述2个实体字符串中,起始位置最大的目标实体字符串是:深圳市,即实体字符串“深圳市”所在的文本10g即是目标文本10g。

接来下,继续对查询文本10g进行校验,在数据库10f中,检测查询文本10g中的领域标识“1”与查询文本10g中的同义词“zipcode”是否存在映射关系,由于在数据库10f中存储了记录“1#mayor,zipcode,population”,即查询文本10g中的领域标识“1”和同义词“zipcode”之间存在映射关系,因此对查询文本10g的校验通过,可以将查询文本10g中的目标实体字符串“深圳市”以及目标谓词字符串“邮编”组合为目标文本10h:深圳市,邮编,此处的目标文本10h中的实体字符串可以不用携带领域标识,谓词字符串可以不用携带同义词,该目标文本10h表示提问“广东省深圳市邮编”的查询意图。其中,数据库10f中包括多条记录,每条记录是一个两元组,一元表示领域标识;另一元表示领域标识所在的业务领域对应的所有可能谓词的同义词。例如,领域标识1(领域标识1表示的业务领域为行政单位)所有可能的谓词是:市长、邮编、人口数量,上述谓词对应的同义词分别是:mayor,zipcode,population,因此数据库10f中就包括“1#mayor,zipcode,population”这条记录。确定了目标文本10h后,在知识库10k中查找关于目标文本10h的答案,得到:518000,即518000为深圳市邮编,将查找到的答案“518000”语音播报或者在屏幕中显示,以使用户可以直接获知关于提问“广东省深圳市邮编”的答案。

从待查询文本中查找所有可能的实体以及所有可能的谓词,将查找到实体和谓词进行组合,得到目标文本。然后删除那些校验不通过的目标文本,只保留校验通过的目标文本,保留下来的目标文本就表示用户提问的查询意图。在知识库中查找校验通过的目标文本的问题答案并向用户展示答案。通过确定待查询文本的查询意图,可以提高在知识库中查找答案的准确率。

其中,查找目标实体字符串、查找目标谓词字符串的具体过程可以参见以下图2a至图4所对应的实施例。

进一步地,请参见图2a,是本发明实施例提供的一种文本处理方法的流程示意图。如图2a所示,所述文本处理方法可以包括:

步骤s101,获取目标文本以及知识图谱;所述知识图谱包括多个实体对应的实体字符串和多个谓词对应的谓词字符串。

具体的,获取目标文本(如上述图1b所对应实施例中的文本10c),目标文本的获取方式可以是由用户手动输入文本,将用户输入的文本作为目标文本;也可以是采集用户的语音,将上述语音转换为文本,并将转换后的文本称为目标文本。获取知识图谱(如上述图1c所对应实施例中的知识图谱10p),知识图谱中包括多个实体对应的实体字符串,以及多个谓词对应的谓词字符串,实体字符串是由实体对应的字符组合而成;谓词字符串是由谓词对应的字符组合而成。请参见图2b,是本发明实施例提供的一种知识图谱的示意图,如图2b所示,展示了关于北京市的知识图谱,包括人口数量、面积、邮政编码、市长、接壤城市、电话区号,在图2b中,实体字符串包括:北京市、天津市、陈某某;谓词字符串包括:人口数量、面积、邮政编码、市长、接壤、电话区号。知识图谱是知识领域的映射地图,主要用于可视化实体的属性、属性值,以及实体和实体之间的关系。谓词就是表示两个实体之间的关系以及实体的属性。举例来说,对文本“中国的人口数量”来说,实体就是“中国”,谓词就是“人口数量”;又例如,对文本“a的妻子是谁”来说,实体就是“a”,谓词是“妻子”。

步骤s102,在所有实体字符串中,查找属于所述目标文本的实体字符串,作为目标实体字符串,并在所有谓词字符串中,查找属于所述目标文本的谓词字符串,作为目标谓词字符串。

具体的,为了提取出目标文本中所有可能的实体字符串以及所有可能的谓词字符串,可以在知识图谱所对应的所有实体字符串中,查找属于目标文本的实体字符串,称为目标实体字符串;在知识图谱所对应的所有谓词字符串中,查找属于目标文本的谓词字符串,称为目标谓词字符串。换句话说,查找到的目标实体字符串和目标谓词字符串既属于知识图谱,也属于目标文本。例如,知识图谱包括的实体字符串为:北京、上海、广州、天津、重庆,目标文本为:我爱北京也爱上海,那么在上述5个实体字符串中查找到属于目标文本的实体字符串分别为:北京、上海,即是目标实体字符串就是:北京、上海。在所有实体字符串(多个模式串)中,查找属于目标文本的字符串(模式串)属于字符匹配领域的多模式串匹配。多模式串匹配算法可以包括:ac自动机、散列函数匹配等。

下面以ac自动机为例(ac自动机的算法复杂度为线性o(n),是应用最广泛的多模式串匹配算法),说明如何确定目标实体字符串和目标谓词字符串。基于知识图谱中所有实体字符串,构建字典树,称为第一字典树(如上述图1b所对应实施例中的字典树10d),同时,在第一字典树中,每个实体字符串的最后一个字符对应的节点均携带该实体字符串对应的领域标识,领域标识的数量可以是一个也可以是多个,领域标识是用于表示实体字符串对应的实体所在的业务领域。第一字典树中的一个节点包括一个实体字符串的一个字符,且第一字典树可以共用实体字符串的前缀,但不共用后缀。例如,实体字符串“清华小学”对应第一字典树中的4个节点,对实体字符串“清华中学”那么就可以复用“清”和“华”这两个节点,只需要再创建两个节点分别用于表示字符“中”和“学”。

构建完第一字典树后,为第一字典树中的每个节点设置失配指针,失配指针是用于当字典树中的节点与目标文本匹配失败时,就跳转到失配指针所指示的节点,继续匹配。对于直接与根节点相连的节点来说,上述节点的失配指针直接指向根节点。对于与根节点不相连的节点来说,根据宽度优先搜索的原则,在所有未设置失配指针的节点中,选取用于当前设置失配指针的节点作为目标节点。将目标节点的父节点的失配指针所指向的节点作为辅助节点,若辅助节点的所有子节点所包含的字符中包括目标节点包含的字符,则将目标节点的失配指针指向与目标节点包含相同字符的辅助节点的子节点。若辅助节点的所有子节点所包含的字符中不包括目标节点包含的字符,就将上述辅助节点的失配指针所指向的节点作为辅助节点,再次进行判断,如果找不到辅助节点,那么就将目标节点的失配指针指向根节点。采用上述方法,可以为第一字典树的所有节点分别设置失配指针。

其中,宽度优先搜索是图的搜索算法之一,通过已找到和未找到顶点之间的边界向外扩展,就是说宽度优先搜索首先搜索和s距离为k的所有顶点,然后再去搜索和s距离为k+l的其他顶点,在本方案中,根据宽度优先搜索的原则就是先分别将与根节点距离为1的节点作为目标节点,进而为各目标节点分别设置失配指针;再将与根节点距离为2的节点作为目标节点,直到所有的节点都设置了失配指针。

接下来根据第一字典树和目标文本,执行多模式串匹配。匹配过程为:将目标文本中的第一个字符作为目标字符,若目标字符与当前字符匹配,表示从当前节点沿着第一字典树有一条路径可以到达目标字符,此时只需沿该路径走向下一个节点继续匹配即可,并将在目标文本中与目标字符相邻的字符作为目标字符;若目标字符与当前字符不匹配,则去当前节点失配指针所指向的节点继续匹配,匹配过程随着指针指向根节点结束,直到目标文本的所有字符都被确定为目标字符时,匹配结束。匹配完后,输出的是匹配成功的实体字符串在目标文本中的位置信息(称为第一位置信息)以及该实体字符串所对应的领域标识,其中,位置信息包括起始位置和终止位置。将在目标文本中,第一位置信息中起始位置和终止位置之间的字符串作为目标实体字符串,并将目标实体字符串对应的领域标识称为目标领域标识。需要说明的是,构造好第一字典树和各节点的失配指针后,后续就可以直接基于第一字典树进行多模式串匹配,而不必再次构造第一字典树。

请一并参见图2c,是本发明实施例提供的一种多模式串匹配的示意图。图2c是由实体字符串“南昌市”“南京市”“京都”“昌平区”构建而成的第一字典树(第一字典树中各节点之间的连接关系用实线表示),且该第一字典树的叶子节点均携带该实体字符串对应的领域标识,其中实体字符串“南昌市”和实体字符串“南京市”可以共用前缀,即共用节点1。采用宽度优先搜索原则,依次为节点1、节点2、节点3设置失配指针。由于上述3个节点与根节点“root”之间相连,因此上述3个节点的失配指针均指向根节点“root”。按照宽度优先搜索原则,继续为节点4、节点5、节点6、节点7设置失配指针。对节点4来说,将该节点作为目标节点,由于目标节点的父亲节点(即节点1)的失配指针指向根节点“root”,而根节点“root”的子节点中包括节点“昌”(节点3“昌”),因此,将目标节点的失配指针指向根节点“root”的子节点“昌”,即节点4的失配指针指向节点3。按照上述方式,可以为剩余的所有节点设置失配指针,如图2c中的虚线表示对应节点的失配指针所指向的节点。

设置好所有节点的失配指针后,根据图2c的第一字典树为目标文本“南京市南京都门前”执行多模式串匹配。首先从目标文本中第一个字符开始和上述第一字典树匹配,目标文本中的“南京市”可以匹配成功,且节点“市”是一个叶子节点,可以将匹配成功的实体字符串“南京市”在目标文本中的位置信息(起始位置、终止位置),以及与实体字符串“南京市”对应的领域标识输出,即输出[1,3,34],其中领域标识“34”对应行政单位。

从根节点“root”重新开始匹配目标文本中的剩余字符。重新从目标文本中的第四个字符“南”开始匹配,第四个字符“南”、第五个字符“京”可以和分别和节点1、节点5均匹配成功,但第一字典树中没有一个节点可以和第六个字符“都”匹配,因此在第一字典树中转向节点5的失配指针所指示的节点(即节点2)继续匹配,第五个字符“京”、第六个字符“都”分别和节点2、节点6匹配成功,且节点6“都”是一个叶子节点,可以将匹配成功的实体字符串“京都”在目标文本中的位置信息(起始位置、终止位置),以及与实体字符串“京都”对应的领域标识输出,即输出[5,6,34],其中领域标识“34”对应行政单位。从根节点“root”重新开始匹配目标文本中的剩余字符,剩余字符“门”和“前”均匹配失败,因此上述目标文本和图2c中的第一字典树匹配后,输出的是[1,3,34]和[5,6,34],即匹配成功的是实体字符串“南京市”和“京都”。

相似地,基于知识图谱中所有谓词字符串,构建字典树,称为第二字典树(如上述图1b所对应实施例中的字典树10e),同时,在第二字典树中,每个谓词字符串的最后一个字符对应的节点均携带该谓词字符串对应的同义词,同义词是与对应谓词字符串具有相同含义的词,且具有相同含义的多个谓词字符串可以对应同一个同义词,例如,谓词字符串:妻子、老婆、爱人、媳妇对应的同义词均是:wife(wife是妻子的英文单词)。构建完第二字典树后,为第二字典树中的每个节点设置失配指针,设置失配指针的具体过程可以参见上述为第一字典树中的各节点设置失配指针的步骤。

根据第二字典树和目标文本,执行多模式串匹配处理(多模式串匹配处理的具体过程可以参见上述在第一字典树中,基于目标文本执行多模式串匹配的步骤),匹配完成后,输出匹配成功的谓词字符串在目标文本中的位置信息(称为第二位置信息)以及该谓词字符串所对应的同义词,在目标文本中,将第二位置信息中的起始位置和终止位置之间的字符串作为目标谓词字符串,并将目标谓词字符串对应的同义词称为目标同义词。同样,构造好第二字典树和各节点的失配指针后,后续就可以直接基于第二字典树进行多模式串匹配,而不必再次构造第二字典树。需要说明的是,第一字典树和第二字典树可以相同,即第一字典树和第二字典树均是根据知识图谱的所有实体字符串和所有谓词字符串共同构造而成的。只需要将目标文本输入第一字典树(或第二字典树),进行一次多模式串匹配,从第一字典树(或第二字典树)中可以输出与第一字典树(或第二字典树)中的实体字符串匹配的第一位置信息、目标领域标识,以及输出与第一字典树(或第二字典树)中的谓词字符串匹配的第二位置信息、目标同义词。

可选的,若具有相同领域标识的目标实体字符串的数量不止一个,那么可以首先提取出具有相同目标领域标识的目标实体字符串。根据提取出来的实体字符串的第一位置信息,只保留具有最大第一位置信息的目标实体字符串,删除在提取出来的所有实体字符串中,除了具有最大第一位置信息的目标实体字符串以外的目标实体字符串。其中,具有最大第一位置信息的目标实体字符串是在具有相同目标领域标识的目标实体字符串对应的第一位置信息中,具有最大起始位置的目标实体字符串。

举例来说,目标文本为:四川省成都市邮编,基于第一字典树,输出的是目标实体字符串的第一位置信息(起始位置、终止位置)和目标领域标识:(1,3,34)、(4,6,34);其中(1,3,34)中的数值“1”、数值“3”、数值“34”表示一个目标实体字符串在目标文本中的起始位置、终止位置、目标领域标识,可以知道该目标实体字符串就是:四川省。(4,6,34)中的数值“4”、数值“6”、数值“34”表示一个目标实体字符串在目标文本中的起始位置、终止位置、目标领域标识,该目标实体字符串就是:成都市。由于目标实体字符串“成都市”的起始位置“4”大于目标实体字符串“四川省”的起始位置“1”,因此具有最大起始位置的目标实体字符串为:成都市,即具有最大第一位置信息的目标实体字符串是:成都市,后续可以将目标实体字符串“四川省”删除,而只保留目标实体字符串“成都市”。

步骤s103,将所述目标实体字符串和所述目标谓词字符串组合为目标查询文本,在知识库中查找与所述目标查询文本对应的查询结果,作为目标查询结果,并输出所述目标查询结果。

具体的,根据预设的语法规则将由第一位置信息确定的目标实体字符串和由第二位置信息确定的目标谓词字符串进行组合,组合后的文本称为第二辅助文本,其中语法规则可以是目标实体字符串在前,目标谓词字符串在后,这样在查找查询结果时不会混淆目标实体字符串和目标谓词字符串,进一步地提高查找问题答案的效率,且一个第二辅助文本中包括一个目标实体字符串和一个目标谓词字符串。检测第二辅助文本中目标实体字符串对应的第一位置信息和第二辅助文本中目标谓词字符串对应的第二位置信息之间是否存在重叠位置信息,重叠位置信息中的起始位置和终止位置既处于上述第一位置信息范围内,也处于上述第二位置信息范围内。将存在重叠位置信息的第二辅助文本删除,只保留没有重叠位置信息的第二辅助文本。将保留下来的第二辅助文本作为目标查询文本,目标查询文本就是目标文本以及用户的查询意图。在知识库中查找目标查询文本的查询结果,作为目标查询结果,以语音播报的方式或者字幕显示的方式输出查询到的目标查询结果。

举例来说,当第一字典树和第二字典树相同,且目标文本是:西安市长安区,匹配后输出的第一位置信息为(1,3),对应目标实体字符串为“西安市”;输出的第一位置信息为(4,6),对应目标实体字符串为“长安区”;输出的第二位置信息为(3,4),对应目标谓词字符串为“市长”,可以将上述2个目标实体字符串和1个目标谓词字符串组合,得到2个第二辅助文本:西安市市长、长安区市长,由于第二辅助文本“西安市市长”对应的第一位置信息“(1,3)”和第二位置信息“(3,4)”之间存在重叠位置信息,将第二辅助文本“西安市市长”删除。同理,第二辅助文本“长安区市长”对应的第一位置信息“(4,6)”和第二位置信息“(3,4)”之间也存在重叠位置信息,也将第二辅助文本“长安区市长”删除。即是目标文本“西安市长安区”不存在与之对应的目标查询为本。

本发明实施例根据知识图谱所包含的实体字符串和谓词字符串,从目标文本中查找出与知识图谱匹配的目标实体字符串和目标谓词字符串,从而根据目标实体字符串和目标谓词字符串确定目标文本的查询意图,可以摒弃查询文本中与问题无关的字符,准确识别出目标文本的查询意图,提高在知识库中查找目标文本答案的准确率。

请一并参见图3,是本发明实施例提供的另一种文本处理方法的流程示意图,文本处理方法包括如下步骤:

步骤s201获取目标文本以及知识图谱;所述知识图谱包括多个实体对应的实体字符串和多个谓词对应的谓词字符串。

步骤s202,在所有实体字符串中,查找属于所述目标文本的实体字符串,作为目标实体字符串,并在所有谓词字符串中,查找属于所述目标文本的谓词字符串,作为目标谓词字符串。

其中,步骤s201-步骤s202的具体实现方式可以参见上述图2a所对应实施例中的步骤s101-步骤s102。

步骤s203,将所述目标实体字符串和所述目标谓词字符串组合为第一辅助文本。

具体的,根据预设的语法规则将目标实体字符串和目标谓词字符串组合为文本,称为第一辅助文本,一个第一辅助文本包括一个目标实体字符串和一个目标谓词字符串。若有m个目标实体字符串,n个目标谓词字符串,那么组合而成的第一辅助文本的数量为:m*n个。

步骤s204,获取所述第一辅助文本中目标实体字符串对应的目标领域标识,并获取所述第一辅助文本中目标谓词字符串对应的目标同义词;所述目标领域标识用于表征所述目标实体字符串对应的目标实体所在的业务领域。

具体的,下面步骤s204-步骤s205以一个第一辅助文本为例,进行说明如何确定目标查询文本,若有多个第一辅助文本可以采用相同的步骤,分别确定目标查询文本。获取第一辅助文本中目标实体字符串对应的目标领域标识,并获取第一辅助文本中目标谓词字符串对应的目标同义词。其中,目标领域标识用于表征目标实体字符串对应的目标实体所在的业务领域,目标领域标识可以用字母、数字或者字母数字的组合表示。例如,明星a是一个歌手、演员和导演,那么歌手、演员和导演就是明星a所在的业务领域。

步骤s205,若在第一关系库中存在所述目标领域标识和所述目标同义词之间的映射关系,则将所述第一辅助文本确定为所述目标查询文本,在知识库中查找与所述目标查询文本对应的查询结果,作为目标查询结果,并输出所述目标查询结果;所述第一关系库中包括多个领域标识以及与每个领域标识对应的至少一个同义词。

具体的,第一关系库(如上述图1b中的数据库10f)中包括多个领域标识,以及与每个领域标识对应的所有可能谓词的同义词。例如,领域标识“5”对应的业务领域为:导演,领域标识“5”对应的所有可能的谓词分别为:姓名、性别、妻子、儿女、歌曲,上述谓词的同义词分别为:name、gender、wife、son、song。因此,第一关系库中就包括:5#name、gender、wife、son、song。若在第一关系库中存在目标领域标识和目标同义词之间的映射关系,则将第一辅助文本确定为目标查询文本,若在第一关系库中不存在目标领域标识和目标同义词之间的映射关系,则将该第一辅助文本删除。目标领域标识和目标同义词存在映射关系是指在第一关系库中,目标领域标识所对应的所有同义词中,存在一个同义词和目标同义词相同。例如,第一关系库中包括:5#name、gender、wife、son、song,若目标领域标识为5,且目标同义词为:wife,那么目标领域标识“5”和目标同义词“wife”之间在第一关系库中就存在映射关系;若目标领域标识为5,且目标同义词为:birthday,那么目标领域标识“5”和目标同义词“birthday”之间在第一关系库中就不存在映射关系。确定了目标查询文本后,在知识库中查找目标查询文本的查询结果,作为目标查询结果,以语音播报的方式或者字幕显示的方式输出查询到的目标查询结果。

可选的,在确定了目标实体字符串和目标谓词字符串之间存在映射关系后,可以进一步进行验证。仍以一个第一辅助文本为例执行进一步地验证,若有多个第一辅助文本可以采用相同的步骤,分别进行进一步地验证。验证步骤如下:第二关系库中包括多个领域标识、与每个领域标识对应的所有可能谓词的同义词、与每个同义词对应的谓词别称。例如,领域标识“5”对应的业务领域为:导演,领域标识“5”对应同义词分别为:name、gender、birthday。同义词“name”对应的谓词别称包括:姓名、名字、称呼、大名。因此,第二关系库中就包括:(5|name#姓名、5|name#名字、5|name#称呼、5|name#大名)。在第二关系库中,提取与第一辅助文本中目标领域标识和目标同义词对应的所有谓词别称,均称为样本谓词别称。若上述多个样本谓词别称中存在一个样本谓词别称和目标谓词字符串相同,说明验证通过,即可以将验证通过的第一辅助文本确定为目标查询文本;若上述多个样本谓词别称中不存在任何一个样本谓词别称和目标谓词字符串相同,说明验证不通过,将验证不通过的第一辅助文本删除。

确定了目标查询文本后,在知识库中查找目标查询文本的查询结果,作为目标查询结果,以语音播报的方式或者字幕显示的方式输出查询到的目标查询结果。例如,第二关系库中包括:(5|name#姓名、5|name#名字、5|name#称呼、5|name#大名),若第一辅助文本中目标实体字符串对应的目标领域标识为:5,第一辅助文本中目标谓词字符串为:名称,目标谓词字符串“名称”对应的目标同义词为:name;由于与目标领域标识“5”和目标同义词“name”对应的所有谓词别称(样本谓词别称)包括:姓名、名字、称呼、大名;而目标谓词字符串“名称”并不存在于上述4个谓词别称中,因此该第一辅助文本验证不通过,即是该第一辅助文本不能被确定为目标查询文本。

可选的,为了获取用户所关注的业务领域,提高产品决策的正确率,可以从海量的查询文本中统计用户的高频意图。获取多个待测试文本,为了提高统计结果的准确率,待测试文本的数量越多越好。为上述多个待测试文本设置轮询优先级。根据轮询优先级,从多个待测试文本中选择出用于当前轮询的待测试文本,称为辅助测试文本,当然待测试文本的轮询优先级越高,就越早被确定为辅助测试文本。在知识图谱的所有实体字符串中,查找属于辅助测试文本的实体字符串,并在知识图谱的所有谓词字符串中,查找属于辅助测试文本的谓词字符串。

根据预设的语法规则将查找出来的实体字符串和查找出来的谓词字符串组合为文本,称为测试查询文本,其中查找实体字符串和谓词字符串的具体过程可以参见上述图2a中的步骤s102,且将查找出来的实体字符串和谓词字符串组合为文本的具体过程可以参见上述图2a中的步骤s102,以及上述图3中的步骤s203-步骤s205。在知识库中,查找与测试查询文本对应的查询结果,作为测试查询结果。若有多个待测试文本,按照轮询优先级将多个待测试文本依次作为辅助测试文本,分别查找每个待测试文本对应的测试查询文本和测试查询结果。当每个待测试文本均被确定为辅助测试文本时,停止轮询,并统计具有相同查询结果的测试查询文本的数量。根据统计出来的数量就可以确定用户最关注的业务领域,可以为后期的产品决策提供数据支持。

本发明实施例根据知识图谱所包含的实体字符串和谓词字符串,从目标文本中查找出与知识图谱匹配的目标实体字符串和目标谓词字符串,从而根据目标实体字符串和目标谓词字符串确定目标文本的查询意图,可以摒弃查询文本中与问题无关的字符,准确识别出目标文本的查询意图,提高在知识库中查找目标文本答案的准确率。

请一并参见图4,是本发明实施例提供的另一种文本处理方法的流程示意图,文本处理方法包括如下步骤:

步骤s301,获取目标文本和知识图谱;知识图谱包括多个实体对应的实体字符串和多个谓词对应的谓词字符串。

步骤s302,在多个实体字符串中查找属于目标文本的实体字符串,作为目标实体字符串,并在多个谓词字符串中查找属于目标文本的谓词字符串,作为目标谓词字符串。

其中,步骤s301-步骤s302的具体实现方式可以参见上述图2a所对应实施例中的步骤s101-步骤s102。

步骤s303,将目标实体字符串和目标谓词字符串组合为文本。

具体的,将携带目标领域标识的目标实体字符串和携带目标同义词的目标谓词字符串根据预设的语法规则组合和文本,一个文本中包括一个目标实体字符串和一个目标谓词字符串,语法规则可以是目标实体字符串在前,目标谓词字符串在后。

步骤s304,对文本进行校验、筛选。

具体的,根据第一关系库中所记录的多个领域标识,以及每个领域标识对应的多个同义词,检测目标领域标识和目标同义词是否存在映射关系,若存在映射关系,则校验通过;若不存在映射关系,则校验不通过。进一步地,还可以根据第二关系库中所记录的多个领域标识,每个领域标识对应的多个同义词,以及每个同义词对应的多个谓词别称,检测在目标同义词对应的所有谓词别称中,是否存在和目标谓词字符串相同的谓词别称,若存在,则验证通过;若不存在,则验证不通过。进一步地,还可以检测文本中目标实体字符串对应的第一位置信息和文本中目标谓词字符串对应的第二位置信息之间是否存在重叠位置信息,若存在重叠位置信息,则验证不通过;若不存在重叠位置信息,则验证通过。对于验证不通过的文本,可以进行删除。

步骤s305,将校验通过的文本作为目标查询文本,输出目标查询文本。

具体的,将校验通过的文本确定为目标查询文本,并显示目标查询文本,用于后续人工标注,由人工标注目标查询文本是否能够表示目标文本的查询意图,即是由人工检测目标查询文本中的目标实体字符串和目标谓词字符串是否准确对应目标文本中的实体和谓词。

步骤s306,在知识库中查找目标查询文本对应的查询结果,作为目标查询结果,并输出目标查询结果。

具体的,在知识库中查找目标查询文本的查询结果,作为目标查询结果,以语音播报的方式或者字幕显示的方式输出查询到的目标查询结果,以使用户可以直接获取到目标查询结果。

本发明实施例通过获取目标文本以及知识图谱;知识图谱包括多个实体对应的实体字符串和多个谓词对应的谓词字符串;在所有实体字符串中,查找属于目标文本的实体字符串,作为目标实体字符串,并在所有谓词字符串中,查找属于目标文本的谓词字符串,作为目标谓词字符串;将目标实体字符串和目标谓词字符串组合为目标查询文本,在知识库中查找与目标查询文本对应的查询结果,作为目标查询结果,并输出目标查询结果。上述可知,根据知识图谱所包含的实体字符串和谓词字符串,从目标文本自身中查找出目标实体字符串和目标谓词字符串,从而根据目标实体字符串和目标谓词字符串确定目标文本的查询意图,可以摒弃查询文本中与问题无关的字符,准确识别出目标文本的查询意图,提高在知识库中查找目标文本答案的准确率。

进一步的,请参见图5,是本发明实施例提供的一种文本处理装置的结构示意图。如图5所示,文本处理装置1可以包括:获取模块11、第一查找模块12、第二查找模块13、组合模块14、输出模块15;

获取模块11,用于获取目标文本以及知识图谱;所述知识图谱包括多个实体对应的实体字符串和多个谓词对应的谓词字符串;

具体的,获取模块11获取目标文本,目标文本的获取方式可以是由用户手动输入文本,将用户输入的文本作为目标文本;也可以是采集用户的语音,将上述语音转换为文本,并将转换后的文本称为目标文本。获取模块11获取知识图谱,知识图谱中包括多个实体对应的实体字符串,以及多个谓词对应的谓词字符串,实体字符串是由实体对应的字符组合而成;谓词字符串是由谓词对应的字符组合而成。其中知识图谱是知识领域的映射地图,主要用于可视化实体的属性、属性值,以及实体和实体之间的关系。谓词就是表示两个实体之间的关系以及实体的属性。举例来说,对文本“中国的人口数量”来说,实体就是“中国”,谓词就是“人口数量”;又例如,对文本“a的妻子是谁”来说,实体就是“a”,谓词是“妻子”。

第一查找模块12,用于在所有实体字符串中,查找属于所述目标文本的实体字符串,作为目标实体字符串;

具体的,为了提取出目标文本中所有可能的实体字符串以及所有可能的谓词字符串,第一查找模块12可以基于第一字典树和目标文本执行多模式串匹配处理,即是在知识图谱所对应的所有实体字符串中,查找属于目标文本的实体字符串,称为目标实体字符串。匹配完后,第一查找模块12输出的是匹配成功的实体字符串在目标文本中的位置信息(称为第一位置信息)以及该实体字符串所对应的领域标识,其中,位置信息包括起始位置和终止位置。将在目标文本中,第一位置信息中起始位置和终止位置之间的字符串作为目标实体字符串,并将目标实体字符串对应的领域标识称为目标领域标识。第一字典树是由多个实体字符串构建而成的字典树,在第一字典树中,每个实体字符串的最后一个字符对应的节点均携带该实体字符串对应的领域标识,领域标识的数量可以是一个也可以是多个,领域标识是用于表示实体字符串对应的实体所在的业务领域。

第二查找模块13,用于在所有谓词字符串中,查找属于所述目标文本的谓词字符串,作为目标谓词字符串;

具体的,第二查找模块13可以基于第二字典树和目标文本执行多模式串匹配处理,在知识图谱所对应的所有谓词字符串中,查找属于目标文本的谓词字符串,称为目标谓词字符串。第二查找模块13输出匹配成功的谓词字符串在目标文本中的位置信息(称为第二位置信息)以及该谓词字符串所对应的同义词,在目标文本中,将第二位置信息中的起始位置和终止位置之间的字符串作为目标谓词字符串,并将目标谓词字符串对应的同义词称为目标同义词。第二字典树是由多个谓词字符串构建而成的字典树,在第二字典树中,每个谓词字符串的最后一个字符对应的节点均携带该谓词字符串对应的同义词,同义词是与对应谓词字符串具有相同含义的词,且具有相同含义的多个谓词字符串可以对应同一个同义词,例如,谓词字符串:妻子、老婆、爱人、媳妇对应的同义词均是:wife(wife是妻子的英文单词)。

组合模块14,用于将所述目标实体字符串和所述目标谓词字符串组合为目标查询文本;

具体的,根据预设的语法规则将目标实体字符串和由目标谓词字符串进行组合,组合模块14组合后的文本称为第二辅助文本,其中语法规则可以是目标实体字符串在前,目标谓词字符串在后,这样在查找查询结果时不会混淆目标实体字符串和目标谓词字符串,进一步地提高查找问题答案的效率,且一个第二辅助文本中包括一个目标实体字符串和一个目标谓词字符串。组合模块14检测第二辅助文本中目标实体字符串对应的第一位置信息和第二辅助文本中目标谓词字符串对应的第二位置信息之间是否存在重叠位置信息,重叠位置信息中的起始位置和终止位置既处于上述第一位置信息范围内,也处于上述第二位置信息范围内。组合模块14将存在重叠位置信息的第二辅助文本删除,只保留没有重叠位置信息的第二辅助文本。将保留下来的第二辅助文本作为目标查询文本,目标查询文本就是目标文本以及用户的查询意图。

输出模块15,用于在知识库中查找与所述目标查询文本对应的查询结果,作为目标查询结果,并输出所述目标查询结果。

具体的,输出模块15在知识库中查找目标查询文本的查询结果,作为目标查询结果,以语音播报的方式或者字幕显示的方式输出查询到的目标查询结果。

请参见图5,组合模块14可以包括:第一组合单元141、获取单元142、确定单元143。

第一组合单元141,用于将所述目标实体字符串和所述目标谓词字符串组合为第一辅助文本;

获取单元142,用于获取所述第一辅助文本中与目标实体字符串对应的目标领域标识,并获取所述第一辅助文本中与目标谓词字符串对应的目标同义词;所述目标领域标识用于表征与所述目标实体字符串对应的目标实体所在的业务领域;

确定单元143,用于若在第一关系库中存在所述目标领域标识和所述目标同义词之间的映射关系,则将所述第一辅助文本确定为所述目标查询文本;所述第一关系库中包括多个领域标识以及与每个领域标识对应的至少一个同义词。

其中,第一组合单元141、获取单元142、确定单元143的具体功能实现方式可以参见上述图3对应实施例中的步骤s203-步骤s205,这里不再进行赘述。

请参见图5,确定单元143可以包括:提取子单元1431、第一确定子单元1432。

提取子单元1431,用于在第二关系库中,提取与所述目标领域标识和所述目标同义词对应的谓词别称,作为样本谓词别称;所述第二关系库中包括多个领域标识、与每个领域标识对应的至少一个同义词、以及与每个同义词对应的至少一个谓词别称;

第一确定子单元1432,用于若存在一个样本谓词别称和所述目标谓词字符串相同,则将所述第一辅助文本确定为所述目标查询文本。

其中,提取子单元1431、第一确定子单元1432的具体功能实现方式可以参见上述图3对应实施例中的步骤s205,这里不再进行赘述。

请参见图5,第一查找模块12可以包括:第一构建单元121、第一设置单元122、第一匹配单元123、第一提取单元124。

第一构建单元121,用于根据所述所有实体字符串,构建第一字典树;所述第一字典树中的一个节点包括一个实体字符串中的一个字符;

第一设置单元122,用于根据宽度优先搜索,为所述第一字典树中的各节点设置失配指针;

第一匹配单元123,用于根据所述第一字典树和所述第一字典树中各节点对应的失配指针,将所述目标文本进行多模式串匹配处理,得到所述目标文本中与所述第一字典树中的实体字符串相匹配的字符串的第一位置信息;

第一提取单元124,用于在所述目标文本中,将所述第一位置信息中的起始位置和终止位置之间的字符串,作为所述目标实体字符串,并从所述第一字典树中获取与所述目标实体字符串对应的目标领域标识。

其中,第一构建单元121、第一设置单元122、第一匹配单元123、第一提取单元124的具体功能实现方式可以参见上述图2a对应实施例中的步骤s102,这里不再进行赘述。

请参见图5,文本处理装置1可以包括:获取模块11、第一查找模块12、第二查找模块13、组合模块14、输出模块15,还可以包括:提取模块16、删除模块17。

提取模块16,用于提取出具有相同目标领域标识的目标实体字符串;

删除模块17,用于根据提取出来的目标实体字符串对应的第一位置信息,保留具有最大第一位置信息的目标实体字符串,并删除在具有相同目标领域标识的所有目标实体字符串中,除所述具有最大第一位置信息的目标实体字符串以外的目标实体字符串;所述具有最大第一位置信息的目标实体字符串是在所有具有相同目标领域标识的目标实体字符串对应的第一位置信息中,具有最大起始位置的目标实体字符串。

其中,提取模块16、删除模块17的具体功能实现方式可以参见上述图2a对应实施例中的步骤s103,这里不再进行赘述。

请参见图5,第二查找模块13可以包括:第二构建单元131、第二设置单元132、第二匹配单元133、第二提取单元134。

第二构建单元131,用于根据所述所有谓词字符串,构建第二字典树;所述第二字典树中的一个节点包括一个谓词字符串中的一个字符;

第二设置单元132,用于根据宽度优先搜索,为所述第二字典树中的各节点设置失配指针;

第二匹配单元133,用于根据所述第二字典树和所述第二字典树中各节点对应的失配指针,将所述目标文本进行多模式串匹配处理,得到所述目标文本中与所述第二字典树中的谓词字符串相匹配的字符串的第二位置信息;

第二提取单元134,用于在所述目标文本中,将所述第二位置信息中的起始位置和终止位置之间的字符串,作为所述目标谓词字符串,并从所述第二字典树中获取与所述目标谓词字符串对应的目标同义词。

其中,第二构建单元131、第二设置单元132、第二匹配单元133、第二提取单元134的具体功能实现方式可以参见上述图2a对应实施例中的步骤s102,这里不再进行赘述。

请参见图5,第一字典树和所述第二字典树相同,且所述第一字典树和所述第二字典树均是由所述所有实体字符串和所述所有谓词字符串共同构建而成;

组合模块可以包括:第一组合单元141、获取单元142、确定单元143,还可以包括:第二组合单元144、删除单元145。

第二组合单元144,用于将所述目标实体字符串和所述目标谓词字符串组合为第二辅助文本;

删除单元145,用于若所述第二辅助文本所对应的第一位置信息和第二位置信息之间存在重叠位置信息,则将存在重叠位置信息的第二辅助文本删除;所述重叠位置信息中的起始位置和终止位置既处于所述第一位置信息的范围内,也处于所述第二位置信息的范围内;

删除单元145,还用于将删除后剩余的第二辅助文本确定为所述目标查询文本。

其中,第二组合单元144、删除单元145的具体功能实现方式可以参见上述图2a对应实施例中的步骤s103,这里不再进行赘述。

请参见图5,文本处理装置1可以包括:获取模块11、第一查找模块12、第二查找模块13、组合模块14、输出模块15,提取模块16、删除模块17,还可以包括:选取模块18、统计模块19。

所述获取模块11,还用于获取多个待测试文本,为所述多个待测试文本设置轮询优先级;

选取模块18,用于根据所述轮询优先级,在所述多个待测试文本中选取用于当前轮询的辅助测试文本;

所述第一查找模块12,还用于在所述所有实体字符串中,查找属于所述辅助测试文本的实体字符串,并在所述所有谓词字符串中,查找属于所述辅助测试文本的谓词字符串;

所述组合模块15,还用于将查找到的实体字符串和谓词字符串组合为测试查询文本,在所述知识库中查找与所述测试查询文本对应的查询结果,作为测试查询结果;

统计模块19,用于当每个待测试文本均被确定为辅助测试文本时,停止轮询,并统计具有相同测试查询结果的测试查询文本的数量。

其中,获取模块11、选取模块18、第一查找模块12、组合模块15、统计模块19的具体功能实现方式可以参见上述图3对应实施例中的步骤s305,这里不再进行赘述。

本发明实施例根据知识图谱所包含的实体字符串和谓词字符串,从目标文本中查找出与知识图谱匹配的目标实体字符串和目标谓词字符串,从而根据目标实体字符串和目标谓词字符串确定目标文本的查询意图,可以摒弃查询文本中与问题无关的字符,准确识别出目标文本的查询意图,提高在知识库中查找目标文本答案的准确率。

进一步地,请参见图6,是本发明实施例提供的一种电子设备的结构示意图。如图6所示,上述图6中的文本处理装置1可以应用于所述电子设备1000,所述电子设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,所述电子设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(display)、键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图6所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。

在图6所示的电子设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:

获取目标文本以及知识图谱;所述知识图谱包括多个实体对应的实体字符串和多个谓词对应的谓词字符串;

在所有实体字符串中,查找属于所述目标文本的实体字符串,作为目标实体字符串,并在所有谓词字符串中,查找属于所述目标文本的谓词字符串,作为目标谓词字符串;

将所述目标实体字符串和所述目标谓词字符串组合为目标查询文本,在知识库中查找与所述目标查询文本对应的查询结果,作为目标查询结果,并输出所述目标查询结果。

在一个实施例中,所述处理器1001在执行将所述目标实体字符串和所述目标谓词字符串组合为目标查询文本时,具体执行以下步骤:

将所述目标实体字符串和所述目标谓词字符串组合为第一辅助文本;

获取所述第一辅助文本中与目标实体字符串对应的目标领域标识,并获取所述第一辅助文本中与目标谓词字符串对应的目标同义词;所述目标领域标识用于表征与所述目标实体字符串对应的目标实体所在的业务领域;

若在第一关系库中存在所述目标领域标识和所述目标同义词之间的映射关系,则将所述第一辅助文本确定为所述目标查询文本;所述第一关系库中包括多个领域标识以及与每个领域标识对应的至少一个同义词。

在一个实施例中,所述处理器1001在执行将所述第一辅助文本确定为所述目标查询文本时,具体执行以下步骤:

在第二关系库中,提取与所述目标领域标识和所述目标同义词对应的谓词别称,作为样本谓词别称;所述第二关系库中包括多个领域标识、与每个领域标识对应的至少一个同义词、以及与每个同义词对应的至少一个谓词别称;

若存在一个样本谓词别称和所述目标谓词字符串相同,则将所述第一辅助文本确定为所述目标查询文本。

在一个实施例中,所述处理器1001在执行在所有实体字符串中,查找属于所述目标文本的实体字符串,作为目标实体字符串时,具体执行以下步骤:

根据所述所有实体字符串,构建第一字典树;所述第一字典树中的一个节点包括一个实体字符串中的一个字符;

根据宽度优先搜索,为所述第一字典树中的各节点设置失配指针;

根据所述第一字典树和所述第一字典树中各节点对应的失配指针,将所述目标文本进行多模式串匹配处理,得到所述目标文本中与所述第一字典树中的实体字符串相匹配的字符串的第一位置信息;

在所述目标文本中,将所述第一位置信息中的起始位置和终止位置之间的字符串,作为所述目标实体字符串,并从所述第一字典树中获取与所述目标实体字符串对应的目标领域标识。

在一个实施例中,所述处理器1001还执行以下步骤:

提取出具有相同目标领域标识的目标实体字符串;

根据提取出来的目标实体字符串对应的第一位置信息,保留具有最大第一位置信息的目标实体字符串,并删除在具有相同目标领域标识的所有目标实体字符串中,除所述具有最大第一位置信息的目标实体字符串以外的目标实体字符串;所述具有最大第一位置信息的目标实体字符串是在所有具有相同目标领域标识的目标实体字符串对应的第一位置信息中,具有最大起始位置的目标实体字符串。

在一个实施例中,所述处理器1001在执行在所有谓词字符串中,查找属于所述目标文本的谓词字符串,作为目标谓词字符串时,具体执行以下步骤:

根据所述所有谓词字符串,构建第二字典树;所述第二字典树中的一个节点包括一个谓词字符串中的一个字符;

根据宽度优先搜索,为所述第二字典树中的各节点设置失配指针;

根据所述第二字典树和所述第二字典树中各节点对应的失配指针,将所述目标文本进行多模式串匹配处理,得到所述目标文本中与所述第二字典树中的谓词字符串相匹配的字符串的第二位置信息;

在所述目标文本中,将所述第二位置信息中的起始位置和终止位置之间的字符串,作为所述目标谓词字符串,并从所述第二字典树中获取与所述目标谓词字符串对应的目标同义词。

在一个实施例中,所述处理器1001在执行将所述目标实体字符串和所述目标谓词字符串组合为目标查询文本时,具体执行以下步骤:

将所述目标实体字符串和所述目标谓词字符串组合为第二辅助文本;

若所述第二辅助文本所对应的第一位置信息和第二位置信息之间存在重叠位置信息,则将存在重叠位置信息的第二辅助文本删除;所述重叠位置信息中的起始位置和终止位置既处于所述第一位置信息的范围内,也处于所述第二位置信息的范围内;

将删除后剩余的第二辅助文本确定为所述目标查询文本。

在一个实施例中,所述处理器1001还执行以下步骤:

获取多个待测试文本,为所述多个待测试文本设置轮询优先级;

根据所述轮询优先级,在所述多个待测试文本中选取用于当前轮询的辅助测试文本;

在所述所有实体字符串中,查找属于所述辅助测试文本的实体字符串,并在所述所有谓词字符串中,查找属于所述辅助测试文本的谓词字符串;

将查找到的实体字符串和谓词字符串组合为测试查询文本,在所述知识库中查找与所述测试查询文本对应的查询结果,作为测试查询结果;

当每个待测试文本均被确定为辅助测试文本时,停止轮询,并统计具有相同测试查询结果的测试查询文本的数量。

本发明实施例根据知识图谱所包含的实体字符串和谓词字符串,从目标文本中查找出与知识图谱匹配的目标实体字符串和目标谓词字符串,从而根据目标实体字符串和目标谓词字符串确定目标文本的查询意图,可以摒弃查询文本中与问题无关的字符,准确识别出目标文本的查询意图,提高在知识库中查找目标文本答案的准确率。

应当理解,本发明实施例中所描述的电子设备1000可执行前文图2a到图4所对应实施例中对所述文本处理方法的描述,也可执行前文图5所对应实施例中对所述文本处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。

此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的文本处理装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图2a到图4所对应实施例中对所述文本处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

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