CN101410833B - 用于位置搜索查询的地理编码 - Google Patents
用于位置搜索查询的地理编码 Download PDFInfo
- Publication number
- CN101410833B CN101410833B CN2007800106150A CN200780010615A CN101410833B CN 101410833 B CN101410833 B CN 101410833B CN 2007800106150 A CN2007800106150 A CN 2007800106150A CN 200780010615 A CN200780010615 A CN 200780010615A CN 101410833 B CN101410833 B CN 101410833B
- Authority
- CN
- China
- Prior art keywords
- document
- geographic
- geographic entity
- documents
- inquiry
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Instructional Devices (AREA)
Abstract
一种用于执行位置搜索的方法,包括接收位置搜索查询、确定与位置搜索查询相对应的关键词、识别与在位置搜索查询中的关键词相对应的一个或多个文档、以及向客户端系统提供识别与一个或多个文档相对应的至少一个位置的信息。
Description
相关申请
本申请要求于2006年1月27日提交的、“Geographic Coding forLocation Search Queries(用于位置搜索查询的地理编码)”的美国临时专利申请60/763,168的优先权,所述临时专利申请以引用的方式并入本文。
技术领域
搜索引擎提供强大的工具来定位在大型文档数据库中的文档(诸如因特网或万维网(WWW)上的文档、和/或存储在内联网的计算机上的文档)中的内容。响应于搜索查询使用文档的索引来定位文档,所述搜索查询由用户提交的一个或多个词、词语、关键词和/或短语(此后称为词语)组成。可以将在文档的索引中的文档与搜索查询中的一个或多个词语相匹配以确定分值。基于分值,将相关文档或文档位置的排名的列表提供给用户。
搜索查询可能具有各种目的和格式。一种种类的格式与位置搜索相对应。传统的位置搜索通常使用诸如模板的固定的格式。现有的模板通常是固定的或可能仅允许有限数量的变化。例如,在现有的位置搜索查询中的词或词语可能具有预定的次序(街道名称、州、邮政编码)和/或预定的拼写。因此,(在传统的位置搜索中)提供包括拼写错误的宽泛的拼写、用于位置的可选的名称以及诸如在不同的国家创建的可选的地址格式是困难的或不可能的。
响应于位置搜索查询,许多现有的搜索引擎通常返回单个结果。结合对位置搜索查询的格式灵活性的缺乏,这使得适应在位置搜索查询和/或返回用户的结果中的不确定性或含混性是困难的。
在现有的位置搜索查询中的灵活性的缺乏也通常损害搜索引擎性能,因为通常以单一数据结构来处理现有的位置搜索查询。无法调整数据结构并且将该数据结构分发到整个搜索引擎可以导致对位置搜索查询的处理较慢。克服这样的瓶颈可能导致额外的搜索引擎复杂度及费用。
因此需要用于处理位置搜索查询的改进的格式和技术。另外,也需要改进向用户报告位置搜索查询的结果。
发明内容
通过所公开的过程和搜索引擎的实施例减少或消除了上述不足以及与位置搜索查询相关联的其它问题。
在一些实施例中,用于执行位置搜索的方法包括:接收位置搜索查询;确定与位置搜索查询相对应的关键词;识别与位置搜索查询中的关键词相对应的一个或多个文档;以及向客户端系统提供识别与一个或多个文档相对应的至少一个位置的信息。
确定关键词可以包括从位置搜索查询中移除标点符号和非位置词语。关键词可以包括位置搜索查询中的一个或多个词语的一个或多个同义词。关键词可以包括与一个或多个词语相对应的预定的缩略词。
识别一个或多个文档可以包括确定与关键词相对应的典范式(canonical expression)。识别一个或多个文档可以包括确定一个或多个文档中的每一个的分值。各个分值可以依据关键词在多个文档中的词频、在各个文档中的一个或多个词与一个或多个关键词之间的匹配以及与关键词相对应的地理特征的大小。识别一个或多个文档可以独立于关键词的次序。
一个或多个文档可以被存储在包括与地理特征相对应的多个文档的索引中。多个文档可以包括与地理特征相对应的参考坐标。
提供识别与一个或多个文档相对应的至少一个位置的信息可以包括:如果在一个或多个文档的前N个排名中,相应的文档的最佳分值大于下一个文档的次(next)最佳分值的预定倍数,则提供识别一个位置的信息。提供操作可以包括识别出与一个或多个文档相对应的前N个最高排名的位置,其中最高排名的文档具有在预定范围内的分值。在一些实施例中,在前N个排名中的每一个位置包括位置标识符。在一些实施例中,在前N个排名中的每一个位置包括指向地图图像的相应的链接。
提供操作可以包括提供与至少一个位置相对应的地图图像。地图图像可以以至少一个位置为中心,并且可以包括小于在至少一个位置周围的预定大小的区域。在一些实施例中,至少一个位置可以包括其相应的文档具有所有共同的关键词的两个或多个不同的位置。地图图像可以包括与两个或多个位置相对应的标记。
在另一个实施例中,存储在存储器中的数据结构可以被用于执行位置搜索查询。数据结构可以包括与地理特征相对应的多个文档或记录(在下文中称为文档)。在多个文档中的各个文档可以包括位置信息和补充信息。位置信息可以包括与一个或多个位置相对应的关键词或标志(token)、与一个或多个位置相关联的一个或多个区域以及关键词的同义词。补充信息可以包括与一个或多个位置相对应的参考坐标。
参考坐标可以包括一个或多个位置的纬度和经度。参考坐标可以包括围绕一个或多个位置的区域。区域可以小于预定的大小。
数据结构可以与超文本标记语言(HTML)相兼容。
在各个文档中的位置信息可以对位置搜索查询中的词语的次序不敏感。
在另一个实施例中,图形用户界面包括响应于位置搜索查询而提供的区域的地图图像。地图图像包括与区域中的具有与位置搜索查询相关联的所有共同的词语的两个或多个不同的位置相对应的两个或多个标记。
在另一个实施例中,图形用户界面包括响应于位置搜索查询而提供的区域的地图图像。地图图像以位置为中心。地图图像是独立于与位置搜索查询相关联的词语的次序来提供的。
上述的方法、数据结构和图形用户界面可以被包括在具有一个或多个中央处理单元的搜索引擎系统、在一个或多个计算机中的存储器、以及存储在存储器中并且由一个或多个中央处理器执行的一个或多个程序中和/或由它们执行。
附图说明
为了更好地理解本发明的上述实施例以及其另外的实施例,应当结合附图来参考下面的实施例的描述,其中在所有附图中相同的参考数字指代对应的部分。
图1是示出了位置搜索过程的实施例的流程图。
图2是示出了处理位置搜索查询的实施例的框图。
图3是示出了将地理特征文档分布到多个索引上的实施例的框图。
图4是示出了地理特征文档的实施例的框图。
图5A是示出了地图图像的实施例的框图。
图5B是示出了地图图像的实施例的框图。
图6是示出了响应于位置搜索查询而返回的结果的实施例的框图。
图7是示出了搜索引擎系统的实施例的框图。
图8是示出了搜索引擎的实施例的框图。
图9是示出了客户端系统的实施例的框图。
图10是示出了地理特征文档数据结构的实施例的框图。
图11描述了关于当前显示窗口的一组地理区域。
图12和图13示出了如何以标准化的(normalized)角距离来测量在地球的表面上的距离和区域,并且也示出了如何将在视口(viewport)边缘(skirt)区域中的地理特征的位置转换为比值。
图14描述了用于根据视口区域的半径确定边缘区域的半径的函数的图。
图15描述了用于根据相对于当前视口区域和边缘区域的地理特征的位置来分配分值衰减因子的函数的图。
具体实施方式
现将详细参考实施例,在附图中示出了实施例的示例。在下面的详细描述中,阐述了大量的特定细节,以提供对本发明的全面理解。然而,对于本领域普通技术人员明显地,没有这些特定的细节也可以实现本发明。在其它的实例中,没有详细描述众所周知的方法、过程、组件以及电路,以免不必要地模糊本发明的各个方面。
描述了用于执行位置搜索查询并且向用户提供相应的结果的系统和方法的实施例。该处理有时被称为地理编码(geocoding)。可以使用耦接到诸如因特网(也被称为万维网或WWW)和/或一个或多个内联网的网络的搜索引擎来从用户接收诸如城市中的街道地址的位置搜索查询。对位置搜索查询进行处理以确定典范式或布尔表达式。处理可以包括确定在各个位置搜索查询中的一个或多个关键词、从各个位置搜索查询移除标点符号和非位置词语(诸如物品)、以及确定在各个位置搜索查询中的一个或多个词语的一个或多个同义词。同义词可以包括用于在各个位置搜索查询中的一个或多个词语的预定的缩略词和/或在各个位置搜索查询中的一个或多个词语的预定的错拼词。典范式可以独立于关键词的次序,即对关键词的次序不敏感。
可以将典范式与搜索引擎中的地理特征文档的索引进行比较。每个地理特征文档具有与地理特征相对应的一组标志,其可以是位置(例如街道、城市、乡村、州,国家)或地理实体(例如湖泊、河流、山脉、陆地、海洋等等)。虽然单个地理特征可以与诸如一组街道地址的一组位置相对应,但是在识别与位置搜索查询最匹配的位置或地理特征的环境中,可以将与地理特征相关联的所有位置视作“一个位置”。在本文档的至少某些部分中,同义地使用词语“地理特征”和“位置”。
可以将地理特征文档的索引分布在搜索引擎中的多个计算机上。索引可以包括位置信息和补充信息。位置信息可以包括关键词、关键词的同义词以及多个位置的邻近物体。补充信息可以包括位置的参考坐标,诸如纬度和经度和/或范围或街道号码。
可以通过计算机返回与各个典范式紧密匹配的地理特征文档的子集的分值。可以确定前N个地理特征文档的排名。如果最佳分值大于次最佳分值的预定倍数,则可以将与最佳分值相对应的位置随同相应位置的地图图像一起提供给用户。地图图像可以以相应的位置为中心并且可以调整大小以包括环绕相应位置的预定的边界框、区域或窗口。可选地,如果最佳分值小于预定倍数,则可以将与分值的范围相对应的几个位置提供给用户。可以提供诸如位置标识符(城市、州、邮政编码和/或国家)和/或指向相应的地图图像的链接的附加信息。
因此,实施例可以适应(accommodate)广泛的多种格式、允许在位置搜索查询中和/或在结果中的含混性(ambiguity)、以及可以使用并行处理以提供位置搜索查询(有时称为位置搜索)的高速处理。因此,实施例可以提供位置搜索查询的改进的处理。
现在将注意力转向位置搜索过程。图1是示出了位置搜索过程100的实施例的流程图。虽然在下面描述的位置搜索过程100包括看起来按照特定的次序出现的许多操作,但是明显地,过程100可以包括可以(例如使用并行处理器或多线程环境)串行或并行执行的更多或更少的操作,可以改变两个或更多个操作的次序和/或可以将两个或更多个操作组合为单个操作。
可以接收位置搜索查询(110)。可以确定关键词(112)。可以将位置搜索查询转换为典范式形式(114)。这可以包括从位置搜索查询中移除一个或多个非位置或噪声词或词语、标点符号、变音符(即添加到字母上以指示特殊发音的符号)和/或街道号码。可以生成布尔表达式(116)。布尔表达式可以包含位置搜索查询中的一个或多个词或词语的同义词。将搜索查询转换为典范式形式也可以包括扩展一个或多个缩略词,诸如将“st.”或“st”扩展为“street”。在一些实施例中,通过用包括相应正确拼写的词的用于错拼词的“同义词”来补充查询,可以“校正”在位置搜索查询中的错拼词或词语(例如查询处理过程确定很可能是错拼的词语)。确定关键词(112)可以使结果查询独立于关键词的次序。可以从地理特征文档数据库识别N(例如10)个最佳匹配的地理特征文档(118)。可以提供与所识别的文档相对应的至少一个地理特征或位置(120)。可选地,在一些情形中向发出请求的用户提供零个文档。例如在一些实施例中,如果所有N个最佳匹配的地理特征文档具有小于第一阈值的分值(在下面描述分值),则没有地理特征或位置被识别。在另一个示例中,过滤N个最佳匹配的地理特征文档的列表,以移除(A)分值小于第一阈值的文档,以及(B)SAF(在下面描述)小于第二阈值并且分值小于第三阈值(例如第三阈值通常将高于(即更多限制的)第二阈值)的文档。后面的“过滤”将超过第一阈值但是远在当前视口(如在下面所定义的)之外的低质量匹配移除,从而允许将在当前视口内或更接近当前视口的另一个地理特征或位置识别为最佳匹配。
识别N个最佳匹配文档118需要多个计算操作。首先,识别满足搜索查询的地理特征文档118A。例如,这可以通过以下完成:检索具有与查询词语的每一个匹配的标志的文档的列表并且然后对所检索的列表执行布尔与(AND)运算以产生具有与所有查询词语匹配的标志的文档(如果有)的列表。在该环境中,每个标志是与地理特征相关联的词、符号或词和/或符号的组合。为了弥补人为错误,文档的标志可以包括描述与文档相关联的地理特征的各种词语的各种错拼,并且可以包括邻近的或附近的地理特征的名称(以及其错拼)(例如万一用户的搜索查询不正确地指定了邻近的城市或类似物但却精确地列出了与地理特征相关联的词语)。在另一个示例中,在识别满足搜索查询的文档之前,首先通过移除任何非位置的词语和任何标点来“重写”搜索查询。可选地,在搜索查询中的各个单个词语可以被包括该词语和一个或多个同义词的布尔或(OR)表达式替换。在一些实施例中,对于已经为其预定义了一组同义词的查询中的每一个词语,将同义词添加到搜索查询。被添加到搜索查询作为布尔或(OR)表达式的一部分的“同义词”也可以包括复合词语的单个组分的“类属同义词”。例如,街道名称“N Rengstorff”的第一组分的类属同义词是“directional_keyword(方向关键词)”,其与包括N、S、E、W、North(北)、South(南)、East(东)以及West(西)的任何方向关键词相匹配。类属同义词的另一个示例是“affix_keyword(词缀关键词)”,其与诸如ave.、avenue(大街)、blvd.、boulevard(大道)、1n、lane(巷)、rd、road(路)、st、street(街道)、rue(街)等等的词(或标志)相匹配。类似的类属同义词也作为标志被包括在文档数据库中,在与相应的“正确的”关键词相同的地址组分位置。在重写的搜索查询中的类属同义词和文档之间的匹配比在搜索查询中的非同义词的关键词和文档中的非同义词的标志之间的匹配产生低得多的分值。可选地,可以根据预定义的规则对搜索查询进行其它的修改,以便提高搜索结果的质量。
然后,为所识别的匹配的文档计算分值118B。在下面较详细地讨论了用于为每个匹配的文档生成分值的示范性过程。通常,与搜索查询有高质量匹配的文档比与搜索查询有更低质量匹配的文档被赋值更高的分值。诸如与匹配的文档相对应的地理特征的位置、相对于在其中显示了地图或图像的当前视口、以及这些地理特征的相对重要性的其它因子也可以是在计算分值中的因子。然后基于所计算的分值将匹配的文档进行排名118C,并且识别N个最高排名的文档118D。在一些实施例中,将文档的排名和选择N个最高排名的文档组合成单个操作(例如通过在分值上运行前N个过滤)。在一些实施例中,不对具有比前N个文档低的排名的文档进行排名。
图2是示出了处理位置搜索查询的实施例200的框图。将诸如“155Abe Ave.Great Neck NY”的位置搜索查询210用作说明性示例。在操作114期间可以将街道号码155和句点移除导致Abe Ave Great NeckNY。在操作116中,可以将位置搜索查询转换为布尔表达式,包括扩展缩略词(诸如Ave)和同义词。由此产生的布尔表达式是Abe AND(Ave OR Avenue OR Street OR Lane OR Court OR...)AND(Great Neck)AND(NY OR(NEW YORK))。该布尔表达式独立于在位置搜索查询210中的原始词或词语次序,即对在位置搜索查询210中的原始词或词语次序不敏感。这样,其可以适应关于位置搜索查询210的广泛的各种格式。这样的布尔表达式具有可以在使用分布式地理特征文档数据库的搜索引擎中处理的形式。这将在下面进一步讨论。
现在将注意力转向地理特征文档数据库的实施例。图3是示出了将地理特征文档分布到多个索引上的实施例300的框图,所述索引可以被存储在搜索引擎中的多个计算机上。地理特征文档310可以包括多个地理特征文档312。诸如文档312-1的各个地理特征文档可以包括特征类型(诸如街道、路、路线、城市、国家、十字路口等等)、特征名称(即位置的名称)、主要的词语或标志(诸如与特征相关联的特定关键词)、附近的特征词语或标志(诸如相邻的或邻近的地标或感兴趣的位置)以及补充信息(诸如特征的纬度和经度)。补充信息可以由地图或多级(tile)服务器使用,以展现与在各个地理特征文档中的位置相对应的地图图像。这将在下面参考图5和7进一步描述。
分区器(partitioner)314可以经由一个或多个索引器316将地理特征文档310的子集分布到在多个索引320中的各个索引,诸如索引320-1。索引320-1可以与索引320(其可以被集体视作整个地理特征文档数据库的反向索引)的一个分区或子分区相对应。索引320可以被存储在搜索引擎中的一个或多个计算机上。子集可以被这样分布:每个索引320处理与各个位置搜索查询相关联的等价的处理部分或近似等价的处理部分。例如,可以将文档312-1随机地或伪随机地分布在索引320上。例如,可以使用散列函数和取模函数来将地理特征文档分布到M个索引器上,其中M是索引(有时称为索引分区或索引子分区)的数量。在该示例中,将散列函数应用于每个地理特征文档(或应用于文档的预定义的部分)以产生散列值,然后将“取模M”函数应用于散列值以产生在0和M-1之间的选择值。选择值确定M个索引器316中的哪一个接收文档用于索引。
当处理各个搜索查询时,索引320的每一个可以提供在与各个查询匹配的文档的子集中的一组前N个(诸如前10个)文档。如在下面进一步讨论的,前N个文档可以是基于分值的排名。具体地,可以为匹配搜索查询的每个文档确定分值。分值可以基于各个位置搜索查询的典范式和/或布尔表达式。参考图7,由各个服务器730来处理索引320的每个子分区的查询处理,所述服务器返回识别匹配查询的最高排名文档中的N个的信息。可以被称为聚合器或分区级别查询执行管理器的服务器726例如通过从由服务器730返回的结果之中选择N个最佳搜索结果将来自服务器730的搜索结果相组合。在层级中的下一个较高级别的查询执行管理器720,通过从由聚合器720返回的结果之中选择N个最佳搜索结果将来自所有聚合器726的搜索结果相组合。更一般地,在分布式层级中的每一个级别选择最佳搜索结果的预定义的数量并且将其传递到下一个级别。例如,如果在给定的级别接收了10组前10个文档,则可以确定前10个文档并且将其传递。以这种方式,使用分布式实现可以确定和/或识别在文档312中的前N个文档。该方法可以提高搜索引擎的性能并且可以减少系统费用和/或复杂度。
图4是示出了诸如文档312-1的地理特征文档400的实施例的框图。文档400可以与超文本标记语言(HTML)和/或可扩展标记语言(XML)兼容。文档400可以包括与诸如位置(例如街道、十字路口、城市、感兴趣地点等等)的地理特征相对应的信息。一些文档400可以包括用于多于一个位置(例如街道、城市的多个分区或类似物)的信息。这样的位置信息可以包括与一个或多个位置相对应的关键词、与一个或多个位置相关联的一个或多个区域以及一个或多个关键词的同义词。
如在实施例400中所示,在HTML标记<CN>之后的文本可以指示位置的类型,在该情况中是route(路线)。在HTML标记<CNA>之后的文本可以指示位置的明确的名称,在该情况中是Victoria Street(维多利亚街)。在HTML标记<CA>之后的文本可以指示与位置相对应的关键词,诸如Westminster(威斯敏斯特)、London(伦敦)和England(英格兰)。在HTML标记<A>之后的文本可以指示关键词和/或位置的明确名称的同义词,诸如Angleterre、United Kingdom(联合王国)和Verenigd Koninkrijk。同义词可以包括来自外语(即与关键词的语言不同的语言)的词。在一些实施例中,同义词可以包括在一个或多个关键词中和/或在位置的明确名称中的缩略词和/或普通错拼。在HTML标记<Cn>之后的文本可以指示在该位置附近的或邻近该位置的其它位置或区域。在该示例中,附近的位置或区域是Islington、West End(伦敦西区)和Covent Garden(考文特花园)。
可以将在文档400中的标记的文本或信息项称为信息项或文本项或标志。由索引器316(图3)来处理信息项或文本项以产生索引320。
文档400可以包括包含更少或额外标记的更少信息或额外信息。例如,文档400可以包括诸如与地理特征相对应的参考坐标的补充信息,其可以被地图或多级服务器使用。在示范性实施例中,参考坐标可以包括一个或多个位置的纬度和经度和/或将一个或多个位置包括在内的街道号码的范围。在其它的实施例中,可以改变在文档400中的信息的次序。可以将文档400中的两个或更多个项组成单个项。
在文档400中的补充信息的一个特定的示例是用于街道或其它路线的补充信息。在该示例中,补充信息包括一个或多个段,每一个对应于街道或路线的一部分。每个段指定与该段的第一和第二端点相对应的起始和结束街道号码,并且也指定该段的每个端点的纬度和经度。当包括街道号码的位置搜索查询与文档400相匹配时,将指定的街道号码用来识别在文档的补充信息中的最佳匹配的段。如果指定的街道号码处于最佳匹配的段的起始和结束街道号码之间,使用线性插值来确定由位置搜索查询所指定的位置的纬度和经度。可选地,如果指定的街道号码与最佳匹配的段的起始或结束街道号码相匹配,则将相应的纬度和经度用于由位置搜索查询所指定的位置的位置。
如先前所提及,当将与各个位置搜索查询相对应的典范式和/或布尔表达式与在地理特征文档310(图3)中的文档312(图3)相比较时,可以确定指示匹配的程度的分值。这些分值可以指示文档212以及因而相应的位置与位置搜索查询的相关性。这样,响应于位置搜索查询,搜索引擎可以使用分值来确定最佳结果(即最佳位置),或前N个结果的列表(即前N个位置)。
在一些实施例中,可以仅为文档312(图3)的子集确定分值,即搜索引擎可以确定可以与位置搜索查询相对应的文档的候选组。在示范性实施例中,包含在文档的该候选组中的标准可以包括如下要求:关键词中的至少一个与特征的明确名称(在图4中的<CNA>标记之后的文本)相匹配以及在典范式和/或布尔表达式中的元素或词语的每一个在文档中出现。
在示范性实施例中,可以使用 来确定分值,其中IRi是与典范式和/或布尔表达式中的各个词语或元素“i”相对应的查询匹配分值(关于特定的候选文档),FR是指示特征或位置的重要性的“特征排名”,E是标准值(normalization value)以及Q是可选的因子。Q可以与在查询和候选文档之间的匹配的质量相对应、或其可以与可以被用来提高搜索结果的质量的任何其它度量相对应。Q因子的示例是在下面参考图11-15描述的SAF因子。在另一个示例中,将Q设置为等于SAF*Product(Pj),其中SAF是在下面描述的分值衰减因子,每个Pj是惩罚因子,以及Product(Pj)是所有惩罚因子的乘积(即乘法积)。惩罚因子的每一个具有1.0的默认值,并且如果相应的惩罚可应用于所述的文档将较低的值(例如0.7或类似值)赋值给惩罚因子。惩罚因子的示例是:A)当文档既不在用户的国家也不在其当前视口(如在下面所定义的)时应用的惩罚因子;B)当在文档和查询之间的匹配是非精确匹配(例如,因为查询包含外来的或错误的词语或符号,并且在错误的词语或符号和文档之间的唯一匹配是具有“类属同义词”标志(参见上述关于“类属同义词”的解释)的匹配)时应用的惩罚因子;以及C)当在查询和文档之间的匹配缺少关键元素(例如,当查询与文档的街道名称标志和国家标志、而不是城市标志相匹配时)时应用的惩罚因子。在其它的实施例中可以使用其它的惩罚因子。通常,惩罚因子与指示在地理特征文档和搜索查询之间的潜在低劣质量匹配的情况相关联。在其它的实施例中,没有使用Q,或等价地将Q设置为等于1。
在一些实施例中,标准值E是完美匹配的IRi分值的总和的最大值、或等价地是搜索查询中的关键词的标志量的总和。IRi值的总和可以被称为候选文档的总匹配分值或IR分值。在搜索查询中的特定关键词的IRi的值可以包括权重的乘积。权重可以包括在典范式和/或布尔表达式中的相应元素或词语的标志量、相关性分值以及元素量。标志量可以与词语的类型相对应,
其中词语的类型可以包括停用词(stop word)、街道词缀关键词(例如诸如法语中的“rue”的街道前缀词或诸如英语中的“street”、“avenue”、“road”以及“place”的街道后缀词)、号码、同义词以及其它关键词,词语的每个预定义的类型被赋予预定义的标志量。预定义的标志量值可以具有预定义的范围,诸如0到1、或0到8或类似范围。在一些实施例中,默认的标志量(用于“其它的关键词”)是1,而诸如同义词、街道词缀关键词以及停用词的标志类型都被赋予较低的标志量值。在一些实施例中,同义词比街道词缀词被赋予更大的标志量。
相关性分值可以基于文本匹配的程度而改变,对于在查询关键词和文档的信息元素之间的完全文本匹配具有预定义的最大值。当查询关键词与文档的信息元素的最佳匹配仅是部分匹配(例如,查询关键词仅与多词元素的一个词相匹配)时,相关性分值小于预定义的最大值,并且反映文本匹配的程度。
元素量可以作为与匹配查询关键词的信息项(在候选文档中)相关联的地理特征的大小或类型的函数而改变。例如,作为国家名称的信息项比作为地点名称(诸如城市名称)的信息项可以被给予更高的元素量,后者进而比作为街道名称的信息被给予更高的值。元素量也可以反映与查询关键词匹配的信息项的类型。例如,包含地理特征的明确名称的信息项可以被赋予最高的元素量,作为“环境”项(例如街道所位于的城市或国家)的信息项可以被赋予下一个最高的元素量,以及包含附近城市的名称、区域或其它地理特征的信息项可以被赋予最低的元素量。在一些实施例中,用于候选文档中的信息项的元素量等于两个元素量因子的乘积,其中一个基于通过信息项命名的地理特征的大小或类型并且其中第二个基于与查询关键词相匹配的信息项(明确的名称、环境或附近的特征)的类型。在一些其它的实施例中,用于候选文档中的信息项的元素量等于这两个元素量因子的总和。
用于候选文档的特征排名FR可以基于文档频率(在图3的数据库310中的文档312中提及的特征的次数),或其可以基于地理特征的大小,较大的特征(即地理广度)被给予较高的特征排名值。在其它的实施例中,特征排名可以基于(至少部分地)与候选文档相对应的地理特征的重要性或普及性。例如,通过对地理特征的名称的万维网搜索或其它的数据库搜索可以确定与候选文档相对应的地理特征的重要性或普及性。
当查询关键词具有一个或多个同义词时,为同义词的每一个以及查询关键词计算IR分值(关于候选文档),然后当为候选文档计算组合的IR分值时选择并且使用这些IR分值中的最佳值。
在一些实施例中,修改了在上面示出的评分函数,以增加一个或多个因子相对于其它因子的重要性。例如可以将评分函数变为
其中指数M是大于1的值(例如2、2.5或3),并且其典型地在2和5之间(2≤M≤5),以便在评分函数中给予规范化总匹配分值比特征排名FR和Q因子更多的重要性。在一些实施例中,修改了上述的评分函数,以相对于其名称与相同的词语相匹配但具有不同的次序的文档更偏向于其名称具有按照与在搜索查询中放置的词语相同的次序的词语的文档。例如,可以用成对(pair-wise)匹配分值补充(例如,总匹配分值+成对匹配分值)总匹配分值(例如,总匹配分值+成对匹配分值),所述成对匹配分值基于与文档名称中的排序的词语对相匹配的在搜索查询中的排序的词语对(排序的、邻近的词语)的数量。
现在将注意力转向用于响应于位置搜索查询向用户提供一个或多个位置结果的过程的实施例。如果在前N个排名中第一文档的最佳分值大于第二文档的次最佳分值的预定倍数(例如次最佳分值小于最佳分值的70%)中,可以将与第一文档相对应的位置提供给用户。使用与文档一起存储的补充信息,地图或多级服务器可以将以该位置为中心的区域的地图图像提供给用户。例如,如果补充信息包括括入(bracket)该位置的街道地址,则可以使用线性插值来确定地图图像的中心。图5A是示出了提供给用户的地图图像500的实施例的框图。将与位置相对应的位置标记512-1置于边界框510的中心。调整边界框510的大小,以使得可以提供围绕该位置的区域514。可以基于地理特征或位置的大小来确定边界框510的大小。不同大小的特征(诸如城市或国家)可以具有不同大小的边界框。
在一些情况中,在区域中多于一个的不同位置(即在空间上彼此分离)可以具有相同或几乎相同的分值。例如,多于一个的位置可以与对应于位置搜索查询的典范式和/或布尔表达式中的所有关键词相匹配。在这样的情况中,可以将这些结果提供给用户。这在图5B中示出,所述图5B是示出了地图图像550的实施例的框图。将边界框510定义为包括满足预定义的选择标准的所有位置。与不同位置相对应的位置标记512被包括在边界框510中。在一些实施例中,标记是链接。通过在标记中的一个上点击,用户可以选择相应的位置。可以将该位置与诸如地图图像500(图5A)的地图图像一起展现给用户。在一些其它的实施例中,挨着地图550列出了最佳匹配位置的列表520。在列表中的每一项可以包括指向与该位置相对应的地图的链接。可以由来自相应的地理特征文档的典范名称(在图4中的示例中通过CNA标记识别)和环境文本(在图4中的示例中通过CA标记识别)表示在列表520中的每一项。
如果最佳分值不大于次最佳分值的预定倍数,则可以提供与前N个排名中的范围相对应的位置。例如,可以提供具有大于或等于最佳分值的50%的分值的位置(来自前N个结果之中)。可以将各种信息与位置一起提供。在图6中示出了用于显示响应于位置搜索查询而返回的多个搜索结果的示范性图形用户界面。在一个区域610或列中,列出了最佳匹配地理特征或位置,并且在图形用户界面的另一个区域中示出了单个小地图620,每一个用于在区域610中列出的最佳匹配地理特征或位置中的每一个。在该示例中,位置搜索查询是“San Antonio(圣安东尼奥)”,其产生了多个可能相关的回答。所述回答可以与诸如城市、州、邮政编码和/或国家的一个或多个位置标识符一起提供。在一些实施例中,小地图620每一个都包括指向相应的、更大的地图的链接。类似地,在一些实施例中,在区域610中的所列出的最佳匹配位置的每一个包括指向相应的更大的地图的链接。在回答或小地图中的一个上点击可以允许将该位置与诸如地图图像500(图5A)的地图图像一起展现给用户。
现在将注意力转向用于实现先前所描述的方法、地理特征文档和图形用户界面的搜索引擎、客户端计算机和数据结构的实施例。图7是示出了搜索引擎系统700的框图,该搜索引擎系统响应于从一个或多个客户端710(在本文也称为客户端装置或客户端系统)(诸如客户端系统或装置900(图9))接收的位置搜索查询而生成位置搜索查询结果。每一个客户端710可以具有诸如搜索助手模块930(图9)的搜索助手。应当理解,如在图7中所示的搜索引擎系统700的布局仅是示范性的并且可以采用任何其它适当的布局或配置。因此,搜索引擎系统700可以包括更少或额外的组件或模块,可以以硬件和/或软件实现,并且可以改变位置或一个或多个组件或模块。搜索引擎系统700被用于搜索诸如地理特征文档310(图3)的文档的索引。
搜索引擎系统700可以包括使用通信网络712与客户端710通信的制图(mapping)应用服务器714。通信网络712可以是因特网和/或内联网。制图应用服务器714可以将位置搜索查询转发到查询服务器716,并且从查询服务器716接收位置结果。制图应用服务器714可以使用位置结果中的补充信息来从多级服务器718访问适当的地图图像,并且将这样的地图图像与位置结果一起提供给客户端710。
查询服务器716可以确定位置搜索查询中的关键词,包括将位置搜索查询转换为典范形式和/或生成布尔表达式。可以将典范式和/或布尔表达式转发到查询执行管理器720用于处理。查询执行管理器720可以将典范式和/或布尔表达式提供给地理特征文档数据库722中的多个分区724。在诸如分区724-K的每一个分区724中,分区级别查询执行管理器726可以将典范式和/或布尔表达式分布到用于一个分区的服务器730。服务器730可以存储索引320(图3)。如先前所讨论的,在地理特征文档数据库722中的服务器可以以分级的方式确定与位置搜索查询相对应的前N个文档。
在接收了前N个文档后,查询执行管理器720可以访问在文档服务器734中的诸如补充信息的相应的地理或位置信息。在一些实施例中,地理或位置信息可以被包括在地理特征文档数据库722中。
可以将诸如查询服务器716的在搜索引擎系统700中的元素分散在一组服务器上,以提供位置搜索查询的非常快速的处理。在一些实施例中,系统700可以在多个数据中心(例如位于不同的洲和/或在一个或多个国家内的不同位置)中在多个位置包括查询服务器、查询执行管理器、多级服务器以及地理特征文档数据库的复本(replica)。使用域名系统(DNS)基于数据中心的每一个的当前负载、地理地点和/或操作状态将在客户端710之一的用户向搜索引擎系统700提交的位置搜索查询路由到适当的数据中心。
每一个后端优选地包括连接到通信网络712的多个查询服务器,诸如查询服务器716。通信网络712可以是因特网,但是也可以是任意的局域网(LAN)和/或广域网(WAN)。在一些实施例中,每一个查询服务器716是经由HTTP、XML或类似的协议以网页的形式接收位置搜索查询请求并且递送搜索位置结果的服务器。可选地,如果查询服务器716用在LAN内,即内部地而不被公众使用,其可以是内联网服务器。诸如查询服务器716的查询服务器被配置以控制搜索过程,包括搜索文档索引、分析和格式化搜索结果。在一些实施例中,后端包括连接到诸如查询服务器716的多个查询服务器的多个查询执行管理器720。
图8是示出了搜索引擎800的实施例的框图。搜索引擎800可以包括至少一个数据处理器或中央处理单元(CPU)810、用于与其它计算机、服务器和/或客户端通信的通信或网络接口820、存储器822以及用于将这些组件相互连接的一个或多个信号线812。一个或多个信号线812可以组成一个或多个通信总线。
存储器822可以包括高速随机存取存储器和/或非易失性存储器,诸如一个或多个磁盘存储装置。存储器822可以存储包括用于处理基本系统服务和用于执行依赖硬件的任务的程序的操作系统(或一组指令)824,诸如LINUX、UNIX或WINDOWS。存储器822也可以将通信程序(或一组指令)存储在网络通信模块826中。通信程序被用于与诸如客户端710(图7)的客户端、以及与搜索引擎系统700(图7)中的其它服务器和计算机通信。
存储器822也可以存储与查询服务器716(图7)相对应的查询服务器模块(或一组指令)、地理特征文档数据库722、文档832以及所选择的结果836。查询服务器模块716可以包括可以如上所述重写所接收的搜索查询的关键词处理器828。地理特征文档数据库722可以包括多个索引830。文档832可以包括包含地理或位置信息的多个文档834。所选择的结果836可以包括一个或多个位置搜索查询的结果838。
虽然图8(类似于图7)将搜索引擎800示出为多个分离的项,但是更多地意在把图8作为可以在搜索引擎系统中存在的各种特征的功能描述而不是作为在此所述的实施例的结构性示意。实际上,如本领域普通技术人员所认识到的,搜索引擎800的功能可以分布在大量的服务器或计算机上,所述服务器的各种群组执行这些功能的特定子集。在图8中分离示出的项可以被组合并且一些项可以被分离。例如,可以在单个服务器上实现在图8中分离示出的一些项,并且可以由一个或多个服务器来实现单个项。在搜索引擎系统中的服务器的实际数量以及特征在它们中如何分配因实现的不同而不同,并且可以部分地基于系统所存储的信息量和/或系统在高峰使用期间以及平均使用期间必须处理的数据流量。
图9是示出了客户端计算机、装置或系统900的实施例的框图。客户端系统900可以是台式计算机、膝上型计算机、个人数字助理(PDA)、蜂窝电话、个人导航装置或类似物。客户端系统900通常包括一个或多个处理单元(CPU)910、用户接口914、一个或多个网络或其它通信接口912、存储器922以及用于连接这些组件的一个或多个通信总线920。用户接口914可以包括一个或多个键盘918、一个或多个显示器916、和/或诸如鼠标的一个或多个指示器(未示出)。存储器922可以包括诸如DRAM、SRAM、DDR RAM或其它随机存取固态存储装置的随机存取存储器;以及可以包括诸如一个或多个磁盘存储装置、光盘存储装置、闪存装置或其它非易失性固态存储装置的非易失性存储器。通信总线920可以包括互连并且控制系统组件之间的通信的电路(有时称为芯片集)。存储器922可以包括位于远离中央处理单元910的大容量存储器。
在一些实施例中,存储器922可以包括操作系统(或一组指令)924、网络通信模块(或一组指令)926、浏览器/工具模块928和/或搜索助手模块(或一组指令)930。搜索助手模块930可以包括输入和选择监控模块(或一组指令)932、传输模块(或一组指令)934、搜索结果接收模块(或一组指令)936和/或显示模块(或一组指令)936。
诸如LINUX、UNIX或WINDOWS的操作系统924可以包括用于处理各种基本系统服务和用于执行依赖硬件的任务的程序(或指令集)。可以使用网络通信模块926来经由一个或多个通信网络接口912和诸如因特网、其它广域网、局域网、城域网等等的一个或多个通信网络将客户端系统900连接到其它计算机(例如其它客户端计算机和/或搜索引擎)。
浏览器/工具模块928可以是客户端系统900的用户可以使用来与在一个或多个通信网络上的一个或多个主机(诸如一个或多个网站和/或网页)通信和/或交换信息的web浏览器。例如,用户可以使用浏览器/工具模块928在因特网上冲浪(例如显示网页和/或网站)。
用户可以使用搜索助手模块930(例如浏览器扩展、浏览器工具栏或嵌在搜索引擎网页中的指令)来利用搜索引擎执行诸如位置搜索查询的一个或多个搜索查询,并且接收相应的搜索结果,包括一个或多个位置、一个或多个地图图像、一个或多个URL和/或超链接。具体地,输入和选择监控模块932可以监控用户输入,传输模块934可以将搜索查询发送到搜索引擎,搜索结果接收模块936可以从搜索引擎接收搜索结果,以及显示模块938可以显示搜索结果(或可以帮助呈现用于被浏览器模块928显示的搜索结果),诸如一个或多个文档的排名和/或包含与搜索查询相对应的所识别的内容的文档位置。用户可以使用用户接口914和浏览器/工具模块928来访问或选择搜索结果中的文档和/或文档位置中的一个或多个。例如,用户可以使用指示器(未示出)来点击超链接。
在客户端系统900耦接到本地服务器计算机的实施例中,可以将存储器922中的模块和/或应用中的一个或多个存储在服务器计算机上,所述服务器计算机典型地位于与客户端系统900不同的位置。上述所识别的模块和应用中的每一个与用于执行上述的一个或多个功能的一组指令相对应。不需要将这些模块(即指令集)实现为分离的软件程序、程序或模块。可以将各种模块和子模块重新排列和/或组合。存储器922可以包括额外的模块和/或子模块、或更少的模块和/或子模块。例如,可以将搜索助手模块930集成在浏览器/工具模块928中。因此,存储器922可以包括上述所识别的模块和/或子模块的子集或超集。
图10是示出了地理特征文档数据结构1000的实施例的框图。地理特征文档数据结构1000可以包括地理特征文档722。地理特征文档722可以包括被分布在多个计算机的多个分区上的多个记录1010。每个记录1010可以与各个地理特征文档相对应。如上述所说明的,地理特征文档可以与地理特征或位置相对应。记录可以包括关键词1012、一个或多个关键词的同义词1014、关联词1016(诸如位置出现的城市)和/或近似对象1018。地理特征文档数据结构1000可以包括更少或额外的元素,可以将两个或更多个元素相组合并且可以改变一个或多个元素的位置。例如,各个记录1010可以进一步包括补充信息1018,所述补充信息包括一个或多个位置的纬度和经度信息或与记录1010所表示的地理特征相关联的边界框。
来自位置搜索查询的结果的相对于视口的评分
当用户例如使用在线制图程序或服务来执行一系列位置搜索时,用户通常搜索地理特征(例如城市、街道、特定地址或类似物),所述地理特征靠近在紧邻的在先位置搜索中出现的地理特征。例如,在搜索特定城市中的第一地理特征后,用户将通常搜索在同一城市中或在邻近或附近城市中的第二地理特征。为了便于讨论,有时将地理特征称为“位置”,但是应当理解,诸如街道(与特定街道地址相对)的一些地理特征对应于大量位置。
在以下的讨论中,参考图11,“视口”或“当前视口”与当前在用户的客户端装置或系统上显示的地理区域相对应。例如,视口可以是响应于紧邻的在前位置搜索而(例如由在线制图程序或服务)产生的显示窗口,或其可以是界定在用户的客户端系统上显示的视口矩形的圆形区域。从而,视口在形状上可以是矩形的或圆形的。在该讨论的剩余部分中,将视口假设为在形状上是圆形的并且围绕并包括在用户的客户端系统上显示的视口矩形。另外,视口可以由将视口改变为用户指定的区域的用户行为(例如平移(pan)和/或缩放命令或行为)产生的结果。
当用户提交了导致多于一个结果的位置查询时,可以将结果进行评分,以偏向在当前视口内的结果(即位置)胜于在视口外的位置,并且比起更远离视口的位置而偏向靠近视口的位置(例如在围绕视口的边缘区域内,本文称为“视口边缘区域”)。在一个实施例中,修改上述用于对“文档”(有时称为位置描述文档或位置描述数据库条目)进行评分的评分函数,以包括分值衰减因子(SAF),SAF倾向于将分值偏向与当前视口相交的结果,并且偏向与围绕视口的视口边缘区域相交的结果胜于既不与视口区域也不与视口边缘区域相交的结果(即其在视口边缘区域外)。在该环境中,术语“相交”意为由搜索结果识别的地理特征的至少一部分在特定区域内。
如在图12和13中所示,可以根据“角距离”测量在地球的表面上的区域和距离的大小,“角距离”是由那些区域或距离对向的地球表面上的弧的角大小。可以以弧度或度数为单位来测量角距离。标准化的角距除以诸如2π的标准化因子,以使得最大的角距离是1(或任何其它预定义的值)并且最小的角距离是0。在图12和13中,X1表示基于视口区域的半径R1的角距离的视口区域的标准化大小。X2是基于视口边缘区域的半径R2的角距离的视口边缘区域的标准化大小。X2-X1表示视口边缘区域的宽度。X3表示在地理特征和视口区域的最近边界(edge)之间的标准化角距离,或更一般地是在地理特征和视口区域之间的距离。X表示(A)在地理特征和视口区域之间的距离,与(B)视口边缘区域的宽度的比值。
在一个实施例中,视口边缘区域的大小取决于视口区域的大小。具体地,当视口区域的半径较小(例如小于几公里)时,视口边缘区域的半径是视口区域的半径的1+SkirtFactor倍之大,其中SkirtFactor(边缘因子)是可配置的参数。当视口区域的半径较大(例如大于几百公里)时,视口边缘区域的半径与视口区域的半径近似相同。在示范性实施例中,将视口边缘区域的半径定义为:
SkirtRegionRadius=ViewportRadius×(1+SkirtFactor×EV)
EV=A+B×e-M×X1
其中选择A和B使得:当X1等于0时(即当视口区域非常小时),EV等于其最大值1,并且当X1等于其最大值1(对应于覆盖整个地球的视口区域)时,EV等于其最小值0。SkirtFactor是可配置的比例(scaling)因子。SkirtFactor的示范性值是10;在其它的实施例中,SkirtFactor等于在4和20之间的值。M是可配置的指数率因子。M的示范性值是50;在其它的实施例中,M等于在10和200之间的值。另外,M的值取决于角距离X1的比例。根据上述约束分解(solve)A和B,EV的等式变为:
当M=50时,e-M非常接近0(e-50≈1.9*10-22),并且EV近似等于e-M*X1。
在示范性实施例中,可以根据以下评分函数来确定分值
其中IRi是与典范式和/或布尔表达式中的各个词语或元素“i”相对应的查询匹配分值(关于特定候选文档),FR是指示特征或位置的重要性的“特征排名”,E是标准化值,以及SAF是上述的评分衰减因子。在上面更详细地讨论了IR、FR和E参数,并且该讨论同样地可应用于在此所讨论的评分函数。注意到,特定候选文档(或地理特征)的IRi值的总和可以被视作该候选文档的信息检索分值或查询匹配分值,并且评分函数的所有其它参数用于根据额外的因子比例、提升或衰减分值以改善如何对搜索结果进行排名(即,使得排名最高的搜索结果是最有可能与由用户所查找的地理特征相对应的搜索结果)。
在示范实施例中,根据以下函数来确定用于特定地理特征的SAF
SAF=C+D×e-K×X
其中K是指数比例因子、以及X是(A)在地理特征和视口区域(即视口区域的最近边界)之间的距离,与(B)视口边缘区域的宽度的比值,如在上面参考图13所说明的。在上述等式中,C和D是这样的值,其被选择使得:当X等于1时(即当地理特征在边缘区域的最外面部分时),SAF等于其最小值MinScore,并且当X等于0时(即当地理特征与在视口区域和视口边缘区域之间的线或分界线相交或邻近时),SAF等于其最大值1。根据上述约束分解C和D,SAF的等式变为:
当K=3时,e-K近似等于0.5,以及1-e-K近似等于0.95。当MinScore=0.2并且K=3时,对于与视口边缘区域相交(但是不与视口区域相交)的地理特征,SAF近似等于0.158+0.842*e-3X。注意到,当X=0时根据该等式SAF等于1.0,并且当X=1时SAF近似等于0.2。如上述注意到的,对于与视口区域相交的地理特征,SAF等于1,以及对于既不与视口区域也不与视口边缘区域相交的地理特征,SAF等于MinScore(例如0.2)。在其它的实施例中,MinScore是在0.1和0.5之间的值,并且K是在2和10之间的值。
为了说明和描述的目的而提供了本发明的特定实施例的上述描述。其并不意在穷举或将本发明限制在所公开的精确形式。相反地,应理解,鉴于上述教导可以做出许多修改和变化。选择并且描述了这些实施例是为了最好地说明本发明的原理和其实际应用,从而使本领域技术人员能够最好地利用本发明和具有适合于特定用户预期的各种修改的各种实施例。
Claims (23)
1.一种用于执行位置搜索的方法,包括:
从客户端系统接收位置搜索查询;
确定与所述位置搜索查询相对应的关键词;
对地理特征文档数据库中的一组文档进行搜索,以识别与在所述位置搜索查询中的所述关键词相对应的一个或多个文档,其中所识别的文档的每一个对应于地理位置处的地理特征、包括匹配所述位置搜索查询的所述关键词的词语、并且包括与所述对应的地理特征的所述地理位置有关的信息;以及
向所述客户端系统提供地图,所述地图包括位于与所述一个或多个所识别的文档相对应的所述一个或多个地理位置处的一个或多个位置标签。
2.如权利要求1所述的方法,其中所述关键词包括在所述位置搜索查询中的一个或多个词语的一个或多个同义词。
3.如权利要求1所述的方法,其中所述识别所述一个或多个文档包括确定与所述关键词相对应的典范式。
4.如权利要求1所述的方法,其中所述一个或多个文档是在包括与地理特征相对应的多个文档的索引中,所述地理特征能够在所述客户端系统处的地理地图上显示。
5.如权利要求4所述的方法,其中所述多个文档包括与所述地理特征相对应的地理参考坐标。
6.如权利要求1所述的方法,其中对所述一个或多个文档的所述识别包括为所述一个或多个文档的每一个确定分值。
7.如权利要求6所述的方法,其中如果在所述一个或多个文档的前N个排名中,对应的文档的最佳分值大于下一个文档的次最佳分值的预定倍数,则所述提供包括向所述客户端系统仅提供一个地理位置。
8.如权利要求1所述的方法,包括向客户端系统发送地图图像,所述地图图像与所述一个或多个地理位置相对应。
9.如权利要求8所述的方法,其中所述一个或多个地理位置包括具有所有共同的关键词的两个或多个不同的地理位置,并且其中所述地图包括与所述两个或多个地理位置相对应的标记。
10.如权利要求1所述的方法,其中对所述一个或多个文档的所述识别独立于所述关键词的次序。
11.如权利要求1所述的方法,其中所识别的文档中匹配所述位置搜索查询的所述关键词的词语包括从以下各项组成的组中选择的一个或多个词语:对在与相应的所识别的文档相对应的地理特征的邻近或附近的地理特征进行描述的一个或多个词语;以及包括对描述与相应的所识别的文档相对应的地理特征的词语的错误拼写的一个或多个词语。
12.如权利要求1所述的方法,进一步包括:根据分值对所识别的文档进行排名以产生一组已排名的文档,所述分值至少部分地基于与所识别的文档相对应的所述地理特征到所述客户端系统的地理视口区域的接近性,其中所述地理视口区域与在所述客户端系统上显示的地理区域相对应;
所述方法包括根据所述已排名的文档在所述地图中提供结果,所述结果识别与所述已排名的文档中的一个相对应的至少一个地理特征。
13.一种搜索引擎系统,包括:
用于从客户端系统接收位置搜索查询的装置;
用于确定与所述位置搜索查询相对应的关键词的装置;
用于对地理特征文档数据库中的一组文档进行搜索以识别与在所述位置搜索查询中的所述关键词相对应的一个或多个文档的装置;其中所识别的文档的每一个对应于地理位置处的地理特征、包括匹配所述位置搜索查询的所述关键词的词语、并且包括与所述对应的地理特征的所述地理位置有关的信息;以及
用于向所述客户端系统提供地图的装置,所述地图包括位于与所述一个或多个文档相对应的所述一个或多个地理位置处的一个或多个位置标签。
14.如权利要求13所述的搜索引擎系统,其中所述关键词包括在所述位置搜索查询中的一个或多个词语的一个或多个同义词。
15.如权利要求13所述的搜索引擎系统,其中所述识别所述一个或多个文档包括确定与所述关键词相对应的典范式。
16.如权利要求13所述的搜索引擎系统,其中所述一个或多个文档是在包括与地理特征相对应的多个文档的索引中,所述地理特征能够在所述客户端系统处的地理地图上显示。
17.如权利要求16所述的搜索引擎系统,其中所述多个文档包括与所述地理特征相对应的参考坐标。
18.如权利要求13所述的搜索引擎系统,其中用于对所述一组文档进行搜索的所述装置包括为所述一个或多个所识别的文档中的每一个确定分值的装置。
19.如权利要求18所述的搜索引擎系统,其中用于提供地图的所述装置包括用于如下操作的装置:如果在所述一个或多个文档的前N个排名中,对应的文档的最佳分值大于下一个文档的次最佳分值的预定倍数,则向所述客户端系统仅提供一个地理位置。
20.如权利要求13所述的搜索引擎系统,其中用于提供地图的所述装置包括用于向客户端系统发送地图图像的装置,其中所述地图图像与所述一个或多个地理位置相对应。
21.如权利要求13所述的搜索引擎系统,其中所述一个或多个地理位置包括具有所有共同的关键词的两个或多个不同的地理位置,并且其中所述地图包括与所述两个或多个地理位置相对应的标记。
22.如权利要求13所述的搜索引擎系统,其中所识别的文档中匹配所述位置搜索查询的所述关键词的词语包括从以下各项组成的组中选择的一个或多个词语:对在与相应的所识别的文档相对应的地理特征的邻近或附近的地理特征进行描述的一个或多个词语;以及包括对描述与相应的所识别的文档相对应的地理特征的词语的错误拼写的一个或多个词语。
23.如权利要求13所述的搜索引擎系统,进一步包括用于以下操作的装置:根据分值对所识别的文档进行排名以产生一组已排名的文档,所述分值至少部分地基于与所识别的文档相对应的所述地理特征到所述客户端系统的地理视口区域的接近性,其中所述地理视口区域与在所述客户端系统上显示的地理区域相对应;
其中用于提供地图的所述装置是根据所述已排名的文档在所述地图中提供结果,所述结果识别与所述已排名的文档中的一个相对应的至少一个地理特征。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US76316806P | 2006-01-27 | 2006-01-27 | |
US60/763,168 | 2006-01-27 | ||
US86954906P | 2006-12-11 | 2006-12-11 | |
US60/869,549 | 2006-12-11 | ||
PCT/US2007/061133 WO2007087629A1 (en) | 2006-01-27 | 2007-01-26 | Geographic coding for location search queries |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110276324.4A Division CN102354312B (zh) | 2006-01-27 | 2007-01-26 | 用于位置搜索查询的地理编码 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101410833A CN101410833A (zh) | 2009-04-15 |
CN101410833B true CN101410833B (zh) | 2011-09-28 |
Family
ID=37887978
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800106150A Active CN101410833B (zh) | 2006-01-27 | 2007-01-26 | 用于位置搜索查询的地理编码 |
CN201110276324.4A Active CN102354312B (zh) | 2006-01-27 | 2007-01-26 | 用于位置搜索查询的地理编码 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110276324.4A Active CN102354312B (zh) | 2006-01-27 | 2007-01-26 | 用于位置搜索查询的地理编码 |
Country Status (5)
Country | Link |
---|---|
EP (2) | EP2538356A1 (zh) |
JP (1) | JP5325579B2 (zh) |
CN (2) | CN101410833B (zh) |
CA (1) | CA2640365C (zh) |
WO (1) | WO2007087629A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7987195B1 (en) | 2008-04-08 | 2011-07-26 | Google Inc. | Dynamic determination of location-identifying search phrases |
US9092454B2 (en) * | 2008-04-22 | 2015-07-28 | Microsoft Technology Licensing, Llc | Discovering co-located queries in geographic search logs |
CN101661461B (zh) | 2008-08-29 | 2016-01-13 | 阿里巴巴集团控股有限公司 | 确定文档中核心地理信息的方法、系统 |
CN101546342B (zh) * | 2009-05-08 | 2012-07-04 | 阿里巴巴集团控股有限公司 | 实现搜索服务的方法与系统 |
JP2011124287A (ja) | 2009-12-08 | 2011-06-23 | Sony Corp | 発電量予測装置、発電量予測システム、発電量予測方法及びコンピュータプログラム |
US20120158712A1 (en) | 2010-12-16 | 2012-06-21 | Sushrut Karanjkar | Inferring Geographic Locations for Entities Appearing in Search Queries |
US8688366B2 (en) * | 2011-07-19 | 2014-04-01 | Navteq B.V. | Method of operating a navigation system to provide geographic location information |
US8806322B2 (en) * | 2011-11-28 | 2014-08-12 | Google Inc. | System and method for obtaining a structured address by geocoding unstructured address information |
EP2883152A4 (en) * | 2012-08-10 | 2016-03-16 | Nokia Technologies Oy | METHOD AND DEVICE FOR PROVIDING A CROWD SOURCE-FINANCED GEOCODING |
US8965900B2 (en) * | 2012-09-14 | 2015-02-24 | Bentley Systems, Incorporated | Efficiently finding spatially scored best entities |
CA2906767A1 (en) * | 2013-03-15 | 2014-09-18 | The Dun & Bradstreet Corporation | Non-deterministic disambiguation and matching of business locale data |
CN104375992B (zh) * | 2013-08-12 | 2018-01-30 | 中国移动通信集团浙江有限公司 | 一种地址匹配的方法和装置 |
US20160132567A1 (en) * | 2014-11-12 | 2016-05-12 | Microsoft Corporation | Multi-search and multi-task in search |
CN106855868A (zh) * | 2015-12-09 | 2017-06-16 | 北京奇虎科技有限公司 | 地图搜索结果的显示方法及装置 |
JP7464462B2 (ja) * | 2016-04-28 | 2024-04-09 | オナー デバイス カンパニー リミテッド | ヒューマンコンピュータインタラクション方法およびその装置 |
EP3444725A4 (en) | 2016-04-28 | 2019-04-24 | Huawei Technologies Co., Ltd. | MAN-MACHINE INTERACTION METHOD AND DEVICE THEREOF |
US11574074B2 (en) * | 2017-12-11 | 2023-02-07 | Digital Guardian Llc | Systems and methods for identifying content types for data loss prevention |
US11531779B2 (en) | 2017-12-11 | 2022-12-20 | Digital Guardian Llc | Systems and methods for identifying personal identifiers in content |
CN112115100A (zh) * | 2019-06-20 | 2020-12-22 | 珠海金山办公软件有限公司 | 一种文档搜索方法、系统、存储介质和终端 |
CN117435823B (zh) * | 2023-12-19 | 2024-03-29 | 北京智网易联科技有限公司 | 基于网格编码的时空数据服务方法及工业互联网平台 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6321227B1 (en) * | 1998-02-06 | 2001-11-20 | Samsung Electronics Co., Ltd. | Web search function to search information from a specific location |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000200282A (ja) * | 1999-01-06 | 2000-07-18 | Seiko Epson Corp | 情報検索方法及び情報検索システム並びに情報検索処理プログラムを記録した記録媒体 |
JP2003524259A (ja) * | 2000-02-22 | 2003-08-12 | メタカルタ インコーポレイテッド | 情報の空間符号化及び表示 |
WO2001065410A2 (en) * | 2000-02-28 | 2001-09-07 | Geocontent, Inc. | Search engine for spatial data indexing |
US7606798B2 (en) * | 2003-09-22 | 2009-10-20 | Google Inc. | Methods and systems for improving a search ranking using location awareness |
JP4153887B2 (ja) * | 2004-03-19 | 2008-09-24 | 株式会社日立製作所 | 移動体ナビゲーション装置、および、移動体ナビゲーション装置における目的地の検索方法 |
-
2007
- 2007-01-26 CN CN2007800106150A patent/CN101410833B/zh active Active
- 2007-01-26 CA CA2640365A patent/CA2640365C/en active Active
- 2007-01-26 CN CN201110276324.4A patent/CN102354312B/zh active Active
- 2007-01-26 JP JP2008552594A patent/JP5325579B2/ja active Active
- 2007-01-26 EP EP12179688A patent/EP2538356A1/en not_active Withdrawn
- 2007-01-26 WO PCT/US2007/061133 patent/WO2007087629A1/en active Application Filing
- 2007-01-26 EP EP07710328A patent/EP1979841A1/en not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6321227B1 (en) * | 1998-02-06 | 2001-11-20 | Samsung Electronics Co., Ltd. | Web search function to search information from a specific location |
Non-Patent Citations (2)
Title |
---|
李雪梅.基于语义的个性化Web搜索.《情报杂志》.2003,(第3期),27-28,31. * |
白玉琪.空间信息搜索引擎研究.《中国优秀博士学位论文数据库》.2003,57-66,88-89. * |
Also Published As
Publication number | Publication date |
---|---|
CN102354312B (zh) | 2014-11-05 |
CA2640365A1 (en) | 2007-08-02 |
EP2538356A1 (en) | 2012-12-26 |
CN102354312A (zh) | 2012-02-15 |
EP1979841A1 (en) | 2008-10-15 |
JP2009524893A (ja) | 2009-07-02 |
WO2007087629A1 (en) | 2007-08-02 |
CN101410833A (zh) | 2009-04-15 |
JP5325579B2 (ja) | 2013-10-23 |
CA2640365C (en) | 2015-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101410833B (zh) | 用于位置搜索查询的地理编码 | |
US7747598B2 (en) | Geographic coding for location search queries | |
US7792883B2 (en) | Viewport-relative scoring for location search queries | |
US10949468B2 (en) | Indicators for entities corresponding to search suggestions | |
US9652474B2 (en) | Providing regional content by matching geographical properties | |
CN101313300B (zh) | 本地搜索 | |
US9122703B1 (en) | Hierarchical category index navigational system | |
US20100185385A1 (en) | Route based search | |
KR20020007312A (ko) | 로컬 정보에 액세스하는 방법과 시스템 | |
WO2010039593A2 (en) | Customized geographical location indexing | |
US8694512B1 (en) | Query suggestions | |
US8495046B1 (en) | Encoding locations and using distances for resources | |
JP5000965B2 (ja) | エリア情報提供方法 | |
US8555203B1 (en) | Stackable icons | |
KR100572751B1 (ko) | 웹 기반의 지리정보 검색 시스템 | |
CN106649813B (zh) | 一种基于环境感知与用户反馈的垂直领域知识库构建方法 | |
KR20010103149A (ko) | 전자지도상의 인접 상호 검색방법 | |
CN113626668A (zh) | 一种面向地图的新闻多尺度可视化方法 | |
CN106528878A (zh) | 基于文字链接显示地理位置的系统 | |
KR20010097566A (ko) | 베너에 의한 인터넷 검색 방법 | |
KR20020036573A (ko) | 키워드 입력 프레임 게시 시스템 및 이를 이용한 키워드입력 프레임 게시 방법 |
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. |