从用户日志推断搜索类别同义词的方法及系统转让专利

申请号 : CN200680051098.7

文献号 : CN101361068B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 迈克尔·D·赖利刘志彦

申请人 : 谷歌公司

摘要 :

用于从在先结果数据推断类别同义词的系统以及方法,可以包括识别包括与在先结果数据有关的查询信息以及类别信息的在先查询数据;确定查询信息是否是类别信息的同义词;以及如果确定查询信息是类别信息的同义词,则在随后的搜索请求中使用查询信息以及类别信息。

权利要求 :

1.一种用于提供搜索查询精化的方法,所述方法包括:识别在先查询数据,其中所述在先查询数据包括查询词语信息以及与基于该查询词语信息返回的搜索结果相关联的类别信息;

确定所述类别信息是否是所述查询词语信息的同义词,其中所述确定包括:确定所述查询词语信息中所包括的查询词语是否是所述类别信息中所包括的作为结果的企业类别的候选同义词,其中确定所述查询词语是否是所述作为结果的企业类别的候选同义词包括:确定与所述在先查询数据相关联的查询类别对是否是下位词,当所述查询、类别对是下位词时,拒绝所述查询词语作为所述作为结果的企业类别的同义词,以及当所述查询、类别对不是下位词时,接受所述查询词语作为所述作为结果的企业类别的同义词;

接收与所述查询词语信息或所述类别信息有关的搜索请求;

当所述查询词语信息是所述类别信息的同义词时,基于所述查询词语信息以及所述类别信息来精化所述搜索请求;

基于所精化的搜索请求来执行搜索;以及提供基于所述搜索的搜索结果。

2.如权利要求1所述的方法,其中,所述在先查询数据与在先的对企业收录信息的搜索相关联。

3.如权利要求1所述的方法,其中,识别所述在先查询数据还包括:确定所述在先查询数据是否已经接收先前的相关性的指示。

4.如权利要求3所述的方法,其中,所述先前的相关性的指示包括接收与所述在先查询数据相关联的预定义的用户动作。

5.如权利要求4所述的方法,其中,所述预定义的用户动作包括接收对驾车路线指引请求的用户选择。

6.如权利要求1所述的方法,其中,所述查询词语与对企业收录信息的用户查询相关联,并且其中所述作为结果的企业类别与响应于所述用户查询而返回的作为结果的企业名称相关联。

7.如权利要求1所述的方法,还包括:确定所述在先查询数据是否涉及名称查询或者类别查询之一;以及响应于确定所述在先查询数据涉及类别查询,确定所述查询词语是否是所述作为结果的企业类别的候选同义词。

8.如权利要求7所述的方法,其中,确定所述在先查询数据是否涉及名称查询或者类别查询之一还包括:确定所述查询词语信息是涉及对企业名称的请求还是涉及对企业类别的请求。

9.如权利要求8所述的方法,其中,确定所述查询词语信息是涉及对企业名称的请求还是涉及对企业类别的请求还包括:确定与所述查询词语信息成对的多个企业名称,其中相对于对应于名称查询的查询词语信息,对应于类别查询的查询词语信息与更多的企业名称成对。

10.如权利要求1所述的方法,其中,确定与所述在先查询数据相关联的查询、类别对是否是下位词包括:计算所述查询、类别对的F-量度。

11.如权利要求10所述的方法,其中,根据以下表达式来计算所述查询、类别对的所述F-量度:其中P(n)表示在所述在先查询

数据中出现的概率,并且“a”是用于平衡调用率和精确率的预定义的变量。

12.如权利要求11所述的方法,其中,“a”是在0.7至0.9的范围内。

13.如权利要求11所述的方法,其中,“a”是0.85。

14.一种用于提供搜索查询精化的系统,所述系统包括:用于确定与在先搜索结果相关联的在先查询数据以及在先类别数据是否包括类别同义词的装置,其中用于确定的所述装置包括:

用于确定与所述在先查询数据相关联的查询词语是否是与所述在先类别数据相关联的企业类别的候选同义词的装置,其中确定所述查询词语是否是所述企业类别的候选同义词的所述装置包括:用于确定所述查询词语是否是所述企业类别的下位词的装置,用于当所述查询词语是所述企业类别的下位词时拒绝所述查询词语作为所述企业类别的同义词的装置,以及用于当所述查询词语不是所述企业类别的下位词时接受所述查询词语作为所述企业类别的同义词的装置;

用于接收涉及所述在先类别数据的搜索请求的装置;

用于当所述在先查询数据以及所述在先类别数据包括类别同义词时基于所述在先查询数据来精化所述搜索请求的装置;

用于基于所精化的搜索请求来执行搜索的装置;以及用于提供基于所述搜索的搜索结果的装置。

15.如权利要求14所述的系统,其中,用于确定与在先搜索结果相关联的在先查询数据以及在先类别数据是否包括类别同义词的所述装置还包括:用于确定所述在先搜索结果是否是相关的搜索结果的装置;以及用于当确定所述在先搜索结果是相关的搜索结果时,确定与所述在先搜索结果相关联的所述在先查询数据以及所述在先类别数据是否包括类别同义词的装置。

16.如权利要求15所述的系统,其中,用于确定所述在先搜索结果是否是相关的搜索结果的所述装置还包括:用于确定是否已经与所述在先搜索结果相关联地接收到预定的用户动作的装置。

17.如权利要求15所述的系统,还包括:用于确定所述在先查询数据是否包括名称查询数据或者类别查询数据之一的装置;以及用于当所述在先查询数据包括类别查询数据时,确定与所述在先搜索结果相关联的所述在先查询数据以及所述在先类别数据是否包括类别同义词的装置。

18.一种用于提供搜索查询精化的设备,所述设备包括:用于识别包括与在先搜索请求相关联的查询、类别对的历史日志数据的装置;

用于确定在所述查询、类别对中的所述查询是类别查询的装置;

用于确定所述查询是否是所述查询、类别对中的所述类别的同义词的装置,其中用于确定所述查询是否是所述类别的同义词的所述装置包括:用于确定与所述查询相关联的查询词语是否是所述类别的候选同义词的装置,其中用于确定所述查询词语是否是所述类别的候选同义词的所述装置包括:用于确定所述查询词语是否是所述类别的下位词的装置,用于当所述查询词语是所述类别的下位词时拒绝所述查询词语作为所述类别的同义词的装置,以及用于当所述查询词语不是所述类别的下位词时接受所述查询词语作为所述类别的同义词的装置;

用于接收涉及所述查询或类别的搜索请求的装置;

用于当所述查询是所述类别的同义词时基于所述查询、类别对来精化所接收的搜索请求的装置;

用于基于所精化的搜索请求来执行搜索的装置;以及用于提供基于所述搜索的搜索结果的装置。

19.如权利要求18所述的设备,其中用于确定所述查询是否是所述类别的同义词的所述装置还包括用于确定所述查询是否是所述类别的下位词的装置。

20.一种用于提供搜索查询精化的方法,所述方法包括:从客户端接收搜索查询;

基于所接收的搜索查询来识别结果类别;

基于在先查询数据来识别所识别的结果类别的类别同义词,其中所述在先查询数据包括:

查询的查询词语,以及

与响应于所述查询而被返回的一个或多个结果相关联的类别,以及其中识别类别同义词包括:

确定所述查询词语是否是所述类别的候选同义词,其中确定所述查询词语是否是所述类别的候选同义词包括:确定所述查询词语是否是所述类别的下位词,当所述查询词语是所述类别的下位词时拒绝所述查询词语作为所述类别的同义词,以及当所述查询词语不是所述类别的下位词时接受所述查询词语作为所述类别的同义词;

基于所接收的搜索查询、所述结果类别、以及所述所识别的类别同义词来执行搜索;以及提供基于所述搜索的搜索结果。

21.如权利要求20所述的方法,其中,所述执行搜索包括:基于所接收的查询执行企业名称搜索;

基于所识别的类别同义词执行企业名称搜索;以及基于所识别的结果类别执行结果类别搜索。

22.如权利要求21所述的方法,其中,所述基于所识别的结果类别执行结果类别搜索包括执行导致对所识别的结果类别的精确匹配的精确匹配搜索。

23.一种用于提供搜索查询精化的方法,所述方法包括:接收搜索查询;

获取查询数据以处理当前过程中的搜索查询,所述查询数据包括通过在当前过程之前执行的、并且返回搜索结果的过程所获得的查询词语信息和类别信息,其中所述搜索结果是基于所述查询词语信息而选择的,并且其中所述类别信息与所述搜索结果相关联;

确定所述类别信息是否满足被分类为查询词语信息的同义词的标准,其中所述确定包括:确定与所述查询词语信息相关联的查询词语是否是与所述类别信息相关联的类别的候选同义词,其中确定所述查询词语是否是所述类别的候选同义词包括:确定所述查询词语是否是所述类别的下位词,当所述查询词语是所述类别的下位词时,拒绝所述查询词语作为所述类别的同义词,以及当所述查询词语不是所述类别的下位词时,接受所述查询词语作为所述类别的同义词;

响应于所述类别信息满足被分类为查询词语信息的同义词的标准的确定:基于所述类别信息和所述查询词语信息来精化所述搜索查询,以产生精化的搜索查询;

基于所精化的搜索查询来执行搜索;以及输出基于所述搜索的搜索结果。

说明书 :

从用户日志推断搜索类别同义词的方法及系统

技术领域

[0001] 与本发明的原理一致的实施方式一般涉及查询处理,更具体地,涉及提供搜索查询精化。

背景技术

[0002] 尽管因特网追溯到20世纪60年代晚期,但是个人计算以及网络互联的广泛可用性以及认可度已经导致在信息共享技术方面的爆炸性增长以及空前的发展。具体地,万维网(“Web”)已经使世界范围的受众对所存储的电子形式的数不清的信息量的可访问性发生巨大变化,包括书面的、口头的(音频)以及可视的(图像以及视频)信息,两者都有归档的以及实时的格式。简而言之,Web已经向每个所连接的用户提供对以世界范围内几乎所有语言的实质上无限的信息库的桌面访问。
[0003] 搜索引擎已经随着Web使用不断增加而快速发展,以使用户能够以有效并且及时的方式找到以及检索相关的Web内容。随着Web内容的数量以及类型不断增加,搜索引擎的复杂度以及精确性也已提高。一般地,搜索引擎响应于搜索查询而努力提供最高质量的结果。然而,确定质量是困难的,因为所检索的Web内容的相关性是固有主观的并且取决于用户的兴趣、知识以及态度。
[0004] 搜索引擎所使用的现有方法是基于将搜索查询词语与从Web页面索引的词语进行匹配。更先进的方法使用例如基于超链接结构的分析来确定所检索的Web内容的重要性。
[0005] 典型的搜索查询情景(scenario)以提交给搜索引擎的自然语言问 题或通常为关键字形式的单独的词语开始。搜索引擎对照用于描述潜在地可检索的Web内容的信息特征的数据知识库来执行搜索,并且识别候选网页。搜索经常可以返回数千乃至数百万的结果,因而大多数搜索引擎典型地仅对最有希望的结果的子集进行排名或评分。然后,通常以Web内容标题、超链接、以及诸如从网页选取的文本摘录的其它描述性信息的形式将最佳网页呈现给用户。
[0006] 提供优质的搜索结果可能被搜索查询自身的字面上的以及隐含的范围所复杂化。构造拙劣(poor-framed)的搜索查询可能是含糊的或是太笼统或太详尽而不能产生响应性的以及高质量的搜索结果。例如,在搜索查询内的词语可能在语法或语义的层次上是含糊的。语法模糊可能是疏忽同音异义词而造成的结果,其中指定了具有相同的发音并且可能具有相同的拼写但是与该单词实际含义不同的含义的错误单词。例如,单词“bear”可以表示或可以指一种动物或没穿衣服。语义模糊可能是不适当的上下文造成的结果。例如,单词“jaguar”可以指一种动物、Macintosh操作系统的一个版本、或一种汽车商标。类似地,太笼统的搜索词语导致过度宽泛的搜索结果,而太狭窄的搜索词语导致过度限制的以及非响应性的搜索结果。
[0007] 因此,需要一种为搜索查询精化提供建议的方法,该方法将解决发生在适当框架的搜索查询中的含糊或过度笼统或过度详尽。优选地,这样的方法将提供精化的搜索查询,当该精化的搜索查询被发布时导致搜索结果与隐含在最初的搜索查询的意图下的实际主题密切相关,并且提供将概念上的独立以及清晰的含义反映为潜在的搜索词语的建议。 发明内容
[0008] 根据与本发明的原理一致的一个实现方式,一种方法可以包括:识别至少包括与在先结果数据相关的查询信息以及类别信息的在先查询数据;确定查询信息是否是类别信息的同义词;以及如果确定查询 信息是类别信息的同义词,则在随后的搜索请求中使用该查询信息以及类别信息。
[0009] 根据与本发明的原理一致的另一个实现方式,一种系统可以包括:用于确定包括在在先搜索结果内的查询数据以及类别数据是否是类别同义词的装置;以及如果确定查询数据以及类别数据是类别同义词,则用于将查询数据并入到与类别数据相关联的随后的搜索请求的装置。
[0010] 根据与本发明的原理一致的又一个实现方式,一种设备可以包括:用于识别包括与在先搜索请求相关联的至少一个查询、类别对的历史日志数据的逻辑;用于确定在查询、类别对中的查询是名称查询还是类别查询的逻辑;以及当确定查询是类别查询时,用于确定查询是否是类别的同义词的逻辑。
[0011] 根据与本发明的原理一致的又一个实现方式,一种方法可以包括:从客户端接收搜索查询;基于所接收的搜索查询来识别结果类别;识别所识别的结果类别的类别同义词;以及基于结果类别以及所识别的类别同义词执行结果搜索。

附图说明

[0012] 并入本说明书并且构成本说明书的一部分的附图示出了本发明的实现方式,并且与描述一起来解释本发明。在图中,
[0013] 图1是示出了与本发明的原理一致的概念的示例图;
[0014] 图2是其中可以实现与本发明的原理一致的系统以及方法的网络的示例图; [0015] 图3是根据与本发明的原理一致的实施方式的图2的客户端或服务器的示例图; [0016] 图4是在图2-3中可以使用的示范性计算机可读介质的一部分的图; [0017] 图5是在与本发明的原理一致的实施方式中用于识别同义词的示范性过程的流程图;
[0018] 图6是在与本发明的原理一致的一个实施方式中用于对包含以及等同的查询、类别对进行区分的示范性处理的流程图;以及
[0019] 图7是示出了根据本发明的原理的用于执行用户启动的搜索的示范性处理的流程图。

具体实施方式

[0020] 下面参考附图详细描述与本发明的原理一致的实施方式。在各个图中相同的标记可以识别相同的或相似的元件。而且,下述的详细描述不限制本发明。
[0021] 概述
[0022] 通过搜索引擎变得可搜索的文档的数量正大量增加。因此,可以被提交来查找相关文档的搜索查询可能更容易地遭受潜在的模糊或笼统。识别并且提供可以消除初始查询缺陷或可以扩展初始搜索查询来识别另外的相关文档的搜索查询精化是有益的。如在此所描述的,可以自动生成搜索查询精化来帮助用户更快速并且更精确地识别想要的搜索结果。更具体地,可以将可搜索的信息分配给或分解为各种预定义的类别。例如,可以将收录(listing)“乔的酒吧及烧烤店”分配给“酒吧”和“酒馆”两个类别。根据本发明的原理,可以从在先结果数据中识别类别同义词,从而使得能够增强对可搜索信息的搜索。然后在执行所请求的搜索中可以将所识别的类别同义词与预定义的类别结合使用。 [0023] 图1是示出了与本发明的原理一致的概念的示例图。如在(A)所示,用户可以使用网页浏览器来访问诸如网页100的Web文档。同样如在(A)所示,Web浏览器包括用于从用户接收初始搜索查询的搜索查询输入框102。在示范性实现方式中,搜索查询输入框102可以包括诸如“attorney Fairfax,VA(弗吉尼亚州费尔法克律师)”的短语,大概 是请求关于在弗吉尼亚州费尔法克的律师的信息。
[0024] 根据本发明的原理,所输入的查询的提交可以导致诸如如在(B)中所示的网页104的Web文档,该Web文档包括基于所提交的查询以及所识别的关于查询词语的类别同义词的搜索结果。在示范性实现方式中,可以基于下述改进的查询来显示结果:(attorney OR attorneys ORlawyer OR lawyers)AND“Fairfax,VA”。如将在以下进一步详细描述的,在获得所提供的搜索结果中可以识别并且使用应用于搜索查询的所识别的类别的同义词。更具体地,可以基于在先的良好搜索结果、使用查询词语、最初所识别的类别、以及任何随后被识别的类别同义词来执行对所接收的查询的随后搜索。以此方式,可以获得搜索结果的不断增加的精确性以及功能性。
[0025] 如在此所使用的术语“文档”应被广泛地解释为包括任何机器可读的以及机器可存储的工作成果。例如,文档可以包括电子邮件、网站、文件、文件的组合、具有指向其它文件的嵌入式链接的一个或多个文件、新闻组帖子、博客、企业收录、印刷文本的电子版本、网络广告等等。在因特网的环境中,常见的文档是网页。文档通常包括文本信息,并且可以包括嵌入式信息(诸如元信息、图像、超链接等等)和/或嵌入式指令(诸如JavaScript等等)。如在此所使用的术语“链接”应被广泛地解释为包括从另一个文档或相同文档的另外部分到文档的任何引用/从文档到另一个文档或相同文档的另外部分的任何引用。 [0026] 示范性网络配置
[0027] 图2是其中可以实现与本发明的原理一致的系统以及方法的网络200的示例图。网络200可以包括经由网络250连接到多个服务器220-240的多个客户端210。为了简明,示出了两个客户端210以及三个服务器220-240连接到网络250。实际上,可以存在更多的或更少的客户端以及服务器。而且,在一些实例中,客户端可以执行服务器的 功能,并且服务器可以执行客户端的功能。
[0028] 客户端210可以包括客户端实体。实体可以被定义为设备(诸如个人计算机、无线电话、个人数字助理(PDA)、膝上型电脑、或其它类型的计算或通信设备)、在这些设备中的一个上运行的线程或进程、和/或可由这些设备中的一个执行的对象。客户端210还可以包括浏览器软件,其被配置以运行为在客户端210和服务器220-240之间的用户界面。 [0029] 服务器220-240可以包括服务器实体,其以与本发明的原理一致的方式收集、处理、搜索、和/或保持文档或其它信息。在与本发明的原理一致的一个实现方式中,服务器220可以包括搜索引擎225,该搜索引擎可被客户端210使用。服务器220可以在文档语料库中爬行(crawl)、对文档进行索引、以及将与文档相关联的信息存储在文档知识库中。
服务器230和240可以存储或保持可以由服务器220爬行或分析的文档。此外,服务器
220-240也可以保持与到客户端210的文档或信息传输相关的一个或多个日志。在与本发明的原理一致的一个实现中,这样的日志可以包括与响应于所接收的用户查询或请求而将哪些文档或信息传输到客户端210相关的信息。而且,附加的信息可以被记入日志,包括客户端210响应于来自服务器220-240的文档或信息传输而采取的动作。
[0030] 虽然将服务器220-240示为分开的实体,但是服务器220-240中的一个或多个可以执行服务器220-240中的另外一个或多个的一个或多个功能。例如,可以将服务器220-240中的两个或多个实现为单个服务器来。也可以将服务器220-240中的单个服务器实现为两个或多个分开的(并且可能是分布式的)设备。
[0031] 网络250可以包括局域网(LAN)、广域网(WAN)、诸如公共交换电话网络(PSTN)的电话网、内联网、因特网、或网络的组合。 客户端210以及服务器220-240可以经由有线、无线、和/或光纤连接而连接到网络250。
[0032] 示范性客户端/服务器体系结构
[0033] 图3是客户端或服务器实体(以下称为“客户端/服务器实体”)的示例图,其可以对应于客户端210和/或服务器220-240中的一个或多个。客户端/服务器实体可以包括总线310、处理器320、主存储器330、只读存储器(ROM)340、存储设备350、输入设备360、输出设备370、以及通信接口380。总线310可以包括允许在客户端/服务器实体的元件之间通信的路径。
[0034] 处理器320可以包括处理器、微处理器、或可以解释和执行指令的处理逻辑。主存储器330可以包括随机存取存储器(RAM)或可存储由处理器320执行的信息以及指令的另一种类型的动态存储设备。ROM 340可以包括ROM设备或可存储由处理器320使用的静态信息以及指令的另一种类型的静态存储设备。存储设备350可以包括磁和/或光记录介质以及其相应的驱动。
[0035] 输入设备360可以包括允许操作者向客户端/服务器实体输入信息的机制,诸如键盘、鼠标、笔、语音识别和/或生物识别机制等等。输出设备370可以包括向操作者输出信息的机制,包括显示器、打印机、扬声器等等。通信接口380可以包括任何类似收发器的机制,该机制使客户端/服务器实体能够与其它设备和/或系统通信。例如,通信接口380可以包括经由诸如网络250的网络与另一个设备或系统通信的机制。
[0036] 如将在以下详细描述的,与本发明的原理一致的客户端/服务器实体可以执行某些与查询处理相关的操作。响应于处理器320执行包含在诸如存储器330的计算机可读介质中的软件指令,客户端/服务器实体可以执行这些操作。可以将计算机可读介质定义为物理的或逻辑的 存储设备和/或载波。可以从诸如数据存储设备350的另一个计算机可读介质或经由通信接口380从另一个设备将软件指令读入到存储器330。包含在存储器330中的软件指令可以使处理器320执行将在稍后描述的过程。可替代地,硬连线的电路可以被用来代替软件指令或与软件指令结合来实现与本发明的原理一致的过程。因而,与本发明的原理一致的各个实施不限于硬件电路以及软件的任何特定组合。
[0037] 示范性计算机可读介质
[0038] 图4是可以由服务器220-240使用的示范性计算机可读介质400的一部分的图。在一个实现方式中,计算机可读介质400可以对应于服务器220的存储器330。在图4中所示的计算机可读介质400的所述部分可以包括操作系统410、搜索引擎软件/逻辑420、以及查询精化软件430。
[0039] 操作系统410可以包括诸如Windows、Unix、或Linux操作系统的操作系统软件。搜索引擎软件/逻辑420可以提供用于从一个或多个客户端210接收查询信息并且基于所接收的查询识别相关的搜索结果的机制。查询精化软件430可以包括根据下面详细阐述的本发明的原理基于所接收的查询来识别查询精化的软件。在与本发明的原理一致的一个实现方式中,可以将查询精化软件430集成到搜索引擎软件/逻辑420中。
[0040] 用于识别同义词的示范性处理
[0041] 图5是在与本发明的原理一致的实现方式中用于识别同义词的示范性过程的流程图。如上述简要描述的,所接收的用户搜索查询可以包括许多词语或短语,这些词语或短语的一部分可能具有基于查询的整个上下文适用的许多同义词。例如,在与本发明的原理一致的一个实现方式中,所接收的搜索查询可以涉及对局部企业或商家的信息的搜索。典型地,这种形式的搜索查询包括名称和/或类别信息。此外,这样的搜索查询还可以包括某种形式的位置信息,诸如预定义的与用 户相关联的位置、由所显示的地图界定的地理区域、或包括在所接收的搜索查询自身内的位置信息。尽管在此主要描述了局部搜索信息,但是在另外的实施方式中,可以以类似的方式搜索其它所标记的或所分类的“文档”或信息。例如,产品信息或定价搜索可以导致基于预定义的产品类别来检索或识别产品。 [0042] 执行局部搜索的一个公认方法是典型地基于名称、位置、以及类别来对可搜索的信息进行列表并且存储。在许多实例中,通过诸如局部黄页或企业收录名录的收录源来提供这样的信息。由于收录信息可以包括不是从企业名称搜集的信息(例如类别信息),所以可以执行增强的搜索。遗憾的是,所分配的类别信息可能被限制于一个特定的词语或短语或甚至几个特定的词语或短语。例如,可能所有餐馆(eatery)被收录在“饭店(restaurant)”类别下,而搜索查询可能包括词语“饭馆(diner)”。使用搜索查询的纯语法来执行关联搜索将不能认识到在一些实例中“饭店”是“饭馆”的适当的同义词。因此,在执行搜索时关联搜索将不包括餐厅类别而是将专门搜索“饭馆”。
[0043] 根据本发明的原理,可以通过查询精化软件430来精化所接收的搜索查询,以包括基于在先搜索查询/结果组合的增强的或附加的类别。转向图5,可以通过从历史搜索和结果的日志中识别“良好的”或相关的“三元组(triple)”来开始处理(动作500)。如在此所使用的,通常可以将术语“三元组”定义为包括代表在先查询结果的数据。更具体地,“三元组”可以包括:1.)查询词语;2.)结果企业名称;以及3.)结果企业类别。此外,关于所识别的“三元组”是否是“良好的”的确定可以基于任何适当的因素。
[0044] 在与本发明的原理一致的一个实现方式中,将“良好的”三元组识别为那些在其上接收到预定义的动作的三元组。例如,在一个示范性实施例中,除向客户端210提供包含企业收录的信息之外,服务器220-240还可以提供与每个收录相关的附加信息或功能,诸如驾车路线 指引、电子邮件链接、指向与该收录相关联的网站的链接等等。在这样的实现方式中,可以将良好的三元组识别为与收录相关联的三元组,所述收录涉及客户端210发送到服务器220-240的预定义的用户动作。在一个特定的实施例中,用户动作可以是点击用于驾车路线指引的链接。
[0045] 应当注意,许多所存储的收录可能具有多个企业名称以及与之相关联的多个类别。因此,驾车路线指引点击(或其它的“良好”指示)可以引出多个查询-名称-类别三元组。例如,所接收的查询“bar(酒吧)”可以将特定的收录“’Joe’s Bar and Grill(乔的酒吧及烧烤店)”与两个类别相匹配:“bar(酒吧)”以及“taverns(酒馆)”。在该示例中,可以察知到两个单独的查询-名称-类别三元组:1.)(bar,’Joe’sBar and Grill,bars(酒吧,乔的酒吧及烧烤店,酒吧)),以及2.)(bar,’Joe’s Bar and Grill,taverns(酒吧,乔的酒吧及烧烤店,酒馆))。假设存在该收录的两个良好的“三元组”,则出现了怎么对三元组计数的问题。在与本发明的原理一致的一个实现方式中,上述三元组的每一个可被视为具有0.5的计数(而不是1.0)。类似地,在其中查询导致三个被识别的三元组的示例中,每个三元组可被视为0.333的计数。即,单个收录权重(1.0)被均匀地分布在与其相关联的多个三元组中。以这种方式,整个数据集(dataset)的总和正确地累加为所察知的结果。
[0046] 一旦识别到良好的三元组,与该良好的三元组相关联的查询可被分类为“名称查询”或“类别查询”(动作502)。如在此所定义的,“名称查询”包括与企业名称(例如“China Taste Buffet(中国风味自助餐)”)有关的查询词语,并且“类别查询”包括与潜在企业类别(例如“Chinese restaurant(中式饭店)”)有关的查询词语。通过对所述两种查询类型加以区别,防止了已识别的类别被分配为名称查询的同义词。
[0047] 根据与本发明的原理一致的一个实现方式,可以基于与每个所识别的查询相关联的“名称熵(name entropy)”或“名称复杂度(nameperplexity)”的程度而作出名称查询/类别查询的确定。为了该目标,每个查询的名称复杂度可以由下述表达式来表示: [0048] eH(名称|查询),
[0049] 其中H(名称|查询)是企业名称的条件名称熵,给定从在动作500中选择的结果而估计的查询。名称熵可以由下述表达式来定义:
[0050]
[0051] 其中P(名称|查询)是给定了查询而返回的名称的概率。
[0052] 换句话说,可以基于与查询成对的企业名称的数量来确定查询包括企业名称的可能性。极少与企业名称成对的那些查询被视为类别查询(例如较低的名称复杂度),而与更多不同名称成对的那些查询被视为具有较高的名称复杂度。应当理解,引入熵的概念是用来说明在频繁使用和极少使用的名称之间的权重。
[0053] 一旦分别在动作500以及502中确定所识别的查询既是良好的查询又是类别查询,则确定结果类别以及所识别的查询是否应被视为同义词(动作504)。例如,基于在动作500中对于查询-结果_名称-结果类别收录的初始“良好”的确定以及在动作502中所识别的较高的名称复杂度(即,许多企业名称可以与该查询成对),可以确定类别“Restaurants-Chinese(饭店-中国)”是查询“Chinese Restaurants(中式饭店)”的类别同义词。如果做出该确定,则所识别的类别可以被指定为所关联的查询词语的类别同义词(动作504),从而确保与该查询相关联的随后的搜索将额外调用涉及该类别的搜索。 [0054] 遗憾的是,仅检查通过动作500以及502转发的查询不能说明查询/类别下位词(hyponym)的概率。如所知晓的,下位词是其含义表 示从属或子集的单词。例如,宾夕法尼亚州人是美国人的下位词。返回到当前的问题,所察知的查询“Chinese Restaurant”可以是类别“Restaurant(饭店)”的下位词,因为Chinese Restaurant是类别“Restaurant”的子集。由于后面的查询、类别对涉及包含而不是等价(例如,Chinese Restaurant是Restaurant的一种类型,但是其不等价于“Restaurant”),其不应该被用作为类别“Restaurant”的同义词。
[0055] 图6是用于在包含和等价查询、类别对之间加以区别的示范性处理的流程图。为了使对包含类型查询、类别对的拒绝变得便利,计算了对于所识别的查询、类别对的F-量度(F-measure)(动作600)。如在此所定义的,每个对的F-量度可以被定义为查询、类别对作为下位词或包含类型对的可能性,所述查询、类别对应该被作为同义词拒绝。此种计算可以由下述表达式来表示:
[0056]
[0057] 在上述表达式中,P(查询,类别)表示类别和查询两者互为同义词的联合概率。P(查询,类别)以及P(类别,查询)的值可以由以下估计而得:将其中通过与所希望的用户动作(例如,对驾车路线指引链接的选择)相关联而被发现在一起以及被证明为“良好”的类别和查询词语的实例数的计数除以所希望的用户动作接收到的实例数的计数。 [0058] P(查询)的值可以由以下估计而得:将其中查询词语导致所希望的用户动作的执行的实例数的计数除以所希望的用户动作接收到的实例数的计数。类似地,P(类别)的值可以由以下估计而得:将其中所识别的类别导致所希望的用户动作的执行的实例数的计数除以所希望的用户行为接收到的实例数的计数。
[0059] 另外,P(查询|类别)可以被定义为给定类别和P(类别|查询)的查询的概率,其中P(类别|查询)是给定查询的类别的概率。其被 定义为P(查询|类别)=P(查询,类别)/P(类别)并且P(类别|查询)=P(查询,类别)/P(查询),并且使用早先部分的估计来估计。在一般统计的术语中:
[0060]
[0061] 然而,在查询和类别概率的情况下,调用率(recall)是P(类别|查询),精确率(precision)是P(查询|类别),并且F-量度等于P(查询,类别)/(a*P(类别))+(1-a)*P(查询)),随后将上述定义代入到一般的F-量度公式中并且简化。在这种情况下,术语“调用率”和“精确率”是关于下述检索实验的:对于给定的查询和类别,返回作为该查询的响应的、与那个类别匹配的所有结果。
[0062] 通过对常量“a”的值的选择,可以建立精确率和调用率之间的适当的权衡。已经确定在大约0.7至0.9的范围内的值提供精确率和调用率之间的适当的折衷,以精确地消除或减少下位词被包括在所识别的类别同义词内的可能性。在一个示范性实现方式中,“a”的值是0.85。
[0063] 一旦确定了所选择的查询、类别对的F-量度,则然后确定所计算的F-量度是否满足预定义的标准(动作602)。如果满足,则在查询、类别对中的查询和类别被视作是同义词(动作604)。如果不满足,则所述查询和类别不被视作同义词,并且放弃考虑该对(动作606)。
[0064] 在一个示范性实现方式中,F-量度标准可以包括用于确定对于给定的查询具有更高的或更大的F-量度值的那些查询、类别对的任何适当的方式。例如,对于给定的查询,可以确定仅具有最高的F-量度的查询、类别对被视作互为同义词。替代地,对于给定的查询,可以将预定义的最高数量的查询、类别对视作同义词。在另一个实现方式中,可以确定最大的F-量度值,并且对于给定的查询,可以将达到该值的 预定百分比(例如50%)的所有的查询、类别对视作同义词。在又一个实现方式中,可以确定最小需求的F-量度值,并且对于给定的查询,可以将达到或超过该值的那些查询、类别对识别为同义词。 [0065] 在另一个示范性实现方式中,F-量度值可以与诸如名称复杂度、类别复杂度、以及查询频率的其它因素相组合。例如,为了被视作同义词,查询、类别对可以被要求具有至少25的名称复杂度、具有至少50的类别复杂度、至少1/1,000,000的查询频率、以及必须具有既大于0.03又大于所测量的F-量度值的最大值的50%的F-量度值。
[0066] 在同义词确定之后,然后确定是否继续处理另外的查询、类别对(动作608)。如果继续,则过程返回到动作600来处理下一个查询、类别对。如果没有另外的查询、类别对要被继续处理,则过程停止。
[0067] 在与本发明的原理一致的一个实现方式中,可以将同义词对传递到一个或多个“贴标签器(labeller)”,用于随后对所推断的同义词进行人工评审。以这种方式,可以在包含到执行实际用户搜索之前审查否则会通过如上所述的各种测试的潜在地不准确的同义词。
[0068] 图7是示出了根据本发明的原理的用于执行用户启动的搜索的示范性处理的流程图。最初,在用户的指示下从客户端210接收搜索查询(动作700)。如上所述,根据本发明的原理,在一个示范性实现方式中,搜索查询可以包括与定位或识别局部企业信息有关的许多词语。在可替代实现方式中,可以将搜索查询指向对另外类型的信息的定位或识别,所述另外类型的信息诸如产品定价以及描述信息、基于网页的文本信息、媒体(例如歌曲、图像、视频等等)信息。
[0069] 不管所请求的信息的类型如何,在服务器220上的搜索引擎225可以接着识别与所请求的信息相关联的一个或多个类别(动作702)。其中识别初始类别的方式在本发明的范围之外并且将在此详细描述。 然而,一旦已识别了初始类别,则接着就可以识别使用图5以及6的过程确定的类别同义词(动作704)。使用查询词语、最初确定的类别或多个类别、以及以上述详述的方式而识别的类别同义词,则接着可以生成搜索结果(动作706)并且可以将其发送到客户端210,用于最后向发出请求的用户显示。
[0070] 在一个示范性实现方式中,除了所接收的查询词语外,可以使用如上所述的方式而识别的类别同义词特别搜索收录信息。例如,可以将关于“医生”的搜索修订为包括所识别的类别同义词“内科医生-普通实习”。在一个实现方式中,可以对这样的词语进行逻辑的或(OR)运算。在给出的示例中,作为结果的查询将包括“医生OREXACTCATEGORYMATCH(精确类别匹配)(内科医生-普通实习)”,其中EXACTCATEGORYMATCH确保在在收录信息中识别的类别内找到包括在所定义的类别同义词内的每一个词语。以这种方式,避免了由与所关联的收录匹配的部分类别(例如内科医生-产科医生)引起的混乱。
[0071] 通过使用历史搜索信息来推断类别同义词,可以提供增强的搜索结果。更具体地,通过从在先搜索中识别良好的搜索结果,可以精确地推断类别同义词。在提供在后的搜索结果中使用所推断的同义词增加了向用户提供所希望的结果的可能性。
[0072] 结论
[0073] 与本发明的原理一致的系统以及方法可以促进搜索查询精化。在与本发明的原理一致的一个实现方式中,可以从历史搜索信息来推断类别同义词。
[0074] 本发明的优选实施例的前述描述提供了说明以及描述,但是并不意在穷举或将本发明限制在所公开的精确形式。根据上述教导可以进行更改以及变化,或者可以从本发明的实践获得更改以及变化。例如, 虽然已经参考图5-7描述了一系列动作,但是在与本发明的原理一致的其它实现方式中可以更改动作的次序。而且,可以并行地执行非依赖性动作。此外,可以以其它方式更改动作。
[0075] 对于本领域普通技术人员来说还将明显的是,如上所述的本发明的方面可以以在图中所示的实现方式中的软件、固件、以及硬件的多个不同形式来实现。用来实现与本发明的原理一致的方面的实际软件代码或专用控制硬件不限制本发明。因而,未参考特定的软件代码来描述所述方面的操作以及行为,应理解,本领域普通技术人员基于在此的描述将能够设计用于实现所述方面的软件以及控制硬件。
[0076] 除非明确指明并非如此,否则不应将在本发明的描述中使用的元件、动作或指令解释为对于本发明是至关重要或是必需的。而且,如在此所使用的,不加数量限定的项意指包括一个或多个项。在只想表示一个项的地方,使用了术语“一个”或类似的语言。此外,除非明确说明并非如此,否则短语“基于”意为“至少部分基于”。