数据搜索方法、装置、计算机设备及计算机可读存储介质制造方法及图纸

技术编号:37976724 阅读:13 留言:0更新日期:2023-06-30 09:51
本申请公开了一种数据搜索方法、装置、计算机设备及计算机可读存储介质。方法通过获取查询数据,查询数据包括至少一个查询词;对查询数据进行语义分析,并根据分析结果构建查询数据对应的语法树;计算候选文档库包含的多个候选文档中每一查询词的权重值,并基于权重值构建查询数据对应的第一倒排索引列表;根据语法树中的逻辑节点更新第一倒排索引列表,得到第二倒排索引列表;基于第二倒排索引列表查询与查询数据匹配的预设数量个目标候选文档。该方法可以提高数据搜索结果的准确性。方法可以提高数据搜索结果的准确性。方法可以提高数据搜索结果的准确性。

【技术实现步骤摘要】
数据搜索方法、装置、计算机设备及计算机可读存储介质


[0001]本申请涉及计算机
,具体涉及一种数据搜索方法、装置、计算机设备及计算机可读存储介质。

技术介绍

[0002]近年来,互联网技术发展迅速,使得人们获取信息的成本大幅降低,人类社会进入了知识爆炸的时代。
[0003]搜索引擎是互联网时代人们获取信息的最主要来源之一,搜索引擎可以根据用户输入的查询数据,采用一定的算法和侧裂从互联网中检索出用户期望的文档信息。
[0004]目前,搜索引擎根据用户输入的查询数据进行数据搜索的准确性较低。

技术实现思路

[0005]本申请实施例提供一种数据搜索方法、装置、计算机可读存储介质及计算机设备,该数据搜索方法可以有效提升数据搜索的准确性。
[0006]本申请第一方面提供一种数据搜索方法,方法包括:
[0007]获取查询数据,所述查询数据包括至少一个查询词;
[0008]对所述查询数据进行语义分析,并根据分析结果构建所述查询数据对应的语法树;
[0009]计算候选文档库包含的多个候选文档中每一查询词的权重值,并基于所述权重值构建所述查询数据对应的第一倒排索引列表;
[0010]根据所述语法树中的逻辑节点更新所述第一倒排索引列表,得到第二倒排索引列表;
[0011]基于所述第二倒排索引列表查询与所述查询数据匹配的预设数量个目标候选文档。
[0012]相应的,本申请第二方面提供一种数据搜索装置,装置包括:
[0013]获取单元,用于获取查询数据,所述查询数据包括至少一个查询词;
[0014]分析单元,用于对所述查询数据进行语义分析,并根据分析结果构建所述查询数据对应的语法树;
[0015]构建单元,用于计算候选文档库包含的多个候选文档中每一查询词的权重值,并基于所述权重值构建所述查询数据对应的第一倒排索引列表;
[0016]更新单元,用于根据所述语法树中的逻辑节点更新所述第一倒排索引列表,得到第二倒排索引列表;
[0017]查询单元,用于基于所述第二倒排索引列表查询与所述查询数据匹配的预设数量个目标候选文档。
[0018]在一些实施例中,所述分析单元,包括:
[0019]第一分析子单元,用于对所述查询数据进行语义分析,确定所述查询数据中的短
语数据以及每一查询词的同义词,所述短语数据包含至少两个关联的查询词;
[0020]第一构建子单元,用于以所述短语数据为与节点、每一查询词与对应的同义词为或节点构建语法树。
[0021]在一些实施例中,所述第一第一倒排索引列表为分块倒排索引列表,所述更新单元,包括:
[0022]第一确定子单元,用于在所述第一倒排索引列表中确定所述语法树中每一逻辑节点对应的多个第一分块倒排索引,所述分块倒排索引包括多个倒排块;
[0023]第二确定子单元,用于根据每一逻辑节点的逻辑关系以及对应的多个第一分块倒排索引确定每一逻辑节点对应的第二分块倒排索引;
[0024]替换子单元,用于将所述第一倒排索引列表中每一逻辑节点对应的多个第一分块倒排索引替换为对应的第二分块倒排索引,得到第二倒排索引列表。
[0025]在一些实施例中,所述第二确定子单元,包括:
[0026]第一确定模块,用于当逻辑节点的逻辑关系为与逻辑时,确定多个第一分块倒排索引中文档数最少的候选分块倒排索引;
[0027]第二确定模块,用于在所述候选分块倒排索引中确定第一倒排块,并基于所述第一倒排块在其他分块倒排索引中确定关联倒排块,所述其他分块倒排索引为所述多个第一分块倒排索引中除所述候选分块倒排索引外的分块倒排索引;
[0028]第一运算模块,用于对所述第一倒排块的参数和所述关联倒排块的参数进行与运算,得到所述第一倒排块对应的第二倒排块;
[0029]第三确定模块,用于根据所述第二倒排块确定逻辑节点对应的第二分块倒排索引。
[0030]在一些实施例中,本申请提供的数据搜索装置还包括:
[0031]第四确定模块,用于当逻辑节点的逻辑关系为或逻辑时,在每一第一分块倒排索引中确定一个第三倒排块,得到多个第三倒排块;
[0032]第二运算模块,用于对多个第三倒排块的参数进行或运算,得到第四倒排块;
[0033]第五确定模块,用于根据所述第四倒排块确定逻辑节点对应的第二分块倒排索引。
[0034]在一些实施例中,所述计算单元,包括:
[0035]第一获取子单元,用于获取目标查询词在每一候选文档中出现的次数以及每一候选文档的文档长度;
[0036]第一计算子单元,用于根据所述在每一候选文档中出现的次数以及每一候选文档的文档长度计算得到所述目标查询词在每一候选文档中的第一权重参数;
[0037]第二获取子单元,用于获取候选文档的第一数量以及候选文档中包含所述目标查询词的候选文档的第二数量;
[0038]第二计算子单元,用于根据所述第一数量与所述第二数量计算得到所述目标查询词在每一候选文档中的第二权重参数;
[0039]第三计算子单元,用于根据所述第一权重参数以及所述第二权重参数计算得到所述目标查询词在每一候选文档中的权重值;
[0040]第一遍历子单元,用于遍历每一查询词,得到每一查询词在每一候选文档中的权
重值。
[0041]在一些实施例中,所述计算单元,包括:
[0042]第三确定子单元,用于在所述多个候选文档中确定与目标查询词关联的多个目标候选文档,并按照由小至大的顺序为每一目标候选文档创建一个文档编号;
[0043]第四确定子单元,用于根据所述权重值确定每一目标候选文档中所述目标查询词的目标权重值;
[0044]第二构建子单元,用于基于每一目标候选文档的文档编号以及所述目标权重值构建所述目标查询词的倒排索引;
[0045]第二遍历子单元,用于遍历每一查询词,生成每一查询词对应的倒排索引,得到第一倒排索引列表。
[0046]在一些实施例中,本申请提供的数据搜索装置还包括:
[0047]划分子单元,用于将每一查询词对应的倒排索引划分为多个倒排块;
[0048]第五确定子单元,用于基于每一倒排块中包含的文档的文档编号以及文档中查询词的权重值确定每一倒排块的倒排块参数;
[0049]第一更新子单元,用于根据每一倒排块的倒排块参数更新所述第一倒排索引列表。
[0050]在一些实施例中,本申请提供的数据搜索装置,还包括:
[0051]第六确定子单元,用于当检测到所述候选文档库中添加了新增候选文档时,基于所述至少一个查询词确定所述新增候选文档中包含的关联查询词,所述关联查询词属于所述至少一个查询词;
[0052]第四计算子单元,用于计算所述新增候选文档中每一所述关联查询词的权重值;
[0053]第二更新子单元,用于对所述新增候选文档进行编号,并基于所述新增候选文档的编号以本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据搜索方法,其特征在于,所述方法包括:获取查询数据,所述查询数据包括至少一个查询词;对所述查询数据进行语义分析,并根据分析结果构建所述查询数据对应的语法树;计算候选文档库包含的多个候选文档中每一查询词的权重值,并基于所述权重值构建所述查询数据对应的第一倒排索引列表;根据所述语法树中的逻辑节点更新所述第一倒排索引列表,得到第二倒排索引列表;基于所述第二倒排索引列表查询与所述查询数据匹配的预设数量个目标候选文档。2.根据权利要求1所述的方法,其特征在于,所述对所述查询数据进行语义分析,并根据分析结果构建所述查询数据对应的语法树,包括:对所述查询数据进行语义分析,确定所述查询数据中的短语数据以及每一查询词的同义词,所述短语数据包含至少两个关联的查询词;以所述短语数据为与节点、每一查询词与对应的同义词为或节点构建语法树。3.根据权利要求1所述的方法,其特征在于,所述第一倒排索引列表为分块倒排索引列表,所述根据所述语法树中的逻辑节点更新所述第一倒排索引列表,得到第二倒排索引列表,包括:在所述第一倒排索引列表中确定所述语法树中每一逻辑节点对应的多个第一分块倒排索引,所述分块倒排索引包括多个倒排块;根据每一逻辑节点的逻辑关系以及对应的多个第一分块倒排索引确定每一逻辑节点对应的第二分块倒排索引;将所述第一倒排索引列表中每一逻辑节点对应的多个第一分块倒排索引替换为对应的第二分块倒排索引,得到第二倒排索引列表。4.根据权利要求3所述的方法,其特征在于,所述根据每一逻辑节点的逻辑关系以及对应的多个第一分块倒排索引确定每一逻辑节点对应的第二分块倒排索引,包括:当逻辑节点的逻辑关系为与逻辑时,确定多个第一分块倒排索引中文档数最少的候选分块倒排索引;在所述候选分块倒排索引中确定第一倒排块,并基于所述第一倒排块在其他分块倒排索引中确定关联倒排块,所述其他分块倒排索引为所述多个第一分块倒排索引中除所述候选分块倒排索引外的分块倒排索引;对所述第一倒排块的参数和所述关联倒排块的参数进行与运算,得到所述第一倒排块对应的第二倒排块;根据所述第二倒排块确定逻辑节点对应的第二分块倒排索引。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:当逻辑节点的逻辑关系为或逻辑时,在每一第一分块倒排索引中确定一个第三倒排块,得到多个第三倒排块;对多个第三倒排块的参数进行或运算,得到第四倒排块;根据所述第四倒排块确定逻辑节点对应的第二分块倒排索引。6.根据权利要求1所述的方法,其特征在于,所述计算多个候选文档中每一查询词的权重值,包括:获取目标查询词在每一候选文档中出现的次数以及每一候选文档的文档长度;
根据所述在每一候选文档中出现的次数以及每一候选文档的文档长度计算得到所述目标查询词在每一候选文档中的第一权重参数;获取候选文档的第一数量以及候选文档中包含所述目标查询词的候选文档的第二数量;根据所述第一数量与所述第二数量计算得到所述目标查询词在每一候选文档中的第二权重参数;根据所述第一权重参数以及所述第二权重参数计算得到所述目标查询词在每一候选文档中的权重值;遍历每一查询词,得到每一查询词在每一候选文档中的权重值。7.根据权利要求1所述的方法,其特征在于,所述基...

【专利技术属性】
技术研发人员:赵靖文
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1