查询方法、装置、电子设备、存储介质及计算机程序产品与流程

文档序号:39043475发布日期:2024-08-16 16:12阅读:15来源:国知局
查询方法、装置、电子设备、存储介质及计算机程序产品与流程

本技术涉及知识库检索,具体而言,涉及一种查询方法、装置、电子设备、存储介质及计算机程序产品。


背景技术:

1、随着互联网的发展,faq(frequently-asked questions,常见问题解答)开始被越来越多的网站和应用程序所采用,成为用户自助服务和减少客服成本的重要工具。然而,对于对大多数faq系统而言,知识搜索查询流程一般仅依靠模糊搜索算法,存在搜索结果不完全,召回率低,通用分词器功能单一,扩展性差等技术问题。

2、针对上述的问题,目前尚未提出有效的解决方案。


技术实现思路

1、本技术实施例提供了一种查询方法、装置、电子设备、存储介质及计算机程序产品,以至少解决由于相关技术中对于常见问题解答数据的搜索查询,大多仅依靠模糊搜索算法,造成的查询结果不全面、匹配效果差的技术问题。

2、根据本技术实施例的一个方面,提供了一种查询方法,包括:获取查询字符串,并确定查询字符串对应的词库,其中,词库对应一个前缀树结构,前缀树结构用于表征词库中包含的所有字符串;依据前缀树结构,对查询字符串进行分词,得到分词结果,其中,分词结果中的字符串包含于词库中;确定问题解答数据索引表中,与分词结果中字符串对应的问题文本,其中,问题解答数据索引表中包含:多个关键词字符串、以及与关键词字符串对应的问题文本;确定查询字符串与多个问题文本之间的相似度,并将相似度最大的问题文本所对应的解答文本,确定为查询字符串对应的查询结果。

3、可选地,前缀树结构的根节点为空节点,除根节点外的每一个节点对应一个字符;方法还包括:初始化一个空的前缀树,对于词库中的每个字符串,均从根节点开始构造前缀树结构;从字符串的第一个字符开始,判断字符是否已在当前节点的子节点中存在;若存在,则跳转至对应当前字符的子节点;若不存在,则为当前节点添加一个新的子节点,并将当前字符设置为新的子节点对应的字符,然后跳转至新的子节点;继续判断字符串中的下一个字符,直至词库中的全部字符串的所有字符均判断结束,得到词库对应的前缀树结构。

4、可选地,方法还包括:在跳转至的子节点所对应的字符为当前字符串的最后一个字符的情况下,为子节点添加词语结束标记,其中,词语结束标记用于表征目标路径上的各个节点所对应的字符,依次组合后得到的字符串,为词库中包含的一个完整的字符串,目标路径为前缀树结构中,从前缀树的根节点开始至词语结束标记对应的子节点的路径。

5、可选地,依据前缀树结构,对查询字符串进行分词包括:对查询字符串中的各个字符分别执行判断流程,其中,在判断流程中,首先从前缀树结构的根节点开始,判断当前字符是否在当前节点的子节点中存在;若存在,则跳转至对应当前字符的子节点,并继续判断查询字符串中紧邻当前字符的下一个字符是否在当前节点的子节点中存在;在跳转至的子节点标记有词语结束标记的情况下,将从前缀树的根节点开始至标记有词语结束标记的子节点的目标路径对应的字符串,确定为查询字符串的一个分词字符串;若当前进行判断的字符在当前节点的子节点中不存在,则结束对从根节点开始的字符的判断流程;在查询字符串中的所有字符均从前缀树结构的根节点开始执行过判断流程之后,依据确定的分词字符串,生成查询字符串对应的分词结果。

6、可选地,方法还包括:对问题解答数据中问题文本进行分词,得到关键词集合,其中,问题解答数据中包含:多个问题文本、以及与问题文本对应的解答文本,关键词集合中包括:问题文本中包含的字符串长度从1至n的全部关键词字符串,n为问题文本的总长度;将包含关键词字符串的全部问题文本,确定为与关键词字符串对应的问题文本,生成问题解答数据索引表。

7、可选地,确定查询字符串与多个问题文本之间的相似度包括:对查询字符串进行向量化,得到第一向量,以及对问题文本进行向量化,得到第二向量;确定第一向量和第二向量之间的余弦相似度;依据问题文本中命中词的长度和数量,确定查询字符串与问题文本之间的命中词相似度,其中,命中词为问题文本中与查询字符串对应的分词结果中字符串所匹配的字符串;依据余弦相似度、命中词相似度、余弦相似度对应的第一权重、以及命中词相似度对应的第二权重,确定查询字符串与问题文本之间的相似度。

8、可选地,依据问题文本中命中词的长度和数量,确定查询字符串与问题文本之间的命中词相似度包括:确定问题文本的第一长度、以及查询字符串的第二长度;确定问题文本中与查询字符串所匹配的命中词的总长度;依据第一长度、第一长度、以及命中词的总长度,确定命中词长度得分;确定问题文本对应的第一分词数量、以及查询字符串对应的第二分词数量;依据第一分词数量、第二分词数量、以及命中词的数量,确定命中词数量得分;依据命中词长度得分和命中词数量得分,确定命中词相似度。

9、根据本技术实施例的另一个方面,还提供了一种查询装置,包括:词库确定模块,用于获取查询字符串,并确定查询字符串对应的词库,其中,词库对应一个前缀树结构,前缀树结构用于表征词库中包含的所有字符串;分词处理模块,用于依据前缀树结构,对查询字符串进行分词,得到分词结果,其中,分词结果中的字符串包含于词库中;索引搜索模块,用于确定问题解答数据索引表中,与分词结果中字符串对应的问题文本,其中,问题解答数据索引表中包含:多个关键词字符串、以及与关键词字符串对应的问题文本;评分比较模块,用于确定查询字符串与多个问题文本之间的相似度,并将相似度最大的问题文本所对应的解答文本,确定为查询字符串对应的查询结果。

10、根据本技术实施例的又一方面,还提供了一种电子设备,包括:存储器和处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行查询方法。

11、根据本技术实施例的再一方面,还提供了一种非易失性存储介质,非易失性存储介质包括存储的计算机程序,其中,非易失性存储介质所在设备通过运行计算机程序执行查询方法。

12、根据本技术实施例的再一方面,还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现查询方法的步骤。

13、在本技术实施例中,采用获取查询字符串,并确定查询字符串对应的词库,其中,词库对应一个前缀树结构,前缀树结构用于表征词库中包含的所有字符串;依据前缀树结构,对查询字符串进行分词,得到分词结果,其中,分词结果中的字符串包含于词库中;确定问题解答数据索引表中,与分词结果中字符串对应的问题文本,其中,问题解答数据索引表中包含:多个关键词字符串、以及与关键词字符串对应的问题文本;确定查询字符串与多个问题文本之间的相似度,并将相似度最大的问题文本所对应的解答文本,确定为查询字符串对应的查询结果的方式,通过在搜索查询时,首先利用词库模块对应的前缀树结构对输入内容进行分词,再利用分词结果进行匹配,并引入多种相似度计算方法来确定最佳的匹配结果,达到了提高faq查询结果的准确性和匹配度、提升查询效果的目的,进而解决了由于相关技术中对于常见问题解答数据的搜索查询,大多仅依靠模糊搜索算法,造成的查询结果不全面、匹配效果差技术问题。

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