将人物的模型应用于搜索结果的制作方法

文档序号:6422740阅读:283来源:国知局
专利名称:将人物的模型应用于搜索结果的制作方法
技术领域
本发明涉及网络 技术领域,尤其涉及网络搜索技术。
背景技术
随着诸如因特网等网络上广泛的信息可用性,搜索引擎变得广泛使用。搜索引擎接收用户查询并且寻找与这些查询匹配的内容来返回给用户。实现搜索引擎的常见方法是通过页面索引。页面索引将可出现在搜索查询中的术语与网络上的内容单元相关,内容单元经常被称为网页。存在各种方法用于构造以及应用页面索引。构造索引经常需要“爬寻(crawling),, 包含最终将被搜索的数据正文的诸如因特网等网络。爬寻需要跟踪从一个网页到下一网页的链接,并且分析每一页面。作为分析的一部分,表征网页的术语可以按将网页与那些术语相关联的方式来被标识并且被添加到页面索引。这些术语可以是在由网页显示的内容内实际使用的术语,或者可以是被特别添加的用于影响爬行器如何对网页进行索引的标签。另外地,诸如到网页的链接数量等信息可以被捕捉并且被用于对网页区分优先级。将页面索引应用为搜索栈的一部分。当用户提交搜索查询时,搜索引擎基于搜索索引来将查询中的术语与网页匹配。搜索栈可以包括在索引被查阅之前修改搜索查询的组件,诸如纠正可基于用户简档来推导的搜索术语或附连术语的拼写错误。搜索栈还可以包括用于过滤搜索结果的组件。例如,可以过滤使用页面索引来标识的网页,诸如通过基于指示与查询的相关性的度量来对网页进行排序。在预期了寻找可能不直接出现在网页上的信息的搜索查询的场景中,可以预先计算信息。可以在页面索引中制作一入口,该入口指向预先计算的信息而不是一网页。

发明内容
搜索系统的有用性可以通过向所述系统的搜索栈并入这样的组件来改进,所述组件可以响应于搜索查询来选择并且应用表征要提供的信息的模型。可以基于用户上下文信息从模型集中选择该模型,用户上下文信息诸如来自用户的搜索查询和/或由搜索引擎响应于该搜索查询来标识的数据。除了格式化、过滤、或处理由执行该查询的搜索引擎返回的数据以外,模型的应用可以导致新信息的生成。模型可以定义与人物一致的特征。将这一人物的模型应用于搜索结果可以生成与该人物的特征一致的信息。这一人物可以是个体的人的实际人或是抽象人物,表示具有共享特征的一组人群。可以向用户呈现可用的人物模型的标识符列表。当用户选择要应用的特定人物的模型时,返回给用户的所生成的信息可以和与所选择的人物相关联的特征一致。由此,通过能够选择对不同人物的模型的应用并且将其与搜索结果相比较,用户可以选择接收和更好地与用户当前需要对应的人物的特征一致地生成的信息。以上概述是对由所附权利要求定义的本发明的非限定性的概述。


附图不旨在按比例绘制。在附图中,各个附图中示出的每一完全相同或近乎完全相同的组件由同样的标号来表示。出于简明的目的,不是每一个组件在每张附图中 均被标号。在附图中图1是示出可在其中实践本发明的某些实施例的计算环境的高级别框图;图2是根据某些实施例的搜索栈的体系结构框图;图3是可包括声明性模型的规格的语句类型的图示;图4是诸如为图3的声明性模型指定的那些语句等语句的示例的图示;图5是根据某些实施例的可由搜索栈在执行期间执行的过程的流程图;图6是用户可经由其输入搜索查询并且显示响应于该查询返回的信息的用户界面的示例;图7A是用于访问搜索的用户界面的示例,其中已经将人物的第一模型应用于响应于对信息的请求而返回给用户的信息;图7B是图7A的用户界面的另一示例,其中用户已经选择了要应用于搜索结果的人物的第二模型;图8是执行来自客户机的搜索的过程的流程图,其中将人物的模型应用于响应于对信息的请求而生成的信息;图9是由用于响应于请求来生成信息的信息检索系统执行的过程的流程图,其中所生成的信息与人物的特征一致;以及图10是用于访问搜索的用户界面的示例,其中已经将抽象人物的模型应用于响应于对信息的请求而返回给用户的信息。
具体实施例方式发明人已认识到并且理解,搜索系统的功能和利用可以通过向搜索系统的搜索栈并入这样的组件来扩展,所述组件可以选择并且应用表征要在用户上下文中提供给用户的数据的一个或多个模型。响应于搜索查询或标识用户上下文的其他输入,系统可以标识模型来在为用户生成信息时应用。模型可以基于用户上下文信息来选择,该用户上下文信息可以包括搜索查询本身、或由应用搜索查询来选择网页的搜索引擎生成的数据。一旦模型被选择,则模型应用引擎可以应用该模型来生成要提供给用户的信息。 模型可以包括一个或多个元素,这些元素中的至少某些定义了要基于为用户的上下文动态地标识的数据来执行的计算。例如,模型的应用可以导致具有与搜索查询中的术语或由应用该搜索查询的搜索引擎生成的数据相关的输入的计算。可以将计算的输出(或者单独或者与由搜索引擎定位的数据或其他动态地生成的数据结合)提供给用户作为搜索查询的结果。在某些实施例中,计算可以基于模型中所表示的等式。该等式可以指定要对由搜索引擎动态地标识的数据执行的数学操作。这一数学操作可以包括诸如从用户简档获得的用户数据或基于上下文信息的用户数据等其他数据。将模型应用于搜索栈中可以大大扩展可返回给用户且可应用在许多不同的上下文中的信息的类型。
例如,模型可以包括 等式,定义对来自食谱的卡路里内容的计算。可以响应于请求食谱的查询来应用这一模型,使得除了接收表示在网页上找到的食谱的内容以外,用户可以接收卡路里内容,即使该信息不被包含在网页上。作为另一示例,模型可以包括用于计算自一位置的通勤距离或时间的公式。可以响应于请求和供销售的房屋有关的信息的查询来应用这一模型,使得除了接收被标识为搜索结果的供销售房屋的列表以外,用户可以接收关于每一房屋的通勤信息。作为又一示例,模型可以包括用于生成将病人的实验室结果与人口标准相比较的度量的公式。可以在被耦合到医院的内联网的搜索系统中应用这一模型,使得当为病人的实验室结果进行搜索时,除了该病人的实验室结果以外临床医生还可以接收比较性数据,所述比较性数据表征基于对作为搜索结果返回的其他用户的医疗记录中的实验室数据的分析的结果。搜索系统可以包含适用于不同上下文的多个模型。因此,搜索系统可以包含选择用于特定上下文的模型的组件。执行这一功能的组件可以访问模型索引。在某些实施例中, 模型索引可以具有和搜索引擎使用的页面索引类似的形式。以此方式,还可以使用为高速搜索而优化的现有技术来快速地选择并且应用模型。这一方法在模型基于搜索查询的项或其他方面来标识的场景中是有用的。此外,在某些实施例中,模型被作为网页并且可以包括元标签来辅助在搜索引擎中对它们进行索引。为便于模型的使用,每一模型可以被表示为声明性语句的集合。以此方式,可以相对容易地产生并且应用模型。此外,通过使模型在模型引擎中应用,提供搜索服务的实体可以从第三方接收模型,并且将它们应用在其中模型的应用不能干扰实现搜索系统的计算机设备的操作的环境中。结果,在生成搜索结果中有用的知识可以在模型中被捕捉,并且可以跨搜索系统来共享。此外,通过允许在搜索系统的搜索栈中应用模型,模型可以基于仅在该搜索系统内可用的数据来执行计算或其他操作。发明人已进一步认识到,可以通过提供定义与人物一致的特征的模型来将信息搜索和检索系统适于生成有用的和/或所需信息。将这一人物的模型应用于搜索结果可以生成与该人物的特征一致的信息。这一人物可以是个体的人,诸如例如名人、特定领域的专家、用户、和/或用户的朋友。由此,将个体的人的模型应用于搜索结果可以生成和与该特定的人相关联的特征一致的信息,例如,所生成的信息可以反映该特定的人的喜好和/或不喜好。人物还可以是具有共享特征的一组人群。例如,该组人群可以具有相似兴趣、能力 (例如,新手对专业人员)、背景、或任何合适的共享特征。将一组人物的模型应用于从特定搜索查询返回的搜索结果可以生成与该组人群的共享特征一致的信息。在某些实施例中,可以向用户呈现可被应用于特定搜索结果的合适的可用模型的标识符列表。当用户选择要应用的特定人物的模型时,返回给用户的所生成的信息可以和与所选择的人物相关联的特征一致。选择要应用的模型的过程可以是迭代的,使得用户可以进而将不同的模型应用于相同的搜索结果集,由此不同的所生成的信息被返回。由此,通过能够选择对不同人物的模型的应用并且将其与搜索结果相比较,用户可以选择接收和更好地与用户当前需要或兴趣对应的人物的特征一致地生成的信息。图1是示出可在其中实践本发明的某些实施例的计算环境100的高级别框图。计算环境100包括与计算设备105交互的用户102。计算设备105可以是任何合适的计算设备,诸如台式计 算机、膝上型计算机、移动电话、或PDA。计算设备105可以在任何合适的计算体系结构下操作,并且包括诸如由微软(MICROSOFT )公司开发的WINDOWS 操作系统 (Operating System)的变体等任何合适的操作系统。计算设备105可以具有经由任何合适的有线或无线通信介质来与服务器106通信的能力。在计算设备105与服务器106之间的通信可以经由计算机网络108,该计算机网络108可以是诸如因特网、公司内联网、或蜂窝网络等任何适当数量或类型的电信网络。服务器106可以使用任何合适的计算体系结构来实现,并且可以被配置有诸如由微软 (MICROSOFT )公司开发的WINDOWS 操作系统(Operating System)的变体等任何合适的操作系统。此外,虽然服务器106在图1中被示为单个计算机,但它可以是被配置成作为相干系统来操作的任何数量的计算机。在图1的示例中,服务器106可以作为搜索引擎来操作,允许用户102检索与搜索引擎相关的信息。用户可以诸如以任何合适的方式(诸如经由键盘、键区、鼠标或语音输入)通过将查询术语输入到计算设备105来显式地指定查询。另外地和/或另选地,用户可以提供隐式查询。例如,计算设备105可以配备有(或经由有线或无线连接来连接到)数码相机110。诸如对象、场景、条形码扫描等取自数码相机110的图像可以用作隐式查询。无论由触发查询的生成的用户102提供的输入类型是什么,计算设备105可以将查询发送给服务器106以获得与该查询相关的信息。当检索诸如例如网页等与搜索查询相关的数据之后,服务器106可以将一个或多个声明性模型应用于该数据以生成返回给用户 102的较高级别的信息。由服务器106生成的信息可以经由计算机网络108来发送,并且在计算设备105的显示器104上显示。显示器104可以是任何合适的显示器,包括IXD或 CRT显示器,并且可以是内置或外置于计算设备105。图2是根据某些实施例的诸如可由图1的服务器106实现的搜索栈200的体系结构框图。搜索栈200的组件可以诸如出于负载平衡或冗余的目的、使用任何合适的配置或任何数量的计算设备来实现。例如,结合搜索栈的每一组件来描述的功能可以通过被配置成担当相干系统的不同物理计算机来执行,和/或单个物理计算机可以执行归结到多个组件的功能。另外,在某些实施例中,可以将归结到搜索栈的单个组件的某种功能分布到多个物理计算机,物理计算机中的每一个可以并行地执行计算的不同部分。无论搜索栈200的具体配置是什么,可以将用户查询202作为输入经由计算机联网通信介质来提供给搜索栈200,并且可以是隐式的或显式的,如结合图1讨论的。在图2 的示例中,可以将用户查询200提供给搜索栈200中的输入组件,诸如搜索引擎204,它可以是任何合适的搜索引擎,诸如由微软公司开发的BING 搜索引擎。可以将搜索引擎204 耦合到包括数据索引206的一个或多个存储介质。可以将数据索引206存储在任何合适的存储介质上,包括内部或本地附连的介质,诸如硬盘、通过存储区域网络(SAN)连接的存储、或联网的附连存储(NAS)。数据索引206可以按任何合适的格式,包括一个或多个非结构化文本文件、或一个或多个关系数据库。搜索引擎204可以查阅数据索引206以检索与用户查询202相关的数据208。经检索的数据208可以是基于用户查询202和/或诸如用户简档或用户上下文等与该搜索相关的其他因素来检索的搜索结果的数据部分。即,数据索引206可以包括与搜索查询相关的一个或多个因素(例如,用户查询术语、用户简档、用户上下文)与匹配查询和/或与查询相关的数据(诸如数据页面)之间的 映射。数据索引206中的映射可以使用常规技术或按任何其他合适的方式来实现。无论使用数据索引206来检索与搜索相关的数据208而执行的映射的类型是什么,数据208可以包括由搜索引擎204从大数据主体中检索的任何合适的数据,该大数据主体诸如例如,网页、医疗记录、实验室测试结果、财务数据、人口统计数据、视频数据(例如, 血管造影、超声)、或图像数据(例如,χ光、EKG、VQ扫描、CT扫描、或MRI扫描)。数据208 可以通过搜索引擎204动态地检索或标识,或它可以被高速缓存为由搜索引擎204基于相似或相同查询来执行的先前查询的结果。数据208可以使用常规技术或按任何其他合适的方式来检索。搜索栈200还可以包括模型选择组件,诸如模型选择器210,它可以从存储在模型选择器210可访问的一个或多个计算机可读介质上的模型集中选择一个或多个适当的声明性模型214。模型选择器210随后可以将所选择的模型214应用于由搜索引擎204执行的搜索的结果(即,数据208)。可以将模型选择器210耦合到模型索引212,后者可以与数据索引206相同或可以是分开的索引。模型索引212可以被实现在任何合适的存储介质上 (包括那些结合数据索引206来描述的介质),并且可以按任何合适的格式(包括那些结合数据索引206来描述的格式)。模型索引212可以包括在与用户的搜索相关的一个或多个因素(例如,用户查询202中的术语、用户简档、用户上下文、和/或由搜索引擎204检索的数据208)与可被应用于由搜索引擎204检索的数据208的适当的模型214之间的映射。所选择的模型214可以选自存储在与服务器106 (图1)相关联的计算机可读介质上的较大的模型池250。在某些实施例中,模型池250可以由操作该搜索系统的实体来供应。尽管在其他实施例中,从其中选择模型214的模型池250中的所有或部分模型可以由除了操作该搜索系统的实体以外的各方来提供。在某些实施例中,模型池250中的模型可以由输入用户查询202的用户来供应。在这一场景中,由模型选择器210访问的模型池250 的一部分可以包括被分隔成存储对诸如提交用户查询202的用户等个体用户是私人的数据的计算机存储介质。在其他实施例中,用户的社区可以具有对搜索系统的访问,并且模型池250可以包括由除了提交用户查询202的用户以外的用户提交的模型。在又一些实施例中,从其中选择模型214的模型池250中的某些或所有模型可以由其他第三方来提供。这些第三方可以包括业务或组织,这些业务或组织具有专用需求或能力以指定要响应于搜索查询来生成的信息的本质。例如,计算距供销售的房屋的通勤距离的模型可以由不动产代理来提供。计算比较性实验室结果的模型可以由医疗协会来提供。因此,应当理解,可以将任何数量或类型的模型并入模型池250。在某些实施例中,为便于将模型方便地添加到模型池250中,图2中所示的搜索系统可以包括索引器252。索引器252可以基于模型池250内包含的模型来更新模型索引 212。在某些实施例中,模型池250中的每一模型可以包含标识在其中可以应用该模型的上下文的元标签。索引器252可以使用这一和附连到网页的元标签类似的信息来构造模型索引212。就此,索引器252可以使用本领域中用于实现web爬寻器来建立页面索引的已知技术来实现。为支持这一实现,模型池250中的每一模型可以被格式化为网页。然而,应当认识到,可以使用任何合适的技术来构造模型索引212,包括机器学习技术或显式人类输入。模型选择器210可以使用本领域中用于基于索引来实现搜索引擎的已知技术来实现。然而,模型选择器210可以 采用模型索引212来标识在生成信息以提供给用户时所使用的模型,而不是基于数据索引标识向用户返回哪些页面。模型选择器210可以基于与搜索相关的因素与模型索引中的术语之间的精确匹配来标识模型。尽管可以另选地或另外地使用不精确匹配技术。在某些实施例中,声明性模型本身存储在模型索引212中,而在另一些实施例中,模型本身可以与模型索引212分开地存储,但按可在模型索引212中适当地标识它们的方式来存储。搜索栈200还可以包括模型应用引擎216,它可以将所选择的模型214应用于由搜索引擎204检索的数据208。在模型的应用中,数据208可以用作模型应用引擎216通过其来应用所选择的模型的一参数。还可以提供诸如用户查询202的各部分等附加参数作为在模型应用期间到所选择的模型的输入。尽管应当理解,图2中所示的搜索环境内可用的任何数据可以在模型中被标识,并且当模型被应用时由模型应用引擎216使用。作为将模型应用于由模型应用引擎216执行的搜索结果的结果,可以生成信息 218。所生成的信息218可以由搜索栈200的输出组件(未示出)返回给用户。尽管所生成的信息可以按任何合适的方式来使用,包括作为查询以供通过搜索引擎204的进一步搜索。所生成的信息218可以包括由模型应用引擎216执行的模型应用的结果,可以包括由搜索引擎204检索的数据208、或其任何合适的组合。例如,基于由模型应用引擎216执行的模型的应用,可以改变向用户呈现数据208的排序,并且可以修改被呈现为数据208的一部分的内容,使得它包括作为由模型应用引擎216执行的计算的结果的另外或另选的内容,或两者的任何合适的结合。由此,当经选择的模型214被应用于由搜索引擎检索的原始数据(诸如数据208)时,所生成的信息218可以处于抽象的较高级别,并且因此比原始数据本身对用户更有用。图3是声明性模型300的数据结构串的略图,诸如由图2的模型选择器210选择的模型214中的一个。模型300可以按任何合适的方式来存储。在某些实施例中,可以将它存储在文件中,并且可以将它作为页面。因此,在这些实施例中,像其他网页那样,模型300 包括用于辅助对模型的索引(诸如图2的模型索引212)的元标签302,由此将模型与诸如与搜索相关的查询等因素相关。模型300可以包括一个或多个元素,其在所示实施例中是声明性语言的语句。在某些实施例中,声明性语言可以处于不是计算机编程者的人类可理解以及创作的级别。例如,它可以包含等式的语句以及基于等式的求值的结果的形式,诸如等式304和结果305, 以及等式306和结果307。等式可以是对输入数据集的符号或数学计算。模型300还可以包括一个或多个规则(诸如规则308)的语句以及基于对等式的求值的结果的形式(诸如规则结果309)。某种类型的规则的应用可以触发要执行的搜索, 由此收集新信息。根据某些实施例,当诸如由模型应用引擎216应用包含规则(诸如规则 308)的模型(诸如模型300)时,对作为模型的应用的一部分来执行的规则的求值可以生成搜索查询,并且触发要由数据搜索引擎(诸如搜索引擎204)执行的搜索。由此,在这些实施例中,因特网搜索可以基于通过将模型应用于搜索数据所生成的搜索查询来触发。尽管规则可以指定任何合适的结果。例如,结果可以是条件语句以及取决于动态地求值的条件是真还是假而应用的结果。因此,规则的结果部分可以指定要有条件地执行的动作、或要返回的信息、或任何其他类型的信息。
模型300还可以包括一个或多个约束的语句,所述约束诸如约束310和结果311。 约束可以定义被应用于在模型的应用上产生的一个或多个值的限制。约束的示例可以是不等式语句,诸如将模型应用于从搜索中检索的数据208的结果大于定义的值的指示。模型300还可以包括要对输入数据执行的一个或多个计算的语句,所述计算诸如计算312。每一计算还可以具有相关联的结果,诸如结果313。在此示例中,结果可以标记 所指定的计算312的结果,使得它可以在模型300内的其他语句中被引用,或以其他方式指定如何可将计算的结果在生成信息给用户中进一步应用。计算312可以是表示用数值作为结果的数字计算的表达式,或任何其他合适的计算类型,诸如符号计算。在将模型300应用于由搜索引擎检索的数据208时,模型应用引擎216可以对数据208执行在模型规格中指定的任何计算,包括尝试求解对数据208的等式、不等式、以及约束。在某些实施例中,表示模型内的等式、规则、约束或计算的语句可以相互关联,使得作为一个语句的结果被生成的信息可以在模型300内的另一语句中被引用。在这一场景中,应用模型300可能需要确定求值这些语句的次序,使得可以一致地应用所有语句。在某些实施例中,应用一模型可能需要多次迭代,在所述多次迭代期间只应用语句中的所有参数的值都可用的那些语句。作为某些语句的应用生成被用于应用其他语句的值,那些其他语句可以在连续迭代中求值。如果对迭代中的语句的应用改变了在应用另一语句中使用的参数值,则将基于其依赖的所改变的参数值再次应用该另一语句。对模型中的语句的应用可以按此方式迭代地继续,直到应用该模型中的所有语句的一致结果从一个迭代到另一个迭代中出现,实现稳定且一致的结果。然而,应当认识到,可以使用任何合适的技术来应用模型300。图4提供了诸如那些可为模型300指定的语句等语句的示例。在图4的示例中, 当用户执行房屋搜索时可以选择并且应用该模型,并且在此示例中,该模型将供销售的房屋与用户的通勤相关。在图4的示例中对模型的应用可以生成每一供销售的房屋与用户的办公室位置之间的通勤距离的信息和/或时间。由此,规则语句408是来自图3的规则308 的示例,它指定将被用作模型计算的一部分的房屋位置的形式。在此示例中,规则语句408 指定被标识为房屋位置的一参数是供销售的房屋的地址、城市和州的全球定位系统(GPS) 坐标的形式。当模型被应用时,可以由模型应用引擎216基于所检索的数据208将值给予这些参数。在此示例中,当网页或所检索的数据的其他项包含被规则308的应用识别为房屋位置的信息时,规则308可以求值为真。因此,可以使用规则308来标识模型内的其他语句对其应用的数据项。等式语句404是图3的等式304的示例,该等式语句404基于规则语句408中指定的供销售的房屋的位置,提供用于到达通勤距离要执行的计算,以及在此示例中被指示为办公室位置且可以对模型应用引擎216可用的值。在此示例中,办公室位置是对模型的输入参数,该输入参数可以例如作为用户查询的一部分、作为用户简档或用户上下文的一部分来提供。然而,房屋位置是基于从对模型的另一输入(诸如作为搜索引擎的结果来返回的数据208)所接收的规则语句408的应用。结果语句405是图3的结果305的示例,该结果语句405指定如何显示对等式语句404所执行的计算的结果。由此,在此示例中,结果语句405根据与被显示在对房屋的描述旁边的搜索结果来指定到每一供销售的房屋的通勤距离,该通勤距离是可基于数据208 来建立的值的参数。
图4的示例示出了可以在 模型中存在以向用户查询显示结果的某些语句。在此示例中,结果与供销售的房屋相关。因此,图4中描绘的模型可以由模型选择器210(图2)响应于请求关于供销售的房屋的信息的用户查询202来选择。模型应用引擎216可以将模型应用于所检索的数据208中的数据的每一项。然而,不是每一所检索的数据的项都可以遵循规则308或由模型内的语句建立的其他条件。因此,不是所检索的数据208的每一项都可以被包括在所生成的信息218中。然而,图4示出了可以将不明确地包含在所检索的数据208中的其他信息包括在所生成的信息218中。在图4的简单示例中,被称为“通勤距离”的参数的值在应用图4的模型时由模型应用引擎216来计算。图5是根据某些实施例的可由诸如图2的搜索栈200等搜索栈在执行期间执行的过程的流程图。该过程可以当诸如图1的计算设备105等计算设备代表用户将搜索查询发送给诸如图2的搜索引擎204等搜索引擎时开始。然而,并不要求搜索过程由明确的用户输入或按文本形式的明确的用户输入来触发。非文本输入或暗示的用户数据可以被视为触发对图5的过程的执行的查询。在步骤502,搜索栈可以接收用户的查询。如以上讨论的,用户的查询可以是隐式的或显式的。例如,在某些实施例中,搜索栈可以生成代表用户的搜索查询。搜索栈例如可以基于与用户相关联的上下文信息来生成搜索查询。这可以例如由图2的搜索引擎204执行。无论查询如何被生成,在步骤504中,搜索引擎随后可以检索与搜索结果查询匹配的数据。所返回的数据可以基于查询(和/或诸如用户上下文和用户简档等其他因素) 与在诸如图2的数据索引206等搜索引擎可访问的索引中的项之间的匹配(无论是显式的或隐式的)。该过程随后前进至步骤506,其中搜索栈可以检索适于用户的搜索的一个或多个模型。在图2的示例性实现中,合适的模型可以由模型选择器210结合索引(例如,模型索引212)来选择,该索引将用户的查询和/或由搜索引擎返回的数据与一个或多个合适的模型相关。在步骤508,搜索栈随后可以将所检索的模型应用于所检索的数据。在图2的示例性实现中,这一步骤可以由模型应用引擎216来执行。除了所检索的数据本身之外,诸如用户查询(或其一个或多个部分)等与索引有关的其他因素也可以用于对作为将该模型应用于所检索的数据的结果来执行的一个或多个计算的输入。在步骤508,处理可能需要多次迭代。在某些实施例中,模型可以应用于数据的每一项,诸如包括在所检索的数据208中的网页。因此,在步骤508,在对包含在所检索的数据208内的每一项进行重复的意义上,处理可以是迭代的。另选地或另外地,在步骤508,处理可以是迭代的,因为无论模型是被应用于数据的各个项还是数据项的集合,模型的应用都可能需要迭代地应用模型中的语句,直到实现稳定且一致的结果。在模型选择器210可以选择多个模型、使得遵循每一个所选模型的信息可以通过在步骤508的处理来生成的意义上,步骤508的处理可以另选地或另外地是迭代的。转向步骤510,搜索栈随后可以输出所生成的结果作为将所选模型应用于所检索的数据的结果。在此示例中,输出可能需要将信息返回给随后可以为用户将该信息呈现在显示器上的用户计算机。在某些实施例中,所生成的信息可以包括将模型应用在从搜索引擎返回的数据以及数据本身上的结果的某种组合。例如,所生成的信息可以基于模型的应用来过滤搜索数据或对搜索数据重新排序,或可以提供附加信息或按与由搜索结果返回的数据不同格式的数据。在某些实施例中,对搜索数据的重新排序可以结合时间元素。例如, 模型可以标识多个事件集的时间顺序。这一模型的应用随后可能需要标识与那些事件有关的搜索数据,并且生成按根据模型的时间顺序的一顺序向用户返回的信息。然而,应当认识至IJ,所生成的信息的本质是可作为模型的应用的结果被指定的任何适当的形式,它可以包含诸如计算、等式、约束和/或规则等元素的组合。当(经由用户的计算设备)向用 户返回数据之后,图5的过程可以被完成。图6是用户经由其可以在所检索的系统中访问一搜索的用户界面的示例。在此示例中,用户可以输入搜索查询,并且查看响应于该查询来返回的信息。尽管可以使用任何合适的应用来生成用户界面,但图6示出了该界面由web浏览器600显示。web浏览器600可以是任何合适的web浏览器,在此示例中被示为由微软公司开发的INTERNET EXPLORER. , 并且可以在由用户操作的计算设备(诸如图1的计算设备105)上执行。在图6的示例中, web浏览器已加载由诸如图2中所示的搜索和检索系统返回的网页。用户在用户界面的查询输入域602中已输入文本查询604,“靠近我的办公室的供销售的房屋”,并且经由web浏览器600将该查询发送给根据某些实施例的作为搜索栈的一部分的搜索引擎。作为响应,搜索栈经由web浏览器向用户返回所生成的信息,在图6中被示为显示在web浏览器中的所返回的信息元素606和608。当接收用户的查询之后,搜索引擎可以检索包括靠近用户办公室的供销售的房屋的结果的数据集(例如,网页)。如以上讨论的,从搜索引擎返回的数据集可以基于查询项与和网页有关的索引中的项之间的匹配。然而,如图所示,可以在求值搜索查询时使用其他数据源。在此示例中,搜索查询包括短语“我的办公室”。该短语可以与处理查询的搜索和检索系统可访问的用户简档中的信息相关联。因此,在执行查询后,搜索和检索系统可以基于根据用户简档中指定的信息的地理位置来过滤结果。然而,应当认识到,可以使用任何合适的技术来处理搜索查询以及检索数据。基于查询和/或所检索的数据,适当的模型随后可以由诸如图2的模型选择器210 等搜索栈来选择。在图6的示例中,将供销售的房屋与用户的通勤相关的图4中指定的模型是基于查询文本的一部分即“靠近我的办公室”来选择的。随后检索所选择的模型并将其应用于从搜索中得到的数据(即,供销售的房屋的网页)。可以由例如模型应用引擎216执行将模型应用于数据。在图6的示例中,用户的办公室位置还可以是到所选择的模型的输入参数的值。因为查询文本“靠近我的办公室”并不指定确切的办公室位置,因此在此示例中,用户的办公室位置可以取自例如用户的简档或用户的上下文。在此示例中,如结合图4讨论的,应用所选择的模型包括从搜索结果中确定每一供销售的房屋的地址、城市和州的GPS坐标,计算每一房屋与用户办公室之间的通勤距离,以及安排所生成的信息以将通勤距离显示在对每一供销售的房屋的描述旁边。在图6的示例中,还基于通勤距离对所生成的信息的显示进行了排序。由此,在图6的示例中,供销售的房屋的两个列表由搜索栈返回,并且在web浏览器中显示所返回的信息元素606和608。每一所返回的信息606和608分别包括供销售的房屋的图片610和612以及对供销售的房屋分别的描述614和616。另外,所返回的信息元素606包括显示在描述614旁边的 通勤信息618即“距工作2公里”,并且所返回的信息元素608包括显示在描述616旁边的通勤信息620即“距工作5公里”。在图6的示例中,所返回的信息元素606和608是作为基于通勤距离按升序排序来返回的。因此,作为由图4的示例指定的模型的应用的结果,更多有用信息被返回给用户。S卩,可以基于对用户或他的查询特定的所执行的附加动态计算(S卩,基于他的办公室位置),将基于动态地标识的数据(在此示例中为供销售的房屋)来执行的附加信息(即,通勤信息)提供给用户,该附加信息以其他方式也是可能的,并且可以据此安排结果,而不是仅返回供销售的房屋列表。因此,应用所选择的模型允许用户接收附加信息并且按与他的搜索查询更有关的方式来呈现。可以将模型与人物相关联。例如,人物可以是个体的人(S卩,实际特定的一个人)。 如以上讨论的,人物的模型可以包含声明性语句,包括规则、不等式、等式、约束、计算等。然而,与在以上图4的示例中所讨论的更“一般的”模型不同,在人物模型中应用到这些声明性语句的搜索结果可以生成与人物特征一致的信息,并且由此反映该人物的喜好和/或不
喜好、偏好等等。图7A和7B是可由信息检索系统呈现的用户界面的示例。在此示例中,可以使用用户界面来启动搜索,其中响应于对信息的请求已经将人物的模型应用于向用户返回的信息。响应于经由所示web浏览器600、对作为搜索栈的一部分的搜索引擎作出的对信息的请求(例如,在查询输入域602中输入的文本查询704,即“晚礼服”),搜索栈向用户返回所生成的信息,在图7A中被示为所返回的信息元素710a、712a、714a和716a。如在此示例中可以看到的,这些所返回的信息元素710a、712a、714a和716a的每一个都包括特定服装的图片、描述以及价格。作为图7A中生成向用户返回的信息的一部分,搜索栈应用了人物的模型。在此示例中,经由当前应用的模型的标识符(即,当前模型标识符718a)来向用户指示当前应用于搜索结果的人物的模型。如从此示例中可以看到的,当前模型标识符是特定人的名字(即, "Jessica Lange”),在此示例中是名人。由此,在此示例中,Jessica Lange是当前应用的模型的人物,并且所返回的信息元素710a、712a、714a和716a与Jessica Lange的特征一致。即,向用户返回的服装列表可以反映Jessica Lange的风格和/或时尚偏好,在图7A 的示例中包括颜色、合身、设计师、剪裁等等。尽管所应用的模型可以由搜索栈基于搜索查询来自动地选择,例如诸如由模型选择器210,如以上讨论的,但对要应用的模型的选择还可以由用户来作出。另选地或另外地, 选择可以通过用户输入与自动选择的组合作为基础。例如,用户可以提供指定一人物的输入,并且模型选择器210可以基于诸如搜索查询中的项等上下文来选择适当的模型。由此,在某些实施例中,可以向用户呈现可应用于特定搜索结果的不同人物的不同模型的标识符列表,这在图7A的示例中在web浏览器600中显示。标识符列表可以按任何合适的方式来提供。例如,标识符列表可以由模型选择器210提供为适合搜索结果,和/ 或可以本地地存储在搜索系统的客户机上,并且可以由该客户机来提供。由此,图7A示出了不同人物的模型的模型标识符列表720。尽管一般而言可以显示人物的模型的任何合适的标识符,但在图7A的示例中,模型标识符列表720包括人物的模型的两类的标识符,即名人模型标识符722和朋友模型标识符724。名人模型标识符722标识人物的模型,其中每一人物是不同名人,并且其中每一标识符与该名人的名字(例如, "Miley Cyrus”、“Taylor Swift”、“Megan Fox”、以及 “Jessica Lange”)相对应。朋友模型标识符724标识人物的模型,其中每一人物是输入该搜索查询的用户的朋友。在此示例中,用户的这些朋友可能已经选择共享一模型,该模型由于他们与服装有关而定义其特征,并且可以因此反映例如每一朋友的时尚和/或服装风格偏好。在图7A的示例中,朋友模型标识符724的每一个与用户朋友的屏幕名、用户名、以 及用户句柄相对应 (例如,“SarahJV”、“Beth_Sh”和“ J0Sh_Camb” )。然而,应当理解,模型标识符可以按包括数字地、图形地(例如,图片或绘图)使用描述性名字等任何合适的方式、和/或经由语音或其他标识声音来标识。在某些实施例中,模型可以由服务器来应用,该服务器是诸如搜索引擎204等搜索引擎的一部分或与其耦合。在这一场景中,可以将模型存储在服务器上。名人的模型或可以应用于多个用户的其他模型可以由服务器维护,使得它们是公共可访问的。与作为用户的朋友的人物相关联的模型可以结合用户简档来存储,使得模型对于该用户而言是私人的。然而,应当理解,可以在搜索栈内的任何地方,包括可能在用户计算机上维护和/或应用模型,尤其是私人模型。无论模型存储在什么地方或它们如何被标识,都可以将模型标识符列表720中人物的模型的每一个应用于文本查询604的搜索结果,以便生成和与该人物相关联的特征一致的向用户返回的信息。由此,应用由名人模型标识符722标识的模型的任一个将导致生成并且向用户返回与该名人的特征一致的信息,而应用由朋友模型标识符724标识的模型的任一个将导致生成并且向用户返回与该朋友的特征一致的信息。用户可以选择在模型标识符列表720中标识的模型中的一个,以便使该模型应用于搜索结果。选择可以使用任何合适的用户输入来作出。在图7A的示例中,用户可以通过将鼠标光标的位置726移动到所需模型的标识符来选择要应用的模型,并且使用鼠标点击该标识符。由此,在图7A中,用户已经将鼠标光标放置在朋友模型标识符724的一个上,即, “Josh_Camb”。图7B是在用户已选择了要应用于响应于文本查询704来返回的搜索结果的另一模型之后图7A的用户界面的示例。如图7B中可以看到的,当前应用的模型的标识符已改变以反映所应用的新模型,并且当前模型标识符718b指示已将人物“JoSh_Camb”的模型应用于搜索结果。响应于文本查询704来生成的信息现在与J0Sh_Camb的特征、而不是如图7A中Jessica Lange的特征相一致。由此,如图7B中可以看到的,在web浏览器600中显示的所生成的信息现在已改变,以显示与图7A的示例中显示并返回的服装相比的一组不同的服装,即所返回的信息元素710b,712b,714b和716b。即,所返回的信息元素710b、 712b,714b和716b与J0Sh_Camb的朋友的特征一致,并且可以例如反映他的时尚和/或风格偏好。模型可以包括任何合适的信息,使得当该信息被应用于时,所返回的信息和与该模型相关联的人物一致。在其中搜索结果与衣服或其他时尚项相关联的图7A和7B的示例中,模型可以包括约束、规则、等式或与时尚特征有关的其他信息,诸如颜色、剪裁、风格或价格。然而,应当理解,模型可以反映与人物相关联的任何合适的特征或特征的组合。由此,用户可以看到并且比较作为不同人物的各种模型的应用的结果来生成的信息,其中每一人物可以具有不 同特征,并且其中作为应用人物的模型的结果来生成的信息与该人物的特征一致。虽然在图7A和7B中将该比较描述并且示为通过每次一个地查看每一模型的应用来执行,但可以执行任何合适的类型的比较,包括对由人物的多个不同的模型生成的信息的逐侧比较。无论所执行的比较的类型是什么,用户可以对应地选择人物,并且接收最适于用户的当前需要和/或兴趣的信息。图8是执行来自客户机的搜索的过程的流程图,其中将人物的模型应用于响应于对信息的请求而生成的信息。图8的过程可以由诸如图1的用户102等用户操作的诸如图 1的计算设备105等客户机计算机来执行。可以在客户机计算机上使用包括图7A和7B中所示的任何合适的用户界面。过程在步骤802开始,可以检查用户输入。在步骤802,该过程可以等待用户输入直到存在用户输入。另一方面,如果存在用户输入,则该过程可以前进至步骤804,其中客户机计算机可以接收用户输入。用户输入可以按任何合适的方式来提供,包括经由语音、键盘、指示笔输入、手写识别、鼠标操作等等。用户输入可以包括例如,对信息的请求,诸如按任何合适的格式来接收的搜索查询。在某些实施例中,用户输入还可以包括人物的标识符。 可能已经在人物标识符列表中向用户显示了该人物的标识符,如以上结合图7A和7B讨论的。在步骤806,客户机计算机可以将对信息的请求(可能作为来自框804的用户输入的一部分被接收)发送给信息检索系统。在步骤808,客户机计算机还可以任选地将人物的标识符发送给信息检索系统。在某些实施例中,人物的标识符可能已经在框804中作为用户输入的一部分被接收,并且可能已经被用户选择。在另一些实施例中,人物的标识符可能已经而被自动地选为适于例如基于搜索查询的信息请求。对适当人物的选择可以由客户机计算机来执行,在该情况下,所标识的人物可以被发送给信息检索系统,或它可以由信息检索系统来执行,由此避免客户机计算机发送标识符的需要。可以将模型与所标识的人物相关联,其中该模型定义了与该人物一致的特征。如以上讨论的,模型可以按照声明性语句来指定。当在步骤808将所标识的人物发送给信息检索系统时,还可以将指定该模型的声明性语句发送给信息检索系统。声明性语句可以按任何合适的方式来传达,包括经由存储在客户机计算机上的cookie中的信息,或使用任何合适的通信协议。在其他实施例中,与所标识的人物相关联的模型可能已被存储在信息检索系统中,在该情况下,指定模型的声明性语句可以不被发送给信息检索系统。在步骤810,客户机计算机上的用户界面随后可以响应于请求来检索和/或显示信息,其中该信息具有与所标识的人物一致的特征。该信息可以作为将与所标识的人物相关联的模型应用于响应于用户对信息的请求而返回的搜索结果的结果来生成。在这些实施例中,模型可以由搜索栈中的任何组件来应用,包括信息检索系统中的任何组件,诸如模型应用引擎216,和/或客户机计算机上的任何合适的组件。当模型已被应用在客户机计算机上、但先前被存储在信息检索系统中并且不在客户机计算机上时,在由客户机计算机应用相关联的模型之前,模型的规格可以已由信息检索系统发送给客户机计算机。作为模型的应用的结果,响应于用户的请求来生成的信息与所标识的人物的特征一致。图8的过程可以重复回到步骤802,其中可以再次检查用户输入。如果在步骤804再次接收到用户输入,则这一用户输入可以包括对信息的新请求或人物的新标识符中的一个或两者。由此,用户可以仅输入对信息的新请求,诸如新查询,而无需标识要应用于所生成的信息的人物。在这些情况下,所标识的人物可以由搜索栈中的任何合适的组件来自动地选择,包括客户机计算机或信息检索系统的任何合适的组件。 另选地,用户还可以仅指定人物的新标识符,在该情况下,可以将与新人物相关联的不同模型应用于相同的用户查询。在某些实施例中,可以通过将模型以及查询作为对信息的新请求提交,来将不同的模型应用于相同的查询,这可以触发新搜索。然而,在其他实施例中,可以将搜索结果高速缓存,并且可以将不同的模型应用于所高速缓存的搜索结果。 如果模型被应用于所高速缓存的结果,则可以将结果高速缓存在搜索栈中的任何地方,包括在客户机计算机、主存搜索引擎的务器上或任何其他合适的点处。无论新结果是如何生成的,由于与新人物相关联的特征可以不同,因此在步骤810 接收到的所生成的信息也可以不同于与新人物一致。用户还可以输入对信息的新查询以及人物的新标识符两者,在该情况下,可以将与新人物相关联的模型应用于作为对信息的新请求的结果来返回的搜索结果。由此,用户可以通过输入新搜索查询和/或通过选择不同人物来细化作为查询的结果接收到的信息,其中该不同人物的相关联的模型可以被应用以生成与该新人物的特征一致的信息。图9是由响应于请求来生成信息的信息检索系统执行的过程的流程图,其中所生成的信息与人物的特征一致。图示的过程可以例如由图2中所示的搜索栈200的组件来执行。图9的过程在步骤902开始,其中信息检索系统可以获取对信息的请求。这可以例如由图2的搜索引擎204来执行。对信息的请求可以从诸如图1的计算设备105等客户机计算机接收到、并且可以按如以上讨论的包括文本查询等任何合适的格式。 在步骤904,该过程可以包括获取人物的模型。这一步骤可以包括选择存储在信息检索系统的组件(诸如模型池250)中且适于对信息的请求的人物的模型。选择可以例如由图2的模型选择器210基于从客户机计算机接收的人物的标识符来执行,或当标识符没有从客户机计算机接收时,基于诸如搜索查询文本串等对信息的请求的各方面来执行。在某些实施例中,可以将该模型存储在信息检索系统中,但模型的规格(例如,一组声明性语句)可以从客户机计算机来接收。无论获取该模型的具体方式是什么,在步骤906,随后可以应用人物的模型以便生成与人物的特征一致的信息。这一步骤可以由包括图2的模型应用引擎216在内的搜索栈的任何合适的组件或由客户机计算机按任何合适的方式来执行。当由客户机计算机执行时以及当模型由搜索检索系统选择时,这一步骤可以包括发送对模型的规格以及通过其将模型应用于客户机计算机的搜索结果。这一步骤可以包括对响应于用户对信息的请求而返回的一组搜索结果应用在模型中指定的一组声明性语句。在步骤908,可以将所生成的信息返回给用户。在模型由信息检索系统应用的实施例中,这一步骤可以包括通过任何合适的通信链路将所生成的信息发送给客户机计算机。在步骤910,信息检索系统还可以将可适用于对信息的请求的其他人物的其他模型的指示返回给客户机计算机。随后可以由客户机计算机向用户显示对其他人物的其他模型的指示,允许用户选择可应用于搜索结果的不同人物的模型以便生成向用户返回的信息。由此,尽管在图9中未示出,但图9的过程可以在步骤910之后重复返回步骤902和/ 或904,在该情况下,可以获取对信息的新请求和/或人物的新模型虽然结合图7A和7B将人物描述为个体、实际、可标识的人(例如,名人或用户的朋友),但在某些实施例中,人物可以是更抽象的人并且不必与个体的人相关联。例如,人物可以是具有共享特征的一组人群。可以考虑在对生成给用户的信息的考虑中可有用的任何合适的共享特征。例如,共享特征可以包括共享和/或共同的爱好、兴趣、趋势、背景、能力、 对话题、活动等级或爱好的熟悉度。图10是用于访问搜索的用户界面的示例,诸如图7A和7B的用户界面,其中,已将与一组人群相关联的人物的模型应用于响应于对信息的请求来返回给用户的信息。响应于经由所示web浏览器600对作为搜索栈的一部分的搜索引擎作出的对信息的请求(例如, 在查询输入域602中输入的文本查询1004,S卩“数码相机”),搜索栈向用户返回所生成的信息,在图10中被示为数码相机列表,即所返回的信息元素1006和1008。如此示例中可以看到的,这些所返回的信息元素1006和1008的每一个分别包括相机图片1010和1012、相机描述1014和1016、以及相机规格1018和1020。作为图10中生成向用户返回的信息的一部分,搜索栈应用了与具有共享特征的一组人群相关联的人物的模型。在此示例中,经由当前应用的模型的标识符(即,当前模型标识符1022)来向用户指示当前应用于搜索结果的人物的模型。如从此示例中可以看到的,当前模型标识符1022是一组人群中一种类型的人的标识符(即,“旅行者”),这在此示例中可以是对相机感兴趣并且也是频繁旅行者的人。由此,在此示例中,旅行者是当前应用的模型的人物,并且所返回的信息元素1006和1008与旅行者的特征一致。即,向用户返回的相机列表可以与适用于频繁旅行的人的规格一致,考虑例如相机的电池寿命、相机成本等等。图10的示例显示了旅行者规格1026,它列出了根据适用于频繁旅行者的各种度量的相机的规格范围(例如,电池寿命、兆像素、以及预算)。如图10中可以看到的,相机规格 1018和1020与旅行者规格1026 —致。图10还显示了对应用于搜索结果可用的组人物标识符1024列表。这些组人物标识符1024包括当前模型标识符1022 (即,“旅行者”),但还包括其他人物标识符,诸如“野生动植物爱好者”,“体育爱好者”,“孩子”以及“专业人员”。这些人物的每一个都与不同特征相关联。在图7A和7B的示例中,用户可以从要应用于搜索结果的组人物标识符1024中选择另一标识符,并且因此可以接收进而与新组人物一致的不同信息。用户可以由此比较应用不同组人物的不同模型的结果,以便接收更准确地适合用户的当前兴趣或需要的信息。至此描述了本发明的至少一个实施例的若干方面,可以理解,本领域的技术人员可容易地想到各种更改、修改和改进。这样的更改、修改和改进旨在是本 发明的一部分,且旨在处于本发明的精神和范围内。因此,上述描述和附图仅用作示例。
可以用多种方式中的任一种来实现本发明的上述实施例。例如,可使用硬件、软件或其组合来实现各实施例。当使用软件实现时,该软件代码可在无论是在单个计算机中提供的还是在多个计算机之间分布的任何合适的处理器或处理器集合上执行。此外,应当理解,计算机可以用多种形式中的任一种来具体化,如机架式计算机、 台式计算机、膝上型计算机、或平板计算机。另外,计算机可以具体化在通常不被认为是计算机但具有合适的处理能力 的设备中,包括个人数字助理(PDA)、智能电话、或任何其他合适的便携式或固定电子设备。同样,计算机可以具有一个或多个输入和输出设备。这些设备主要可被用来呈现用户界面。可被用来提供用户界面的输出设备的示例包括用于可视地呈现输出的打印机或显示屏和用于可听地呈现输出的扬声器或其他声音生成设备。可被用于用户界面的输入设备的示例包括键盘和诸如鼠标、触摸板和数字化输入板等定点设备。作为另一示例,计算机可以通过语音识别或以其他可听格式来接收输入信息。这些计算机可以通过任何合适形式的一个或多个网络来互连,包括作为局域网或广域网,如企业网络或因特网。这些网络可以基于任何合适的技术并可以根据任何合适的协议来操作,并且可以包括无线网络、有线网络或光纤网络。而且,此处略述的各种方法或过程可被编码为可在采用各种操作系统或平台中任何一种的一个或多个处理器上执行的软件。此外,这样的软件可使用多种合适的程序设计语言和/或程序设计或脚本工具中的任何一种来编写,而且它们还可被编译为可执行机器语言代码或在框架或虚拟机上执行的中间代码。就此,本发明可被具体化为用一个或多个程序编码的一个计算机可读介质(或多个计算机可读介质)(例如,计算机存储器、一个或多个软盘、紧致盘(CD)、光盘、数字视频盘(DVD)、磁带、闪存、现场可编程门阵列或其他半导体器件中的电路配置、或其他非瞬态的有形计算机存储介质),当这些程序在一个或多个计算机或其他处理器上执行时,它们执行实现本发明的上述各个实施例的方法。这一个或多个计算机可读介质可以是便携的,使得其上存储的一个或多个程序可被加载到一个或多个不同的计算机或其他处理器上以便实现本发明上述的各个方面。此处以一般的意义使用术语“程序”或“软件”来指可被用来对计算机或其他处理器编程以实现本发明上述的各个方面的任何类型的计算机代码或计算机可执行指令集。另夕卜,应当理解,根据本实施例的一个方面,当被执行时实现本发明的方法的一个或多个计算机程序不必驻留在单个计算机或处理器上,而是可以按模块化的方式分布在多个不同的计算机或处理器之间以实现本发明的各方面。计算机可执行指令可以具有可由一个或多个计算机或其他设备执行的各种形式, 诸如程序模块。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。通常,在各实施例中,程序模块的功能可以视需要组合或分散。而且,数据结构能以任何合适的形式存储在计算机可读介质上。为简化说明,数据结构可被示为具有通过该数据结构中的位置而相关的字段。这些关系同样可以通过对各字段的存储分配传达各字段之间的关系的计算机可读介质中的位置来得到。然而,可以使用任何合适的机制来在数据结构的各字段中的信息之间建立关系,包括通过使用指针、标签、 或在数据元素之间建立关系的其他机制。本发明的各个方面可单独、组合或以未在前述实施例中具体讨论的各种安排来使用,从而并不将其应用限于前述描述中所述或附图中所示的组件的细节和安排。例如,可使用任何方式将一个实施例中描述的各方面与其他实施例中描述的各方面组合。同样,本发明可被具体化为方法,其示例已经提供。作为该方法的一部分所执行的动作可以按任何合适的方式来排序。因此,可以构建各个实施例,其中各动作以与所示的次序所不同的次序执行,不同的次 序可包括同时执行某些动作,即使这些动作在各说明性实施例中被示为顺序动作。在权利要求书中使用诸如“第一”、“第二”、“第三”等序数词来修饰权利要求元素本身并不意味着一个权利要求元素较之另一个权利要求元素的优先级、先后次序或顺序、 或者方法的各动作执行的时间顺序,而仅用作将具有某一名字的一个权利要求元素与(若不是使用序数词则)具有同一名字的另一元素区分开的标签以区分各权利要求元素。同样,此处所使用的短语和术语是出于描述的目的而不应被认为是限制。此处对 “包括”、“包含”、或“具有”、“含有”、“涉及”及其变型的使用旨在包括其后所列的项目及其等效物以及其他项目。
权利要求
1.一种操作搜索系统(200)的方法,所述方法包括 至少一个处理器(106),响应于搜索擦查询从用户获取对信息的请求(202);获取人物的模型(214),所述模型定义与所述人物一致的信息的特征; 至少部分地基于应用所获取的模型来生成信息(218);以及向所述用户返回所生成的信息以及所获取的模型的人物的标识符。
2.如权利要求1所述的方法,其特征在于 所述对信息的请求包括搜索查询(502);以及获取人物的模型包括基于所述搜索查询中的项来标识模型(506)。
3.如权利要求1所述的方法,其特征在于,获得人物的模型包括 从所述用户获取所述人物的标识符(720);以及基于所获取的标识符从模型池检索所述模型。
4.如权利要求1所述的方法,其特征在于,获取人物的模型包括从所述用户获取包括指定所述模型的声明性语句(404、405、408)的文件。
5.如权利要求1所述的方法,其特征在于,所述方法还包括 将不同人物的多个模型标识为与所述对信息的请求相关;以及向所述用户返回所述多个模型中的每一模型的标识符。
6.至少一种包含计算机可执行指令的非瞬态计算机存储介质,所述指令当由至少一个处理器执行时实现搜索和检索系统的组件,所述组件包括适用于从用户接收定义搜索查询(202)的输入组件; 适用于从多个人物的模型中选择一个人物的模型的模型选择组件(210); 适用于应用所选择的模型来生成信息的模型应用引擎(216),其中所生成的信息与所选择的模型的人物的特征一致;以及适用于响应于所接收的搜索查询来向所述用户返回至少由所述模型应用引擎生成的信息的输出组件(218)。
7.如权利要求6所述的至少一种非瞬态计算机存储介质,其特征在于,所述模型选择组件至少部分地基于所述搜索查询来选择所述模型。
8.如权利要求6所述的至少一种非瞬态计算机存储介质,其特征在于,所述输出组件还适用于向所述用户返回多个人物标识符(720)。
9.如权利要求8所述的至少一种非瞬态计算机存储介质,其特征在于,所述输入组件还适用于从所述用户接收人物的所选择的标识符,所选择的标识符是多个人物标识符中的一个标识符;以及所述模型选择组件适用于选择由从所述用户接收的所选择的标识符标识的人物的模型。
10.如权利要求8所述的至少一种非瞬态计算机存储介质,其特征在于,每一人物与个体的人相对应,并且多个人物标识符中的每一个是相应个体的人的名字。
全文摘要
公开了将人物的模型应用于搜索结果。数据搜索和检索系统响应于搜索查询来将模型应用于搜索结果,以生成要向用户返回的信息。模型可以定义人物的特征,使得对模型的应用生成与人物一致的信息。人物可以是个体的人或具有共享特征的一组人群。可以向用户呈现可用人物模型的标识符列表。当用户选择要应用的特定人物的模型时,返回给用户的经生成的信息可以和与经选择的人物相关联的特征一致。
文档编号G06F17/30GK102222081SQ20111010011
公开日2011年10月19日 申请日期2011年4月12日 优先权日2010年4月13日
发明者J·A·佩纳, J·A·沃尔夫, S·诺格, V·米塔尔 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1