CN106156000A - 基于求交算法的搜索方法及搜索系统 - Google Patents

基于求交算法的搜索方法及搜索系统 Download PDF

Info

Publication number
CN106156000A
CN106156000A CN201510207879.1A CN201510207879A CN106156000A CN 106156000 A CN106156000 A CN 106156000A CN 201510207879 A CN201510207879 A CN 201510207879A CN 106156000 A CN106156000 A CN 106156000A
Authority
CN
China
Prior art keywords
row
friendship
document
key word
search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510207879.1A
Other languages
English (en)
Other versions
CN106156000B (zh
Inventor
汤善敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201510207879.1A priority Critical patent/CN106156000B/zh
Priority to PCT/CN2016/077978 priority patent/WO2016173366A1/zh
Publication of CN106156000A publication Critical patent/CN106156000A/zh
Priority to US15/465,155 priority patent/US10902036B2/en
Application granted granted Critical
Publication of CN106156000B publication Critical patent/CN106156000B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3334Selection or weighting of terms from queries, including natural language queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于求交算法的搜索方法及系统,包括:对搜索的关键词进行分析,以生成语法树;对所述语法树进行扁平化处理,并选取倒排块最短的文档集合作为最小候选集;遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数;对比所述倒排求交次数和所述顺排求交次数,取其次数小者为最优求交算法;按照所述最优求交算法生成搜索结果。本发明中的基于求交算法的搜索方法及系统,通过对倒排求交和顺排进行求交进行评估以选择搜索所采用的最优求交算法,具有内存占用少、易于扩展、且搜索反应快速及时的优势。

Description

基于求交算法的搜索方法及搜索系统
技术领域
本发明属于数据检索领域,尤其涉及一种基于求交算法的搜索方法及搜索系统。
背景技术
实时搜索(Real Time Search),简而言之就是对互联网上的一些信息进行即时、快速地搜索,实现即搜即得的效果。现有实时搜索技术方案,通常仅支持倒排求交,即基于每个关键词对应的文档集合。
在实时搜索的索引建立过程中,每篇文档分配一个的32位整形数字作为唯一标识,每个词采用B+的倒排格式存储这些文档标识,倒排内部按照文档标识从小到大排列。例如文档DOC1包含关键词(A,B,D),Doc2包含关键词(B,C),Doc3包含关键词(C,D),Doc4包括关键词(A,B,C)。其建立的倒排结构如图1所示。在这种情况下,当发起检索串如“AB”时,只要取出A与B的倒排,并采用二分查找的方法,在A或者B中找出相同的文档集合,即完成倒排求交,最终得到结果“Doc1,Doc4”。
由于高频词文档比较多,倒排比较长,而低频词文档虽然少但是分布非常离散。因此当低频词与高频词求交时,基本上需要判断高频词所有倒排块,才可以得到相同集合。如高频词有N个倒排块,低频词只有m篇文档(分布在高频词若干个倒排块里),低频词与高频词求交需要2N次判断获取命中范围的倒排块,并且每个倒排块内部进行log(倒排块中文档个数)次比较,才可以判断是否命中文档。高频词越长,检索越耗时。
因此现有实时搜索技术方案对高频词倒排同时还采用位图存储格式,虽然可以提高检索效率,但是非常耗内存,而且难以扩展和灵活使用;
发明内容
有鉴于此,本发明的目的在于提供一种基于求交算法的搜索方法及搜索系统,可以解决现有技术中消耗内存、难以扩展、且耗时长的技术问题。
为解决上述技术问题,本发明实施例提供了一种基于求交算法的搜索方法,包括:
对搜索的关键词进行分析,以生成语法树;
对所述语法树进行扁平化处理,并选取倒排块最短的文档集合作为最小候选集;
遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数;
对比所述倒排求交次数和所述顺排求交次数,取其次数小者为最优求交算法;以及
按照所述最优求交算法生成搜索结果。
为解决上述技术问题,本发明实施例提供了一种基于求交算法的搜索系统,包括:
语法树生成模块,用于对搜索的关键词进行分析,以生成语法树;
最小候选集选取模块,用于对所述语法树进行扁平化处理,并选取倒排块最短的文档集合作为最小候选集;
次数预估模块,用于遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数;
最优求交算法选择模块,用于对比所述倒排求交次数和所述顺排求交次数,取其次数小者为最优求交算法;以及
搜索模块,用于按照所述最优求交算法生成搜索结果。
相对于现有技术,本发明中的基于求交算法的搜索方法及系统,通过对倒排求交和顺排进行求交进行评估以选择搜索所采用的最优求交算法,具有内存占用少、易于扩展、且搜索反应快速及时的优势。
附图说明
图1是背景技术提供的倒排求交的结构示意图;
图2是本发明实施例提供的顺排求交的结构示意图;
图3是本发明实施例一提供的基于求交算法的搜索方法的工作流程示意图;
图4是本发明实施例二提供的基于求交算法的搜索方法的工作流程示意图;
图5是本发明实施例二提供的语法树示例图;
图6是本发明实施例三提供的基于求交算法的搜索系统的模块示意图;
图7是本发明实施例四提供的基于求交算法的搜索系统的模块示意图。
具体实施方式
请参照附图中的图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所示例的本发明的具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。
本发明原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。本发明的原理使用许多其它泛用性或特定目的运算、通信环境或组态来进行操作。
请参阅图1和图2,分别倒排求交的结构示意图和顺排求交的结构示意图。
以下以一实例对倒排求交和顺排求交进行对比展示,可以理解的是,所述实施例不应视为对本发明的限制。其中,假设候选集中共有4个文档,分别为DOC1、DOC2、DOC3和DOC4;以及4个搜索用的关键词,分别为A、B、C和D。
参照图1所示的倒排求交结构,展示的为每个关键词A、B和C及其对应的文档DOC1、DOC2、DOC3和DOC4集合。
参照图2所示本发明所提供的顺排求交结构,展示的是每篇文档DOC1、DOC2、DOC3和DOC4对应的关键词A、B、和D集合。
本发明提供的基于求交算法的搜索方法及系统,旨在基于对上述倒排求交和顺排进行求交进行评估以选择搜索所采用的最优求交算法。可应用于实现实时搜索的产品,具有内存占用少、易于扩展、且搜索反应快速及时的优势。
请参照以下实施例,实施例一侧重于基于求交算法的搜索方法的基础步骤,实施例二侧重于基于求交算法的搜索方法的优化步骤,实施例三侧重于基于求交算法的搜索系统的基础模块;而实施例四侧重于基于求交算法的搜索系统的优化模块。可以理解的是:虽然各实施例的侧重不同,但其设计思想是一致的。且,在某个实施例中没有详述的部分,可以参见说明书全文的详细描述,不再赘述。
实施例一
请参阅图3,所示为基于求交算法的搜索方法的工作流程示意图。在本实施例中主要阐述所述基于求交算法的搜索方法的基础步骤,包括:
在步骤S301中,对搜索的关键词进行分析,以生成语法树。
其中,所述生成语法树的步骤,具体包括:
(1)预设分析规则,所述分析规则至少包括:词义分析或语义分析之一者;
(2)按照所述分析规则对搜索的关键词进行分析;以及
(3)将分析所产生的关键词的集合生成语法树。
在步骤S302中,对所述语法树进行扁平化处理,并选取倒排块最短的文档集合作为最小候选集。
其中,上述扁平化处理并选取所述最小候选集的步骤具体包括:
(1)对所述语法树进行扁平化处理,以形成初级候选集;
(2)将所述初级候选集按照倒排块的长度进行排序,其中,所述倒排块的长度可以理解为文档数量的多少;以及
(3)选取倒排块最短的文档集合作为最小候选集。
在步骤S303中,遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数。
其中,所述顺排求交次数,通过关键词个数、最小候选集的文档个数、以及平均每篇文档的关键词个数来进行计算。
所述倒排求交次数,通过关键词个数、倒排块个数、以及倒排块中文档个数来进行计算。
在步骤S304中,对比所述倒排求交次数和所述顺排求交次数,取其次数小者为最优求交算法。
其中,所述选取最优求交算法的步骤具体包括:
(1)对比所述倒排求交次数和所述顺排求交次数;
(2)若所述倒排求交次数小于顺排求交次数,则所述倒排求交次数为最优求交算法;
(3)若所述倒排求交次数大于等于顺排求交次数,则所述顺排求交次数为最优求交算法。
可以理解的是,对比倒排求交次数和顺排求交次数相等,则默认优先采用顺序求交,这样默认设置的好处是:顺序求交在搜索过程中所占内存更小。
其中,通过对倒排求交和顺排求交进行评估,以选择搜索所采用的最优求交算法,可以有效的提高搜索的反应速度。
在步骤S305中,按照所述最优求交算法生成搜索结果。
本发明中的基于求交算法的搜索方法,通过对倒排求交和顺排进行求交进行评估以选择搜索所采用的最优求交算法,具有内存占用少、易于扩展、且搜索反应快速及时的优势。
实施例二
请参阅图4,所示为基于求交算法的搜索方法的工作流程示意图。在本实施例中主要阐述所述基于求交算法的搜索方法的优化步骤。可以理解的是,在本图中,基础步骤仍以S30开头,优化步骤以S40开头,以示更好的区分其异同。其中步骤的执行顺序可参照下述的出现顺序或图4中的箭头顺序。
在本实施例中,所述基于求交算法的搜索方法的包括:
在步骤S401中,接收检索串,并对所述检索串进行切分以生成关键词。
其中,所述生成关键词的步骤,具体包括:
(1)预设切词规则,所述切词规则至少包括:基于字符串匹配切词法、基于词义切词法、以及基于统计的切词法中的一种;以及
(2)将检索串按照所述切词规则切分成若干关键词。
在步骤S301中,对所述关键词进行分析,以生成语法树。
以图5为例,所示为一语法树的示例,表述为:
(A∩((B∩C)∪(D)∪(E∩F))),其中A、B、C、D、E、和F皆为关键词。
在步骤S402中,对所述语法树进行扁平化处理,以生成初级候选集。
扁平化处理,主要把语法树中多层语法关系简化成通过交集关系进行连接的两层语法树。仍以图5的语法树为例,
(A∩((B∩C)∪(D)∪(E∩F)))简化为:(A∩(B∪D∪E)∩(B∪D∪F)∩(C∪D∪E)∩(C∪D∪F)。
这样简化成两层语法树后,在求交过程中不需要缓存其他组合的结果。求交过程只需要判断所有文档的集合中,任意关键词是否命中即可。
在步骤S403中,在所述初级候选集中选取倒排块最短的文档集合,作为最小候选集。
其中,将所述初级候选集按照倒排块的长度进行排序,具体包括:
(1)判断所述初级候选集是否是复合集合,其中,若存在并集关系则视为复合集合,若不存在并集关系则视为非复合集合;
(2)若是所述复合集合,则所述倒排块的长度等于初级候选集所有关键词的文档数量的累加值;或
(3)若不是复合集合,则所述倒排块的长度等于文档的数量;以及
(4)将所述初级候选集按照所述倒排块长度从小到大进行排列。
可以理解的是,选择最小候选集,即选择文档数量最小的集合,可以大大降低比较的次数,从而提高搜索的反应速度。
仍以图5的语法树为例,用公式表述所述最小候选集的选取为:
Candidate=MIN(A,(B,D,E),(B,D,F),(C,D,E),(C,D,F))。
在步骤S404中,按照倒排求交遍历所述最小候选集,并对所述最小候选集进行预估,生成倒排求交次数。
其中,生成倒排求交次数的步骤,具体包括:
(1)遍历所述最小候选集中的文档;
(2)按照每个集合中的关键词,依次寻找命中所述关键词的倒排块;
(3)在所述倒排块中采用二分查找的方法查找命中所述关键词的文档;以及
(4)当查找到所述命中所述关键词的文档后,计算命中所述关键词的文档的所用的次数,得到倒排求交次数。
可以理解的是,所述倒排求交次数,通过关键词个数、倒排块个数、以及倒排块中文档个数来进行计算。用公式表述为:
在步骤S405中,按照顺排求交遍历所述最小候选集,并对所述最小候选集进行预估,以生成顺排求交次数。
其中,所述生成顺排求交次数,具体包括:
(1)对所述最小候选集所中的文档和关键词建立索引,所述索引包括:对每个关键词建立倒排的文档集合、对每篇文档建立顺排的关键词集合;
(2)通过所述索引计算所述关键词在各文档中的紧邻度、完全匹配度;
(3)根据所述关键词的紧邻度、完全匹配度来计算各文档的排序顺序;
(4)按照所述排序顺序遍历所述最小候选集中的文档;
(5)依次判断每个集合的关键词是否命中所述最小候选集中的文档;以及
(6)当命中所述最小候选集中的文档后,计算命中所述最小候选集中的文档的所用的次数即为倒排求交次数。
可以理解的是,所述顺排求交次数,通过关键词个数、候选集的文档个数、以及平均每篇文档的关键词个数来进行计算。用公式表述为:
在步骤S406中,判断所述倒排求交次数是否小于所述顺排求交次数。
在步骤S407中,在倒排求交次数与顺排求交次数中取其次数小者为最优求交算法,并按照所述最优求交算法生成搜索结果。
其中,通过对倒排求交和顺排进行求交进行评估以选择搜索所采用的最优求交算法,可以有效的提高搜索的反应速度。
本发明中的基于求交算法的搜索方法,通过对倒排求交和顺排进行求交进行评估以选择搜索所采用的最优求交算法,具有内存占用少、易于扩展、且搜索反应快速及时的优势。
实施例三
请参阅图6,所示为基于求交算法的搜索系统的模块示意图。在本实施例中主要阐述所述基于求交算法的搜索系统600的基础模块,包括:语法树生成模块10、最小候选集选取模块20、次数预估模块30、最优求交算法选择模块40、以及搜索模块50。
语法树生成模块10,用于对搜索的关键词进行分析,以生成语法树。
最小候选集选取模块20,用于对所述语法树进行扁平化处理,并选取倒排块最短的文档集合作为最小候选集。
次数预估模块30,用于遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数。
其中,顺排求交次数,通过关键词个数、最小候选集的文档个数、以及平均每篇文档的关键词个数来进行计算。所述倒排求交次数,通过关键词个数、倒排块个数、以及倒排块中文档个数来进行计算。
最优求交算法选择模块40,用于对比所述倒排求交次数和所述顺排求交次数,取其次数小者为最优求交算法。
搜索模块50,用于按照所述最优求交算法生成搜索结果。
本发明中的基于求交算法的搜索系统,通过对倒排求交和顺排进行求交进行评估以选择搜索所采用的最优求交算法,具有内存占用少、易于扩展、且搜索反应快速及时的优势。
实施例四
请参阅图7,所示为基于求交算法的搜索系统的模块示意图。在本实施例中主要阐述所述基于求交算法的搜索系统700的优选模块,包括:语法树生成模块10、最小候选集选取模块20、次数预估模块30、最优求交算法选择模块40、搜索模块50、以及关键词切词模块60。
其中,所述关键词切词模块60,用于接收检索串,并对所述检索串进行切分以生成搜索的关键词。
具体而言,所述关键词切词模块60,包括:切词规则子模块61和切词子模块62。其中,所述切词规则子模块61,用于预设切词规则,所述切词规则至少包括:基于字符串匹配切词法、基于词义切词法、以及基于统计的切词法中的一种。所述切词子模块62,用于将检索串按照所述切词规则切分成若干关键词。
语法树生成模块10,用于对搜索的关键词进行分析,以生成语法树。
具体而言,所述语法树生成模块10,包括:分析规则子模块11、分析子模块12、以及集合子模块13。其中,分析规则子模块11,用于预设分析规则,所述分析规则至少包括:词义分析或语义分析之一者。分析子模块12,按照所述分析规则对所述搜索的关键词进行分析。集合子模块13,用于将分析所产生的关键词的集合生成语法树。最小候选集选取模块20,用于对所述语法树进行扁平化处理,并选取倒排块最短的文档集合作为最小候选集。
具体而言,所述最小候选集选取模块20包括:初级候选集子模块21及最小候选集子模块22。
其中,所述初级候选集子模块21,用于对所述语法树进行扁平化处理,以形成初级候选集。其中所述初级候选集为通过交集关系进行连接的两层语法树。
所述最小候选集子模块22,用于将所述初级候选集按照倒排块的长度进行排序,并选取倒排块最短的文档集合作为最小候选集。可以理解的是,倒排块最短,即文档数最少的集合。
次数预估模块30,用于遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数。
其中,顺排求交次数,通过关键词个数、最小候选集的文档个数、以及平均每篇文档的关键词个数来进行计算。所述倒排求交次数,通过关键词个数、倒排块个数、以及倒排块中文档个数来进行计算。
最优求交算法选择模块40,用于对比所述倒排求交次数和所述顺排求交次数,取其次数小者为最优求交算法。
其中,当二者相等时,默认选择顺排求交,因其占内存相对较小。
搜索模块50,用于按照所述最优求交算法生成搜索结果。
本发明中的基于求交算法的搜索系统,通过对倒排求交和顺排进行求交进行评估以选择搜索所采用的最优求交算法,具有内存占用少、易于扩展、且搜索反应快速及时的优势。
本发明实施例提供的基于求交算法的搜索方法及系统属于同一构思,其具体实现过程详见说明书全文,此处不再赘述。
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通测试人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,因此本发明的保护范围以权利要求界定的范围为准。

Claims (16)

1.一种基于求交算法的搜索方法,其特征在于,包括:
对搜索的关键词进行分析,以生成语法树;
对所述语法树进行扁平化处理,并选取倒排块最短的文档集合作为最小候选集;
遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数;
对比所述倒排求交次数和所述顺排求交次数,取其次数小者为最优求交算法;以及
按照所述最优求交算法生成搜索结果。
2.如权利要求1所述的搜索方法,其特征在于,对所述语法树进行扁平化处理,并选取倒排块最短的文档集合作为最小候选集,具体包括:
对所述语法树进行扁平化处理,以形成初级候选集;
将所述初级候选集按照倒排块的长度进行排序;以及
选取倒排块最短的文档集合作为最小候选集。
3.如权利要求2所述的搜索方法,其特征在于,对所述语法树进行扁平化处理,以形成初级候选集,具体包括:
判断所述语法树中是否含有并集关系;
如果有所述并集关系,则进行合并处理;以及
直至将所述语法树中多层语法关系简化成通过交集关系进行连接的两层语法树,即形成所述初级候选集。
4.如权利要求2所述的搜索方法,其特征在于,将所述初级候选集按照倒排块的长度进行排序,具体包括:
判断所述初级候选集是否是复合集合;
若是复合集合,则所述倒排块的长度等于初级候选集所有关键词的文档数量的累加值;或若不是复合集合,则所述倒排块的长度等于文档的数量;以及
将所述初级候选集按照所述倒排块长度从小到大进行排列。
5.如权利要求1所述的搜索方法,其特征在于,遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数的步骤中,生成倒排求交次数,具体包括:
遍历所述最小候选集中的文档;
按照每个集合中的关键词,依次寻找命中所述关键词的倒排块;
在所述倒排块中采用二分查找的方法查找命中所述关键词的文档;以及
当查找到所述命中所述关键词的文档后,计算命中所述关键词的文档的所用的次数,得到倒排求交次数。
6.如权利要求1至5任一项所述的搜索方法,其特征在于,所述倒排求交次数,通过关键词个数、倒排块个数、以及倒排块中文档个数来进行计算。
7.如权利要求1所述的搜索方法,其特征在于,遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数,生成顺排求交次数,具体包括:
对所述最小候选集所中的文档和关键词建立索引,所述索引包括:对每个关键词建立倒排的文档集合、对每篇文档建立顺排的关键词集合;
通过所述索引计算所述关键词在各文档中的紧邻度、完全匹配度;
根据所述关键词的紧邻度、完全匹配度来计算各文档的排序顺序;
按照所述排序顺序遍历所述最小候选集中的文档;
依次判断每个集合的关键词是否命中所述最小候选集中的文档;以及
当命中所述最小候选集中的文档后,计算命中所述最小候选集中的文档的所用的次数,得到倒排求交次数。
8.如权利要求1、2、3、4或7任一项所述的搜索方法,其特征在于,所述顺排求交次数,通过关键词个数、最小候选集的文档个数、以及平均每篇文档的关键词个数来进行计算。
9.如权利要求1至4任一项所述的搜索方法,其特征在于,对比倒排求交次数和顺排求交次数,取其次数小者为最优求交算法,具体包括:
对比所述倒排求交次数和所述顺排求交次数;
若所述倒排求交次数小于顺排求交次数,则所述倒排求交次数为最优求交算法;
若所述倒排求交次数大于等于顺排求交次数,则所述顺排求交次数为最优求交算法。
10.如权利要求1至4任一项所述的搜索方法,其特征在于,对搜索的关键词进行分析,以生成语法树,具体包括:
预设分析规则,所述分析规则至少包括:词义分析或语义分析之一者;
按照所述分析规则对所述搜索的关键词进行分析;以及
将分析所产生的关键词的集合生成语法树。
11.如权利要求1至4任一项所述的搜索方法,其特征在于,对搜索的关键词进行分析,以生成语法树,之前还包括步骤:
接收检索串,并对所述检索串进行切分以生成所述搜索的关键词。
12.如权利要求11所述的搜索方法,其特征在于,接收检索串,并对所述检索串进行切分以生成所述搜索的关键词,具体包括:
预设切词规则;
所述对所述检索串进行切分以生成所述搜索的关键词,具体为:将检索串按照所述切词规则切分成若干搜索的关键词。
13.一种基于求交算法的搜索系统,其特征在于,包括:
语法树生成模块,用于对搜索的关键词进行分析,以生成语法树;
最小候选集选取模块,用于对所述语法树进行扁平化处理,并选取倒排块最短的文档集合作为最小候选集;
次数预估模块,用于遍历所述最小候选集,并对遍历结果进行评估,以分别生成倒排求交次数和顺排求交次数;
最优求交算法选择模块,用于对比所述倒排求交次数和所述顺排求交次数,取其次数小者为最优求交算法;以及
搜索模块,用于按照所述最优求交算法生成搜索结果。
14.如权利要求13所述的搜索系统,其特征在于,还包括:
关键词切词模块,用于接收检索串,并对所述检索串进行切分以生成所述搜索的关键词。
15.如权利要求13所述的搜索系统,其特征在于,所述最小候选集模块具体包括:
所述初级候选集子模块,用于对所述语法树进行扁平化处理,以形成初级候选集,其中所述初级候选集为通过交集关系进行连接的两层语法树;以及
所述最小候选集子模块,用于将所述初级候选集按照倒排块的长度进行排序,并选取倒排块最短的文档集合作为最小候选集。
16.如权利要求13所述的搜索系统,其特征在于,在所述次数预估模块中:
顺排求交次数,通过关键词个数、最小候选集的文档个数、以及平均每篇文档的关键词个数来进行计算;以及
所述倒排求交次数,通过关键词个数、倒排块个数、以及倒排块中文档个数来进行计算。
CN201510207879.1A 2015-04-28 2015-04-28 基于求交算法的搜索方法及搜索系统 Active CN106156000B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201510207879.1A CN106156000B (zh) 2015-04-28 2015-04-28 基于求交算法的搜索方法及搜索系统
PCT/CN2016/077978 WO2016173366A1 (zh) 2015-04-28 2016-03-31 基于求交算法的搜索方法、搜索系统及存储介质
US15/465,155 US10902036B2 (en) 2015-04-28 2017-03-21 Intersection algorithm-based search method and system, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510207879.1A CN106156000B (zh) 2015-04-28 2015-04-28 基于求交算法的搜索方法及搜索系统

Publications (2)

Publication Number Publication Date
CN106156000A true CN106156000A (zh) 2016-11-23
CN106156000B CN106156000B (zh) 2020-03-17

Family

ID=57198106

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510207879.1A Active CN106156000B (zh) 2015-04-28 2015-04-28 基于求交算法的搜索方法及搜索系统

Country Status (3)

Country Link
US (1) US10902036B2 (zh)
CN (1) CN106156000B (zh)
WO (1) WO2016173366A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766414A (zh) * 2017-09-06 2018-03-06 北京三快在线科技有限公司 多文档交集获取方法、装置、设备及可读存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107491534B (zh) * 2017-08-22 2020-11-20 北京百度网讯科技有限公司 信息处理方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080243907A1 (en) * 2007-02-07 2008-10-02 Fujitsu Limited Efficient Indexing Using Compact Decision Diagrams
CN101339560A (zh) * 2008-08-11 2009-01-07 北京搜狗科技发展有限公司 一种搜索系列性数据的方法、装置及一种搜索引擎系统
CN102136011A (zh) * 2011-05-09 2011-07-27 南开大学 倒排索引求交方法
CN102750393A (zh) * 2012-07-13 2012-10-24 携程计算机技术(上海)有限公司 复合索引结构以及基于该复合索引结构的搜索方法
CN103914543A (zh) * 2014-04-03 2014-07-09 北京百度网讯科技有限公司 搜索结果的展现方法和装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4823306A (en) * 1987-08-14 1989-04-18 International Business Machines Corporation Text search system
US5828848A (en) * 1996-10-31 1998-10-27 Sensormatic Electronics Corporation Method and apparatus for compression and decompression of video data streams
US5884042A (en) * 1996-10-31 1999-03-16 Sensormatic Electronics Corporation Data identification in an intelligent video information management system
US5917958A (en) * 1996-10-31 1999-06-29 Sensormatic Electronics Corporation Distributed video data base with remote searching for image data features
US5893094A (en) * 1997-07-25 1999-04-06 Claritech Corporation Method and apparatus using run length encoding to evaluate a database
CN100462979C (zh) * 2007-06-26 2009-02-18 腾讯科技(深圳)有限公司 分布式索引文件的检索方法、检索系统及检索服务器
US20090049035A1 (en) * 2007-08-14 2009-02-19 International Business Machines Corporation System and method for indexing type-annotated web documents
CN101206672A (zh) * 2007-12-25 2008-06-25 北京科文书业信息技术有限公司 商品搜索无结果智能处理系统及方法
US8965881B2 (en) * 2008-08-15 2015-02-24 Athena A. Smyros Systems and methods for searching an index
US8838576B2 (en) * 2009-10-12 2014-09-16 Yahoo! Inc. Posting list intersection parallelism in query processing
CN102156712A (zh) * 2011-03-08 2011-08-17 国网信息通信有限公司 一种基于云存储的电力信息检索方法及系统
EP3654627A3 (en) * 2011-06-28 2020-08-05 NCR Corporation Image processing to prevent access to private information
US9910860B2 (en) * 2014-02-06 2018-03-06 International Business Machines Corporation Split elimination in MapReduce systems
CN105224624A (zh) * 2015-09-22 2016-01-06 广州神马移动信息科技有限公司 一种实现倒排链快速归并的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080243907A1 (en) * 2007-02-07 2008-10-02 Fujitsu Limited Efficient Indexing Using Compact Decision Diagrams
CN101339560A (zh) * 2008-08-11 2009-01-07 北京搜狗科技发展有限公司 一种搜索系列性数据的方法、装置及一种搜索引擎系统
CN102136011A (zh) * 2011-05-09 2011-07-27 南开大学 倒排索引求交方法
CN102750393A (zh) * 2012-07-13 2012-10-24 携程计算机技术(上海)有限公司 复合索引结构以及基于该复合索引结构的搜索方法
CN103914543A (zh) * 2014-04-03 2014-07-09 北京百度网讯科技有限公司 搜索结果的展现方法和装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766414A (zh) * 2017-09-06 2018-03-06 北京三快在线科技有限公司 多文档交集获取方法、装置、设备及可读存储介质
CN107766414B (zh) * 2017-09-06 2020-06-12 北京三快在线科技有限公司 多文档交集获取方法、装置、设备及可读存储介质
US11288329B2 (en) 2017-09-06 2022-03-29 Beijing Sankuai Online Technology Co., Ltd Method for obtaining intersection of plurality of documents and document server

Also Published As

Publication number Publication date
US10902036B2 (en) 2021-01-26
US20170193081A1 (en) 2017-07-06
CN106156000B (zh) 2020-03-17
WO2016173366A1 (zh) 2016-11-03

Similar Documents

Publication Publication Date Title
US10268758B2 (en) Method and system of acquiring semantic information, keyword expansion and keyword search thereof
KR101700585B1 (ko) 온라인 제품 검색 방법 및 시스템
Olariu Efficient online summarization of microblogging streams
WO2004072757A3 (en) Text and attribute searches of data stores that include business object
JP2013504118A (ja) クエリのセマンティックパターンに基づく情報検索
US10387805B2 (en) System and method for ranking news feeds
Deng et al. An improved fuzzy clustering method for text mining
CN106372122B (zh) 一种基于维基语义匹配的文档分类方法及系统
CN107704500B (zh) 一种基于语义分析与多重余弦定理的新闻分类方法
CN106354871A (zh) 一种企业名称的相似性检索方法
Murray et al. Using the omega index for evaluating abstractive community detection
CN103365915B (zh) 基于搜索引擎和数据库查询系统的搜索结果排名方法
CN108763348A (zh) 一种扩展短文本词特征向量的分类改进方法
US20150205860A1 (en) Information retrieval device, information retrieval method, and information retrieval program
CN104794221A (zh) 一种基于业务对象的多维数据分析系统
CN103136213A (zh) 一种提供相关词的方法及装置
JP2007219929A (ja) 感性評価システム及び方法
CN104239321A (zh) 一种面向搜索引擎的数据处理方法及装置
CN103593338A (zh) 一种信息处理方法及装置
CN103218368A (zh) 一种挖掘热词的方法与装置
Buitelaar et al. Hot topics and schisms in NLP: Community and trend analysis with saffron on ACL and LREC proceedings
CN103984700B (zh) 一种用于科技信息垂直搜索的异构数据分析方法
CN104346411B (zh) 对多个稿件进行聚类的方法和设备
CN107391504B (zh) 新词识别方法与装置
CN106156000A (zh) 基于求交算法的搜索方法及搜索系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant