搜索方法

文档序号:6498563阅读:142来源:国知局
搜索方法
【专利摘要】本发明的实施例提供从数据集生成搜索结果的方法,该方法包括:基于第一查询来获得第一搜索结果,该搜索结果包括多个文档;将权值分配到第一搜索结果的一个或多个文档;至少部分地基于所分配的权值来计算存在于搜索结果的一个或多个文档中的用语的相关性;以及基于第二查询来获得第二搜索结果,其中第二查询包括具有最高的计算的相关性的一个或多个用语。
【专利说明】搜索方法

【背景技术】
[0001] 现代计算机网络促进大量数据的存储和访问。例如,许多网站(在更广阔的世界 中)和数据储存(在企业中)包含能够经由通信网络而被访问的大量文本文集。由于以该 方式存储的大量数据,通常难以定位与某一主题等相关的特定文档或多个文档。通常,这些 站点和数据储存提供搜索工具性程序、或搜索引擎,以允许用户从所存储的文本文集中搜 索有用或期望的信息。
[0002] 然而,所提供的搜索引擎通常具有有限的功能并且所返回的结果可能对用户的需 要而言不够。更近地,在提供更有能力的搜索工具方面已经有了进步,例如,其可以包括支 持个性化搜索或基于上下文的查询丰富性。
[0003] 虽然可能期望在现有的搜索引擎中包括此类功能,但这可能不总是实用的。例如, 用户可能不具有远程提供的资源之上的控制,或者其可能难以修改传统系统来包括新的功 能。

【专利附图】

【附图说明】
[0004] 下文仅通过示例的方式参考附图进一步描述了本发明的实施例,在所述附图中: 图1图示适于实施本发明的实施例的系统; 图2图示用于实现本发明的实施例的客户端装置; 图3图示根据实施例的获得关于数据库的统计量的方法;以及 图4图示根据实施例的生成搜索结果的方法。

【具体实施方式】
[0005] 本发明的实施例本地地提供用于访问远程存储的信息全集的先进搜索功能。一种 本地地实现更先进的搜索引擎的方法是将全集的整个数据库下载到本地服务器或服务器 群中,对文档进行索引,以及对全集的本地拷贝运行改进的搜索。该方法要求巨大的存储器 资源并且要求对所提供的搜索引擎之后的底层数据库的访问,这可能不总是可用的。当全 集常规更新时出现进一步的复杂(这通常是真实世界示例中的情况),原因在于其然后变得 必须确保下载的数据库和远程保存的原始拷贝之间的一致性。
[0006] 图1图示适于实现本发明的实施例的系统。该系统包括耦合到网络102的客户端 装置100。可以由服务器装置(未示出)提供的搜索引擎104也耦合到网络102,并且耦合到 数据库或文档的文本全集。先进搜索模块108存在于客户端装置100上,并且其在经由搜 索引擎104执行全集106的搜索时提供先进的搜索功能。
[0007] 搜索引擎提供针对数据库的内容的搜索功能,从而响应于通过网络提供的搜索查 询而返回存在于数据库中的一个或多个文档的列表。因而,为了实现全集的标准搜索,用户 向客户端装置提交搜索查询,其经由网络102将查询传递给搜索引擎104。搜索引擎104识 别与存在于数据库106中的查询相关的一个或多个文档,并且向客户端装置100提供所识 别的文档。
[0008] 对于利用先进搜索功能的搜索而言,先进搜索模块108接收由用户提交的搜索查 询,并且经由搜索引擎104访问全集106以生成先进搜索结果,这如将在以下更详细地讨论 的。
[0009] 图2图示能够被用来实现本发明的实施例的客户端装置。客户端装置包括处理器 200、存储器204、存储装置202、以及网络接口 208。客户端装置100的组件耦合到总线210, 以允许组件之间的以及经由网络接口与通信网络102的通信。用于先进搜索功能212的指 令被存储在存储器204中,并且当在处理器200上执行时,这些指令使得处理器200提供如 以下所描述的先进搜索。
[0010] 本发明的实施例允许用户在客户端装置100处应用更先进的搜索准则,诸如以虑 及个性化搜索或基于上下文的查询丰富性,而不要求搜索引擎104的功能方面的任何改 变。特别地,面向全集用户相关搜索引擎(COURSE)可以在客户端装置100处使用标准搜索 引擎104来模拟,以访问文本全集106。
[0011] 为了提供增强的搜索能力,应该在对全集材料做出任何搜索之前获得与文本全集 相关的一些统计量。例如,为了理解全集的上下文中的某些搜索用语的相对重要性,应该知 道那些用语出现在全集中的频率。通常,这通过分析完整的全集来实现以测量针对用语的 频率。然而,下载用于分析的整个全集可能是不实用的,特别是在非常大的远程存储的文集 的情况下。
[0012] 根据本发明的实施例,采样方法被用来获得针对用语出现在全集中的频率统计 量。通过下载全集的文档的某一部分,并且分析下载文档,可能的是整体地估计针对用语在 全集中的用语频率。例如,全集的文档的百分之一可能足以允许估计针对整个全集的频率 统计量。对于每个用语而言,可以基于所下载的文档来估计逆文档频率(IDF)。
[0013] 图3图示用于估计针对文本全集106的用语频率统计量的方法300。根据所图示 的方法,在步骤302中文本全集的一部分被下载到客户端装置100。对于下载的每个文档 而言,在步骤304处,文档中的用语针对所有的下载文档的内容被提取和比较,以估计针对 该用语的IDF。为了确保所确定的统计量与文本全集在其随时间进行更新时保持一致;步 骤302和304以常规的间隔进行重复。在步骤306处,该间隔可以基于对更新全集文档的 速率的估计来确定。
[0014] 如以上概述的,使用采样方法,可能的是任何初始生成的统计量可能不准确地反 映全集的内容。然而,当重复步骤302和304时,全集的不同部分可以被视为通向随时间变 得更准确的所生成的IDF估计。
[0015] 图4图示使用标准搜索引擎104来模拟对所访问的文本全集106的COURSE搜索 的方法400。根据方法400,在第一步骤402中,基于由用户在客户端装置100处所提供的 搜索查询来从搜索引擎104获得第一组搜索结果。
[0016] 由于客户端装置100不具有如由远程搜索引擎104所应用的搜索用语的加权之上 的直接控制,搜索结果的排序可能与期望的不同。更重要地,由于在客户端装置100处仅检 查部分结果,所以由搜索引擎104对搜索结构的排序可能忽略在客户端装置100处被视为 重要的一些文档。由于该原因,客户端装置100从搜索引擎104请求比用于实现先进搜索所 需的更多的结果。例如,客户端装置100可以请求四百个搜索结果,其中其仅期望使用一百 个最相关的。
[0017] 在方法400的步骤404中,从搜索引擎104接收到的每个文档的文本内容被提取。 使用该信息来针对每个文档分配加权,从而考虑以下项中的一个或多个: a. 在文档中找到的搜索用语的数目; b. 由运行搜索的人所写的文档可以得到附加的提高; c. 全集中的搜索用语的(估计)频率;以及 d. 在(例如标题、内容)中找到用语的字段。
[0018] 接收到的搜索结果然后根据所分配的权值和最高加权部分来分类,例如,最高的 一百个加权的文档被取为命中列表。假设不管从搜索引擎104接收到四百个搜索结果文档 还是更多的,该命中列表都不动态地改变。换言之,假设最相关的结果也将具有被网站或数 据储存所供应的搜索引擎104排名得高的高可能性。
[0019] 在接下来的步骤406中,查询基于存在于命中列表的文档中的相关的用语而被扩 展,即存在于与原始查询的用语具有高相关性的命中列表的文档中的用语被识别以提供对 原始搜索查询的上下文感知扩展。下文讨论了识别高相关的用语的方法。
[0020] 令D为以其加权被排序的所有文档的序列。令Cli为D中的第i个文档,并且Wi是 其加权。假设对于命中列表之外的每个文档而言,加权是零(因此,w是所有文档的加权矢 量)。对于每个用语\而言,令是矢量或相同的长度,其中δυ(δ」中的第i个元素) 是第j个用语是否出现在第i个文档中的指示符。我们现在计算用语和该组结果之间的加 权相关性:

【权利要求】
1. 一种从数据集生成搜索结果的方法,所述方法包括: 基于第一查询来获得第一搜索结果,所述搜索结果包括多个文档; 将权值分配给第一搜索结果的一个或多个文档; 至少部分地基于所分配的权值来计算存在于搜索结果的一个或多个文档中的用语的 相关性;以及 基于第二查询来获得第二搜索结果,其中第二查询包括具有最高的所计算的相关性的 一个或多个用语。
2. 如权利要求1所述的方法,其中获得第一和第二搜索结果包括从远程搜索引擎获得 第一和第二搜索结果。
3. 如权利要求1或权利要求2所述的方法,进一步包括将权值分配给第二搜索结果的 一个或多个文档,以及基于所分配的权值来对第二搜索结果进行排名。
4. 如前述权利要求中的任一项所述的方法,其中第一搜索查询包括由用户提供的一个 或多个搜索查询用语。
5. 如前述权利要求中的任一项所述的方法,其中第一搜索查询包括启动所述搜索的用 户的个人详细信息。
6. 如前述权利要求中的任一项所述的方法,其中将权值分配给搜索结果中的一个或多 个文档进一步包括基于以下中的一个或多个来分配权值:存在于文档中的查询的搜索用语 的数目;与数据集中的搜索用语的频率相比的存在于文档中的搜索用语的频率;文档中的 每个搜索用语的位置;以及文档的作者。
7. 如前述权利要求中的任一项所述的方法,进一步包括估计数据集中的多个用语的每 个的频率。
8. 如权利要求7所述的方法,其中估计数据集中的多个用语的每个的频率包括: 获得数据集的第一部分,所述部分包括多个文档; 确定针对数据集的第一部分中的多个用语的每个的逆文档频率(IDF);以及 基于针对数据集的第一部分中的每个用语的所确定的IDF来估计针对数据集中的每 个用语的逆文档频率。
9. 如权利要求8所述的方法,进一步包括: 在预定间隔之后,获得数据集的另一部分,所述另一部分包括多个文档,其包括不存在 于数据集的第一部分中的至少一些文档; 确定针对数据集的另一部分中的多个用语的每个的逆文档频率(IDF);以及 基于先前估计的IDF并基于针对数据集的另一部分中的每个用语的所确定的IDF来估 计针对数据集中的每个用语的逆文档频率。
10. 如权利要求9所述的方法,进一步包括基于数据集的更新速率来确定预定间隔的 长度。
11. 如前述权利要求中的任一项所述的方法,进一步包括:识别具有最高的所分配权 值的第一搜索结果的部分以生成第一过滤搜索结果,其中所述计算用语的相关性针对所述 第一过滤搜索结果的文档而被执行。
12. -种系统,包括: 处理器;以及 包括指令的存储器,所述指令被配置成当在处理器上执行时使得所述系统: 基于第一查询来获得第一搜索结果,所述搜索结果包括多个文档; 将权值分配给第一搜索结果的一个或多个文档; 至少部分地基于所分配的权值来计算存在于搜索结果的一个或多个文档中的用语的 相关性;以及 基于第二查询来获得第二搜索结果,其中第二查询包括存在于具有最高的所计算的相 关性的一个或多个文档中的一个或多个用语。
13. 如权利要求12所述的系统,进一步包括网络接口,并且其中所述指令被进一步配 置成当在处理器上执行时使得所述系统经由网络接口获得第一和第二搜索结果。
14. 如权利要求12或权利要求13所述的系统,进一步包括网络接口,并且所述指令被 进一步配置成当在处理器上执行时使得所述系统将权值分配给第二搜索结果的一个或多 个文档,并且基于所分配的权值来对第二搜索结果进行排名。
15. -种包括计算机程序代码的计算机程序产品,所述计算机程序代码被适配成当在 处理器上执行时执行如权利要求1至11中的任一项所述的步骤。
【文档编号】G06F17/30GK104246760SQ201280072817
【公开日】2014年12月24日 申请日期:2012年7月30日 优先权日:2012年7月30日
【发明者】戈兰 S., 巴科尔 O. 申请人:惠普发展公司,有限责任合伙企业
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1