CN101133388A - 基于多索引的信息检索系统 - Google Patents

基于多索引的信息检索系统 Download PDF

Info

Publication number
CN101133388A
CN101133388A CNA200680007173XA CN200680007173A CN101133388A CN 101133388 A CN101133388 A CN 101133388A CN A200680007173X A CNA200680007173X A CN A200680007173XA CN 200680007173 A CN200680007173 A CN 200680007173A CN 101133388 A CN101133388 A CN 101133388A
Authority
CN
China
Prior art keywords
phrase
document
tabulation
index
phrases
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
CNA200680007173XA
Other languages
English (en)
Other versions
CN101133388B (zh
Inventor
A·L·帕特森
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.)
Google LLC
Original Assignee
Google LLC
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=36741037&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN101133388(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Google LLC filed Critical Google LLC
Publication of CN101133388A publication Critical patent/CN101133388A/zh
Application granted granted Critical
Publication of CN101133388B publication Critical patent/CN101133388B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/313Selection or weighting of terms for indexing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • 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/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • 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/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access

Abstract

一种信息检索系统使用短语索引、检索、组织并且描述文档。识别预测文档中其他短语的出现的短语。根据它们包括的短语来索引文档。文档索引被分成多个索引,包括主索引和次索引。主索引存储具有相关性次序排列的文档的短语置入列表。次索引按照文档顺序存储来自于置入列表的额外文档。

Description

基于多索引的信息检索系统
相关申请的交叉引用
本申请要求2005年1月25日提交的、名称为“基于多索引的信息检索系统”的美国实用专利申请11/043,695的利益和优先权,其中将该申请的公开内容通过参考文件的形式合并于此。本申请也是共同拥有的2004年7月26日提交的申请号为10/900,021的申请的部分继续申请,在此通过参考将申请号为10/900,021的申请引入。
技术领域
本发明涉及一种用于对诸如因特网的大型资料库中的文档进行索引、搜索和分类的信息检索系统。
背景技术
当前,信息检索系统(通常称为搜索引擎)是用于在大型、分散并且不断增长的资料库(诸如因特网)中寻找信息的必备工具。通常,搜索引擎创建索引,其中该索引将文档(或者“页”)和出现在每个文档中的各个词联系起来。响应于包含多个查询词的查询,典型地,基于出现在文档中的一些数量的查询词来检索文档。然后,根据其他统计方法,诸如查询词的出现频率、主域(host domain)、链接分析等等,来对检索的文档进行排序。然后,检索的文档典型地按照它们排列的次序被呈现给用户,并且没有任何进一步的分组或者强加的层级。在某些情况中,呈现文档文本的选择部分,以将文档内容的概览提供给用户。
查询词的直接“布尔”匹配具有众所周知的限制,并且特别地,不能识别不具有查询词但具有相关词的文档。例如,在典型的布尔系统中,对“澳大利亚牧羊犬”的搜索将不会返回不具有确切查询词的关于其他牧羊犬(诸如边境牧羊犬)的文档。相反,这样的系统通常很可能也检索并且高度地排序关于澳大利亚的文档(与狗无关)以及关于“牧羊犬”的文档。
这里的问题是:传统系统基于各个单词而不是根据概念来对文档进行索引(index)。概念经常以短语的形式来表述,诸如“澳大利亚牧羊犬”、“美国总统”或者“圣丹斯电影节”。最多,某些现有系统针对预定的以及非常有限的‘已知’短语集合来对文档进行索引,这通常是由人类操作员来选择的。由于用于识别所有三个、四个或者五个或者更多单词的可能短语的可感知的计算和存储需要,所以通常避免对短语进行索引。例如,假设任何五个单词可以组成一个短语,并且大资料库将至少具有200,000个唯一词,则存在大概3.2×1026个可能的短语,明显地超过任何现存系统可以存储在存储器中或者可编程操作的数量。进一步的问题是:短语根据它们的使用持续地输入并且离开词典,会更频繁地发明新的单个单词。将总是从诸如技术、艺术、世界事件和法律的源生成新的短语。其他短语将随着时间在使用上将减少。
一些现存的信息检索系统通过使用各个单词的同现模式来试图提供概念检索。在这些系统中,对诸如“总统”的一个单词的搜索将也检索具有随“总统(president)”频繁出现的其他单词,诸如“白(white)”和“ 宫(house)”的文档。虽然此方法可以产生具有在各个单词级别上概念相关的文档的搜索结果,但是典型地,它不能捕获同现短语间的固有的主题关系。
因而,需要一种信息检索系统和方法,其可以根据短语来综合地识别大型资料库中的短语,根据文档的短语来搜索和排序文档,以及提供关于文档的额外分组和描述信息。
传统信息检索系统的另一个问题是:它们仅可以索引在因特网上可用的文档的一相对小的部分。根据当前估计,在如今的因特网上存在超过2000亿网页。然而,甚至最好的搜索引擎仅索引60到80亿网页,因而错过多数可用网页。存在几个限制现存系统索引能力的原因。最主要的是,典型系统依靠反向索引的变型,其中反向索引针对每个词(如上面讨论所讨论的)保持出现该词的每个网页以及识别该词在网页上的每个出现的确切位置的位置信息的列表。索引各个词和索引位置信息的组合需要非常大的存储系统。
许多用于搜索因特网的信息检索系统的进一步的问题是:它们没有能力对随时间变化的网页存档。传统地,大部分因特网搜索引擎仅存储针对给定网页的当前实例(或版本)的相关性信息,并且在每次重新索引该网页时更新此信息。作为结果,给定的搜索仅返回满足查询的网页的当前版本。这样,用户不能搜索网页的现先实例,或者具有特定日期间隔的最近的网页。而且,当评估搜索查询或者呈现搜索结果的时候,搜索引擎同样不使用与版本或日期相关的相关性信息。
因而,希望提供一种信息检索系统,其可以有效地索引数百亿并且实际超过1000亿网页内容,而没有现存系统的大量存储需要。
发明内容
一种信息检索系统和方法使用短语索引、搜索、排序并且描述文档集合中的文档。该系统适合识别在文档集合中具有足够频繁和/或明显使用的短语,以表示它们是“有效的”或者“好的”短语。以此方式,可以识别多单词短语,例如四个、五个或多个词的短语。这避免了不得不识别并且索引由给定数目单词的所有可能序列产生的每个可能短语的问题。
该系统还适合于根据一个短语预测在文档中其他短语的出现的能力,来识别彼此相关的短语。更具体地,可以使用这样的预测方法,即该预测方法将两个短语的实际同现率和两个短语的期望同现率联系起来。信息增益是一个这样的预测方法,其中信息增益是实际同现率与期望同现率的比值。预测方法超过预定的阈值,则两个短语是相关的。在这样的情况中,第二短语针对于第一短语具有明显的信息增益。语义上,相关短语将是那些通常用于讨论或者描述给定主题或者概念的短语,诸如“美国总统”和“白宫”。对于给定的短语,可以基于它们各自的预测方法,根据它们的相关性或者重要性,来排序相关短语。
一种信息检索系统通过有效的或者好的短语来索引文档集合中的文档。对于每个短语,置入列表识别包含短语的文档。另外,对于给出的短语,第二列表、向量或者其他结构被用于存储数据,该数据表示给定短语的哪些相关短语也出现在包含给定短语的每个文档中。以此方式,系统不仅可以容易地识别包含响应于搜索查询的短语的文档,而且可以识别也包含与查询短语相关的短语的文档,而且因此更可能是明确关于表达于查询短语中的主题或者概念。
当响应于查询来搜索文档时,该信息检索系统也适合于使用短语。进行查询,以识别任何出现在查询中的短语,以便检索查询短语的相关置入列表,以及相关短语信息。另外,在某些情况中,用户可以在搜索查询中输入不完整短语,诸如“的总统(President ofthe)”。可以识别诸如这些的不完全短语,以及可以由短语扩展(诸如“美国的总统(President of United States”)来替换的不完整短语。这有助于保证实际执行用户最可能的搜索。
本发明的另一方面是能够使用多索引结构来索引1000亿或者更多数量级的大量文档。在一个实施例中,提供主和次索引。主索引存储针对短语的索引数据,其中对于每个短语,索引有限数目的文档。对于特定短语,文档的索引数据按照文档与短语的相关性的排序次序来存储。优选地,此存储安排是逻辑和物理的(即,怎样将数据存储在主存储设备上)。在多于有限数量的文档包括特定短语的情况,用于这些剩余文档的索引数据存储在次索引中,但是这里由文档号代替相关性排序来进行排序,以及例如使用分散聚集类型方法,来进行检索。
例如,主索引可以构造为对于每个短语存储32k文档条目,并且次索引可以构造为存储针对包含短语并超过32k的其他文档的任何其他文档条目。为了获得对于主索引的文档条目,对文档对于短语的相关性进行评分,并且通过它们的相关性分值来对他们进行排序。可选地,文档可以通过针对相关性分析有用的各种文档特征来排序。用于文档条目的排序被用于在主索引和次索引间划分条目。在存在少于有限数量的包含短语的文档的情况下,则再次按照相关性排序将所有条目存储于主索引。索引安排使用于索引的存储能力能够增加十到十五倍,并且由于最优化的索引信息,服务器性能产生十倍增长。
本发明的另一个方面是能够索引用于存档的文档的多个版本和实例。此能力使用户能够搜索在特定日期范围内的文档,能够使日期或者版本相关的相关性信息用于响应于搜索查询评估文档以及组织搜索结果。在一个实施例中,文档与一个或多个日期范围相关。每个日期范围与相关性数据相关联,该相关性数据来自文档以及在日期范围期间针对该文档视为有效。当前日期范围与文档的当前实例相关联,从最近索引文档的日期开始。当在索引进行期间遇到文档时,将其与先前版本相比较,以确定文档是否已经改变。如果文档没有改变,那么保留索引的相关性数据。如果文档改变,那么文档的当前日期范围被关闭,并且重索引文档,并且建立新的当前日期范围,并且与当前相关性数据相关联。
在系统和软件架构、计算机程序产品和计算机实现方法以及计算机生成用户接口和呈现中,本发明具有进一步的实施例。
前面只是基于短语的信息检索系统和方法的一些特征。信息检索系统领域的那些技术人员将会理解,短语信息一般性的灵活性允许在索引、文档注释、搜索、排序以及文档分析和处理的其他领域中大量使用和应用。
附图说明
图1是本发明一个实施例软件架构的框图。
图2说明了识别在文档中的短语的方法。
图3说明了带有短语划分和次划分的文档。
图4说明了识别相关短语的方法。
图5说明了针对相关短语索引文档的方法。
图6说明了基于短语检索文档的方法。
附图描述了本发明的优选的实施例,仅用于说明目的。本领域技术人员将从下列讨论中容易地认识到,在不偏离这里描述的本发明的原理的情况下,可以使用这里说明的结构和方法的可选的实施例。
具体实施方式
I.系统概括
现在参考图1,示出了根据本发明的一个实施例的搜索系统100的实施例的软件架构。在此实施例中,该系统包括索引系统110、搜索系统120、呈现系统130和前端服务器140。
索引系统110负责通过访问各种网站190和其他文档集合来识别文档中的短语,并且根据它们的短语来索引文档。前端服务器140接收来自于客户端170的用户的查询,并且向搜索系统120提供这些查询。搜索系统120负责搜索与搜索查询相关的文档(搜索结果),包括识别搜索查询中的任何短语,以及然后使用短语的出现影响排列顺序来对搜索结果中的文档进行排列。搜索系统120向呈现系统130提供搜索结果。呈现系统130负责修改搜索结果,包括移除最近复制文档并且生成文档的主题描述,并且将修改的搜索结果提供返回给前端服务器140,前端服务器140向客户端170提供结果。系统100还包括存储与文档有关的索引信息的主索引150和次索引152,以及存储短语以及相关统计信息的短语数据存储器160。主索引150分布在多个主服务器1...M1上,以及次索引152同样分布在多个次服务器1...M2。
本申请的上下文中,“文档”应被理解为可以由搜索引擎索引和检索的任何媒体类型,包括网页文档、图像、多媒体文件、文本文档、PDF或者其他图像格式文档等等。文档可以具有一或多页、分区、分段或者其他组成部分,如适合它的内容和类型。同样地,文档可以被称为“页”,如通常用来指代代因特网上的文档的“页”。使用通用术语“文档”并不隐含对于本发明的范围的限制。搜索系统100操作在大型文档资料库上,诸如因特网和万维网,但是同样可以被用于更多限制的集合中,诸如针对图书馆或者私人企业的文档集合。在任一上下文中,应该理解的是,文档典型地分布在很多不同的计算机系统和地点。那么不失一般性,不论格式和位置(例如,哪个网站或者数据库),文档通常集体地被称作资料库或者文档集合。每个文档具有相关联的标识符,用于唯一识别文档;优选地,该标识符是URL,但是其他类型的标识符(例如,文档号)也可以使用。在此公开中,假设使用URL识别文档。
II.索引系统
在一个实施例中,索引系统110提供三个主要的功能操作:1)识别短语和相关短语;2)关于短语来索引文档;以及3)生成并且保持基于短语的排序。本领域技术人员应该理解的是,索引系统110将执行其他功能以及支持传统索引功能,因此在这里不再描述这些其他操作。索引系统110对主索引150和次索引152以及短语数据的数据仓库160进行操作。下面将进一步描述这些数据仓库。
1.短语识别
索引系统110的短语识别操作识别文档集合中“好的”和“坏的”短语,其中短语对于索引和搜索文档是有用的。在一个方面中,好的短语是在文档集合中趋向以大于文档的特定比例出现,和/或被表示作为显著出现在所述文档中的短语,诸如由标记标签或者其他形态、格式或者语法标记界定的那样。好的短语的另一个方面是它们可预测其他好的短语,并且不仅仅是出现在词典中的单词的序列。例如,短语“美国总统”是预测诸如“乔治布什”和“比尔克林顿”的其他短语的短语。然而,其他短语是不可用于预测的,诸如“fell down stairs(跌下楼梯)”、“top of the morning(王牌投手)”、或者“out of the blue(突然)”,这是因为类似这些的习语和口语趋向于与很多其他不同的和无关的短语一起出现。因此,短语识别阶段确定哪个短语是好的短语以及哪个是坏的(即,缺乏预测能力)。
现在参考图2,短语识别过程具有下列功能阶段:
200:收集可能的并且好的短语,连同这些短语的频率和同现统计。
202:基于频率统计将可能的短语分类为好的或坏的短语。
204:基于源自同现统计的预测方法来整理好的短语列表。
现在将更详细地描述这些阶段的每一个。
第一阶段200是这样一个过程,即通过该过程,索引系统110爬过文档集合中的一组文档,随时间重复文档集合的分区。每单程(pass)处理一个分区。每单程爬过的文档数目可以变化,并且优选地,每分区大概是1,000,000。优选地,每个分区中仅处理之前未爬过的文档,直到已经处理所有文档,或者符合某些其他的终止标准。在实践中,当将新文档持续加入文档集合时,持续所述爬过。针对被爬过的每个文档,由索引系统110进行下列步骤:
使用长度为n的短语窗口来遍历(traverse)文档的单词,其中n是希望的最大短语长度。典型地,窗口的长度将至少是2,并且优选地为4或5词(单词)。优选地,短语包括短语窗口中的所有单词,包括可表征为停止单词的那些单词,诸如“a”、“the”等等。可以由行尾、段回车、标记标签或者内容或格式变化的其他表示来终止短语窗口。
图3说明了在遍历其间文档300的一部分,示出了开始于单词“stock”并且向右延伸5个单词窗口302。窗口302中的第一单词是候选短语i,并且序列的每一个i+1、i+2、i+3、i+4和i+5同样是候选短语。因此,在此例子中,候选短语是:“stock”、“stock dogs”、“stockdogs for”、“stock dogs for the”、“stock dogs for the Basque”和“stockdogs for the Basque shepherds”。
在每个短语窗口302中,每个候选短语被依次检查,以确定是否它已经出现在好的短语列表208或者可能的短语列表206中。如果候选短语既没有出现在好的短语列表208中也没有出现在可能的短语列表206中,那么候选短语已经被确定为“坏的”并且被忽略。
如果候选短语在好的短语列表208中,作为条目gj,那么短语gj的索引150条目被更新,以包括该文档(例如,它的URL或者其他文档标识符),以表示此候选短语gj出现在当前文档中。在短语gj(或词)的索引150中的条目被称作短语gj的置入(posting)列表。该置入列表包括文档d的列表(由它们的文档标识符,例如文档号,或者可选地,URL),其中短语出现在这些文档d中。在一个实施例中,使用例如MD5,通过URL的单向散列来产生文档号。
另外,如下面进一步解释,更新同现矩阵212。在最先的单程中,好的和坏的列表将是空的,并且因此,大部分短语将趋向于加入可能的短语列表206。
如果候选短语不在好的短语列表208中,那么它被加入可能的短语列表206,除非它已经出现在其中。可能的短语列表206上的每个条目p具有三个相关的计数:
P(p):出现可能的短语的文档的数目;
S(p):可能的短语的所有实例的数目;并且
M(p):可能的短语的感兴趣实例的数目。在可能短语可通过语法或者格式标记(例如通过黑体字、或者下划线、或者作为超级链接中的锚文本,或者引号)与文档中相邻的内容区分出来的情况下,可能的短语的实例是“感兴趣的”。由各种HTML标记语言标签和语法标记来表示这些(以及其他)区别表现(appearance)。当将短语置于好的短语列表208中时,保持针对短语的这些统计。
另外,保持用于好的短语的各种列表,即同现矩阵212(G)。矩阵G具有m×m维,其中m是好的短语的数目。矩阵中每个条目G(j,k)代表一对好的短语(gj,gk)。同现矩阵212逻辑地(虽然不需要物理地)为好的短语的每个对(gj,gk)保持相对于次窗口304的三个分开的计数,其中次窗口304的中心定位在当前单词i,并且延伸+/-h个单词。在一个实施例中,诸如图3所描述的,次窗口304是30个单词。同现矩阵212因此保持:
R(j,k):  自然同现计数。短语gj与短语gk一起出现在次窗口304中的次数;
D(j,k):分离感兴趣计数。短语gj或者短语gk在次窗口中出现作为显著文本的次数;以及
C(j,k):联合感兴趣计数。短语gj和短语gk在次窗口中出现作为显著文本的次数。对于避免短语(例如,版权提醒)频繁出现在工具条、页脚或者页眉中并且因此不是其他文本的实际预测的情况,使用联合的感兴趣计数是有益的。
参考图3的例子,假设“stock dogs(斯托克狗)”在好的短语列表208上,短语“Australian Shepherd(澳大利亚牧羊犬)”和“AustralianShepherd Club of America(美国的澳大利亚牧羊犬俱乐部)”也在好的短语列表208上。后两个短语围绕当前短语“stock dogs”出现在次窗口304中。然而,短语“Australian Shepherd Club of America”作为用于到网站的超级链接(由下划线表示)的锚文本出现。因此增加用于对{“stock dogs”,“Australian Shepherd”}的自然同现计数,并且同时增加用于{“stock dogs”,“Australian Shepherd Club of America”}的自然出现计数和分离感兴趣计数,因为后者作为显著文本出现。
用于分区中的每个文档,使用序列窗口302和次窗口304遍历每个文档的过程被重复。
一旦已经遍历了分区中的文档,索引操作的下个阶段是从可能的短语列表206更新202好的短语列表208。如果短语出现的频率和短语出现在其中的文档的数目表示它作为语义上有意义的短语具有足够的使用,则可能的短语列表206上的可能短语p被移动到好的短语列表208。
在一个实施例中,对此进行如下测试。如果:
a)P(p)>10并且S(p)>20(包含短语p的文档数大于10并且短语p的出现数目大于20);或者
b)M(p)>5(短语p的感兴趣实例数目大于5),则可能短语p被从可能的短语列表206移除并且被置于好的短语列表208上。
这些阈值由分区中文档的数目调分段;例如,如果2,000,000个文档在分区中被爬过,那么阈值大概是双倍。当然,本领域技术人员应该理解,阈值的特定值,或者测试它们的逻辑可以如希望变化。
如果短语p不具有好的短语列表208的资格,那么检查它作为坏短语的资格。如果:
a)包含短语的文档的数目,P(p)<2;并且
b)短语的感兴趣实例数目,M(p)=0,则短语p是坏的短语。
这些条件表示该短语既是不频繁的,又没有作为重要内容的表示使用,并且这些阈值再次根据分区中的文档数目调整。
如上所述,应该注意,好的短语列表208将自然包括各个单词作为短语,以及多单词短语。这是因为短语窗口302中的每个第一单词总是候选短语,并且适当的实例计数将被积累。因此,索引系统110可以自动索引各个单词(即,具有单个单词的短语)和多单词短语。好的短语列表208也将显著短于基于m个短语的所有可能组合的理论最大值。在典型的实施例中,好的短语列表208将包括大概6.5×105个短语。当系统仅需要跟踪可能和好的短语时,坏短语列表不需要存储。
在最后单程通过文档集合之前,由于大资料库中短语使用的期望分布,可能短语的列表将相对短。因此,如果假设在第十次单程(例如,10,000,000个文档)中短语最初出现,则此时短语不可能是好的短语。它可能是刚进入使用的新短语,并且因此在随后爬过期间变得逐渐普通。在这种情况中,它的各个计数将增加并且可以最终满足作为好的短语的阈值。
索引操作的第三阶段是使用源自于同现矩阵212的预测方法来整理204好的短语列表208。如果不整理,好的短语列表208很可能包括很多虽然合理地出现在词典中但是它们自己不足以预测其他短语的出现,或者它们自己是更长短语的字序列的短语。移除这些弱的好短语很可能使好的短语的非常鲁棒。为了识别好的短语,使用这种的预测方法,该预测方法表达一个短语相对于另一个短语出现在文档中的增加的可能性。在一个实施例中,这通过以下方式来完成:
如上提到的,同现矩阵212是存储与好的短语相关联的数据的m×m矩阵。矩阵中每行j代表好的短语gj并且每列k代表好的短语gk。对于每个好的短语gj,计算期望值E(gj)。期望值E是集合中期望含有gj的文档的百分比。计算该百分比,例如,为包含gj的文档数目与已经爬过过的集合中的文档总数目T的比率:P(j)/T。
如上提到的,在每次gj出现在文档中时,更新包含gj的文档数目。可以在每次gj的计数增长时,或者在此第三阶段期间更新E(gj)的值。
接下来,对于每个其他好的短语gk(例如,矩阵的列),确定是否gj预测gk。gj的预测方法确定如下:
i)计算期望值E(gk)。如果么gj和gk是不相关短语,那么gj和gk的期望同现率E(j,k)是E(gj)*E(gk);
ii)计算gj和gk的实际同现率A(j,k)。这是自然同现计数R(j,k)除以文档的总数目T;
iii)在实际同现率A(j,k)超过期望同现率E(j,k)一阈值总量的情况下,gj被认为预测gk
在一个实施例中,预测方法是信息增益。因此,当在gj的出现时gk的信息增益I超过阈值时,短语gj预测另一个短语gk。在一个实施例中,计算如下:
I(j,k)=A(j,k)/E(j,k)
并且在I(j,k)>信息增益阈值的情况下,
好的短语gj预测好的短语gk
在一个实施例中,信息增益阈值是1.5,但是优选地在1.1和1.7之间。提高阈值超过1.0用作减少两个不相关短语同现超过随机预测的可能性。
正如所强调的,关于给定的行j,针对矩阵G的每列k,重复计算信息增益。一旦完成了行,如果没有好的短语gk的信息增益超过信息增益阈值,那么这意味着短语gj不预测任何其他好的短语。在这个情况中,从好的短语列表208中移除gj,本质上成为坏的短语。注意:当此短语自己可以被其他好的短语预测时,不移除该短语gj的列j。
当已经评估了同现矩阵212的所有行时,此步骤结束。
此阶段的最终步骤是整理好的短语列表208,以移除不完整短语。不完整短语是仅预测自己的短语扩展的短语,并且其开始于短语的最左侧(即,短语的开始)。短语p的“短语扩展”是开始于短语p的超序。例如,短语“President of”预测“President of the UnitedStates”、“President of Mexico”、“President of AT&T”等。由于这些短语开始于“President of”并且是它的超序,后面所有它们是短语“President of”的短语扩展。
因而,基于前面讨论的信息增益阈值,保持在好的短语列表208上的每个短语gj将预测一些数目的其他短语。现在,对于每个短语gj,检索系统110执行与每个预测短语gk的串匹配。串匹配测试是否每个预测短语gk是短语gj的扩展。如果所有预测短语gk是短语gj的短语扩展,那么短语gj是不完整的,并且从好的短语列表208中移除,并且被加入不完整短语列表216。因此,如果存在至少一个不是gj的扩展的短语gk,那么gj是完整的,并且保留在好的短语列表208中。例如,“President of the United”是不完整短语,这是因为它预测的唯一其他短语是它的扩展“President of the United States”。
不完整短语列表216本身在实际搜索期间非常有用。当接收敌搜索查询,针对不完整短语列表216,比较该搜索查询。如果该查询(或者它的部分)匹配列表中的一个条目,那么搜索系统120可以查找不完整短语的最可能短语扩展(相对于不完整短语具有最高信息增益的短语扩展),并且将此短语扩展提示给用户,或者自动对短语扩展进行搜索。例如,如果搜索查询是“President of the United”,搜索系统120可以自动向用户提示“President of the United States”作为搜索查询。
在索引过程的最后阶段完成之后,好的短语列表208将包含大量已经在资料库中发现的好的短语。这些好的短语的每个将预测至少一个不是它的短语扩展的其他短语。即,使用每个好的短语以足够的频率和独立性来表示在资料库中表达的有意义的概念或者思想。不像使用预定或者手选短语的现存系统,好的短语列表反映资料库中实际被使用的短语。而且,由于当新文档被加入文档集合时周期性地重复上述爬过和索引过程,所以当新的短语进入词典时,索引系统110自动检测新的短语。
2.相关短语的识别和相关短语的集群
参考图4,相关短语识别过程包括下列功能操作。
400:识别具有高信息增益值的相关短语。
402:识别相关短语的集群。
404:存储集群比特向量和集群号。
现在,详细描述这些操作的每一个。
首先,回想同现矩阵212包含好的短语gj,其中每一个使用高于信息增益阈值的信息增益预测至少一个其他好的短语gk。为了识别400相关短语,那么,对于每对好的短语(gj,gk),将信息增益与相关短语阈值(例如,100)进行比较。即,在I(gj,gk)>100的情况下,gj和gk是相关短语。
此高阈值被用于识别很好超越统计期望率的好的短语的同现。统计地,它意味着短语gj和gk同现超过期望同现率100倍。例如,考虑在文档中的短语“monica Lewinsky(莫妮卡莱温斯基)”,短语“BillClinton(克林顿)”在同样文档中很可能出现100次,那么短语“克林顿”很可能出现在任何随机选择的文档上。解释这个另一个方式是:因为同现率是100∶1,则预测的准确率是99.999%。
因而,任何小于相关短语阈值的条目(gj,gk)被清零,表示短语gj、gk不相关。同现矩阵212中的任何保留条目现在表示所有相关短语。
然后通过信息增益值I(gj,gk)排序同现矩阵212的每行gj中的列gk,使得带有最高信息增益的相关短语gk被最先列出。因此,针对给定的短语gj,此排序识别根据信息增益识别哪个其他短语最可能相关。
下一步是确定402哪些相关短语一起组成相关短语的集群。集群是其中每个短语关于至少一个其他短语具有高信息增益的相关短语的集合。在一个实施例中,集群被如下识别。
在矩阵的每行gj中,将有一个或多个相关于短语gj的其他短语。此集合是相关短语集合Rj,其中R={gk,gl,...gm}。
对于Rj中的每个相关短语m,索引系统110确定是否R中的每个其他相关短语也相关于gj。因此,如果I(gk,gl)也是非零,那么gj,gk和gl是集群的一部分。针对R中的每对(gl,gm),重复此集群测试。
例如,假设好的短语“比尔克林顿”相关于短语“总统”、“莫妮卡莱温斯基”,因为这些短语的每一个关于“比尔克林顿”的信息增益超过了相关短语阈值。进一步假设短语“莫妮卡莱温斯基”相关于短语“皮包设计师”。那么,这些短语组成集合R。为了确定该集群,索引系统110通过确定它们的相应信息增益来评估这些短语的每个到其他短语的信息增益。因此,对于R中的所有对,索引系统110确定信息增益I(“总统”,“莫妮卡莱温斯基”)、I(“总统”,“皮包设计师”)等等。在此例子中,“比尔克林顿”、“总统”和“莫妮卡莱温斯基”组成一个集群,“比尔克林顿”和“总统”组成第二集群,并且“莫妮卡莱温斯基”和“皮包设计师”组成第三集群,并且“莫妮卡莱温斯基”、“比尔克林顿”和“皮包设计师”组成第四集群。这是因为虽然“比尔克林顿”没有使用足够的信息增益预测“皮包设计师”,但是“莫妮卡莱温斯基”预测了这两个短语。
为了记录404集群信息,分配给每个集群唯一集群号(集群ID)。然后,记录此信息连同每个好的短语gj
在一个实施例中,集群号通过也表示短语间正交关系的集群比特向量确定。集群比特向量是长度为n的比特序列,好的短语列表208中好的短语的数目。对于给定的好的短语gj,比特位置对应于gj的排序相关短语R。如果R中的相关短语gk和短语gj在相同的集群中,则比特被设定。更通常地,如果在gj和gk间的任一方向存在信息增益,这意味着集群比特向量中的相应比特被设定。
那么,集群号是所产生的比特串的值。此实现具有在相同集群中出现拥有多路或者单路径信息增益的相关短语的性质。
集群比特向量的例子如下,使用上面的短语:
    比尔克林顿    总统     莫妮卡莱温斯基    皮包设计师   集群ID
比尔克林顿     1    1     1     0   14
总统     1    1     0     0   12
莫妮卡莱温斯基     1    0     1     1   11
皮包设计师     0    0     1     1   3
总之,此过程之后,对于每个好的短语gj、识别相关短语R的集合,其中按照信息增益I(gj,gk)从高到低排序相关短语R。另外,对于每个好的短语gj,存在集群比特向量和正交值,其中集群比特向量的值是识别短语Rj是成员的主集群的集群号,并且正交值(用于每个比特位置的1或者0)表示R中的哪些相关短语与Rj在共同的集群中。因此在上面的例子中,基于短语“比尔克林顿”的行中的比特值,“比尔克林顿”、“总统”和“莫妮卡莱温斯基”位于集群14中。
为了存储该信息,两个基本表示是可用的。第一,如上所示,信息可以存储在同现矩阵212中,其中:
条目G[rowj,col.k]=(I(j,k),集群号,集群比特向量)。
可选地,可以避免矩阵表示,并且所有信息存储在好的短语列表208中,其中每行代表好的短语gj
短语rowj=列表[短语gk(I(j,k),集群号,集群比特向量)]。
此方法对于集群提供有用的组织。首先,不是严格而经常是任意限定主题和概念的层级,此方法认识到:由相关短语表示的主题组成复杂的关系图,其中一些短语和很多其他短语相关,并且一些短语具有更有限的范围,并且其中关系可以是相互的(每个短语预测其他短语)或者单向的(一个短语预测其他,但不是反之亦然)。结果是集群对于每个好的短语可以被赋予特征“局部”,并且一些集群将通过具有一个或多个共有相关短语而重叠。
然后,对于给定的好的短语gj,相关短语的通过信息增益的排序提供用于命名该短语的集群的分类法:集群名是在集群中具有最高信息增益的相关短语的名称。
上面过程提供一种识别出现在文档集合中重要短语的非常鲁棒的方法,以及有益地,提供一种在实践中这些相关短语被一起使用于自然“集群”中的方法。结果,此相关短语的数据驱动集群避免了在相关词和概念的任何人工直接“编辑”选择中固有的偏差,正如许多系统中所共有的偏差。
3.使用短语和相关短语索引文档
考虑好的短语列表208,包括关于相关短语和集群的信息,索引系统110的下一个功能操作是关于好的短语和集群索引文档集合中的文档,并且存储将更新信息存储在主索引150和次索引152中。图5说明了这个过程,其中存在用于索引文档的下列功能阶段:
500:将文档置入在文档中找到的好的短语的置入列表。
502:针对相关短语和次相关短语,更新实例计数和相关短语比特向量。
504:根据置入列表尺寸重新排列索引条目。
506:通过信息检索分值或者特征值对每个置入列表中的索引条目排序。
508:在主服务器150和次服务器152之间划分每个置入列表。
现在详细描述这些阶段。
如前,遍历或者爬过的文档集合;这可以是相同或者不同的文档集合。对于给定的文档d,使用长度为n的序列窗口302从位置i以上述该方式逐个单词地遍历500文档。
在给定短语窗口302中,从位置i开始,识别窗口中所有好的短语。每个好的短语以gi代表。因此,g1是第一个好的短语,g2将是第二个好的短语,以此类推。
对于每个好的短语gi(例如g1“President”和g4“President ofATT”),将文档标识符(例如,URL)置入索引150中好的短语gi的置入列表。此更新识别出现在此特定文档中的好的短语gi
在一个实施例中,短语gj的置入列表采用下列逻辑形式:
短语gj:列表(文档d,[列表:相关短语计数][相关短语信息])
对于每个短语gj存在短语出现在上面的文档d的列表。对于每个文档,存在也出现在文档d中的短语gj的相关短语R的出现次数的计数列表。
在一个实施例中,相关短语信息是相关短语比特向量。此比特向量可以被赋予特征作为“双比特”向量,其中对于每个相关短语gk,存在两个比特位置,gk-1、gk-2。第一个比特位置存储表示是否相关短语gk出现在文档d中的标记(即,文档d中gk的计数大于0)。第二比特位置存储表示是否gk的相关短语gl也出现在文档d中。短语gj的相关短语gk的相关短语gl这里称作“gj的次相关短语”。计数和比特位置相应于R中短语的典范次序(以递减的信息增益顺序排序)。此排序顺序具有使相关短语gk是由与相关短语比特向量的最高有效比特相关联的gj最高度地预测的,并且相关短语gl是由与最低有效比特相关联的gj最少预测的效果。
注意,对于给定的短语g,关于包含g的所有文档,相关短语比特向量的长度以及相关短语到该向量的各个比特的相关性是相同的。此实现具有允许系统容易比较针对任何(或者所有)包含g的文档的相关短语比特向量的性质,以发现哪个文档具有给定的相关短语。这对于便于搜索过程响应于搜索查询来识别文档是有益的。因而,给定的文档将出现在很多不同短语的置入列表中,并且在每个这样的置入列表中,该文档的相关短语向量对于拥有该置入列表的短语将是特定的。这方面保持了关于单独短语和文档的相关短语比特向量的位置。
因而,下一阶段502包括在文档中遍历当前索引位置的次窗口304(如前+/-K个词的次窗口,例如,30个词),例如从i-K到i+K。对于出现在次窗口304中的每个gl的相关短语gk,索引系统110在相关短语计数中增加关于文档d的gk的计数。如果gi稍后出现在文档中,并且再次在后面的次窗口中发现相关短语,则再次增加计数。
如提到的,基于计数,设置相关短语比特位图中的相应第一比特gk-1,如果gk的计数大于0,则比特设置为1,或者如果计数等于0,则设置为0。
接下来,通过查寻索引150中的相关短语gk设置第二比特gk-2,在gk的置入列表中识别文档d的条目,然后,并且针对gk的任何相关短语,检查gkk的次相关短语计数(或比特)。如果任何这些次相关短语计数/比特被设置,那么这表示gj的次相关短语也出现在文档d中。
当文档d已经以此方式被完全处理过时,索引系统110已经识别下列:
i)文档d中的每个好的短语gj
ii)对于每个好的短语gj它的哪些相关短语gk出现在文档d中;
iii)对于出现在文档d中的每个相关短语gk,它的哪些相关短语gl(gj的次相关短语)也出现在文档d中。
a)划分的索引
基于短语在资料库中的出现频率,索引150中的每个短语被赋予短语号。越普通的短语,在索引中它接收的短语号越低。然后,索引系统110根据列于每个置入列表中的文档号降序排序504主索引150中的所有置入列表213,以便最频繁出现的短语具有最低的短语号并且在主索引150中首先列出。如上面看到的,主索引150被分布在M1主服务器上。为了减少磁盘竞争,通过散列函数,例如phase_number MOD M1,将短语分布在这些机器上。
为了显著地增加可以由系统索引的文档数目,主索引150被进一步处理以选择性地划分每个置入列表214。如上面看到的,每个短语的置入列表包含文档的列表。置入列表中的每个文档被给出506关于短语的信息检索类型分值。然而,计算该分值,然后置入列表中的文档通过此分值以降序被排序,最高分值的文档在置入列表中列于第一。当响应于查询检索文档时,此文档预排序对于改进性能特别有益。
文档预排序的分值算法可以是与使用来在搜索系统120中生成相关分值的相同的基本相关分值算法。在一个实施例中,IR分值是基于网页排序算法,如美国专利号6,285,999描述的。可选地或是额外地,也可以存储以及单独或组合使用文档的多个IR相关属性的统计,诸如内链接、外链接、文档长度的数目,以便排序文档。例如,根据内链接数目,文档可以以降序被排序。为了进一步便于从主索引150进行信息的最快可能检索,通过IR类型分值排列次序将每个置入列表214中的条目物理地存储在适当的主服务器上。
考虑到对于给定短语的最高等分文档现在位于置入列表的开始,置入列表214在主索引150和次索引152间被划分开。对于直到第一K个保留文档的置入列表条目存储在主服务器150上。在一个实施例中,K被设置为32,768(32K),但是可以使用K的较高或者较低的值。具有在主和次索引之间划分开的置入列表的短语被称作‘共同’短语,然而没有划分开的短语被称作‘稀有’短语。存储于主索引150中的置入列表的部分被称作主置入列表,并且包含主条目,并且存储于次索引152中的置入列表的部分被称作次置入列表,并且包含次条目。对于给定置入列表214的次条目根据短语号的另一个哈什函数,例如,短语号MOD M2,被分配给次服务器。次服务器ID存储在主服务器上的置入列表中,以允许搜索系统120容易地访问需要的适当的次服务器。对于每一个存储在一个次服务器上的短语置入列表,次条目以它们文档号的顺序,从最低文档号到最高(对比于主索引150中的相关性排序)物理地存储。优选地,没有相关性信息存储在次条目中,以便条目包含最小数据量,诸如文档号以及文档定位符(例如URL)。排序和划分步骤对于每个短语可以顺序执行;可选地,所有(或者多个)短语可以先被排序,然后划分;算法设计只是一个设计选择并且上述变化可以被同等考虑。在每个索引通过文档集合期间,进行排序和划分步骤,以便索引单程期间任何随新文档被更新的短语可以重排序以及重划分。其他最优化和操作也是可能的。
在一个实施例中,对于置入列表214中每个短语的主索引150中存储的文档属性的选择是可变的,并特别地向着主索引中置入列表214的末端减少。换句话说,基于它们的相关性分值(或者其他基于相关性的属性)在置入列表中排序较前的文档将具有所有或者大部分存储在置入列表的文档条目中的文档属性。主索引中的置入列表214末端附近的文档将仅具有更有限的存储的这种属性的集合。
在一个实施例中,主索引150中的每个置入列表214具有三分段(或者等级),长度为m、3m、5m,其中m这里是文档条目的数目,在此实施例中,希望每个分段具有长度K,如上描述,即m=K,并且条目主索引具有9K个条目;那么,次索引将存储次条目,其中n>9K。
在第一分段中(第一m个条目),针对给定短语的置入列表中的每个文档条目,存储下列相关性属性:
1.文档相关性分值(例如,网页排序);
2.文档中该短语的出现总数目;
3.也包含该短语并且指向该文档的多达10,000个锚文档的排列次序的列表,并且对于每个锚文档,它的相关性分值(例如,网页排序),以及锚文本本身;并且
4.每个短语出现位置,以及对于每个出现的一组标记,所述标记表示出现是否是题目、粗体、标题、位于URL中、位于主体中,位于工具条中、位于页脚中,位于广告中、大写的、或者位于某些类型的HTML标记中。
在第二分段中(接下来的3m个条目),仅存储条1-3。
在第三分段中(最后5m个条目),仅存储条1。
系统地减少存储在每个置入列表214的后面部分的文档属性是可接受的,因为置入列表末端附近的文档已经被确定与特定短语很少相关(低相关性分值),并且因此不需要全部存储它们的所有相关性特性。
前述存储安排使得能够在给定硬盘存储容量的情况下存储显著多于传统技术的条目。第一,对于每个文档中每个短语的词位置信息的消除提供了对于给定文档集合所需存储容量50%的削减,因而有效加倍了可以存储文档的数目。第二,在主索引和次索引间划分置入列表以及仅在主索引中存储相关性信息提供了进一步实质的分段省。很多短语在他们的置入列表中具有超过100,000,甚至1,000,000个文档。仅在主索引中存储有限数量条目的相关性信息消除了不太可能在搜索中被返回的文档的存储需要。这个方面将可存储文档数量增加了大约10倍。最后,通过针对每个置入列表214中的很少相关(较低排序的)文档来选择性地在主索引150中存储更少的相关性信息,实现了进一步的分段省(大概削减25%-50%所需存储容量)。
b)确定文档的主题
通过短语所引文档以及实现集群信息提供了索引系统110的另一个优势,其能够基于相关短语信息确定关于文档的主题。
假设对于给定好的短语gj并给定文档d,置入列表条目如下:
gj:文档d:相关短语计数:={3,4,3,0,0,2,1,1,0}
相关短语比特向量:={11 11 10 00 00 10 10 10 01}
其中,相关短语比特向量示出于比特-比特对中。
从相关短语比特向量,可以确定文档d的主和次主题。主主题由比特对(1,1)表示,并且次主题由比特对(1,0)表示。相关短语比特对(1,1)表示针对比特对的相关短语gj出现在文档d中,次相关短语gl也是如此。这可以解释为文档d的作者在撰写文档中一起使用几个相关短语gj、gk和gl。比特对(1,0)表示gj和gk都出现,但是没有来自gk的其他次相关短语出现,并且因此这是不大重要的主题。
c)针对档案检索来索引文档实例
本发明的另一个实施例支持在索引中存储和保留历史文档的能力,并且因而支持各个文档或者网页的日前特定实例(版本)的档案检索。这个能力具有不同的有益用途,包括使用户可以搜索在特定日期范围的文档,使搜索系统120可以在响应于搜索查询来评估文档以及组织搜索结果时,使用日期或者版本相关的相关性信息。
在此实施例中,文档标识符针对日期间隔编码文档标识。在索引系统110第一次爬过文档时,文档标识符被存储作为文档URL和文档的日期戳的散列,例如,MD5(URL,第一日期)。日期范围字段与文档的特定实例相关联,其包括对于被认为是有效的文档实例的日期范围。日期范围可以被指定作为日期对,包括文档被认为有效的第一日期(索引日期)和文档被认为有效的最后日期(例如,11-01-04;12-15-04)。可选地,日期范围可以被指定作为第一日期,以及表示在第一日期之后的天数的数目(例如,11-01-04,45)。日期可以被指定为任何有效的格式,包括日期字符串或者天数。在文档是当前有效文档周期期间,第二值是表示该状态的状态标记或者令牌(包括NULL值);这被称作当前间隔。例如,(11-01-04,“打开”)表示文档当前是有效的。这表示文档将满足包括第一日期后的日期限制的搜索。不论特定的实现,针对给定日期间隔的第一日期可以被称作“打开日期”,并且针对给定间隔的最后日期可以被称作“关闭日期”。
在由索引系统110随后的索引单程期间,索引系统110确定是否文档已经改变。如果文档中不存在改变,那么索引系统110不对文档采取进一步的行动。如果文档已经改变(文档的新实例或者版本),那么索引系统110重索引文档。在重索引时,索引系统110通过改变打开状态标记为当前日期减一天,来关闭当前间隔。例如,如果索引系统110在12/16/04索引文档并且确定文档已经改变,那么关闭当前间隔如下:(11-01-04,12-15-04),并且创建新的当前间隔,例如,(12-16-04,“打开”)。索引系统110保持文档的每个日期范围,连同日期范围的相应索引相关性数据(例如,短语,相关性统计、文档内链接等等)。因此,每个日期范围和相关性数据集合与文档的特定实例或版本相关联。对于用于给定文档的每个日期间隔,索引系统保持唯一文档标识符,例如MD5(URL,第一日期),以便能够检索适当缓存的文档实例。在使用主和次索引的实施例中,当完成索引单程时,主索引中的置入列表214被重评分、重排序、并且重划分。
给定文档是否自上次索引单程已经改变的确定可以以任何方式做出,包括使用统计规则,语法规则或者类似启发式规则。在一个实施例中,索引系统110使用文档短语确定是否文档已经改变。每当索引文档时,前N个主题被识别和保持作为与日期范围信息相关联的列表,例如,日期范围(11-04-04,12-15-04)的前20个主题。被索引的实例主题列表然后与现有文档实例的主题列表(优选地最近关闭日期范围)进行比较。如果超过M%的主题已经改变(例如,5%),那么文档被认为改变,并且针对所有短语进行重索引。应该注意:确定文档是否已经改变的其他方法也可以使用,以及基于短语的索引使用不是必需的。例如,可以基于文档长度的改变、最频繁词的改变、词频的改变、HTML标记类型数量的改变、或者文档结构和内容的其他方法,来使用统计规则集合。
III.搜索系统
搜索系统120操作以接收查询并且搜索与查询相关的文档,并且在搜索结果集合中提供这些文档(使用到文档的链接)的列表。
图6说明了搜索系统120的主要功能操作:
600:识别查询中的短语。
602:检索与查询短语相关的文档。
604:根据短语对搜索结果中的文档进行排序。
这些阶段的每个的细分段如下。
1.识别查询和查询扩展中的短语
搜索系统120的第一阶段600是识别在查询中出现的任何短语,以效地搜索索引,在该部分中使用了以下术语:
q:作为输入并且由搜索系统120接收的查询。
Qp:查询中出现的短语。
Qr:Qp的相关短语。
Qe:Qp的短语扩展。
Q:Qp和Qr的联合。
从客户端190接收查询q,具有多达特定最大数量的字符或单词。
由搜索系统120使用的尺寸为N(例如,5)的短语窗口,以遍历查询q的词。短语窗口开始于查询的第一词,向右扩展N个词。然后,此窗口向右移动M-N次,其中M是查询中词的数目。
在每个窗口位置,窗口中存在N个词(或更少)。这些词组成可能的查询短语。在好的短语列表208中查找可能的短语,以确定它是否是好的短语。如果可能短语出现在好的短语列表208中,那么返回针对短语的短语号;现在可能的短语是候选短语。
在每个窗口中的所有可能短语已经被检验以确定它们是否是好的候选短语后,搜索系统120将具有针对查询中相应短语的短语号集合。然后,然口对这些短语号进行排序(降序)。
开始于最高短语号作为第一候选短语,搜索系统120确定排序列表内的固定数字距离中是否存在另一个候选短语,即,短语号间的差值在阈值量内,例如,20,000。如果这样,那么查询中最左端的短语被选作有效查询短语Qp。此查询短语和所有它的子短语被从候选者列表中移除,并且列表被重排序并且重复处理。此处理结果是有效查询短语Qp的集合。
例如,假设搜索查询是“Hillary Rodham Clinton Bill on the SenateFloor”。搜索系统120将识别下列候选短语,“Hillary Rodham ClintonBill on”、“Hillary Rodham Clinton Bill”和“Hillary Rodham Clinton”。前两个被放弃,并且最后一个作为有效查询短语被保留。接下来搜索系统120将识别“Bill on the Senate Floor”以及子短语“Bill on theSenate”、“Bill on the”、“Bill on”、Bill“”并且将选择“Bill”作为有效查询短语Qp。最后,搜索系统120将解析短语“on the senate floor”并且确定“Senate Floor”作为有效查询短语。
接下来,搜索系统120调整有效短语Qp用于首字母大写。当解析该查询时,搜索系统120在每个有效短语中识别潜在的首字母大写。使用已知的首字母大写表,诸如首字母大写为“United States”的“united states”,或者通过使用基于语法的首字母大写算法,可以完成这个。这就生成了适当的首字母大写的查询短语集合。
然后,搜索系统120使第二单程通过首字母的大写短语,并且仅选择最左端并首字母大写的短语,其中短语和它的子短语出现在集合中。例如,关于“president of the united states”的搜索将被首字母大写作“President of the United States”。
在下一个阶段,搜索系统120识别602与查询短语Q相关的文档。搜索系统120然后检索查询短语Q的置入列表,并且如果需要,对这些列表取交集(intersect),以确定哪些文档出现在针对查询短语的所有(或一些)置入列表上。如果查询中的短语Q具有短语扩展Qe集合(下面进一步描述),那么搜索系统120在作对置入列表取交集之前,首先组成短语扩展置入列表的联合。如上所述,搜索系统120通过在不完整短语列表216中查找每个查询短语Q来识别短语扩展。
使用主索引150和次索引152,搜索系统120可以进一步优化取交集操作。基于查询短语是否是普通的或者稀有的,存在搜索系统120不得不处理的四种常用的取交集分析情况。
第一种情况是针对单查询短语,其既可以是普通的也可以是稀有的。在此情况中,搜索系统120将来自于主索引150的短语的置入列表中选择数量的(例如,100或者1000)第一条目传递到排序阶段604,用于最终排序。由于文档已经按照排序次序,排序阶段可以优化排序操作。可选地,由于通过它们与短语的相关性已经预排序了这些,所以可以直接将文档集合作为搜索结果提供,基本上提供瞬时结果给用户。
第二种情况是其中存在两个普通查询短语。这里,搜索系统120访问主索引150中每个短语的置入列表214并且对这些列表取交集,以形成最终文档列表,然后该最终文档列表被传送到排序阶段604,用于基于与文档相关联的相关性属性集合进行相关性评分。因为在每个置入列表中存在至少K个文档,所以存在包含两个短语的足够数量的文档的极高可能性,并且因此次索引152中的次条目的取交集不是必需的。这进一步减少了检索所需的时间量。
第三种情况是其中存在两个稀有查询短语。此情况以与第二种情况相同的方式处理,因为在这里每个短语的全部置入列表存储在主索引中。
最后一种情况是其中有效查询短语包括普通短语和稀有短语。在此情况中,搜索系统120首先对来自于用于两个短语的主索引150的置入列表214取交集,以形成第一集合或者普通文档。接下来,搜索系统120对稀有短语的置入列表与普通短语的次条目(其已经以文档号顺序排序)取交集,以形成普通文档的第二集合。将两个集合结合并且然后传递到排序阶段。
其中可以由使用上述方法的一个连续的取交集来处理存在三个或更多查询短语的所有实例。
2.排序
a)基于包含的短语对文档排序
搜索系统120提供排序阶段604,其中使用相关性信息和文档属性连同每个文档的相关短语比特向量中的短语信息,以及用于查询短语的集群比特向量,对搜索结果中的文档排序。此方法根据包含在文档中的短语,或者非正式地“主体索引项(body hits)”,来排序文档。
如上所述,对于任何给定短语gj,gj的置入列表中的每个文档d具有关联的相关短语比特向量,其识别哪个相关短语gk以及哪个次相关短语gl出现在文档d中。出现在给定文档中的相关短语和次相关短语越多,将在针对给定短语的文档的相关短语比特向量中设置的比特越多。被设置的比特越多,相关短语比特向量的数值越大。
因而,在一个实施例中,搜索系统120根据它们的相关短语比特向量值对搜索结果中的文档排序。包含与查询短语Q最相关短语的文档将具有最高值的相关短语比特向量,并且这些文档将成为搜索结果中排序最高的文档。
此方法是希望的,这是因为语义上这些文档都与查询短语在主题上最相关。请注意,因为相关短语信息被用于识别相关文档并且然后对这些文档排序,所以尽管文档不包含输入查询词q的高频率,此方法也提供了高度相关的文档。带有输入查询词的低频率的文档仍旧可以具有大量的与查询词和短语相关的短语,并且因此比具有仅查询词和短语的高频率但是没有相关短语的文档更相关。
在第二实施例中,根据文档包含的查询短语Q的相关短语,搜索系统120对结果集合中的每个文档评分。如下完成这个过程:
给定每个查询短语Q,将存在与查询短语相关的n个短语,如短语识别过程期间所识别的。如上所述,相关查询短语Qr根据来自于查询短语Q的它们的信息增益被排序。然后,这些相关短语被分配点数,开始于针对第一相关短语Qr1的N个点(即,具有来自于Q的最高信息增益的相关短语Qr),然后针对下一个相关短语Qr2是N-1个点,然后,对于Qr3是N-2个点,以此类推,以便给最后相关短语QrN分配一个点。
然后,通过以下方式,给搜索结果中的每个文档评分,即通过确定查询短语Q的那个相关短语Qr出现,并且将分配给每个这样的相关短语Qr的点数提供给文档。然后文档被从最高分到最低分排序。
当进一步提炼时,搜索系统120可以从结果集合中选出特定文档。在某些情况中,文档可以与很多不同主题有关;特别是对于更长的文档是尤其是这样。在很多情况中,与关于许多不同主题的文档相比,用户更喜欢针对在查询中表达的单个主题的文档。
为了精选这些后面文档类型,搜索系统120使用查询短语的集群比特向量中的集群信息,并且移除其中存在超过文档中集群阈值数目的任何文档。例如,搜索系统120可以移除包含多于两个集群的任何文档。这个集群阈值可以是预定的,或者由用户作为搜索参数设定的。
b)基于锚短语对文档排序
除了基于查询短语Q的主体索引项对搜索结果中的文档进行排序外,在一个实施例中,搜索系统120也基于查询短语Q和相关查询短语Qr在到其他文档的锚点(anchor)中的出现,对文档排序。在一个实施例中,搜索系统120对于每个文档计算分值,其是两个分值的函数,主体项索引分值和锚索引项分值。
例如,对于给定文档的文档分值可以计算如下:
分值=.30*(主体索引项分值)+.70(锚索引项分值)。
.30和.70的权重可以根据希望调整。按照上述方式,考虑查询短语Q,文档的主体索引项分值是文档的最高值相关短语比特向量的数值。可选地,此值可以由搜索系统120通过在索引150中查找每个查询短语Q,从查询短语Q的置入列表中访问文档,并且然后访问相关短语比特向量来直接获得。
文档d的锚索引项分值是查询短语Q的相关短语比特向量的函数,其中Q是参考文档d的文档中的锚项。当索引系统110索引文档集合中的文档时,它为每个短语保持一个文档列表,其中在所述文档中短语是外链接中的锚文本,以及也为每个文档保持来自其他文档的内链接(以及关联的锚文本)列表。文档的内链接是从其他文档(参考文档)到给定文档的参考(例如,超链接)。
为了确定给定文档的锚索引项分值,搜索系统12通过锚短语Q反复通过索引中列出的参考文档R(i=1到参考文档的数目)的集合,病得出以下成绩:
Ri.Q.相关短语比特向量*D.Q.相关短语比特向量。
这里的乘积值是主题锚短语Q与文档D相关的分值。这个分值这里被称为“入站(inbound)分值组分”。此乘积通过参考文档R中的锚短语的相关比特向量有效地权衡了当前文档D的相关比特向量。如果参考文档R自己与查询短语Q相关(并且因此,具有更高值的相关短语比特向量),那么这将增加当前文档D分值的重要性。如上所述,主体索引项分值和锚索引项分值被组合以创建文档分值。
接下来,对于每个参考文档R,获得每个锚短语Q的相关短语比特向量。这是锚短语Q与文档R相关的方法。这里乘此值为出站(outbound)分值组分。
然后,针对锚短语Q,从索引150中抽取所有(参考文档,被参考文档)对。然后,这些对通过它们的关联(出站分值组分,入站分值组分)值被排序。取决于实现,这些组分的任意一个可以是主排序关键字,并且其他可以使次排序关键字。然后,排序结果被呈现给用户。按照出站分值组分对文档进行排序使对作为锚索引项的查询具有许多相关短语的文档排序最高,因此代表这些文档作为“专家”文档。按照入站分值组分对文档进行排序使由锚项频繁参考的文档排序最高。
c)基于日期范围相关性对文档排序
搜索和排序操作期间,搜索系统120可以以若干种方式使用日期范围信息。第一,搜索系统120可以使用日期范围作为明确的搜索分界符。例如,可以包括词或者短语以及日期,诸如“美国专利和商标局12/04/04”。搜索系统120可以识别日期项,并且然后选择具有希望的短语并且被针对查询中包括日期项的日期范围索引的文档。然后,从选择的文档中,搜索系统120可以使用与日期范围相关联的索引的相关性数据,获得针对每个文档的相关性分值。以此方式,代替当前实例,可以检索文档较旧的或者以前的实例,其中与搜索查询更相关。这对于频繁改变的文档和页面特别有用,诸如包含频繁改变信息的新网站和其他网站的主页。
第二,在搜索查询中不包括日期项的情况下,搜索系统120可以通过以下方式在相关性排序期间使用索引中的日期信息,,即通过根据它们有多旧对文档相关性分值进行加权,以便较旧的文档使它们相关性分值权重下降(或者较新的文档权重更高)。可选地,在一些情况中,与主题最相关的是文档较旧的版本,而不是文档最当前版本。例如,在历史性事件时刻同时创建的新闻入口站点很可能比新入口的当前实例与关于事件的特定查询更相关。在此情况中,搜索系统120可以提升较旧文档实例的权重,其中例如,针对所有文档实例的文档相关性分值模式示出了围绕一些历史日期的增加,跟随着针对该文档更多当前实例的相关性分值的下降。
在一个或者多个日期项包括在搜索查询中的情况中,如上所述,文档可以使它们的权重下降与日期词和文档日期范围间的差距成比例,以便比日前范围(从打开或者关闭日期衡量)更旧或者比希望的日期项更新的文档使它们的相关性分值权重下降。相反地,在文档的日期范围更靠近希望的日期的情况下,相关性分值权重增加,而不是权重下降。
第三,搜索系统120可以使用日期范围信息作为用于对搜索结果排序的主要或者次要因素。例如,文档可以以逆时间顺序分组(例如,月分组),并且在每组中,文档可以从与搜索查询最相关到最不相关列出。
数据范围信息的另一个使用是:基于文档的更新频率来排序文档。搜索系统120可以确定超过一时间间隔(索引期间可以保持此计数)的给定文档的实例数目(例如,不连续日期范围的数目)。然后,实例数目被用于提高那些更加频繁更新的文档的权重。

Claims (12)

1.一种用于关于短语来索引文档的计算机实现的方法,其中每个文档具有文档标识符,该方法包括:
建立包含该短语的文档列表;
通过相关性分值来对所述列表中的文档进行排序;
按照所述相关性分值的排序次序,将包括较高排序文档的列表的第一部分存储在主索引中;以及
按照所述文档标识符的数字次序,将包括较低排序文档的列表的第二部分存储在次索引中。
2.根据权利要求1的方法,其中所述相关性分值包括基于页面排序的类型分值。
3.根据权利要求1的方法,还包括:针对每个文档,将所述文档的相关性属性存储在所述主索引中。
4.根据权利要求3的方法,其中所述相关性属性包括以下内容中的至少一个:该短语在文档中出现的总数目、也包含该短语并且指向该文档的锚文档的排列次序的列表、文档中每个短语出现的位置、一个或多个标记的集合,所述标记表示出现的格式或者包含该出现的文档部分。
5.根据权利要求3的方法,其中将列表的第二部分存储在次索引中包括基本上仅存储文档识别信息。
6.根据权利要求1的方法,其中将列表的第一部分存储在主索引中包括按照相关性分值的排列次序将列表的第一部分存储在物理存储设备上。
7.根据权利要求1的方法,其中将列表的第二部分存储在次索引中包括按照文档标识符的数字次序将列表的第二部分存储在物理存储设备上。
8.根据权利要求1的方法,其中每个文档列表的第一部分包括第一分段和第二分段,其中在第一分段中列出的每个文档包括第一多个相关性属性,以及在第二分段中列出的每个文档包括第二多个相关性属性,所述第二多个相关性属性是第一相关性属性集合的子集,并且其中在第一分段中列出的文档的排序高于在第二分段中列出的文档。
9.根据权利要求8的方法,其中每个文档列表的第一部分包括第三分段,其中在第三分段中列出的每个文档包括第三多个相关性属性,所述第三多个相关性属性是第二多个相关性属性的子集,并且其中在第二分段中列出的文档的排序高于在第三分段中列出的文档。
10.根据权利要求8的方法,其中每个列表的第一部分包含n个条目,其中该列表的第二部分包含m*n个条目,其中m>2,并且该列表的第三部分包含l*n个条目,其中l>4。
11.一种提供信息检索系统的方法,该方法包括:
存储包括主短语置入列表的主索引,每个置入列表与一个短语相关联并且包括多达最大数目的包含该短语的文档,所述文档按照各自的相关性分值来排列次序;
存储包括次短语置入列表的次索引,每个置入列表与主索引中的主短语置入列表相关联,并且包括包含该短语并且相关性分值比针对该短语的主置入列表中最低排序文档的相关性分值小的文档,所述文档按照文档标识符来排序;
接收包括至少一个短语的搜索查询;
响应于包含具有主置入列表和次置入列表的第一短语以及仅具有主置入列表的第二短语的搜索查询,对第二短语的主置入列表和第一短语的主置入列表取交集,以获得第一共同文档集合,并且对第一短语的次置入列表和第二短语的主置入列表取交集,以获得第二共同文档集合,并且结合第一和第二共同文档集合;以及
排序共同文档。
12.一种信息检索系统,包括:
包括主短语置入列表的主索引,每个置入列表与一个短语相关联并且包括多达最大数目的包含该短语的文档,所述文档按照各自的相关性分值来排列次序;以及
包括次短语置入列表的次索引,每个置入列表与主索引中的主短语置入列表相关联,并且包括包含该短语并且相关性分值比针对该短语的主置入列表中最低排序文档的相关性分值小的文档,所述文档按照文档标识符来排序。
CN200680007173XA 2005-01-25 2006-01-25 基于多索引的信息检索系统 Active CN101133388B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/043,695 2005-01-25
US11/043,695 US7567959B2 (en) 2004-07-26 2005-01-25 Multiple index based information retrieval system
PCT/US2006/002709 WO2006081325A2 (en) 2005-01-25 2006-01-25 Multiple index based information retrieval system

Publications (2)

Publication Number Publication Date
CN101133388A true CN101133388A (zh) 2008-02-27
CN101133388B CN101133388B (zh) 2011-07-06

Family

ID=36741037

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200680007173XA Active CN101133388B (zh) 2005-01-25 2006-01-25 基于多索引的信息检索系统

Country Status (11)

Country Link
US (5) US7567959B2 (zh)
EP (1) EP1844391B1 (zh)
JP (1) JP4881322B2 (zh)
KR (1) KR101273520B1 (zh)
CN (1) CN101133388B (zh)
AU (2) AU2006208079B2 (zh)
BR (1) BRPI0614024B1 (zh)
CA (1) CA2595674C (zh)
DK (1) DK1844391T3 (zh)
NO (1) NO338518B1 (zh)
WO (1) WO2006081325A2 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103631842A (zh) * 2012-08-21 2014-03-12 国际商业机器公司 用于检测多列复合键列集合的方法和系统
CN101359331B (zh) * 2008-05-04 2014-03-19 索意互动(北京)信息技术有限公司 对搜索结果重新排序的方法和系统
CN103810300A (zh) * 2014-03-10 2014-05-21 北京国双科技有限公司 用于非索引覆盖的数据查询方法和装置
CN107710201A (zh) * 2015-06-23 2018-02-16 微软技术许可有限责任公司 存储数据和从位向量搜索索引取回数据
CN108897730A (zh) * 2018-06-29 2018-11-27 国信优易数据有限公司 一种pdf文本的处理方法以及装置
CN109086456A (zh) * 2018-08-31 2018-12-25 中国联合网络通信集团有限公司 数据索引方法及装置
CN109376121A (zh) * 2018-08-10 2019-02-22 南京华讯方舟通信设备有限公司 一种基于ElasticSearch全文检索的文件索引系统及方法
US11030201B2 (en) 2015-06-23 2021-06-08 Microsoft Technology Licensing, Llc Preliminary ranker for scoring matching documents
US11281639B2 (en) 2015-06-23 2022-03-22 Microsoft Technology Licensing, Llc Match fix-up to remove matching documents
US11392568B2 (en) 2015-06-23 2022-07-19 Microsoft Technology Licensing, Llc Reducing matching documents for a search query

Families Citing this family (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7266553B1 (en) * 2002-07-01 2007-09-04 Microsoft Corporation Content data indexing
US7599914B2 (en) * 2004-07-26 2009-10-06 Google Inc. Phrase-based searching in an information retrieval system
US7580929B2 (en) * 2004-07-26 2009-08-25 Google Inc. Phrase-based personalization of searches in an information retrieval system
US7702618B1 (en) 2004-07-26 2010-04-20 Google Inc. Information retrieval system for archiving multiple document versions
US7536408B2 (en) 2004-07-26 2009-05-19 Google Inc. Phrase-based indexing in an information retrieval system
US7567959B2 (en) 2004-07-26 2009-07-28 Google Inc. Multiple index based information retrieval system
US7711679B2 (en) 2004-07-26 2010-05-04 Google Inc. Phrase-based detection of duplicate documents in an information retrieval system
US7580921B2 (en) 2004-07-26 2009-08-25 Google Inc. Phrase identification in an information retrieval system
US7584175B2 (en) 2004-07-26 2009-09-01 Google Inc. Phrase-based generation of document descriptions
US7199571B2 (en) * 2004-07-27 2007-04-03 Optisense Network, Inc. Probe apparatus for use in a separable connector, and systems including same
US20060036598A1 (en) * 2004-08-09 2006-02-16 Jie Wu Computerized method for ranking linked information items in distributed sources
US7539661B2 (en) * 2005-06-02 2009-05-26 Delphi Technologies, Inc. Table look-up method with adaptive hashing
US20070150721A1 (en) * 2005-06-13 2007-06-28 Inform Technologies, Llc Disambiguation for Preprocessing Content to Determine Relationships
US7451135B2 (en) * 2005-06-13 2008-11-11 Inform Technologies, Llc System and method for retrieving and displaying information relating to electronic documents available from an informational network
JP4756953B2 (ja) * 2005-08-26 2011-08-24 富士通株式会社 情報検索装置および情報検索方法
US20070078889A1 (en) * 2005-10-04 2007-04-05 Hoskinson Ronald A Method and system for automated knowledge extraction and organization
US7676463B2 (en) * 2005-11-15 2010-03-09 Kroll Ontrack, Inc. Information exploration systems and method
US8126874B2 (en) * 2006-05-09 2012-02-28 Google Inc. Systems and methods for generating statistics from search engine query logs
JP4322887B2 (ja) * 2006-06-01 2009-09-02 株式会社東芝 スレッド順位付け装置及び方法
US20080033943A1 (en) * 2006-08-07 2008-02-07 Bea Systems, Inc. Distributed index search
US9015197B2 (en) 2006-08-07 2015-04-21 Oracle International Corporation Dynamic repartitioning for changing a number of nodes or partitions in a distributed search system
US20080071732A1 (en) * 2006-09-18 2008-03-20 Konstantin Koll Master/slave index in computer systems
US20080082554A1 (en) * 2006-10-03 2008-04-03 Paul Pedersen Systems and methods for providing a dynamic document index
WO2008044542A1 (fr) * 2006-10-06 2008-04-17 Nec Corporation Système et procédé de recherche d'informations et programme
US7966321B2 (en) 2007-01-17 2011-06-21 Google Inc. Presentation of local results
US8966407B2 (en) 2007-01-17 2015-02-24 Google Inc. Expandable homepage modules
US8005822B2 (en) 2007-01-17 2011-08-23 Google Inc. Location in search queries
US7966309B2 (en) 2007-01-17 2011-06-21 Google Inc. Providing relevance-ordered categories of information
US8326858B2 (en) * 2007-01-17 2012-12-04 Google Inc. Synchronization of fixed and mobile data
US8280877B2 (en) * 2007-02-22 2012-10-02 Microsoft Corporation Diverse topic phrase extraction
US8086594B1 (en) 2007-03-30 2011-12-27 Google Inc. Bifurcated document relevance scoring
US7693813B1 (en) 2007-03-30 2010-04-06 Google Inc. Index server architecture using tiered and sharded phrase posting lists
US8166021B1 (en) 2007-03-30 2012-04-24 Google Inc. Query phrasification
US8166045B1 (en) 2007-03-30 2012-04-24 Google Inc. Phrase extraction using subphrase scoring
US7702614B1 (en) 2007-03-30 2010-04-20 Google Inc. Index updating using segment swapping
US7925655B1 (en) 2007-03-30 2011-04-12 Google Inc. Query scheduling using hierarchical tiers of index servers
WO2008120030A1 (en) * 2007-04-02 2008-10-09 Sobha Renaissance Information Latent metonymical analysis and indexing [lmai]
US7809610B2 (en) * 2007-04-09 2010-10-05 Platformation, Inc. Methods and apparatus for freshness and completeness of information
US7809714B1 (en) 2007-04-30 2010-10-05 Lawrence Richard Smith Process for enhancing queries for information retrieval
US7814107B1 (en) 2007-05-25 2010-10-12 Amazon Technologies, Inc. Generating similarity scores for matching non-identical data strings
US8046372B1 (en) 2007-05-25 2011-10-25 Amazon Technologies, Inc. Duplicate entry detection system and method
US7908279B1 (en) 2007-05-25 2011-03-15 Amazon Technologies, Inc. Filtering invalid tokens from a document using high IDF token filtering
US7917516B2 (en) 2007-06-08 2011-03-29 Apple Inc. Updating an inverted index
EP2031508A1 (en) * 2007-08-31 2009-03-04 Ricoh Europe PLC Network printing apparatus and method
US8117223B2 (en) * 2007-09-07 2012-02-14 Google Inc. Integrating external related phrase information into a phrase-based indexing information retrieval system
US8165985B2 (en) 2007-10-12 2012-04-24 Palo Alto Research Center Incorporated System and method for performing discovery of digital information in a subject area
US8671104B2 (en) * 2007-10-12 2014-03-11 Palo Alto Research Center Incorporated System and method for providing orientation into digital information
US8073682B2 (en) * 2007-10-12 2011-12-06 Palo Alto Research Center Incorporated System and method for prospecting digital information
US20090112843A1 (en) * 2007-10-29 2009-04-30 International Business Machines Corporation System and method for providing differentiated service levels for search index
US7895225B1 (en) * 2007-12-06 2011-02-22 Amazon Technologies, Inc. Identifying potential duplicates of a document in a document corpus
US8799264B2 (en) * 2007-12-14 2014-08-05 Microsoft Corporation Method for improving search engine efficiency
US9037560B2 (en) * 2008-03-05 2015-05-19 Chacha Search, Inc. Method and system for triggering a search request
GB2471432A (en) * 2008-04-03 2010-12-29 Icurrent Inc Information display system based on user profile data with assisted and explicit profile modification
US20090287684A1 (en) * 2008-05-14 2009-11-19 Bennett James D Historical internet
US8161036B2 (en) * 2008-06-27 2012-04-17 Microsoft Corporation Index optimization for ranking using a linear model
US8171031B2 (en) 2008-06-27 2012-05-01 Microsoft Corporation Index optimization for ranking using a linear model
US8788476B2 (en) * 2008-08-15 2014-07-22 Chacha Search, Inc. Method and system of triggering a search request
US8209616B2 (en) * 2008-08-28 2012-06-26 Palo Alto Research Center Incorporated System and method for interfacing a web browser widget with social indexing
US20100057577A1 (en) * 2008-08-28 2010-03-04 Palo Alto Research Center Incorporated System And Method For Providing Topic-Guided Broadening Of Advertising Targets In Social Indexing
US20100057536A1 (en) * 2008-08-28 2010-03-04 Palo Alto Research Center Incorporated System And Method For Providing Community-Based Advertising Term Disambiguation
US8010545B2 (en) * 2008-08-28 2011-08-30 Palo Alto Research Center Incorporated System and method for providing a topic-directed search
JP5384884B2 (ja) * 2008-09-03 2014-01-08 日本電信電話株式会社 情報検索装置および情報検索プログラム
US8326829B2 (en) * 2008-10-17 2012-12-04 Centurylink Intellectual Property Llc System and method for displaying publication dates for search results
US8156130B2 (en) 2008-10-17 2012-04-10 Embarq Holdings Company Llc System and method for collapsing search results
US8874564B2 (en) * 2008-10-17 2014-10-28 Centurylink Intellectual Property Llc System and method for communicating search results to one or more other parties
US8549016B2 (en) * 2008-11-14 2013-10-01 Palo Alto Research Center Incorporated System and method for providing robust topic identification in social indexes
US8239397B2 (en) * 2009-01-27 2012-08-07 Palo Alto Research Center Incorporated System and method for managing user attention by detecting hot and cold topics in social indexes
US8452781B2 (en) * 2009-01-27 2013-05-28 Palo Alto Research Center Incorporated System and method for using banded topic relevance and time for article prioritization
US8356044B2 (en) * 2009-01-27 2013-01-15 Palo Alto Research Center Incorporated System and method for providing default hierarchical training for social indexing
US9245033B2 (en) 2009-04-02 2016-01-26 Graham Holdings Company Channel sharing
US10089391B2 (en) * 2009-07-29 2018-10-02 Herbminers Informatics Limited Ontological information retrieval system
GB2472250A (en) * 2009-07-31 2011-02-02 Stephen Timothy Morris Method for determining document relevance
US20110040762A1 (en) * 2009-08-12 2011-02-17 Globalspec, Inc. Segmenting postings list reader
US20110078131A1 (en) * 2009-09-30 2011-03-31 Microsoft Corporation Experimental web search system
US8838576B2 (en) * 2009-10-12 2014-09-16 Yahoo! Inc. Posting list intersection parallelism in query processing
US8756215B2 (en) * 2009-12-02 2014-06-17 International Business Machines Corporation Indexing documents
US20110258212A1 (en) * 2010-04-14 2011-10-20 Microsoft Corporation Automatic query suggestion generation using sub-queries
US9031944B2 (en) 2010-04-30 2015-05-12 Palo Alto Research Center Incorporated System and method for providing multi-core and multi-level topical organization in social indexes
US10216831B2 (en) * 2010-05-19 2019-02-26 Excalibur Ip, Llc Search results summarized with tokens
US8352474B2 (en) * 2010-06-16 2013-01-08 Fuji Xerox Co., Ltd. System and method for retrieving information using a query based index
WO2012027262A1 (en) * 2010-08-23 2012-03-01 Google Inc. Parallel document mining
US8655648B2 (en) * 2010-09-01 2014-02-18 Microsoft Corporation Identifying topically-related phrases in a browsing sequence
US8738673B2 (en) 2010-09-03 2014-05-27 International Business Machines Corporation Index partition maintenance over monotonically addressed document sequences
JP5492814B2 (ja) * 2011-03-28 2014-05-14 デジタルア−ツ株式会社 検索装置、検索システム、方法およびプログラム
US9201895B2 (en) 2011-06-03 2015-12-01 Apple Inc. Management of downloads from a network-based digital data repository based on network performance
US20120311080A1 (en) * 2011-06-03 2012-12-06 Thomas Alsina Management of Downloads from a Network-Based Digital Data Repository
US8595238B2 (en) 2011-06-22 2013-11-26 International Business Machines Corporation Smart index creation and reconciliation in an interconnected network of systems
US9152697B2 (en) * 2011-07-13 2015-10-06 International Business Machines Corporation Real-time search of vertically partitioned, inverted indexes
US20130024459A1 (en) * 2011-07-20 2013-01-24 Microsoft Corporation Combining Full-Text Search and Queryable Fields in the Same Data Structure
US8818971B1 (en) 2012-01-30 2014-08-26 Google Inc. Processing bulk deletions in distributed databases
US9892198B2 (en) 2012-06-07 2018-02-13 Oath Inc. Page personalization performed by an edge server
US8892422B1 (en) 2012-07-09 2014-11-18 Google Inc. Phrase identification in a sequence of words
US20140046976A1 (en) * 2012-08-11 2014-02-13 Guangsheng Zhang Systems, methods, and user interface for effectively presenting information
US10198776B2 (en) 2012-09-21 2019-02-05 Graham Holdings Company System and method for delivering an open profile personalization system through social media based on profile data structures that contain interest nodes or channels
US9721000B2 (en) * 2012-12-20 2017-08-01 Microsoft Technology Licensing, Llc Generating and using a customized index
US20140195961A1 (en) * 2013-01-07 2014-07-10 Apple Inc. Dynamic Index
US10387429B2 (en) * 2013-02-08 2019-08-20 Jive Software, Inc. Fast ad-hoc filtering of time series analytics
US9501506B1 (en) 2013-03-15 2016-11-22 Google Inc. Indexing system
US9256644B1 (en) * 2013-03-15 2016-02-09 Ca, Inc. System for identifying and investigating shared and derived content
US9575958B1 (en) * 2013-05-02 2017-02-21 Athena Ann Smyros Differentiation testing
US9483568B1 (en) 2013-06-05 2016-11-01 Google Inc. Indexing system
US9146980B1 (en) 2013-06-24 2015-09-29 Google Inc. Temporal content selection
US20150019565A1 (en) * 2013-07-11 2015-01-15 Outside Intelligence Inc. Method And System For Scoring Credibility Of Information Sources
US9489411B2 (en) * 2013-07-29 2016-11-08 Sybase, Inc. High performance index creation
US9424345B1 (en) 2013-09-25 2016-08-23 Google Inc. Contextual content distribution
US9336258B2 (en) 2013-10-25 2016-05-10 International Business Machines Corporation Reducing database locking contention using multi-version data record concurrency control
US9450771B2 (en) 2013-11-20 2016-09-20 Blab, Inc. Determining information inter-relationships from distributed group discussions
KR101592670B1 (ko) * 2014-02-17 2016-02-11 포항공과대학교 산학협력단 인덱스를 이용하는 데이터 검색 장치 및 이를 이용하는 방법
US9817855B2 (en) * 2014-03-17 2017-11-14 SynerScope B.V. Method and system for determining a measure of overlap between data entries
US10162882B2 (en) 2014-07-14 2018-12-25 Nternational Business Machines Corporation Automatically linking text to concepts in a knowledge base
US10437869B2 (en) * 2014-07-14 2019-10-08 International Business Machines Corporation Automatic new concept definition
US10503761B2 (en) 2014-07-14 2019-12-10 International Business Machines Corporation System for searching, recommending, and exploring documents through conceptual associations
US9864741B2 (en) * 2014-09-23 2018-01-09 Prysm, Inc. Automated collective term and phrase index
US9785724B2 (en) 2014-10-30 2017-10-10 Microsoft Technology Licensing, Llc Secondary queue for index process
US10042928B1 (en) 2014-12-03 2018-08-07 The Government Of The United States As Represented By The Director, National Security Agency System and method for automated reasoning with and searching of documents
US10025783B2 (en) * 2015-01-30 2018-07-17 Microsoft Technology Licensing, Llc Identifying similar documents using graphs
CN104715063B (zh) * 2015-03-31 2018-11-02 百度在线网络技术(北京)有限公司 搜索排序方法和装置
US10467215B2 (en) 2015-06-23 2019-11-05 Microsoft Technology Licensing, Llc Matching documents using a bit vector search index
US10733164B2 (en) 2015-06-23 2020-08-04 Microsoft Technology Licensing, Llc Updating a bit vector search index
US10565198B2 (en) 2015-06-23 2020-02-18 Microsoft Technology Licensing, Llc Bit vector search index using shards
US11392582B2 (en) * 2015-10-15 2022-07-19 Sumo Logic, Inc. Automatic partitioning
CN107015992A (zh) * 2016-01-28 2017-08-04 珠海金山办公软件有限公司 一种文档显示方法及装置
US10885009B1 (en) * 2016-06-14 2021-01-05 Amazon Technologies, Inc. Generating aggregate views for data indices
US10810236B1 (en) * 2016-10-21 2020-10-20 Twitter, Inc. Indexing data in information retrieval systems
US10169331B2 (en) * 2017-01-29 2019-01-01 International Business Machines Corporation Text mining for automatically determining semantic relatedness
CN107357846B (zh) * 2017-06-26 2018-12-14 北京金堤科技有限公司 关系图谱的展示方法以及装置
US11449484B2 (en) * 2018-06-25 2022-09-20 Ebay Inc. Data indexing and searching using permutation indexes
US10902069B2 (en) 2018-12-18 2021-01-26 Runtime Collective Limited Distributed indexing and aggregation
CN112084435A (zh) * 2020-08-07 2020-12-15 北京三快在线科技有限公司 搜索排序模型训练方法及装置、搜索排序方法及装置
US11442971B1 (en) * 2021-05-26 2022-09-13 Adobe Inc. Selective database re-indexing
WO2023059909A2 (en) * 2021-10-08 2023-04-13 Open Text Holdings, Inc. System and method for efficient multi-stage querying of archived data
US20230109804A1 (en) * 2021-10-08 2023-04-13 Open Text Holdings, Inc. System and method for efficient multi-stage querying of archived data

Family Cites Families (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS619753A (ja) * 1984-06-26 1986-01-17 Hitachi Ltd 文書処理装置における頻発熟語の自動登録方法
US4773039A (en) * 1985-11-19 1988-09-20 International Business Machines Corporation Information processing system for compaction and replacement of phrases
JPH02270067A (ja) 1987-04-16 1990-11-05 Westinghouse Electric Corp <We> インテリジェント問合せシステム
US5321833A (en) 1990-08-29 1994-06-14 Gte Laboratories Incorporated Adaptive ranking system for information retrieval
US5278980A (en) 1991-08-16 1994-01-11 Xerox Corporation Iterative technique for phrase query formation and an information retrieval system employing same
US5523946A (en) 1992-02-11 1996-06-04 Xerox Corporation Compact encoding of multi-lingual translation dictionaries
US5353401A (en) * 1992-11-06 1994-10-04 Ricoh Company, Ltd. Automatic interface layout generator for database systems
JPH0756933A (ja) * 1993-06-24 1995-03-03 Xerox Corp 文書検索方法
US5692176A (en) * 1993-11-22 1997-11-25 Reed Elsevier Inc. Associative text search and retrieval system
US5734749A (en) 1993-12-27 1998-03-31 Nec Corporation Character string input system for completing an input character string with an incomplete input indicative sign
JPH07262217A (ja) 1994-03-24 1995-10-13 Fuji Xerox Co Ltd テキスト検索装置
US5715443A (en) 1994-07-25 1998-02-03 Apple Computer, Inc. Method and apparatus for searching for information in a data processing system and for providing scheduled search reports in a summary format
JP3669016B2 (ja) 1994-09-30 2005-07-06 株式会社日立製作所 文書情報分類装置
US5694593A (en) 1994-10-05 1997-12-02 Northeastern University Distributed computer database system and method
US6460036B1 (en) 1994-11-29 2002-10-01 Pinpoint Incorporated System and method for providing customized electronic newspapers and target advertisements
US5758257A (en) 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
JP2929963B2 (ja) * 1995-03-15 1999-08-03 松下電器産業株式会社 文書検索装置および単語索引作成方法および文書検索方法
US5745602A (en) * 1995-05-01 1998-04-28 Xerox Corporation Automatic method of selecting multi-word key phrases from a document
US5659732A (en) 1995-05-17 1997-08-19 Infoseek Corporation Document retrieval over networks wherein ranking and relevance scores are computed at the client for multiple database documents
US5724571A (en) 1995-07-07 1998-03-03 Sun Microsystems, Inc. Method and apparatus for generating query responses in a computer-based document retrieval system
JPH0934911A (ja) 1995-07-18 1997-02-07 Fuji Xerox Co Ltd 情報検索装置
US5668987A (en) 1995-08-31 1997-09-16 Sybase, Inc. Database system with subquery optimizer
US6366933B1 (en) 1995-10-27 2002-04-02 At&T Corp. Method and apparatus for tracking and viewing changes on the web
US5757917A (en) 1995-11-01 1998-05-26 First Virtual Holdings Incorporated Computerized payment system for purchasing goods and services on the internet
US6098034A (en) 1996-03-18 2000-08-01 Expert Ease Development, Ltd. Method for standardizing phrasing in a document
US7051024B2 (en) 1999-04-08 2006-05-23 Microsoft Corporation Document summarizer for word processors
US5924108A (en) 1996-03-29 1999-07-13 Microsoft Corporation Document summarizer for word processors
US5794233A (en) 1996-04-09 1998-08-11 Rubinstein; Seymour I. Browse by prompted keyword phrases
US5721897A (en) 1996-04-09 1998-02-24 Rubinstein; Seymour I. Browse by prompted keyword phrases with an improved user interface
US5826261A (en) * 1996-05-10 1998-10-20 Spencer; Graham System and method for querying multiple, distributed databases by selective sharing of local relative significance information for terms related to the query
US5915249A (en) * 1996-06-14 1999-06-22 Excite, Inc. System and method for accelerated query evaluation of very large full-text databases
EP0822502A1 (en) * 1996-07-31 1998-02-04 BRITISH TELECOMMUNICATIONS public limited company Data access system
US5920854A (en) * 1996-08-14 1999-07-06 Infoseek Corporation Real-time document collection search engine with phrase indexing
US6085186A (en) 1996-09-20 2000-07-04 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
US20030093790A1 (en) 2000-03-28 2003-05-15 Logan James D. Audio and video program recording, editing and playback systems using metadata
JP3584848B2 (ja) 1996-10-31 2004-11-04 富士ゼロックス株式会社 文書処理装置、項目検索装置及び項目検索方法
JP3902825B2 (ja) * 1997-01-16 2007-04-11 キヤノン株式会社 文書検索システムおよび方法
US5960383A (en) 1997-02-25 1999-09-28 Digital Equipment Corporation Extraction of key sections from texts using automatic indexing techniques
US6539430B1 (en) * 1997-03-25 2003-03-25 Symantec Corporation System and method for filtering data received by a computer system
US6185550B1 (en) 1997-06-13 2001-02-06 Sun Microsystems, Inc. Method and apparatus for classifying documents within a class hierarchy creating term vector, term file and relevance ranking
US6470307B1 (en) 1997-06-23 2002-10-22 National Research Council Of Canada Method and apparatus for automatically identifying keywords within a document
US5995962A (en) * 1997-07-25 1999-11-30 Claritech Corporation Sort system for merging database entries
US5845278A (en) 1997-09-12 1998-12-01 Inioseek Corporation Method for automatically selecting collections to search in full text searches
US6018733A (en) 1997-09-12 2000-01-25 Infoseek Corporation Methods for iteratively and interactively performing collection selection in full text searches
US5983216A (en) 1997-09-12 1999-11-09 Infoseek Corporation Performing automated document collection and selection by providing a meta-index with meta-index values indentifying corresponding document collections
US5956722A (en) 1997-09-23 1999-09-21 At&T Corp. Method for effective indexing of partially dynamic documents
US6542888B2 (en) 1997-11-26 2003-04-01 International Business Machines Corporation Content filtering for electronic documents generated in multiple foreign languages
JP4183311B2 (ja) 1997-12-22 2008-11-19 株式会社リコー 文書の注釈方法、注釈装置および記録媒体
US6185558B1 (en) 1998-03-03 2001-02-06 Amazon.Com, Inc. Identifying the items most relevant to a current query based on items selected in connection with similar queries
JP3664874B2 (ja) * 1998-03-28 2005-06-29 松下電器産業株式会社 文書検索装置
JPH11293535A (ja) * 1998-04-10 1999-10-26 Mitsubishi Rayon Co Ltd 熱融着複合糸の製造方法
US6638314B1 (en) 1998-06-26 2003-10-28 Microsoft Corporation Method of web crawling utilizing crawl numbers
US6363377B1 (en) 1998-07-30 2002-03-26 Sarnoff Corporation Search data processor
US6377949B1 (en) 1998-09-18 2002-04-23 Tacit Knowledge Systems, Inc. Method and apparatus for assigning a confidence level to a term within a user knowledge profile
US6366911B1 (en) * 1998-09-28 2002-04-02 International Business Machines Corporation Partitioning of sorted lists (containing duplicate entries) for multiprocessors sort and merge
US6415283B1 (en) 1998-10-13 2002-07-02 Orack Corporation Methods and apparatus for determining focal points of clusters in a tree structure
US7058589B1 (en) 1998-12-17 2006-06-06 Iex Corporation Method and system for employee work scheduling
US6862710B1 (en) 1999-03-23 2005-03-01 Insightful Corporation Internet navigation using soft hyperlinks
JP4021583B2 (ja) * 1999-04-08 2007-12-12 富士通株式会社 情報検索装置、情報検索方法、及びその方法を実現するプログラムを記録した記録媒体
US6430539B1 (en) 1999-05-06 2002-08-06 Hnc Software Predictive modeling of consumer financial behavior
US6175830B1 (en) * 1999-05-20 2001-01-16 Evresearch, Ltd. Information management, retrieval and display system and associated method
US7089236B1 (en) 1999-06-24 2006-08-08 Search 123.Com, Inc. Search engine interface
US6601026B2 (en) 1999-09-17 2003-07-29 Discern Communications, Inc. Information retrieval by natural language querying
US6996775B1 (en) * 1999-10-29 2006-02-07 Verizon Laboratories Inc. Hypervideo: information retrieval using time-related multimedia:
US6751612B1 (en) 1999-11-29 2004-06-15 Xerox Corporation User query generate search results that rank set of servers where ranking is based on comparing content on each server with user query, frequency at which content on each server is altered using web crawler in a search engine
US6684183B1 (en) 1999-12-06 2004-01-27 Comverse Ltd. Generic natural language service creation environment
US6785671B1 (en) * 1999-12-08 2004-08-31 Amazon.Com, Inc. System and method for locating web-based product offerings
US6963867B2 (en) * 1999-12-08 2005-11-08 A9.Com, Inc. Search query processing to provide category-ranked presentation of search results
WO2001042880A2 (en) 1999-12-10 2001-06-14 Amazon.Com, Inc. Search query refinement using related search phrases
US6772150B1 (en) 1999-12-10 2004-08-03 Amazon.Com, Inc. Search query refinement using related search phrases
CA2293064C (en) * 1999-12-22 2004-05-04 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for analyzing data retrieval using index scanning
US6981040B1 (en) 1999-12-28 2005-12-27 Utopy, Inc. Automatic, personalized online information and product services
US6820237B1 (en) 2000-01-21 2004-11-16 Amikanow! Corporation Apparatus and method for context-based highlighting of an electronic document
US6883135B1 (en) 2000-01-28 2005-04-19 Microsoft Corporation Proxy server using a statistical model
US6654739B1 (en) 2000-01-31 2003-11-25 International Business Machines Corporation Lightweight document clustering
US6571240B1 (en) 2000-02-02 2003-05-27 Chi Fai Ho Information processing for searching categorizing information in a document based on a categorization hierarchy and extracted phrases
JP2001303279A (ja) * 2000-02-17 2001-10-31 Toyo Gurahoiru:Kk 自己犠牲型金属防食剤および金属防食方法
US7137065B1 (en) 2000-02-24 2006-11-14 International Business Machines Corporation System and method for classifying electronically posted documents
US20060143714A1 (en) 2000-03-09 2006-06-29 Pkware, Inc. System and method for manipulating and managing computer archive files
US6859800B1 (en) 2000-04-26 2005-02-22 Global Information Research And Technologies Llc System for fulfilling an information need
US7533013B2 (en) 2000-05-11 2009-05-12 University Of Southern California Machine translation techniques
US6691106B1 (en) 2000-05-23 2004-02-10 Intel Corporation Profile driven instant web portal
US7096220B1 (en) 2000-05-24 2006-08-22 Reachforce, Inc. Web-based customer prospects harvester system
US20020042707A1 (en) 2000-06-19 2002-04-11 Gang Zhao Grammar-packaged parsing
US20020078090A1 (en) 2000-06-30 2002-06-20 Hwang Chung Hee Ontological concept-based, user-centric text summarization
EP1182577A1 (en) 2000-08-18 2002-02-27 SER Systeme AG Produkte und Anwendungen der Datenverarbeitung Associative memory
KR100426382B1 (ko) 2000-08-23 2004-04-08 학교법인 김포대학 엔트로피 정보와 베이지안 에스오엠을 이용한 문서군집기반의 순위조정 방법
US7017114B2 (en) 2000-09-20 2006-03-21 International Business Machines Corporation Automatic correlation method for generating summaries for text documents
US20020143524A1 (en) 2000-09-29 2002-10-03 Lingomotors, Inc. Method and resulting system for integrating a query reformation module onto an information retrieval system
US20020065857A1 (en) 2000-10-04 2002-05-30 Zbigniew Michalewicz System and method for analysis and clustering of documents for search engine
CA2322599A1 (en) 2000-10-06 2002-04-06 Ibm Canada Limited-Ibm Canada Limitee System and method for workflow control of contractual activities
JP2002132789A (ja) 2000-10-19 2002-05-10 Hitachi Ltd 文書検索方法
US7130790B1 (en) 2000-10-24 2006-10-31 Global Translations, Inc. System and method for closed caption data translation
JP2002169834A (ja) 2000-11-20 2002-06-14 Hewlett Packard Co <Hp> 文書のベクトル解析を行うコンピュータおよび方法
US20020091671A1 (en) 2000-11-23 2002-07-11 Andreas Prokoph Method and system for data retrieval in large collections of data
KR20020045343A (ko) 2000-12-08 2002-06-19 오길록 표준화된 문장 구문구조 및 의미구조에 기반한 정보생성/검색 장치 및 그 방법
JP2002207760A (ja) 2001-01-10 2002-07-26 Hitachi Ltd 文書検索方法及びその実施装置並びにその処理プログラムを記録した記録媒体
US6778980B1 (en) 2001-02-22 2004-08-17 Drugstore.Com Techniques for improved searching of electronically stored information
US6741984B2 (en) 2001-02-23 2004-05-25 General Electric Company Method, system and storage medium for arranging a database
US6721728B2 (en) 2001-03-02 2004-04-13 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration System, method and apparatus for discovering phrases in a database
US6741981B2 (en) 2001-03-02 2004-05-25 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration (Nasa) System, method and apparatus for conducting a phrase search
US6823333B2 (en) 2001-03-02 2004-11-23 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration System, method and apparatus for conducting a keyterm search
US6697793B2 (en) 2001-03-02 2004-02-24 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration System, method and apparatus for generating phrases from a database
US7194483B1 (en) 2001-05-07 2007-03-20 Intelligenxia, Inc. Method, system, and computer program product for concept-based multi-dimensional analysis of unstructured information
US7171619B1 (en) 2001-07-05 2007-01-30 Sun Microsystems, Inc. Methods and apparatus for accessing document content
US6769016B2 (en) 2001-07-26 2004-07-27 Networks Associates Technology, Inc. Intelligent SPAM detection system using an updateable neural analysis engine
US20030130993A1 (en) 2001-08-08 2003-07-10 Quiver, Inc. Document categorization engine
US20030031996A1 (en) 2001-08-08 2003-02-13 Adam Robinson Method and system for evaluating documents
US6778979B2 (en) 2001-08-13 2004-08-17 Xerox Corporation System for automatically generating queries
US6978274B1 (en) 2001-08-31 2005-12-20 Attenex Corporation System and method for dynamically evaluating latent concepts in unstructured documents
JP2003242176A (ja) 2001-12-13 2003-08-29 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
US6741982B2 (en) 2001-12-19 2004-05-25 Cognos Incorporated System and method for retrieving data from a database system
US7356527B2 (en) 2001-12-19 2008-04-08 International Business Machines Corporation Lossy index compression
US7243092B2 (en) 2001-12-28 2007-07-10 Sap Ag Taxonomy generation for electronic documents
US7137062B2 (en) 2001-12-28 2006-11-14 International Business Machines Corporation System and method for hierarchical segmentation with latent semantic indexing in scale space
JP4108337B2 (ja) * 2002-01-10 2008-06-25 三菱電機株式会社 電子ファイリングシステム及びその検索インデックス作成方法
US7139756B2 (en) 2002-01-22 2006-11-21 International Business Machines Corporation System and method for detecting duplicate and similar documents
US7028045B2 (en) 2002-01-25 2006-04-11 International Business Machines Corporation Compressing index files in information retrieval
US7421660B2 (en) 2003-02-04 2008-09-02 Cataphora, Inc. Method and apparatus to visually present discussions for data mining purposes
JP4092933B2 (ja) 2002-03-20 2008-05-28 富士ゼロックス株式会社 文書情報検索装置及び文書情報検索プログラム
US7743045B2 (en) 2005-08-10 2010-06-22 Google Inc. Detecting spam related and biased contexts for programmable search engines
US20030195937A1 (en) 2002-04-16 2003-10-16 Kontact Software Inc. Intelligent message screening
US6877001B2 (en) 2002-04-25 2005-04-05 Mitsubishi Electric Research Laboratories, Inc. Method and system for retrieving documents with spoken queries
NZ518744A (en) 2002-05-03 2004-08-27 Hyperbolex Ltd Electronic document indexing using word use nodes, node objects and link objects
US7085771B2 (en) 2002-05-17 2006-08-01 Verity, Inc System and method for automatically discovering a hierarchy of concepts from a corpus of documents
US7028026B1 (en) 2002-05-28 2006-04-11 Ask Jeeves, Inc. Relevancy-based database retrieval and display techniques
JP4452012B2 (ja) 2002-07-04 2010-04-21 ヒューレット・パッカード・カンパニー 文書の特有性評価方法
JP2004046438A (ja) 2002-07-10 2004-02-12 Nippon Telegr & Teleph Corp <Ntt> テキスト検索方法及び装置及びテキスト検索プログラム及びテキスト検索プログラムを格納した記憶媒体
US7379978B2 (en) 2002-07-19 2008-05-27 Fiserv Incorporated Electronic item management and archival system and method of operating the same
US20040034633A1 (en) 2002-08-05 2004-02-19 Rickard John Terrell Data search system and method using mutual subsethood measures
US7151864B2 (en) 2002-09-18 2006-12-19 Hewlett-Packard Development Company, L.P. Information research initiated from a scanned image media
US7158983B2 (en) 2002-09-23 2007-01-02 Battelle Memorial Institute Text analysis technique
US20040064442A1 (en) 2002-09-27 2004-04-01 Popovitch Steven Gregory Incremental search engine
US6886010B2 (en) 2002-09-30 2005-04-26 The United States Of America As Represented By The Secretary Of The Navy Method for data and text mining and literature-based discovery
JP2004139150A (ja) 2002-10-15 2004-05-13 Ricoh Co Ltd 文書検索装置、プログラム及び記憶媒体
US7970832B2 (en) 2002-11-20 2011-06-28 Return Path, Inc. Electronic message delivery with estimation approaches and complaint, bond, and statistics panels
JP2004192546A (ja) * 2002-12-13 2004-07-08 Nippon Telegr & Teleph Corp <Ntt> 情報検索方法、装置、プログラム、および記録媒体
US20040133560A1 (en) 2003-01-07 2004-07-08 Simske Steven J. Methods and systems for organizing electronic documents
US7725544B2 (en) 2003-01-24 2010-05-25 Aol Inc. Group based spam classification
GB2399427A (en) 2003-03-12 2004-09-15 Canon Kk Apparatus for and method of summarising text
US7945567B2 (en) * 2003-03-17 2011-05-17 Hewlett-Packard Development Company, L.P. Storing and/or retrieving a document within a knowledge base or document repository
US6947930B2 (en) 2003-03-21 2005-09-20 Overture Services, Inc. Systems and methods for interactive search query refinement
US7051023B2 (en) 2003-04-04 2006-05-23 Yahoo! Inc. Systems and methods for generating concept units from search queries
US7149748B1 (en) 2003-05-06 2006-12-12 Sap Ag Expanded inverted index
US7146361B2 (en) * 2003-05-30 2006-12-05 International Business Machines Corporation System, method and computer program product for performing unstructured information management and automatic text analysis, including a search operator functioning as a Weighted AND (WAND)
US7664732B2 (en) 2003-05-31 2010-02-16 Nhn Corporation Method of managing websites registered in search engine and a system thereof
US7272853B2 (en) 2003-06-04 2007-09-18 Microsoft Corporation Origination/destination features and lists for spam prevention
US7051014B2 (en) * 2003-06-18 2006-05-23 Microsoft Corporation Utilizing information redundancy to improve text searches
US7162473B2 (en) 2003-06-26 2007-01-09 Microsoft Corporation Method and system for usage analyzer that determines user accessed sources, indexes data subsets, and associated metadata, processing implicit queries based on potential interest to users
US8707312B1 (en) 2003-07-03 2014-04-22 Google Inc. Document reuse in a search engine crawler
US7254580B1 (en) * 2003-07-31 2007-08-07 Google Inc. System and method for selectively searching partitions of a database
JP2005056233A (ja) 2003-08-06 2005-03-03 Nec Corp 移動体通信装置、移動体通信装置の電子メールの受信動作方法及びその電子メールの受信動作プログラム
US20050043940A1 (en) 2003-08-20 2005-02-24 Marvin Elder Preparing a data source for a natural language query
US20050060295A1 (en) 2003-09-12 2005-03-17 Sensory Networks, Inc. Statistical classification of high-speed network data through content inspection
US20050071328A1 (en) 2003-09-30 2005-03-31 Lawrence Stephen R. Personalization of web search
US20050071310A1 (en) 2003-09-30 2005-03-31 Nadav Eiron System, method, and computer program product for identifying multi-page documents in hypertext collections
US7346839B2 (en) 2003-09-30 2008-03-18 Google Inc. Information retrieval based on historical data
US7257564B2 (en) 2003-10-03 2007-08-14 Tumbleweed Communications Corp. Dynamic message filtering
US7240064B2 (en) * 2003-11-10 2007-07-03 Overture Services, Inc. Search engine with hierarchically stored indices
US20050160107A1 (en) * 2003-12-29 2005-07-21 Ping Liang Advanced search, file system, and intelligent assistant agent
US7206389B1 (en) 2004-01-07 2007-04-17 Nuance Communications, Inc. Method and apparatus for generating a speech-recognition-based call-routing system
US20060294124A1 (en) 2004-01-12 2006-12-28 Junghoo Cho Unbiased page ranking
US7310632B2 (en) 2004-02-12 2007-12-18 Microsoft Corporation Decision-theoretic web-crawling and predicting web-page change
US20050198559A1 (en) 2004-03-08 2005-09-08 Kabushiki Kaisha Toshiba Document information management system, document information management program, and document information management method
US20050216564A1 (en) 2004-03-11 2005-09-29 Myers Gregory K Method and apparatus for analysis of electronic communications containing imagery
US20050256848A1 (en) * 2004-05-13 2005-11-17 International Business Machines Corporation System and method for user rank search
EP1767010B1 (en) 2004-06-15 2015-11-11 Tekelec Global, Inc. Method, system, and computer program products for content-based screening of MMS messages
JP2006026844A (ja) 2004-07-20 2006-02-02 Fujitsu Ltd ポリッシングパッド、それを備えた研磨装置及び貼り付け装置
US7599914B2 (en) 2004-07-26 2009-10-06 Google Inc. Phrase-based searching in an information retrieval system
US7580929B2 (en) 2004-07-26 2009-08-25 Google Inc. Phrase-based personalization of searches in an information retrieval system
US7426507B1 (en) 2004-07-26 2008-09-16 Google, Inc. Automatic taxonomy generation in search results using phrases
US7580921B2 (en) 2004-07-26 2009-08-25 Google Inc. Phrase identification in an information retrieval system
US7702618B1 (en) 2004-07-26 2010-04-20 Google Inc. Information retrieval system for archiving multiple document versions
US7711679B2 (en) 2004-07-26 2010-05-04 Google Inc. Phrase-based detection of duplicate documents in an information retrieval system
US7567959B2 (en) 2004-07-26 2009-07-28 Google Inc. Multiple index based information retrieval system
US7584175B2 (en) 2004-07-26 2009-09-01 Google Inc. Phrase-based generation of document descriptions
US7536408B2 (en) 2004-07-26 2009-05-19 Google Inc. Phrase-based indexing in an information retrieval system
US7395260B2 (en) 2004-08-04 2008-07-01 International Business Machines Corporation Method for providing graphical representations of search results in multiple related histograms
US8407239B2 (en) * 2004-08-13 2013-03-26 Google Inc. Multi-stage query processing system and method for use with tokenspace repository
US8504565B2 (en) 2004-09-09 2013-08-06 William M. Pitts Full text search capabilities integrated into distributed file systems— incrementally indexing files
US20060200464A1 (en) 2005-03-03 2006-09-07 Microsoft Corporation Method and system for generating a document summary
WO2006113597A2 (en) 2005-04-14 2006-10-26 The Regents Of The University Of California Method for information retrieval
US7552230B2 (en) 2005-06-15 2009-06-23 International Business Machines Corporation Method and apparatus for reducing spam on peer-to-peer networks
US20080005064A1 (en) 2005-06-28 2008-01-03 Yahoo! Inc. Apparatus and method for content annotation and conditional annotation retrieval in a search context
US7512596B2 (en) 2005-08-01 2009-03-31 Business Objects Americas Processor for fast phrase searching
US7454449B2 (en) * 2005-12-20 2008-11-18 International Business Machines Corporation Method for reorganizing a set of database partitions
JP2007262217A (ja) 2006-03-28 2007-10-11 Toray Ind Inc ポリフェニレンサルファイド樹脂組成物およびそれからなる成形品
US7483820B2 (en) 2006-04-18 2009-01-27 Gemini Design Technology, Inc. Method for ranking webpages via circuit simulation
US8166045B1 (en) 2007-03-30 2012-04-24 Google Inc. Phrase extraction using subphrase scoring
JP2008305730A (ja) 2007-06-11 2008-12-18 Fuji Electric Holdings Co Ltd 多色発光デバイスの製造方法
US8117223B2 (en) 2007-09-07 2012-02-14 Google Inc. Integrating external related phrase information into a phrase-based indexing information retrieval system

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101359331B (zh) * 2008-05-04 2014-03-19 索意互动(北京)信息技术有限公司 对搜索结果重新排序的方法和系统
CN103631842A (zh) * 2012-08-21 2014-03-12 国际商业机器公司 用于检测多列复合键列集合的方法和系统
CN103631842B (zh) * 2012-08-21 2016-12-28 国际商业机器公司 用于检测多列复合键列集合的方法和系统
CN103810300A (zh) * 2014-03-10 2014-05-21 北京国双科技有限公司 用于非索引覆盖的数据查询方法和装置
CN103810300B (zh) * 2014-03-10 2017-08-01 北京国双科技有限公司 用于非索引覆盖的数据查询方法和装置
CN107710201B (zh) * 2015-06-23 2021-05-25 微软技术许可有限责任公司 存储数据和从位向量搜索索引取回数据
CN107710201A (zh) * 2015-06-23 2018-02-16 微软技术许可有限责任公司 存储数据和从位向量搜索索引取回数据
US11030201B2 (en) 2015-06-23 2021-06-08 Microsoft Technology Licensing, Llc Preliminary ranker for scoring matching documents
US11281639B2 (en) 2015-06-23 2022-03-22 Microsoft Technology Licensing, Llc Match fix-up to remove matching documents
US11392568B2 (en) 2015-06-23 2022-07-19 Microsoft Technology Licensing, Llc Reducing matching documents for a search query
CN108897730A (zh) * 2018-06-29 2018-11-27 国信优易数据有限公司 一种pdf文本的处理方法以及装置
CN108897730B (zh) * 2018-06-29 2022-07-29 国信优易数据股份有限公司 一种pdf文本的处理方法以及装置
CN109376121A (zh) * 2018-08-10 2019-02-22 南京华讯方舟通信设备有限公司 一种基于ElasticSearch全文检索的文件索引系统及方法
CN109376121B (zh) * 2018-08-10 2021-07-02 南京华讯方舟通信设备有限公司 一种基于ElasticSearch全文检索的文件索引系统及方法
CN109086456A (zh) * 2018-08-31 2018-12-25 中国联合网络通信集团有限公司 数据索引方法及装置

Also Published As

Publication number Publication date
AU2006208079A1 (en) 2006-08-03
US20140095511A1 (en) 2014-04-03
US9817825B2 (en) 2017-11-14
AU2010200478A1 (en) 2010-03-04
JP2008529138A (ja) 2008-07-31
DK1844391T3 (da) 2013-01-28
EP1844391A4 (en) 2010-05-19
AU2006208079B2 (en) 2009-11-26
EP1844391A2 (en) 2007-10-17
US20160283474A1 (en) 2016-09-29
US20180101528A1 (en) 2018-04-12
BRPI0614024B1 (pt) 2018-02-14
CA2595674C (en) 2012-07-03
AU2010200478B2 (en) 2012-10-04
WO2006081325A2 (en) 2006-08-03
BRPI0614024A2 (pt) 2012-12-25
NO20074329L (no) 2007-10-23
US9361331B2 (en) 2016-06-07
US7567959B2 (en) 2009-07-28
US8560550B2 (en) 2013-10-15
NO338518B1 (no) 2016-08-29
US10671676B2 (en) 2020-06-02
CA2595674A1 (en) 2006-08-03
KR20070094972A (ko) 2007-09-27
US20060106792A1 (en) 2006-05-18
US20100030773A1 (en) 2010-02-04
WO2006081325A3 (en) 2007-08-09
JP4881322B2 (ja) 2012-02-22
EP1844391B1 (en) 2012-10-17
KR101273520B1 (ko) 2013-06-14
CN101133388B (zh) 2011-07-06

Similar Documents

Publication Publication Date Title
CN101133388B (zh) 基于多索引的信息检索系统
US9817886B2 (en) Information retrieval system for archiving multiple document versions
JP4944405B2 (ja) 情報検索システムにおけるフレーズに基づくインデックス化方法
US7603345B2 (en) Detecting spam documents in a phrase based information retrieval system
JP4944406B2 (ja) フレーズに基づく文書説明の生成方法
JP5175005B2 (ja) 情報検索システムにおけるフレーズに基づく検索方法
EP1341098A2 (en) Getpage - Workload based Index Optimizer
WO2003075174A2 (en) Getpage - workload based index optimizer

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: Google limited liability company

Address before: American California

Patentee before: Google Inc.