查询构件的基于地图的选择的制作方法

文档序号:6384557阅读:196来源:国知局
专利名称:查询构件的基于地图的选择的制作方法
查询构件的基于地图的选择背景技术
许多类型的查询被定向到特定的地理区域。虽然某些类型的查询没有可辨别的地 理成分(例如,对于“用来处理Web表单的Javascript代码”的搜索),但许多查询一当被恰 当理解时一被限制于特定的地理区域。例如,对于“餐馆”的查询常常要求“找出在特定位 置处的餐馆”。当查询被解译为寻找受地理限制的信息时,搜索引擎典型地假设位置是用户 的当前位置。因此,搜索引擎可以从可得到的信息(例如,从其发送查询的互联网协议(IP) 地址)估计用户的位置。用户常常具有选项来通过使用文本以进一步用地理(geography) 去限制查询而推翻暗指的位置一例如,“餐馆98052”或“餐馆雷蒙德华盛顿”可被解译为 寻找在美国华盛顿州雷蒙德市的餐馆(98052是华盛顿州雷蒙德市的邮政编码)。同样地,如 果从查询本身没有推断出地理限制,则用户可以通过使用相同类型的语法一例如,通过把 邮政编码或地点名称加到查询上来提供地理限制,该地理限制被使用来推翻暗指的限制。
虽然搜索引擎在为查询挑选结果时具有考虑地理约束的能力,但指定查询的地理 边界的能力通常受用来指定公认的、可命名的地点的能力限制。例如,某人可以寻找“餐馆 芝加哥”,或“人口北美”,或“旅行纽约市”。但对于许多用途来说,这些向查询中添加地理 的方式并不是指定所述查询涉及到的地理的适当方式。发明内容
用户可以通过与地图交互来给查询指定地理成分,以便指定相关的地理约束。例 如,用户可以使用输入设备在地图上画出围绕某个地区的圆、椭圆或其它边界,由此具体说 明所指定的地理边界是在向查询返回结果时要考虑的。
当用户输入文本查询时,处理该查询的搜索引擎可以确定所述查询是否可修正 (amendable)来加上地理约束。例如,诸如“餐馆”、“人口 ”或“旅行”那样的查询可被认为 是对地理限制可修正的。另一方面,诸如“用于表单处理的Javascript”那样的查询可不被 认为是对地理限制可修正的。如果查询是对地理限制可修正的,则系统可以呈现交互式地 图界面给用户,由此允许用户画出可被使用来限制查询结果的范围的地理边界。用户例如 可以画出围绕所述查询要被聚焦的地理区域的椭圆,且对被显示给用户的结果的选择可以 是基于所挑选的地理区域的。
结果的地理限制可以以任何适当的方式被实施。然而,在一个例子中,用文档所涉 及到的地理坐标(或多个坐标)来对文档进行索引(index)。例如,提到“纽约市”的文章可 以用坐标(40. 757685,-73. 985721)(大约时代广场的位置)进行索引。提到多个地理位置 的文章可以用一个以上的坐标进行索引。当用户指定查询所涉及到的地理区域时,搜索引 擎可以找到与在规定的区域内(或附近)的坐标相关联的结果。由于用户可以与地图进行交 互以做出更大或更小的边界区域,所以有可能把用户看作为放大或缩小特定的区域,由此 交互地通过地理来聚焦和散焦搜索结果。
本概要被提供来以简化的形式介绍概念的选择,这些概念还将在下面的详细说明 中进行描述。本概要既不打算确认所要求保护的主题的关键特征或必要特征,也不打算被使用来限制所要求保护的主题的范围。


图1是其中用户输入搜索查询并且还使用地图来指定对查询的地理约束的示例 性过程的流程图。
图2-5是用于示例性搜索引擎的用户界面的各种状态的框图,该示例性搜索引擎 使用基于地图的地理约束。
图6是其中文档可以用文档所涉及到的位置加标签的示例性过程的流程图。
图7是其中对于搜索的地理约束可以通过地图而输入的示例性系统的框图。
图8是可以结合这里所描述的主题的实现而被使用的示例性构件的框图。
具体实施方式
某些搜索引擎查找与地理无关的文档。例如,对于诸如“C-shell脚本”、“碳氢化 合物(hydrocarbons)”或“斯托克斯定理(Stokes’ Theorem)”那样的抽象主题的搜索通常 被理解为是在查找不带有地理约束的信息。然而,诸如“泰国餐馆”、“旅行”、“人口”和“爬 山”那样的许多查询常常查找本质上受地理限制的信息。
许多web搜索引擎既具有一般的web搜索模式又具有本地搜索模式。例如,由微 软公司提供的BING服务具有执行“web搜索”和“本地搜索”的选项。在web搜索模式下, 查询通常被解译为查找一般的web文档,而在本地搜索模式中,查询通常被解译为查找特 定的地点。例如,在web搜索模式下,查询“泰国餐馆”可以返回包含与泰国食物有关的概 念的文档(例如,关于泰国料理的维基百科文章或泰国餐馆的报纸评论),而在本地搜索模 式下相同的查询可以返回在具体地点的特定泰国餐馆的名称和/或网站。web搜索模式和 本地搜索模式可以具有某种程度的“交叉”。例如,即使在web搜索模式下,BING服务也可 以推断出查询“泰国餐馆”可以是在查找特定的泰国餐馆的名称,所以即使用户是在web 搜索模式下发出该查询,提供的结果之一也可能是本地结果的列表。而且,与查询相关联的 特定位置可以以各种方式被指定。在一个例子中,位置被隐含地取为用户的当前位置,但查 询也可以用城市名称(例如,“华盛顿州雷蒙德市泰国餐馆”)或用邮政编码(例如,“泰国餐 馆98052”,其中98052是华盛顿州雷蒙德市的邮政编码)来以文本方式指定。
虽然有可能包括地理位置作为对于查询的条件,但当前这样做的方式具有各种缺 点。首先,用文本指定位置的方法仅仅允许用户指定与简明的、公认的名称相关联的位置 (其中邮政编码“98052”实际上是一种类型的名称,因为它与单词“雷蒙德”同样精确地、清 楚地标识华盛顿州雷蒙德市)。因此,有可能指定某人想要“在休斯敦旅行”,或甚至“在德 克萨斯旅行”,而不是“在介于密西西比与科罗拉多河之间的区域旅行”。第二,地理限制通 常被理解为从一个点辐射出去。因此,对于“德克萨斯的餐馆”的搜索通常被理解为找出在 德克萨斯的某个任意选择的中心点附近的餐馆,使得当结果更远离该任意选择的点时它们 的重要性减少。然而,被指定区域的中心可能对于搜索并不拥有任何特别的重要性。也就 是说,某人可能想要这样的结果,即所述结果是根据它们与文本查询的相似性(或根据其 它文档排名方法)进行排名,但是是受特定的边界框或曲线约束,而并不偏爱靠近框或曲线 的中心的结果(尽管这里描述的主题不排除系统在对结果排名中将与边界框或曲线的中心的接近度用作为偏爱,除非这样的排除由权利要求明显地定义)。
这里的主题允许用户指定对于查询的地理约束。当用户输入文本查询时,搜索引 擎确定该查询是否是对于地理约束可修正的。如果查询被认为对于地理约束是可修正的, 则可以向用户显示交互式地图,且用户能够在地图上画边界一例如,通过使用指向设备来 “套索(lasso)”某个区域,或画出边界框或曲线(诸如圆、椭圆或多边形)。画出这样的边界 的性质是把世界划分成两个区域在边界里面的那些和在边界外面的那些(或在位置是点 的场合下,两个区域是点本身和除点之外的任何地方)。搜索结果然后被挑选为是与在边界 里面的区域相关联的。(在某些实现中,也可以挑选在边界外面但靠近边界的结果。)这些结 果可被显示给用户。用户可以在地图上交互地改变边界,由此允许用户改变结果的位置,或 放大或缩小某个位置,以便聚焦或散焦结果。
当文档被索引时,文档可被分析,以便标识文档与之相关联的位置或多个位置。这 种分析可以寻找文档中的地点单词(例如,“纽约市”、“大湖”、“德克萨斯”、“巴拿马运河”、 “百慕大三角”、“鸟巢体育场”、“98052”(邮政区码)、“北美”等等),并且可以把特定的坐标 (纬度和经度)与每个位置相关联。特定的地点(例如,鸟巢体育场)可以容易地与特定的纬 度/经度坐标(39. 992936,116. 396391)相关联。诸如“德克萨斯”那样的更大的区域可能 牵涉到挑选任意点来代表该区域。例如,(31. 968474,-99. 891815)大约是在德克萨斯的中 部,所以它可以代表这个州。(或者替换地,如德克萨斯那样的大区域可以用近似这个区域 的范围(area)代表一例如,一个点和半径,或用定义矩形或其它多边形的一组坐标代表。) 提到两个位置(例如,巴拿马运河和大湖)的文档可以用多个坐标的组(例如,{(9. 226827,-79. 886227), (45. 740214,-84. 764328)},分别代表加通湖(Gatun Lake)的中部和靠近麦基 诺水道(Straits of Mackinac)的点)进行索引。(或者替换地,可以用两个范围而不是两 个点代表)当在文档中检测到多个地理位置时,文档可以用两个位置来进行索引,或文章可 以用文章中的优势(dominant)位置进行索引,或文章可以用所提到的某些或全部位置进行 索引,同时还注明哪个是优势位置。当对于查询的地理约束被使用来选择搜索结果时,被挑 选的结果可以是与在指定的边界里面(或附近)的坐标相关联的那些文档,或其优势坐标是 在指定的边界里面(或附近)的那些文档。
应当指出,某些搜索系统提供地图,以通过在地图上显示用户的推断的或挑选的 位置、或通过允许用户在地图上指定该搜索要与之相关联的位置而帮助搜索。这样的系统 可以允许用户改变搜索与其相关联的地理点(或,可能是小的有限的点集)。然而,允许用户 指定要被用作为搜索的条件的有界区域一和/或通过地图指定这个区域一的系统不是允 许用户改变与搜索相关联的点(或,有限的点集)的系统的明显变例。支持有界区域的这样 的系统也不能从仅仅使用点(或,有限的点集)作为搜索约束的系统得出。另外,允许用户通 过在地图上画出边界而指定地理约束的系统不是允许用户指定点和距该点的特定半径的 系统的明显变例。而且,根据与地理位置相关联的文档而返回文档结果(例如,网页)的系统 不是返回对于特定企业或其它实体的“地点页”或目录项的系统的明显变例。
现在参考附图,图上显示其中用户输入搜索查询、并且还使用地图来指定对于查 询的地理约束的过程。图1显示全部过程的流程图,图2-5显示示例性用户界面,正如它们 在过程的各个阶段中会由用户看到的。在转到这些图的说明之前,应当指出,这里所包含的 流程图(在图1和图6上)显示了过程的各阶段以特定的次序被实行的例子,正如由连接各框的线所指示的,但在这些图上显示的各个阶段可以以任何次序或以任何组合或子组合被 执行。另外,应当指出,图2-5显示示例的用户体验,虽然这里描述的技术可以结合任何用 户体验被使用。具体地,图2-5显示其中世界地图被使用来扩充搜索体验的例子;然而,也 有可能使用这里的技术来在在线地图应用的上下文中增加搜索体验。
现在参照图1,在102,接收来自用户的搜索查询。图2显示示例性界面200,在这 个阶段,用户可以在这个界面上输入查询。如图所示,界面200可包含搜索框202,用户把 查询204输入到该框中。在所显示的例子中,被输入的查询204是文本查询“人口”。界面 200还可以包括搜索按钮206。搜索按钮可以由用户激活以执行搜索。例如,界面200可以 是由个人计算机上的浏览器、无线电话、导航框、或任何其它设备显示的搜索引擎网页的视 图。用户可以使用触摸屏和/或指向设备来激活搜索按钮206,由此指示要执行由查询204 指定的搜索。可以通过把查询206传送到搜索引擎的服务器而执行查询。
现在回到图1,在104,搜索引擎(或接收查询的另一个适当的实体)可以进行关于 查询是否可修正以便被地理限制的确定。如上所述,某些查询比起其它查询对于地理约束 是更可修正的一例如,“旅行”和“餐馆”是可能要求在特定地理区域中的信息的查询的类 型,但输入查询“C-shell脚本”的用户不太可能寻找与任何特定的地理位置相关联的信息。 有各种方式来确定查询是否是对于地理约束可修正的。一种这样的方式是把所述确定作为 分类问题来对待,在这种情形下,分类器106可被使用来进行该确定。分类器106的使用在 下面更详细地讨论。
如果确定(在108)该查询对于地理约束是不可修正的,则搜索引擎可以继续进行 去提供查询结果(在110),并且可以这样做而不用从用户请求地理约束。然而,如果确定(在 108)该查询对于地理约束是可修正的,则系统可以从用户请求地理约束。
从用户请求地理约束的一个方式是在112显示交互式地图。在其上显示这样的交 互式性地图的界面200的示例性状态被显示于图3。
在图3上,所显示的界面200的状态是在对查询“人口”执行搜索以后。在一个例 子中,搜索引擎在查询正在输入时实时地评估该查询。在另一个例子中,搜索引擎仅仅在 搜索按钮206被按压后才评估该查询。在任一种情形下,图3显示其中查询“人口”已被评 估、而未考虑任何地理约束的状态。因此,所显示的结果302是并未基于任何地理约束的结 果。然而,正在处理该查询的搜索引擎检测到该查询对于地理约束是可修正的。因此,搜 索引擎在查询中包括地图304。地图304可以是交互式地图,其允许用户画出围绕地图的 特定部分的边界。可以使用各种技术来画出边界一例如,指明框或其它多边形的顶点,画出 围绕某个区域的形状不规则的曲线,使用“套索”控件(lasso control)来画出围绕某个区 域的椭圆(例如,通过指明一个角并拖拽到相对角,由此明白地指示两个椭圆轴的长度和位 置,如果假设这两个轴是与垂直和水平对准的话)等等。在所显示的例子中,用户画出大约 围绕美国的套索306。这个套索的画出构成了给搜索引擎的用户的地理约束的输入。当这 个输入被搜索引擎接收时,搜索引擎可以把搜索结果限于与由套索所代表的边界308里面 的位置相关联的那些文档(或其它条信息)。应当指出,用户画出的边界定义了可被描述为 地图的“非点”区域的东西一即,在地图上作为范围而不是作为单个点存在的区域。(应当指 出,由边界定义的约束可能不是严格的。如果边界不严格,则搜索引擎可包括与边界内的位 置不关联的结果。)现在回到图1,在114,接收用户的地理约束的指示。如上所述,指定约束的一个示例性 方式是通过套索306,虽然约束也可以按以上描述的其它方式之一或以任何适当的方式被 接收。在116,搜索引擎可以找出与地理约束相匹配的结果。找出这样的结果的一个方式是 找出与在用户指示的边界里面的纬度和经度坐标相关联的结果(在118)(这可以例如通过 比较文档通过其被索引的纬度及经度坐标与由用户指定的地理约束而完成)。然而,所述结 果可以以任何适当的方式找出。
应当指出,这里的描述涉及到地理“约束”,但这样的约束不应当被理解为严格的 限制,除非另外地表明。因此,用户可以指定围绕纽约市时代广场的十英里半径的圆作为地 理约束。然而,因为各种原因,搜索引擎可以决定提供在这个圆外面的结果。在某些情形 下,搜索引擎可以把在边界外面的结果限制于非常接近于该边界(例如,在几英里内)的那 些结果。然而,在另一个例子中,搜索引擎可以完全不顾约束,且可以提供来自边界外面任 意远的结果。虽然提供这样的结果可能违反约束的精神,但提供这样的结果的系统并未超 出这里的主题的范围。当约束被指定时,搜索引擎对于约束的反应可以占据(run)从完全 服从约束到完全漠视约束的连续区间,而所有这样的反应都在这里的主题内。如果在这里 或者在权利要求中,约束被描述为“严格的”,则该约束被理解为除了位于约束边界里面的 那些结果以外,排除所有结果。否则,如果约束不是用单词“严格”描述的,则不施加这样的 排除。而且,应当理解,即使结果超出被使用来定义约束的边界,系统也可以认为该结果“满 足”约束一例如,如果结果是在边界里面或在边界的一定数量的英里以内的话,系统可以承 认所述结果“满足”约束。
在120,可以显示受地理约束的查询的结果。应当指出,显示结果包括使得该结果 被显示的动作。例如,在用户设备上“显示”结果的服务器可以通过将数据传送到用户的设 备、由此使得结果在该设备上被显示而做到这一点。这样的服务器被认为是在依靠调动那 些使得信息在设备上显示的事件而执行“显示”动作。
在其上显示结果的界面200的状态的例子被显示于图4。
图4代表在用户画出围绕美国的边界后,和在搜索引擎处理该边界的指示后,界 面200的状态。正如可以看到的,界面200显示与图3所示的不同的搜索结果组402。结 果402在地理上集中在美国。例如,一个结果是声称列出“美国的人口”的文档。另一个结 果是标题为“美国的人口统计状况”的文档。另一个文档是“美国州的人口列表”。正如可 以看到的,不像在图3上显示的结果302,在图4上显示的结果402具体地涉及到美国的人 口,而不是一般地人口的概念。附加地,正如在图4上可以看到的,地图304的缩放水平被 更新为更接近地对准用户的对美国的环绕(encircling)。
在这时,用户可以提供附加的地理输入。例如,用户可以画出围绕纽约州的附加套 索404,由此把搜索进一步约束到比整个美国更窄的水平。现在回到图1,正如通过从120 环回到108的虚线可以看到的,通过地理来约束查询和根据新的约束来提供新结果的过程 可以被重复地执行。在一个例子中,用户能够放大和缩小地理区域,由此聚焦(变窄)和散焦 (放宽)结果。例如,用户可以从美国去到美国东部,去到具体的东部的纽约州,然后回到美 国。或者,用户可以移动地理边界到世界的不同部分。通常,改变地理约束和重新评估查询 的过程可以执行任意的次数。图5显示其中地理约束变窄到纽约州(如由图4的套索404 指示的)的界面200的示例性状态。正如可以看到的,结果502被更新为集中在关于纽约州的人口信息(而不是一般性地如图3上的人口信息,或如在图4上的关于美国的人口信息)。 附加地,地图304的缩放水平被更新为反映用户对纽约州的选择。
现在回到图1,如上所述,确定查询是否是对于地理约束可修正的动作(在104)可 以以任何的方式被执行,但执行这个动作的一个示例性方式是使用分类器106。在一个例 子中,这样的分类器根据查询日志(log) 122被训练以便能够区分对于地理约束是可修正 的查询与那些不可修正的查询。查询日志122包含关于过去的查询的信息,包括那些查 询的文本,和是否发现查询文本的特定实例本质上是地理性的。确定查询文本是否在本质 上是地理性的一个方式是确定用户是否输入明显的地理约束——诸如邮政编码或城市名 称——作为查询的一部分。确定查询文本是否在本质上是地理性的另一个方式是确定什么 结果(如果有的话)被用户点击。例如,搜索引擎在它提供结果时可能不确知查询是否为地 理性的。例如,查询“烹饪利马”可能是搜索利马豆食谱,或是在秘鲁首都的烹饪班。前者 不受地理限制;后者受地理限制。在这个例子中,搜索引擎可以提供关于利马豆(在本质上 是非地理性的)的一组结果和关于在秘鲁的烹饪(在本质上是地理性的)的另一组结果。因 此,搜索引擎可以提供两种类型的结果,并确定用户点击哪个结果。查询文本组和关于查询 是地理性的还是非地理性的确定实际上提供了分类器可根据其通过使用已知的机器学习 技术(例如,线性回归)来被训练的一组例子。
如上所述,文档可以根据它们与之相关联的地理位置来被进行索引。图6显示识 别文档与之相关联的位置(们)的示例性过程。
在602,文档被分析,以便识别与该文档相关联的地理。例如,文档可被分析,以便 识别地理的指示,诸如与位置相关联的单词和词组一例如,“纽约”、“欧洲”、“塞弗科体育场 (Safeco Field)”、“上中西部(upper Midwest)”等等。过程然后循环通过文档中的各种地 理指示,以便用这些位置给文档加标签。
在604,循环通过地理指示的过程从第一个这样的指示开始。位置可被看作为指引 特定地点(例如,“塞弗科体育场”)的“精确(Pinpoint)”位置,或是指引更宽广范围的非精 确位置。如果所考虑的当前指示指引精确的位置(如在606确定的),则可以标识出该位置 的纬度和经度(在608)。如果当前的指示不是精确位置(如在606确定的),则过程可以选择 任意的纬度和经度(在610 )来代表该位置(例如,在麦基诺水道的中部的点、或特定半径的 圆、或多边形,来代表大湖地区)。替换地,系统可以挑选多个纬度和经度来代表不能用专指 性(specif icity )来标识的位置一例如,“贝尔维尤(Bellevue ) ”可能指的是有该名称的几 个不同的城市,所以,过程可以用所有已知的贝尔维尤的位置来对文档加标签,以及允许搜 索引擎使用它的排名算法来确定该文档涉及对于该搜索的地理约束的或然率。
不管纬度与经度是在精确的位置中固有的,还是任意为非精确位置挑选的,所分 析的文档可以用纬度与经度来加标签(在612)。然后,确定在文档中是否有任何附加的位 置指示(在614)。如果有的话,则文档中的下一个指示变为正被过程考虑的当前指示(在 616),然后过程返回到606,以评估该指示。
当在文档中不再有指示要考虑时,过程可以继续进行到618,以在位置中间对优势 (dominance)排名。如果在文档中只有一个位置指示,则没有针对优势来对指示排名的基 础。而且,在某些实现中,文档可以用在该文档中提到的所有位置来加标签,而不进行针对 优势来对位置排名的尝试。然而,在某些实现中,当文档提到多个位置时,可以进行尝试以确定哪个位置在文档中具有最高级别的突出性(prominence )。例如,文档可以主要是关于 纽约城的,而同时也提到其它地点。文本分析技术可被使用来确定在文档中具有最高突出 性的位置是纽约城的事实。(这些文本分析技术可以使用位置信息一例如,当确定纽约城在 文档中是否为优势位置时,在文档标题中的“纽约城”可被给予比在文档主体中的“纽约城” 更高的权重。)由于这个确定,除了纽约城以外的所有标签可以从用于该文档的索引项中去 除,或者在文档中具有最高突出性的位置可以在索引中被指明。这样,当决定被索引的文档 中的哪些文档要作为结果返回时,处理受地理约束的搜索的搜索引擎可以考虑位置的突出 性。例如,当搜索引擎正在处理受地理约束的搜索时,只有当在文档的文本中占优势的地点 的纬度/经度满足地理约束时,搜索引擎才可以把该文档看作为满足地理约束。
图7显示在其中可以实施这里的主题的诸多方面的示例性系统。在图7的例子中, 客户机702被使用来发布查询704到搜索引擎706。客户机702可以是浏览器、移动搜索 应用或任何其它类型的客户机。查询可以通过通信网708被传送。搜索引擎706可以使用 索引710,该索引710对文档的语料库(corpus)进行索引。在表层网(surface web)中的 已知文档组是可被索引的文档语料库的例子,虽然任何文档的语料库都可以被索引。搜索 引擎可以使用分类器106来确定查询704对于地理约束是可修正的还是不可修正的。如果 搜索引擎706确定查询704对于地理约束是可修正的,则搜索引擎706可以提供地图界面 712给客户机702,以使得客户机702的用户可以指定地理约束。如果这样的地图界面712 被呈现给用户,以及如果用户通过地图界面指示地理约束,则可以把用户对该地理约束716 的选择714提供给搜索引擎706。搜索引擎706然后可以使用地理约束,以便在索引710中 选择要作为结果被提供的特定文档。如上所述,在索引710中的文档可以用文档与之相关 联的位置的纬度和经度来加标签,由此允许搜索引擎706确定文档是否满足地理约束716。
图8显示在其中可以部署这里描述的主题的诸多方面的示例性环境。
计算机800包括一个或多个处理器802和一个或多个数据记忆构件804。处理器 802典型地是微处理器,诸如在个人台式计算机或膝上型计算机、服务器、手持式计算机、或 另外种类的计算设备中发现的那些处理器。数据记忆构件804是能够短期或长期存储数据 的构件。数据记忆构件804的例子包括硬盘、可拆卸盘(包括光盘和磁盘)、易失性和非易失 性随机存取存储器(RAM)、只读存储器(ROM)、快闪存储器、磁带等等。数据记忆构件是计算 机可读存储介质的例子。计算机800可包括显示器812,或与显示器812相关联,显示器812 可以是阴极射线管(CRT)监视器、液晶显示(LCD)监视器、或任何其它类型的监视器。
软件可被存储在数据记忆构件804中,并可以在一个或多个处理器802上执行。这 样的软件的例子是基于地图的地理搜索软件806,它可以实施以上结合图1-7描述的某些 或所有的功能性,虽然可以使用任何类型的软件。软件806例如可以通过一个或多个构件 被实施,这些构件可以是在分布式系统中的构件、分开的文件、分开的功能、分开的对象、分 开的代码行等等。在其中程序被存储在硬盘上、被装载到RAM中、以及在计算机的处理器上 被执行的计算机(例如,个人计算机、服务器计算机、手持式计算机等等)代表在图8所描绘 的情景,虽然这里描述的主题不限于这个例子。
这里描述的主题可以被实施为存储在数据记忆构件804的一个或多个中并在处 理器802的一个或多个上执行的软件。作为另一个例子,所述主题可以被实施为存储在一 个或多个计算机可读介质上的指令。这样的指令在被计算机或其它机器执行时可以使得计算机或其它机器执行方法的一个或多个动作。用来执行动作的指令可被存储在一个介质 中,或者可被跨多个介质地散布,这样使得指令可以共同地出现在一个或多个计算机可读 介质上,而不管所有的指令是否碰巧是在同一个介质上。术语“计算机可读介质”不包括信 号本身;它也不包括只作为传播信号存在的信息。应理解,如果这里的权利要求指的是只是 以传播信号的形式而不是以任何类型的持久存储装置运送信息的介质,则这样的权利要求 将使用术语“瞬时的”或“短暂的”(例如,“瞬时的计算机可读介质”或“短暂的计算机可读 介质”)。除非权利要求明显地将介质描述为“瞬时的”或“短暂的”,否则这样的权利要求 不应当被理解为描述只作为传播信号或只作为信号本身存在的信息。另外,应当指出,“硬 件介质”或“有形介质”包括以物理的有形的形式存在的诸如RAM、ROM、快闪存储器和盘那 样的器件;这样的“硬件介质”或“有形介质”本身不是信号。而且,“存储介质”是用来存储 信息的介质。术语“存储”被使用来表示数据的持久保持。为了这里的主题的目的,仅仅以 传播信号的形式存在的信息不被认为是“持久地”保持的。因此,“存储介质”包括盘、RAM、 ROM等等,但不包括仅仅以传播信号的形式存在的信息,因为这样的信息没有被“存储”。
另外,这里描述的任何动作(不管在图上是否被显示)可以作为方法的一部分由处 理器(例如,处理器802中的一个或多个)来执行。因此,如果在这里描述动作A、B和C,则 可以执行包括动作A、B和C的方法。而且,如果在这里描述动作A、B和C,则可以执行包括 使用处理器来执行动作A、B和C的方法。
在一个示例性环境中,计算机800可以通过网络808通信地连接到一个或多个其 它设备。在结构上可以类似于计算机800的计算机810是可被连接到计算机800的设备的 例子,虽然其它类型的设备也可以被这样地连接。
应当指出,这里的主题可以将项目称作是“不同的”。说两个项目不同,是说它们彼 此不相同。例如,如果说用户在地图上指示两个“不同的”边界,则所述不同的边界彼此不 相同。
虽然本主题是以特定于结构特征和/或方法动作的语言被描述的,但应当理解在 所附权利要求中限定的主题不是必然局限于上述的特定特征或动作。而是,上述的特定特 征和动作是作为实施权利要求的示例性形式而公开的。
权利要求
1.一种处理查询的方法,该方法包括接收(102)来自用户的所述查询(704);确定(104)所述查询(704)对于地理约束是可修正的;根据所述确定(104),使得地图界面(712)被显示(112)给所述用户;接收(114)所述用户对于第一地理约束(716)的指示,所述第一地理约束(716)是通过所述用户在所述地图界面(712)上标识出非点区域的第一边界(308)而被指明的;找出(116)第一结果,以使得所述第一结果中的每一个是与满足所述第一地理约束 (716)的位置相关联的;以及使得所述第一结果被显示(120)给所述用户。
2.权利要求1的方法,所述查询对于地理约束可修正的所述确定是通过包括以下项的动作而被执行的使用根据查询日志而被训练的分类器,来区分对于地理约束是可修正的查询与对于地理约束不可修正的查询。
3.权利要求1的方法,所述第一边界是通过所述用户使用套索控件而被指明的。
4.权利要求1的方法,还包括在使得所述第一结果被显示给所述用户后,从所述用户接收第二地理约束的指示,所述第二地理约束是通过所述用户在所述地图界面上指示在所述地图界面上的非点区域的第二边界而被指明的,所述第二边界不同于所述第一边界;找出满足所述查询和所述第二地理约束的第二结果;以及使得所述第二结果被显示给所述用户。
5.权利要求1的方法,所述第一结果是通过把所述查询和所述第一地理约束与索引进行比较而被找出的,在所述索引中有某些文档是与多个地理位置相关联的,该方法还包括通过以下方式来确定与多个地理位置相关联的所述文档是否满足所述地理约束,即 确定对于给定文档的多个地理位置中的哪个地理位置是对于该文档的优势位置,并且仅仅当对于具有多个地理位置的文档的优势位置满足地理约束时,才发现该文档满足所述地理约束。
6.一种计算机可读介质,其具有用来执行权利要求1-5的任一项的方法的计算机可执行指令。
7.一种用于处理查询的系统,该系统包括存储器(804);处理器(802);以及搜索引擎构件(706 ),其被存储在所述存储器(804 )中,在所述处理器(802 )上执行,接收来自用户的所述查询(704),确定所述查询(704)对于地理约束是可修正的,根据所述搜索引擎构件(706)确定所述查询(704)对于地理约束是可修正的而使得地图界面(712)被显示给所述用户,接收所述用户对于第一地理约束(716)的指示,所述第一地理约束是通过所述用户在所述地图界面(712)上标识出非点区域的第一边界(308)而被指明的,找出第一结果以使得所述第一结果的每一个满足所述查询(704)并且与满足所述地理约束(716) 的位置相关联,以及使得所述第一结果被显示给所述用户。
8.权利要求7的系统,还包括分类器,其根据查询日志被训练,以便区分对于地理约束是可修正的查询与对于地理约束不可修正的查询,所述搜索引擎构件对所述查询对于地理约束是可修正的确定是通过使用所述分类器来执行的。
9.权利要求7的系统,所述搜索引擎构件通过把所述查询和所述第一地理约束与索引进行比较而找出所述第一结果,在所述索引中有某些文档是与多个地理位置相关联的, 所述搜索引擎构件通过以下方式来确定与多个地理位置相关联的所述文档是否满足所述地理约束,即确定对于给定文档的多个地理位置中的哪个地理位置是对于该文档的优势位置,并且仅仅在对于具有多个地理位置的文档的优势位置满足地理约束时,才发现该文档满足所述地理约束。
10.权利要求7的系统,所述搜索引擎构件通过把所述查询和所述第一地理约束与索引进行比较而找出所述第一结果,在所述索引中的文档是与纬度和经度坐标相关联的,所述搜索引擎构件通过确定在所述索引中所述文档的哪些文档是与满足所述地理约束的纬度和经度坐标相关联而找出所述第一结果。
全文摘要
搜索引擎可以允许用户通过使用地图而交互地添加和修改地理约束。在一个例子中,用户输入搜索查询,且搜索引擎确定所述查询是否对于地理约束是可修正的。如果所述查询对于地理约束是可修正的,则搜索引擎可以提供交互式地图,用户可以通过它指定地理边界。搜索引擎然后可以使用地理边界作为对于搜索的约束,并可以返回与由边界指示的地理区域相关的文档。用户可以放大或缩小由边界定义的区域或可以移动边界,由此根据地理而交互地聚焦、散焦和修改搜索。
文档编号G06F17/30GK103064904SQ20121055068
公开日2013年4月24日 申请日期2012年12月18日 优先权日2011年12月18日
发明者S.H.纳加拉卢, P.阿格拉瓦尔, V.克里什南 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1