專利名稱:用于位置搜索查詢的地理編碼的制作方法
技術(shù)領(lǐng)域:
搜索引擎提供強大的工具來定位在大型文檔數(shù)據(jù)庫中的文檔(諸如因特網(wǎng)或萬維網(wǎng)(WWW)上的文檔、和/或存儲在內(nèi)聯(lián)網(wǎng)的計算機上的文檔)中的內(nèi)容。響應(yīng)于搜索查詢使用文檔的索引來定位文檔,所述搜索查詢由用戶提交的一個或多個詞、詞語、關(guān)鍵詞和 /或短語(此后稱為詞語)組成??梢詫⒃谖臋n的索引中的文檔與搜索查詢中的一個或多個詞語相匹配以確定分值?;诜种?,將相關(guān)文檔或文檔位置的排名的列表提供給用戶。搜索查詢可能具有各種目的和格式。一種種類的格式與位置搜索相對應(yīng)。傳統(tǒng)的位置搜索通常使用諸如模板的固定的格式?,F(xiàn)有的模板通常是固定的或可能僅允許有限數(shù)量的變化。例如,在現(xiàn)有的位置搜索查詢中的詞或詞語可能具有預(yù)定的次序(街道名稱、 州、郵政編碼)和/或預(yù)定的拼寫。因此,(在傳統(tǒng)的位置搜索中)提供包括拼寫錯誤的寬泛的拼寫、用于位置的可選的名稱以及諸如在不同的國家創(chuàng)建的可選的地址格式是困難的或不可能的。響應(yīng)于位置搜索查詢,許多現(xiàn)有的搜索引擎通常返回單個結(jié)果。結(jié)合對位置搜索查詢的格式靈活性的缺乏,這使得適應(yīng)在位置搜索查詢和/或返回用戶的結(jié)果中的不確定性或含混性是困難的。在現(xiàn)有的位置搜索查詢中的靈活性的缺乏也通常損害搜索引擎性能,因為通常以單一數(shù)據(jù)結(jié)構(gòu)來處理現(xiàn)有的位置搜索查詢。無法調(diào)整數(shù)據(jù)結(jié)構(gòu)并且將該數(shù)據(jù)結(jié)構(gòu)分發(fā)到整個搜索引擎可以導(dǎo)致對位置搜索查詢的處理較慢。克服這樣的瓶頸可能導(dǎo)致額外的搜索引擎復(fù)雜度及費用。因此需要用于處理位置搜索查詢的改進的格式和技術(shù)。另外,也需要改進向用戶報告位置搜索查詢的結(jié)果。
發(fā)明內(nèi)容
通過所公開的過程和搜索引擎的實施例減少或消除了上述不足以及與位置搜索查詢相關(guān)聯(lián)的其它問題。在一些實施例中,用于執(zhí)行位置搜索的方法包括接收位置搜索查詢;確定與位置搜索查詢相對應(yīng)的關(guān)鍵詞;識別與位置搜索查詢中的關(guān)鍵詞相對應(yīng)的一個或多個文檔; 以及向客戶端系統(tǒng)提供識別與一個或多個文檔相對應(yīng)的至少一個位置的信息。確定關(guān)鍵詞可以包括從位置搜索查詢中移除標(biāo)點符號和非位置詞語。關(guān)鍵詞可以包括位置搜索查詢中的一個或多個詞語的一個或多個同義詞。關(guān)鍵詞可以包括與一個或多個詞語相對應(yīng)的預(yù)定的縮略詞。識別一個或多個文檔可以包括確定與關(guān)鍵詞相對應(yīng)的典范式(canonical expression) 0識別一個或多個文檔可以包括確定一個或多個文檔中的每一個的分值。各個分值可以依據(jù)關(guān)鍵詞在多個文檔中的詞頻、在各個文檔中的一個或多個詞與一個或多個關(guān)鍵詞之間的匹配以及與關(guān)鍵詞相對應(yīng)的地理特征的大小。識別一個或多個文檔可以獨立于關(guān)鍵詞的次序。一個或多個文檔可以被存儲在包括與地理特征相對應(yīng)的多個文檔的索引中。多個文檔可以包括與地理特征相對應(yīng)的參考坐標(biāo)。提供識別與一個或多個文檔相對應(yīng)的至少一個位置的信息可以包括如果在一個或多個文檔的前N個排名中,相應(yīng)的文檔的最佳分值大于下一個文檔的次(next)最佳分值的預(yù)定倍數(shù),則提供識別一個位置的信息。提供操作可以包括識別出與一個或多個文檔相對應(yīng)的前N個最高排名的位置,其中最高排名的文檔具有在預(yù)定范圍內(nèi)的分值。在一些實施例中,在前N個排名中的每一個位置包括位置標(biāo)識符。在一些實施例中,在前N個排名中的每一個位置包括指向地像的相應(yīng)的鏈接。提供操作可以包括提供與至少一個位置相對應(yīng)的地像。地像可以以至少一個位置為中心,并且可以包括小于在至少一個位置周圍的預(yù)定大小的區(qū)域。在一些實施例中,至少一個位置可以包括其相應(yīng)的文檔具有所有共同的關(guān)鍵詞的兩個或多個不同的位置。地像可以包括與兩個或多個位置相對應(yīng)的標(biāo)記。在另一個實施例中,存儲在存儲器中的數(shù)據(jù)結(jié)構(gòu)可以被用于執(zhí)行位置搜索查詢。 數(shù)據(jù)結(jié)構(gòu)可以包括與地理特征相對應(yīng)的多個文檔或記錄(在下文中稱為文檔)。在多個文檔中的各個文檔可以包括位置信息和補充信息。位置信息可以包括與一個或多個位置相對應(yīng)的關(guān)鍵詞或標(biāo)志(token)、與一個或多個位置相關(guān)聯(lián)的一個或多個區(qū)域以及關(guān)鍵詞的同義詞。補充信息可以包括與一個或多個位置相對應(yīng)的參考坐標(biāo)。參考坐標(biāo)可以包括一個或多個位置的緯度和經(jīng)度。參考坐標(biāo)可以包括圍繞一個或多個位置的區(qū)域。區(qū)域可以小于預(yù)定的大小。數(shù)據(jù)結(jié)構(gòu)可以與超文本標(biāo)記語言(HTML)相兼容。在各個文檔中的位置信息可以對位置搜索查詢中的詞語的次序不敏感。在另一個實施例中,圖形用戶界面包括響應(yīng)于位置搜索查詢而提供的區(qū)域的地像。地像包括與區(qū)域中的具有與位置搜索查詢相關(guān)聯(lián)的所有共同的詞語的兩個或多個不同的位置相對應(yīng)的兩個或多個標(biāo)記。在另一個實施例中,圖形用戶界面包括響應(yīng)于位置搜索查詢而提供的區(qū)域的地像。地像以位置為中心。地像是獨立于與位置搜索查詢相關(guān)聯(lián)的詞語的次序來提供的。上述的方法、數(shù)據(jù)結(jié)構(gòu)和圖形用戶界面可以被包括在具有一個或多個中央處理單元的搜索引擎系統(tǒng)、在一個或多個計算機中的存儲器、以及存儲在存儲器中并且由一個或多個中央處理器執(zhí)行的一個或多個程序中和/或由它們執(zhí)行。
為了更好地理解本發(fā)明的上述實施例以及其另外的實施例,應(yīng)當(dāng)結(jié)合附圖來參考下面的實施例的描述,其中在所有附圖中相同的參考數(shù)字指代對應(yīng)的部分。圖1是示出了位置搜索過程的實施例的流程圖。圖2是示出了處理位置搜索查詢的實施例的框圖。圖3是示出了將地理特征文檔分布到多個索引上的實施例的框圖。圖4是示出了地理特征文檔的實施例的框圖。圖5A是示出了地像的實施例的框圖。圖5B是示出了地像的實施例的框圖。圖6是示出了響應(yīng)于位置搜索查詢而返回的結(jié)果的實施例的框圖。圖7是示出了搜索引擎系統(tǒng)的實施例的框圖。圖8是示出了搜索引擎的實施例的框圖。圖9是示出了客戶端系統(tǒng)的實施例的框圖。圖10是示出了地理特征文檔數(shù)據(jù)結(jié)構(gòu)的實施例的框圖。圖11描述了關(guān)于當(dāng)前顯示窗口的一組地理區(qū)域。圖12和圖13示出了如何以標(biāo)準(zhǔn)化的(normalized)角距離來測量在地球的表面上的距離和區(qū)域,并且也示出了如何將在視口(viewport)邊緣(skirt)區(qū)域中的地理特征的位置轉(zhuǎn)換為比值。圖14描述了用于根據(jù)視口區(qū)域的半徑確定邊緣區(qū)域的半徑的函數(shù)的圖。圖15描述了用于根據(jù)相對于當(dāng)前視口區(qū)域和邊緣區(qū)域的地理特征的位置來分配分值衰減因子的函數(shù)的圖。
具體實施例方式現(xiàn)將詳細(xì)參考實施例,在附圖中示出了實施例的示例。在下面的詳細(xì)描述中,闡述了大量的特定細(xì)節(jié),以提供對本發(fā)明的全面理解。然而,對于本領(lǐng)域普通技術(shù)人員明顯地, 沒有這些特定的細(xì)節(jié)也可以實現(xiàn)本發(fā)明。在其它的實例中,沒有詳細(xì)描述眾所周知的方法、 過程、組件以及電路,以免不必要地模糊本發(fā)明的各個方面。描述了用于執(zhí)行位置搜索查詢并且向用戶提供相應(yīng)的結(jié)果的系統(tǒng)和方法的實施例。該處理有時被稱為地理編碼(geocoding)??梢允褂民罱拥街T如因特網(wǎng)(也被稱為萬維網(wǎng)或WWW)和/或一個或多個內(nèi)聯(lián)網(wǎng)的網(wǎng)絡(luò)的搜索引擎來從用戶接收諸如城市中的街道地址的位置搜索查詢。對位置搜索查詢進行處理以確定典范式或布爾表達(dá)式。處理可以包括確定在各個位置搜索查詢中的一個或多個關(guān)鍵詞、從各個位置搜索查詢移除標(biāo)點符號和非位置詞語(諸如物品)、以及確定在各個位置搜索查詢中的一個或多個詞語的一個或多個同義詞。同義詞可以包括用于在各個位置搜索查詢中的一個或多個詞語的預(yù)定的縮略詞和/或在各個位置搜索查詢中的一個或多個詞語的預(yù)定的錯拼詞。典范式可以獨立于關(guān)鍵詞的次序,即對關(guān)鍵詞的次序不敏感??梢詫⒌浞妒脚c搜索引擎中的地理特征文檔的索引進行比較。每個地理特征文檔具有與地理特征相對應(yīng)的一組標(biāo)志,其可以是位置(例如街道、城市、鄉(xiāng)村、州,國家)或地理實體(例如湖泊、河流、山脈、陸地、海洋等等)。雖然單個地理特征可以與諸如一組街道地址的一組位置相對應(yīng),但是在識別與位置搜索查詢最匹配的位置或地理特征的環(huán)境中, 可以將與地理特征相關(guān)聯(lián)的所有位置視作“一個位置”。在本文檔的至少某些部分中,同義地使用詞語“地理特征”和“位置”。可以將地理特征文檔的索引分布在搜索引擎中的多個計算機上。索引可以包括位置信息和補充信息。位置信息可以包括關(guān)鍵詞、關(guān)鍵詞的同義詞以及多個位置的鄰近物體。 補充信息可以包括位置的參考坐標(biāo),諸如緯度和經(jīng)度和/或范圍或街道號碼??梢酝ㄟ^計算機返回與各個典范式緊密匹配的地理特征文檔的子集的分值??梢源_定前N個地理特征文檔的排名。如果最佳分值大于次最佳分值的預(yù)定倍數(shù),則可以將與最佳分值相對應(yīng)的位置隨同相應(yīng)位置的地像一起提供給用戶。地像可以以相應(yīng)的位置為中心并且可以調(diào)整大小以包括環(huán)繞相應(yīng)位置的預(yù)定的邊界框、區(qū)域或窗口??蛇x地, 如果最佳分值小于預(yù)定倍數(shù),則可以將與分值的范圍相對應(yīng)的幾個位置提供給用戶。可以提供諸如位置標(biāo)識符(城市、州、郵政編碼和/或國家)和/或指向相應(yīng)的地像的鏈接的附加信息。因此,實施例可以適應(yīng)(accommodate)廣泛的多種格式、允許在位置搜索查詢中和/或在結(jié)果中的含混性(ambiguity)、以及可以使用并行處理以提供位置搜索查詢(有時稱為位置搜索)的高速處理。因此,實施例可以提供位置搜索查詢的改進的處理。現(xiàn)在將注意力轉(zhuǎn)向位置搜索過程。圖1是示出了位置搜索過程100的實施例的流程圖。雖然在下面描述的位置搜索過程100包括看起來按照特定的次序出現(xiàn)的許多操作, 但是明顯地,過程100可以包括可以(例如使用并行處理器或多線程環(huán)境)串行或并行執(zhí)行的更多或更少的操作,可以改變兩個或更多個操作的次序和/或可以將兩個或更多個操作組合為單個操作??梢越邮瘴恢盟阉鞑樵?110)??梢源_定關(guān)鍵詞(112)。可以將位置搜索查詢轉(zhuǎn)換為典范式形式(114)。這可以包括從位置搜索查詢中移除一個或多個非位置或噪聲詞或詞語、標(biāo)點符號、變音符(即添加到字母上以指示特殊發(fā)音的符號)和/或街道號碼??梢陨刹紶柋磉_(dá)式(116)。布爾表達(dá)式可以包含位置搜索查詢中的一個或多個詞或詞語的同義詞。將搜索查詢轉(zhuǎn)換為典范式形式也可以包括擴展一個或多個縮略詞,諸如將“st. ”或 “st”擴展為“street”。在一些實施例中,通過用包括相應(yīng)正確拼寫的詞的用于錯拼詞的“同義詞”來補充查詢,可以“校正”在位置搜索查詢中的錯拼詞或詞語(例如查詢處理過程確定很可能是錯拼的詞語)。確定關(guān)鍵詞(112)可以使結(jié)果查詢獨立于關(guān)鍵詞的次序。可以從地理特征文檔數(shù)據(jù)庫識別N(例如10)個最佳匹配的地理特征文檔(118)??梢蕴峁┡c所識別的文檔相對應(yīng)的至少一個地理特征或位置(120)??蛇x地,在一些情形中向發(fā)出請求的用戶提供零個文檔。例如在一些實施例中,如果所有N個最佳匹配的地理特征文檔具有小于第一閾值的分值(在下面描述分值),則沒有地理特征或位置被識別。在另一個示例中, 過濾N個最佳匹配的地理特征文檔的列表,以移除(A)分值小于第一閾值的文檔,以及(B) SAF(在下面描述)小于第二閾值并且分值小于第三閾值(例如第三閾值通常將高于(即更多限制的)第二閾值)的文檔。后面的“過濾”將超過第一閾值但是遠(yuǎn)在當(dāng)前視口(如在下面所定義的)之外的低質(zhì)量匹配移除,從而允許將在當(dāng)前視口內(nèi)或更接近當(dāng)前視口的另一個地理特征或位置識別為最佳匹配。識別N個最佳匹配文檔118需要多個計算操作。首先,識別滿足搜索查詢的地理特征文檔118A。例如,這可以通過以下完成檢索具有與查詢詞語的每一個匹配的標(biāo)志的文檔的列表并且然后對所檢索的列表執(zhí)行布爾與(AND)運算以產(chǎn)生具有與所有查詢詞語匹配的標(biāo)志的文檔(如果有)的列表。在該環(huán)境中,每個標(biāo)志是與地理特征相關(guān)聯(lián)的詞、 符號或詞和/或符號的組合。為了彌補人為錯誤,文檔的標(biāo)志可以包括描述與文檔相關(guān)聯(lián)的地理特征的各種詞語的各種錯拼,并且可以包括鄰近的或附近的地理特征的名稱(以及其錯拼)(例如萬一用戶的搜索查詢不正確地指定了鄰近的城市或類似物但卻精確地列出了與地理特征相關(guān)聯(lián)的詞語)。在另一個示例中,在識別滿足搜索查詢的文檔之前,首先通過移除任何非位置的詞語和任何標(biāo)點來“重寫”搜索查詢。可選地,在搜索查詢中的各個單個詞語可以被包括該詞語和一個或多個同義詞的布爾或(OR)表達(dá)式替換。在一些實施例中,對于已經(jīng)為其預(yù)定義了一組同義詞的查詢中的每一個詞語,將同義詞添加到搜索查詢。被添加到搜索查詢作為布爾或(OR)表達(dá)式的一部分的“同義詞”也可以包括復(fù)合詞語的單個組分的“類屬同義詞”。例如,街道名稱“N Rengstorff”的第一組分的類屬同義詞是"directional_keyword (方向關(guān)鍵詞),,,其與包括 N、S、E、W、North (北)、South (南)、 East(東)以及West(西)的任何方向關(guān)鍵詞相匹配。類屬同義詞的另一個示例是‘‘a(chǎn)ffix_ keyword (詞綴關(guān)鍵詞)”,其與諸如 ave.、avenue (大街)、blvd.、boulevard (大道)、In、 lane(巷)、rd、road(路)、st、street (街道)、rue(街)等等的詞(或標(biāo)志)相匹配。類似的類屬同義詞也作為標(biāo)志被包括在文檔數(shù)據(jù)庫中,在與相應(yīng)的“正確的”關(guān)鍵詞相同的地址組分位置。在重寫的搜索查詢中的類屬同義詞和文檔之間的匹配比在搜索查詢中的非同義詞的關(guān)鍵詞和文檔中的非同義詞的標(biāo)志之間的匹配產(chǎn)生低得多的分值。可選地,可以根據(jù)預(yù)定義的規(guī)則對搜索查詢進行其它的修改,以便提高搜索結(jié)果的質(zhì)量。然后,為所識別的匹配的文檔計算分值118B。在下面較詳細(xì)地討論了用于為每個匹配的文檔生成分值的示范性過程。通常,與搜索查詢有高質(zhì)量匹配的文檔比與搜索查詢有更低質(zhì)量匹配的文檔被賦值更高的分值。諸如與匹配的文檔相對應(yīng)的地理特征的位置、 相對于在其中顯示了地圖或圖像的當(dāng)前視口、以及這些地理特征的相對重要性的其它因子也可以是在計算分值中的因子。然后基于所計算的分值將匹配的文檔進行排名118C,并且識別N個最高排名的文檔118D。在一些實施例中,將文檔的排名和選擇N個最高排名的文檔組合成單個操作(例如通過在分值上運行前N個過濾)。在一些實施例中,不對具有比前 N個文檔低的排名的文檔進行排名。圖2是示出了處理位置搜索查詢的實施例200的框圖。將諸如“155Abe Ave. Great Neck NY”的位置搜索查詢210用作說明性示例。在操作114期間可以將街道號碼155和句點移除導(dǎo)致Abe Ave Great Neck NY。在操作116中,可以將位置搜索查詢轉(zhuǎn)換為布爾表達(dá)式,包括擴展縮略詞(諸如Ave)和同義詞。由此產(chǎn)生的布爾表達(dá)式是Abe AND (Ave OR Avenue OR Street OR Lane OR Court OR. . .) AND (Great Neck)AND(NY OR(NEW YORK))。該布爾表達(dá)式獨立于在位置搜索查詢210中的原始詞或詞語次序,即對在位置搜索查詢210 中的原始詞或詞語次序不敏感。這樣,其可以適應(yīng)關(guān)于位置搜索查詢210的廣泛的各種格式。這樣的布爾表達(dá)式具有可以在使用分布式地理特征文檔數(shù)據(jù)庫的搜索引擎中處理的形式。這將在下面進一步討論。現(xiàn)在將注意力轉(zhuǎn)向地理特征文檔數(shù)據(jù)庫的實施例。圖3是示出了將地理特征文檔分布到多個索引上的實施例300的框圖,所述索引可以被存儲在搜索引擎中的多個計算機上。地理特征文檔310可以包括多個地理特征文檔312。諸如文檔312-1的各個地理特征文檔可以包括特征類型(諸如街道、路、路線、城市、國家、十字路口等等)、特征名稱(即位置的名稱)、主要的詞語或標(biāo)志(諸如與特征相關(guān)聯(lián)的特定關(guān)鍵詞)、附近的特征詞語或標(biāo)志(諸如相鄰的或鄰近的地標(biāo)或感興趣的位置)以及補充信息(諸如特征的緯度和經(jīng)度)。 補充信息可以由地圖或多級(tile)服務(wù)器使用,以展現(xiàn)與在各個地理特征文檔中的位置相對應(yīng)的地像。這將在下面參考圖5和7進一步描述。分區(qū)器(partiti0ner)314可以經(jīng)由一個或多個索引器316將地理特征文檔310 的子集分布到在多個索引320中的各個索弓丨,諸如索引320-1。索引320-1可以與索引 320(其可以被集體視作整個地理特征文檔數(shù)據(jù)庫的反向索引)的一個分區(qū)或子分區(qū)相對應(yīng)。索引320可以被存儲在搜索引擎中的一個或多個計算機上。子集可以被這樣分布每個索引320處理與各個位置搜索查詢相關(guān)聯(lián)的等價的處理部分或近似等價的處理部分。例如,可以將文檔312-1隨機地或偽隨機地分布在索引320上。例如,可以使用散列函數(shù)和取模函數(shù)來將地理特征文檔分布到M個索引器上,其中M是索引(有時稱為索引分區(qū)或索引子分區(qū))的數(shù)量。在該示例中,將散列函數(shù)應(yīng)用于每個地理特征文檔(或應(yīng)用于文檔的預(yù)定義的部分)以產(chǎn)生散列值,然后將“取模M”函數(shù)應(yīng)用于散列值以產(chǎn)生在0和M-I之間的選擇值。選擇值確定M個索引器316中的哪一個接收文檔用于索引。當(dāng)處理各個搜索查詢時,索引320的每一個可以提供在與各個查詢匹配的文檔的子集中的一組前N個(諸如前10個)文檔。如在下面進一步討論的,前N個文檔可以是基于分值的排名。具體地,可以為匹配搜索查詢的每個文檔確定分值。分值可以基于各個位置搜索查詢的典范式和/或布爾表達(dá)式。參考圖7,由各個服務(wù)器730來處理索引320的每個子分區(qū)的查詢處理,所述服務(wù)器返回識別匹配查詢的最高排名文檔中的N個的信息??梢员环Q為聚合器或分區(qū)級別查詢執(zhí)行管理器的服務(wù)器7 例如通過從由服務(wù)器730返回的結(jié)果之中選擇N個最佳搜索結(jié)果將來自服務(wù)器730的搜索結(jié)果相組合。在層級中的下一個較高級別的查詢執(zhí)行管理器720,通過從由聚合器720返回的結(jié)果之中選擇N個最佳搜索結(jié)果將來自所有聚合器726的搜索結(jié)果相組合。更一般地,在分布式層級中的每一個級別選擇最佳搜索結(jié)果的預(yù)定義的數(shù)量并且將其傳遞到下一個級別。例如,如果在給定的級別接收了 10組前10個文檔,則可以確定前10個文檔并且將其傳遞。以這種方式,使用分布式實現(xiàn)可以確定和/或識別在文檔312中的前N個文檔。該方法可以提高搜索引擎的性能并且可以減少系統(tǒng)費用和/或復(fù)雜度。圖4是示出了諸如文檔312-1的地理特征文檔400的實施例的框圖。文檔400可以與超文本標(biāo)記語言(HTML)和/或可擴展標(biāo)記語言(XML)兼容。文檔400可以包括與諸如位置(例如街道、十字路口、城市、感興趣地點等等)的地理特征相對應(yīng)的信息。一些文檔400可以包括用于多于一個位置(例如街道、城市的多個分區(qū)或類似物)的信息。這樣的位置信息可以包括與一個或多個位置相對應(yīng)的關(guān)鍵詞、與一個或多個位置相關(guān)聯(lián)的一個或多個區(qū)域以及一個或多個關(guān)鍵詞的同義詞。如在實施例400中所示,在HTML標(biāo)記<CN>之后的文本可以指示位置的類型,在該情況中是route (路線)。在HTML標(biāo)記<CNA>之后的文本可以指示位置的明確的名稱,在該情況中是Victoria Street (維多利亞街)。在HTML標(biāo)記<CA>之后的文本可以指示與位置相對應(yīng)的關(guān)鍵詞,諸如Wfestminster (威斯敏斯特)、London (倫敦)和England (英格蘭)。在HTML標(biāo)記<A>之后的文本可以指示關(guān)鍵詞和/或位置的明確名稱的同義詞,諸如 Angleterre,United Kingdom(聯(lián)合王國)和 Verenigd Koninkrijk。同義詞可以包括來自
9外語(即與關(guān)鍵詞的語言不同的語言)的詞。在一些實施例中,同義詞可以包括在一個或多個關(guān)鍵詞中和/或在位置的明確名稱中的縮略詞和/或普通錯拼。在HTML標(biāo)記<Cn>之后的文本可以指示在該位置附近的或鄰近該位置的其它位置或區(qū)域。在該示例中,附近的位置或區(qū)域是Islington、Wfest End (倫敦西區(qū))和Covent Garden (考文特花園)??梢詫⒃谖臋n400中的標(biāo)記的文本或信息項稱為信息項或文本項或標(biāo)志。由索引器316(圖幻來處理信息項或文本項以產(chǎn)生索引320。文檔400可以包括包含更少或額外標(biāo)記的更少信息或額外信息。例如,文檔400可以包括諸如與地理特征相對應(yīng)的參考坐標(biāo)的補充信息,其可以被地圖或多級服務(wù)器使用。 在示范性實施例中,參考坐標(biāo)可以包括一個或多個位置的緯度和經(jīng)度和/或?qū)⒁粋€或多個位置包括在內(nèi)的街道號碼的范圍。在其它的實施例中,可以改變在文檔400中的信息的次序。可以將文檔400中的兩個或更多個項組成單個項。在文檔400中的補充信息的一個特定的示例是用于街道或其它路線的補充信息。 在該示例中,補充信息包括一個或多個段,每一個對應(yīng)于街道或路線的一部分。每個段指定與該段的第一和第二端點相對應(yīng)的起始和結(jié)束街道號碼,并且也指定該段的每個端點的緯度和經(jīng)度。當(dāng)包括街道號碼的位置搜索查詢與文檔400相匹配時,將指定的街道號碼用來識別在文檔的補充信息中的最佳匹配的段。如果指定的街道號碼處于最佳匹配的段的起始和結(jié)束街道號碼之間,使用線性插值來確定由位置搜索查詢所指定的位置的緯度和經(jīng)度。 可選地,如果指定的街道號碼與最佳匹配的段的起始或結(jié)束街道號碼相匹配,則將相應(yīng)的緯度和經(jīng)度用于由位置搜索查詢所指定的位置的位置。如先前所提及,當(dāng)將與各個位置搜索查詢相對應(yīng)的典范式和/或布爾表達(dá)式與在地理特征文檔310(圖幻中的文檔312(圖幻相比較時,可以確定指示匹配的程度的分值。 這些分值可以指示文檔212以及因而相應(yīng)的位置與位置搜索查詢的相關(guān)性。這樣,響應(yīng)于位置搜索查詢,搜索引擎可以使用分值來確定最佳結(jié)果(即最佳位置),或前N個結(jié)果的列表(即前N個位置)。在一些實施例中,可以僅為文檔312(圖幻的子集確定分值,即搜索引擎可以確定可以與位置搜索查詢相對應(yīng)的文檔的候選組。在示范性實施例中,包含在文檔的該候選組中的標(biāo)準(zhǔn)可以包括如下要求關(guān)鍵詞中的至少一個與特征的明確名稱(在圖4中的<CNA> 標(biāo)記之后的文本)相匹配以及在典范式和/或布爾表達(dá)式中的元素或詞語的每一個在文檔中出現(xiàn)。在示范性實施例中,可以使用‘ ^IR1 xFRxQ來確定分值,其中是與典范式
和/或布爾表達(dá)式中的各個詞語或元素“i”相對應(yīng)的查詢匹配分值(關(guān)于特定的候選文檔),F(xiàn)R是指示特征或位置的重要性的“特征排名”,E是標(biāo)準(zhǔn)值(normalization value)以及Q是可選的因子。Q可以與在查詢和候選文檔之間的匹配的質(zhì)量相對應(yīng)、或其可以與可以被用來提高搜索結(jié)果的質(zhì)量的任何其它度量相對應(yīng)。Q因子的示例是在下面參考圖11-15 描述的SAF因子。在另一個示例中,將Q設(shè)置為等于SAF*ProduCt(Pj),其中SAF是在下面描述的分值衰減因子,每個Pj是懲罰因子,以及I^roduCt(Pj)是所有懲罰因子的乘積(即乘法積)。懲罰因子的每一個具有1. 0的默認(rèn)值,并且如果相應(yīng)的懲罰可應(yīng)用于所述的文檔將較低的值(例如0.7或類似值)賦值給懲罰因子。懲罰因子的示例是:A)當(dāng)文檔既不在用戶的國家也不在其當(dāng)前視口(如在下面所定義的)時應(yīng)用的懲罰因子;B)當(dāng)在文檔和查詢之間的匹配是非精確匹配(例如,因為查詢包含外來的或錯誤的詞語或符號,并且在錯誤的詞語或符號和文檔之間的唯一匹配是具有“類屬同義詞”標(biāo)志(參見上述關(guān)于“類屬同義詞”的解釋)的匹配)時應(yīng)用的懲罰因子;以及C)當(dāng)在查詢和文檔之間的匹配缺少關(guān)鍵元素(例如,當(dāng)查詢與文檔的街道名稱標(biāo)志和國家標(biāo)志、而不是城市標(biāo)志相匹配時)時應(yīng)用的懲罰因子。在其它的實施例中可以使用其它的懲罰因子。通常,懲罰因子與指示在地理特征文檔和搜索查詢之間的潛在低劣質(zhì)量匹配的情況相關(guān)聯(lián)。在其它的實施例中,沒有使用 Q,或等價地將Q設(shè)置為等于1。在一些實施例中,標(biāo)準(zhǔn)值E是完美匹配的分值的總和的最大值、或等價地是搜索查詢中的關(guān)鍵詞的標(biāo)志量的總和。1 值的總和可以被稱為候選文檔的總匹配分值或頂分值。在搜索查詢中的特定關(guān)鍵詞W^i的值可以包括權(quán)重的乘積。權(quán)重可以包括在典范式和/或布爾表達(dá)式中的相應(yīng)元素或詞語的標(biāo)志量、相關(guān)性分值以及元素量。標(biāo)志量可以與詞語的類型相對應(yīng),其中詞語的類型可以包括停用詞(stop word)、街道詞綴關(guān)鍵詞(例如諸如法語中的“rue,,的街道前綴詞或諸如英語中的“ street,,、“avenue,,、“road,,以及 “place”的街道后綴詞)、號碼、同義詞以及其它關(guān)鍵詞,詞語的每個預(yù)定義的類型被賦予預(yù)定義的標(biāo)志量。預(yù)定義的標(biāo)志量值可以具有預(yù)定義的范圍,諸如0到1、或0到8或類似范圍。在一些實施例中,默認(rèn)的標(biāo)志量(用于“其它的關(guān)鍵詞”)是1,而諸如同義詞、街道詞綴關(guān)鍵詞以及停用詞的標(biāo)志類型都被賦予較低的標(biāo)志量值。在一些實施例中,同義詞比街道詞綴詞被賦予更大的標(biāo)志量。相關(guān)性分值可以基于文本匹配的程度而改變,對于在查詢關(guān)鍵詞和文檔的信息元素之間的完全文本匹配具有預(yù)定義的最大值。當(dāng)查詢關(guān)鍵詞與文檔的信息元素的最佳匹配僅是部分匹配(例如,查詢關(guān)鍵詞僅與多詞元素的一個詞相匹配)時,相關(guān)性分值小于預(yù)定義的最大值,并且反映文本匹配的程度。元素量可以作為與匹配查詢關(guān)鍵詞的信息項(在候選文檔中)相關(guān)聯(lián)的地理特征的大小或類型的函數(shù)而改變。例如,作為國家名稱的信息項比作為地點名稱(諸如城市名稱)的信息項可以被給予更高的元素量,后者進而比作為街道名稱的信息被給予更高的值。元素量也可以反映與查詢關(guān)鍵詞匹配的信息項的類型。例如,包含地理特征的明確名稱的信息項可以被賦予最高的元素量,作為“環(huán)境”項(例如街道所位于的城市或國家)的信息項可以被賦予下一個最高的元素量,以及包含附近城市的名稱、區(qū)域或其它地理特征的信息項可以被賦予最低的元素量。在一些實施例中,用于候選文檔中的信息項的元素量等于兩個元素量因子的乘積,其中一個基于通過信息項命名的地理特征的大小或類型并且其中第二個基于與查詢關(guān)鍵詞相匹配的信息項(明確的名稱、環(huán)境或附近的特征)的類型。在一些其它的實施例中,用于候選文檔中的信息項的元素量等于這兩個元素量因子的總和。用于候選文檔的特征排名FR可以基于文檔頻率(在圖3的數(shù)據(jù)庫310中的文檔 312中提及的特征的次數(shù)),或其可以基于地理特征的大小,較大的特征(即地理廣度)被給予較高的特征排名值。在其它的實施例中,特征排名可以基于(至少部分地)與候選文檔相對應(yīng)的地理特征的重要性或普及性。例如,通過對地理特征的名稱的萬維網(wǎng)搜索或其它的數(shù)據(jù)庫搜索可以確定與候選文檔相對應(yīng)的地理特征的重要性或普及性。當(dāng)查詢關(guān)鍵詞具有一個或多個同義詞時,為同義詞的每一個以及查詢關(guān)鍵詞計算頂分值(關(guān)于候選文檔),然后當(dāng)為候選文檔計算組合的頂分值時選擇并且使用這些頂分值中的最佳值。 在一些實施例中,修改了在上面示出的評分函數(shù),以增加一個或多個因子相對于其它因子的重要性。例如可以將評分函數(shù)變?yōu)?br>
f
vE
Ri
Λ
N M
xFRxQ,其中指數(shù)M是大于1的值(例如2、2.5或3),并且其典型地在2和5之間 (2 ^ M ^ 5),以便在評分函數(shù)中給予規(guī)范化總匹配分值比特征排名FR和Q因子更多的重要性。在一些實施例中,修改了上述的評分函數(shù),以相對于其名稱與相同的詞語相匹配但具有不同的次序的文檔更偏向于其名稱具有按照與在搜索查詢中放置的詞語相同的次序的詞語的文檔。例如,可以用成對(pair-wise)匹配分值補充(例如,總匹配分值+成對匹配分值)總匹配分值(例如,總匹配分值+成對匹配分值),所述成對匹配分值基于與文檔名稱中的排序的詞語對相匹配的在搜索查詢中的排序的詞語對(排序的、鄰近的詞語)的數(shù)量?,F(xiàn)在將注意力轉(zhuǎn)向用于響應(yīng)于位置搜索查詢向用戶提供一個或多個位置結(jié)果的過程的實施例。如果在前N個排名中第一文檔的最佳分值大于第二文檔的次最佳分值的預(yù)定倍數(shù)(例如次最佳分值小于最佳分值的70%)中,可以將與第一文檔相對應(yīng)的位置提供給用戶。使用與文檔一起存儲的補充信息,地圖或多級服務(wù)器可以將以該位置為中心的區(qū)域的地像提供給用戶。例如,如果補充信息包括括入(bracket)該位置的街道地址,則可以使用線性插值來確定地像的中心。圖5A是示出了提供給用戶的地像500的實施例的框圖。將與位置相對應(yīng)的位置標(biāo)記512-1置于邊界框510的中心。調(diào)整邊界框510 的大小,以使得可以提供圍繞該位置的區(qū)域514??梢曰诘乩硖卣骰蛭恢玫拇笮泶_定邊界框510的大小。不同大小的特征(諸如城市或國家)可以具有不同大小的邊界框。在一些情況中,在區(qū)域中多于一個的不同位置(即在空間上彼此分離)可以具有相同或幾乎相同的分值。例如,多于一個的位置可以與對應(yīng)于位置搜索查詢的典范式和/ 或布爾表達(dá)式中的所有關(guān)鍵詞相匹配。在這樣的情況中,可以將這些結(jié)果提供給用戶。這在圖5B中示出,所述圖5B是示出了地像550的實施例的框圖。將邊界框510定義為包括滿足預(yù)定義的選擇標(biāo)準(zhǔn)的所有位置。與不同位置相對應(yīng)的位置標(biāo)記512被包括在邊界框510中。在一些實施例中,標(biāo)記是鏈接。通過在標(biāo)記中的一個上點擊,用戶可以選擇相應(yīng)的位置??梢詫⒃撐恢门c諸如地像500(圖5A)的地像一起展現(xiàn)給用戶。在一些其它的實施例中,挨著地圖550列出了最佳匹配位置的列表520。在列表中的每一項可以包括指向與該位置相對應(yīng)的地圖的鏈接??梢杂蓙碜韵鄳?yīng)的地理特征文檔的典范名稱(在圖 4中的示例中通過CNA標(biāo)記識別)和環(huán)境文本(在圖4中的示例中通過CA標(biāo)記識別)表示在列表520中的每一項。如果最佳分值不大于次最佳分值的預(yù)定倍數(shù),則可以提供與前N個排名中的范圍相對應(yīng)的位置。例如,可以提供具有大于或等于最佳分值的50%的分值的位置(來自前N 個結(jié)果之中)。可以將各種信息與位置一起提供。在圖6中示出了用于顯示響應(yīng)于位置搜索查詢而返回的多個搜索結(jié)果的示范性圖形用戶界面。在一個區(qū)域610或列中,列出了最佳匹配地理特征或位置,并且在圖形用戶界面的另一個區(qū)域中示出了單個小地圖620,每一個用于在區(qū)域610中列出的最佳匹配地理特征或位置中的每一個。在該示例中,位置搜索查詢是“San Antonio(圣安東尼奧)”,其產(chǎn)生了多個可能相關(guān)的回答。所述回答可以與諸如城市、州、郵政編碼和/或國家的一個或多個位置標(biāo)識符一起提供。在一些實施例中,小地圖620每一個都包括指向相應(yīng)的、更大的地圖的鏈接。類似地,在一些實施例中,在區(qū)域 610中的所列出的最佳匹配位置的每一個包括指向相應(yīng)的更大的地圖的鏈接。在回答或小地圖中的一個上點擊可以允許將該位置與諸如地像500(圖5A)的地像一起展現(xiàn)給用戶?,F(xiàn)在將注意力轉(zhuǎn)向用于實現(xiàn)先前所描述的方法、地理特征文檔和圖形用戶界面的搜索引擎、客戶端計算機和數(shù)據(jù)結(jié)構(gòu)的實施例。圖7是示出了搜索引擎系統(tǒng)700的框圖,該搜索引擎系統(tǒng)響應(yīng)于從一個或多個客戶端710 (在本文也稱為客戶端裝置或客戶端系統(tǒng)) (諸如客戶端系統(tǒng)或裝置900(圖9))接收的位置搜索查詢而生成位置搜索查詢結(jié)果。每一個客戶端710可以具有諸如搜索助手模塊930(圖9)的搜索助手。應(yīng)當(dāng)理解,如在圖7中所示的搜索引擎系統(tǒng)700的布局僅是示范性的并且可以采用任何其它適當(dāng)?shù)牟季只蚺渲谩?因此,搜索引擎系統(tǒng)700可以包括更少或額外的組件或模塊,可以以硬件和/或軟件實現(xiàn), 并且可以改變位置或一個或多個組件或模塊。搜索引擎系統(tǒng)700被用于搜索諸如地理特征文檔310(圖3)的文檔的索引。搜索引擎系統(tǒng)700可以包括使用通信網(wǎng)絡(luò)712與客戶端710通信的制圖 (mapping)應(yīng)用服務(wù)器714。通信網(wǎng)絡(luò)712可以是因特網(wǎng)和/或內(nèi)聯(lián)網(wǎng)。制圖應(yīng)用服務(wù)器 714可以將位置搜索查詢轉(zhuǎn)發(fā)到查詢服務(wù)器716,并且從查詢服務(wù)器716接收位置結(jié)果。制圖應(yīng)用服務(wù)器714可以使用位置結(jié)果中的補充信息來從多級服務(wù)器718訪問適當(dāng)?shù)牡叵?,并且將這樣的地像與位置結(jié)果一起提供給客戶端710。查詢服務(wù)器716可以確定位置搜索查詢中的關(guān)鍵詞,包括將位置搜索查詢轉(zhuǎn)換為典范形式和/或生成布爾表達(dá)式??梢詫⒌浞妒胶?或布爾表達(dá)式轉(zhuǎn)發(fā)到查詢執(zhí)行管理器 720用于處理。查詢執(zhí)行管理器720可以將典范式和/或布爾表達(dá)式提供給地理特征文檔數(shù)據(jù)庫722中的多個分區(qū)724。在諸如分區(qū)7M-K的每一個分區(qū)724中,分區(qū)級別查詢執(zhí)行管理器7 可以將典范式和/或布爾表達(dá)式分布到用于一個分區(qū)的服務(wù)器730。服務(wù)器 730可以存儲索引320(圖幻。如先前所討論的,在地理特征文檔數(shù)據(jù)庫722中的服務(wù)器可以以分級的方式確定與位置搜索查詢相對應(yīng)的前N個文檔。在接收了前N個文檔后,查詢執(zhí)行管理器720可以訪問在文檔服務(wù)器734中的諸如補充信息的相應(yīng)的地理或位置信息。在一些實施例中,地理或位置信息可以被包括在地理特征文檔數(shù)據(jù)庫722中??梢詫⒅T如查詢服務(wù)器716的在搜索引擎系統(tǒng)700中的元素分散在一組服務(wù)器上,以提供位置搜索查詢的非??焖俚奶幚?。在一些實施例中,系統(tǒng)700可以在多個數(shù)據(jù)中心(例如位于不同的洲和/或在一個或多個國家內(nèi)的不同位置)中在多個位置包括查詢服務(wù)器、查詢執(zhí)行管理器、多級服務(wù)器以及地理特征文檔數(shù)據(jù)庫的復(fù)本(replica)。使用域名系統(tǒng)(DNS)基于數(shù)據(jù)中心的每一個的當(dāng)前負(fù)載、地理地點和/或操作狀態(tài)將在客戶端710 之一的用戶向搜索引擎系統(tǒng)700提交的位置搜索查詢路由到適當(dāng)?shù)臄?shù)據(jù)中心。每一個后端優(yōu)選地包括連接到通信網(wǎng)絡(luò)712的多個查詢服務(wù)器,諸如查詢服務(wù)器716。通信網(wǎng)絡(luò)712可以是因特網(wǎng),但是也可以是任意的局域網(wǎng)(LAN)和/或廣域網(wǎng)(WAN)。 在一些實施例中,每一個查詢服務(wù)器716是經(jīng)由HTTP、XML或類似的協(xié)議以網(wǎng)頁的形式接收位置搜索查詢請求并且遞送搜索位置結(jié)果的服務(wù)器??蛇x地,如果查詢服務(wù)器716用在LAN 內(nèi),即內(nèi)部地而不被公眾使用,其可以是內(nèi)聯(lián)網(wǎng)服務(wù)器。諸如查詢服務(wù)器716的查詢服務(wù)器被配置以控制搜索過程,包括搜索文檔索引、分析和格式化搜索結(jié)果。在一些實施例中,后端包括連接到諸如查詢服務(wù)器716的多個查詢服務(wù)器的多個查詢執(zhí)行管理器720。圖8是示出了搜索引擎800的實施例的框圖。搜索引擎800可以包括至少一個數(shù)據(jù)處理器或中央處理單元(CPU)810、用于與其它計算機、服務(wù)器和/或客戶端通信的通信或網(wǎng)絡(luò)接口 820、存儲器822以及用于將這些組件相互連接的一個或多個信號線812。一個或多個信號線812可以組成一個或多個通信總線。存儲器822可以包括高速隨機存取存儲器和/或非易失性存儲器,諸如一個或多個磁盤存儲裝置。存儲器822可以存儲包括用于處理基本系統(tǒng)服務(wù)和用于執(zhí)行依賴硬件的任務(wù)的程序的操作系統(tǒng)(或一組指令)824,諸如LINUX、UNIX或WINDOWS。存儲器822也可以將通信程序(或一組指令)存儲在網(wǎng)絡(luò)通信模塊擬6中。通信程序被用于與諸如客戶端 710(圖7)的客戶端、以及與搜索引擎系統(tǒng)700(圖7)中的其它服務(wù)器和計算機通信。存儲器822也可以存儲與查詢服務(wù)器716 (圖7)相對應(yīng)的查詢服務(wù)器模塊(或一組指令)、地理特征文檔數(shù)據(jù)庫722、文檔832以及所選擇的結(jié)果836。查詢服務(wù)器模塊716 可以包括可以如上所述重寫所接收的搜索查詢的關(guān)鍵詞處理器828。地理特征文檔數(shù)據(jù)庫 722可以包括多個索引830。文檔832可以包括包含地理或位置信息的多個文檔834。所選擇的結(jié)果836可以包括一個或多個位置搜索查詢的結(jié)果838。雖然圖8(類似于圖7)將搜索引擎800示出為多個分離的項,但是更多地意在把圖8作為可以在搜索引擎系統(tǒng)中存在的各種特征的功能描述而不是作為在此所述的實施例的結(jié)構(gòu)性示意。實際上,如本領(lǐng)域普通技術(shù)人員所認(rèn)識到的,搜索引擎800的功能可以分布在大量的服務(wù)器或計算機上,所述服務(wù)器的各種群組執(zhí)行這些功能的特定子集。在圖8 中分離示出的項可以被組合并且一些項可以被分離。例如,可以在單個服務(wù)器上實現(xiàn)在圖8 中分離示出的一些項,并且可以由一個或多個服務(wù)器來實現(xiàn)單個項。在搜索引擎系統(tǒng)中的服務(wù)器的實際數(shù)量以及特征在它們中如何分配因?qū)崿F(xiàn)的不同而不同,并且可以部分地基于系統(tǒng)所存儲的信息量和/或系統(tǒng)在高峰使用期間以及平均使用期間必須處理的數(shù)據(jù)流量。圖9是示出了客戶端計算機、裝置或系統(tǒng)900的實施例的框圖??蛻舳讼到y(tǒng)900可以是臺式計算機、膝上型計算機、個人數(shù)字助理(PDA)、蜂窩電話、個人導(dǎo)航裝置或類似物。 客戶端系統(tǒng)900通常包括一個或多個處理單元(CPU) 910、用戶接口 914、一個或多個網(wǎng)絡(luò)或其它通信接口 912、存儲器922以及用于連接這些組件的一個或多個通信總線920。用戶接口 914可以包括一個或多個鍵盤918、一個或多個顯示器916、和/或諸如鼠標(biāo)的一個或多個指示器(未示出)。存儲器922可以包括諸如DRAM、SRAM、DDR RAM或其它隨機存取固態(tài)存儲裝置的隨機存取存儲器;以及可以包括諸如一個或多個磁盤存儲裝置、光盤存儲裝置、 閃存裝置或其它非易失性固態(tài)存儲裝置的非易失性存儲器。通信總線920可以包括互連并且控制系統(tǒng)組件之間的通信的電路(有時稱為芯片集)。存儲器922可以包括位于遠(yuǎn)離中央處理單元910的大容量存儲器。在一些實施例中,存儲器922可以包括操作系統(tǒng)(或一組指令)擬4、網(wǎng)絡(luò)通信模塊(或一組指令)926、瀏覽器/工具模塊擬8和/或搜索助手模塊(或一組指令)930。搜索助手模塊930可以包括輸入和選擇監(jiān)控模塊(或一組指令)932、傳輸模塊(或一組指令)934、搜索結(jié)果接收模塊(或一組指令)936和/或顯示模塊(或一組指令)936。諸如LINUX、UNIX或WINDOWS的操作系統(tǒng)擬4可以包括用于處理各種基本系統(tǒng)服務(wù)和用于執(zhí)行依賴硬件的任務(wù)的程序(或指令集)??梢允褂镁W(wǎng)絡(luò)通信模塊擬6來經(jīng)由一個或多個通信網(wǎng)絡(luò)接口 912和諸如因特網(wǎng)、其它廣域網(wǎng)、局域網(wǎng)、城域網(wǎng)等等的一個或多個通信網(wǎng)絡(luò)將客戶端系統(tǒng)900連接到其它計算機(例如其它客戶端計算機和/或搜索引擎)。瀏覽器/工具模塊9 可以是客戶端系統(tǒng)900的用戶可以使用來與在一個或多個通信網(wǎng)絡(luò)上的一個或多個主機(諸如一個或多個網(wǎng)站和/或網(wǎng)頁)通信和/或交換信息的 web瀏覽器。例如,用戶可以使用瀏覽器/工具模塊擬8在因特網(wǎng)上沖浪(例如顯示網(wǎng)頁和 /或網(wǎng)站)。用戶可以使用搜索助手模塊930(例如瀏覽器擴展、瀏覽器工具欄或嵌在搜索引擎網(wǎng)頁中的指令)來利用搜索引擎執(zhí)行諸如位置搜索查詢的一個或多個搜索查詢,并且接收相應(yīng)的搜索結(jié)果,包括一個或多個位置、一個或多個地像、一個或多個URL和/或超鏈接。具體地,輸入和選擇監(jiān)控模塊932可以監(jiān)控用戶輸入,傳輸模塊934可以將搜索查詢發(fā)送到搜索引擎,搜索結(jié)果接收模塊936可以從搜索引擎接收搜索結(jié)果,以及顯示模塊938 可以顯示搜索結(jié)果(或可以幫助呈現(xiàn)用于被瀏覽器模塊9 顯示的搜索結(jié)果),諸如一個或多個文檔的排名和/或包含與搜索查詢相對應(yīng)的所識別的內(nèi)容的文檔位置。用戶可以使用用戶接口 914和瀏覽器/工具模塊9 來訪問或選擇搜索結(jié)果中的文檔和/或文檔位置中的一個或多個。例如,用戶可以使用指示器(未示出)來點擊超鏈接。在客戶端系統(tǒng)900耦接到本地服務(wù)器計算機的實施例中,可以將存儲器922中的模塊和/或應(yīng)用中的一個或多個存儲在服務(wù)器計算機上,所述服務(wù)器計算機典型地位于與客戶端系統(tǒng)900不同的位置。上述所識別的模塊和應(yīng)用中的每一個與用于執(zhí)行上述的一個或多個功能的一組指令相對應(yīng)。不需要將這些模塊(即指令集)實現(xiàn)為分離的軟件程序、 程序或模塊??梢詫⒏鞣N模塊和子模塊重新排列和/或組合。存儲器922可以包括額外的模塊和/或子模塊、或更少的模塊和/或子模塊。例如,可以將搜索助手模塊930集成在瀏覽器/工具模塊928中。因此,存儲器922可以包括上述所識別的模塊和/或子模塊的子集或超集。圖10是示出了地理特征文檔數(shù)據(jù)結(jié)構(gòu)1000的實施例的框圖。地理特征文檔數(shù)據(jù)結(jié)構(gòu)1000可以包括地理特征文檔722。地理特征文檔722可以包括被分布在多個計算機的多個分區(qū)上的多個記錄1010。每個記錄1010可以與各個地理特征文檔相對應(yīng)。如上述所說明的,地理特征文檔可以與地理特征或位置相對應(yīng)。記錄可以包括關(guān)鍵詞1012、一個或多個關(guān)鍵詞的同義詞1014、關(guān)聯(lián)詞1016(諸如位置出現(xiàn)的城市)和/或近似對象1018。地理特征文檔數(shù)據(jù)結(jié)構(gòu)1000可以包括更少或額外的元素,可以將兩個或更多個元素相組合并且可以改變一個或多個元素的位置。例如,各個記錄1010可以進一步包括補充信息1018, 所述補充信息包括一個或多個位置的緯度和經(jīng)度信息或與記錄1010所表示的地理特征相關(guān)聯(lián)的邊界框。來自位置搜索查詢的結(jié)果的相對于視口的評分當(dāng)用戶例如使用在線制圖程序或服務(wù)來執(zhí)行一系列位置搜索時,用戶通常搜索地理特征(例如城市、街道、特定地址或類似物),所述地理特征靠近在緊鄰的在先位置搜索中出現(xiàn)的地理特征。例如,在搜索特定城市中的第一地理特征后,用戶將通常搜索在同一城市中或在鄰近或附近城市中的第二地理特征。為了便于討論,有時將地理特征稱為“位置”, 但是應(yīng)當(dāng)理解,諸如街道(與特定街道地址相對)的一些地理特征對應(yīng)于大量位置。在以下的討論中,參考圖11,“視口”或“當(dāng)前視口”與當(dāng)前在用戶的客戶端裝置或系統(tǒng)上顯示的地理區(qū)域相對應(yīng)。例如,視口可以是響應(yīng)于緊鄰的在前位置搜索而(例如由在線制圖程序或服務(wù))產(chǎn)生的顯示窗口,或其可以是界定在用戶的客戶端系統(tǒng)上顯示的視口矩形的圓形區(qū)域。從而,視口在形狀上可以是矩形的或圓形的。在該討論的剩余部分中, 將視口假設(shè)為在形狀上是圓形的并且圍繞并包括在用戶的客戶端系統(tǒng)上顯示的視口矩形。 另外,視口可以由將視口改變?yōu)橛脩糁付ǖ膮^(qū)域的用戶行為(例如平移(pan)和/或縮放命令或行為)產(chǎn)生的結(jié)果。當(dāng)用戶提交了導(dǎo)致多于一個結(jié)果的位置查詢時,可以將結(jié)果進行評分,以偏向在當(dāng)前視口內(nèi)的結(jié)果(即位置)勝于在視口外的位置,并且比起更遠(yuǎn)離視口的位置而偏向靠近視口的位置(例如在圍繞視口的邊緣區(qū)域內(nèi),本文稱為“視口邊緣區(qū)域”)。在一個實施例中,修改上述用于對“文檔”(有時稱為位置描述文檔或位置描述數(shù)據(jù)庫條目)進行評分的評分函數(shù),以包括分值衰減因子(SAF),SAF傾向于將分值偏向與當(dāng)前視口相交的結(jié)果, 并且偏向與圍繞視口的視口邊緣區(qū)域相交的結(jié)果勝于既不與視口區(qū)域也不與視口邊緣區(qū)域相交的結(jié)果(即其在視口邊緣區(qū)域外)。在該環(huán)境中,術(shù)語“相交”意為由搜索結(jié)果識別的地理特征的至少一部分在特定區(qū)域內(nèi)。如在圖12和13中所示,可以根據(jù)“角距離”測量在地球的表面上的區(qū)域和距離的大小,“角距離”是由那些區(qū)域或距離對向的地球表面上的弧的角大小??梢砸曰《然蚨葦?shù)為單位來測量角距離。標(biāo)準(zhǔn)化的角距除以諸如2 π的標(biāo)準(zhǔn)化因子,以使得最大的角距離是 1(或任何其它預(yù)定義的值)并且最小的角距離是0。在圖12和13中,Xl表示基于視口區(qū)域的半徑Rl的角距離的視口區(qū)域的標(biāo)準(zhǔn)化大小。Χ2是基于視口邊緣區(qū)域的半徑R2的角距離的視口邊緣區(qū)域的標(biāo)準(zhǔn)化大小。Χ2-Χ1表示視口邊緣區(qū)域的寬度。Χ3表示在地理特征和視口區(qū)域的最近邊界(edge)之間的標(biāo)準(zhǔn)化角距離,或更一般地是在地理特征和視口區(qū)域之間的距離。X表示㈧在地理特征和視口區(qū)域之間的距離,與⑶視口邊緣區(qū)域的寬度的比值。在一個實施例中,視口邊緣區(qū)域的大小取決于視口區(qū)域的大小。具體地,當(dāng)視口區(qū)域的半徑較小(例如小于幾公里)時,視口邊緣區(qū)域的半徑是視口區(qū)域的半徑的 Ι+SkirtFactor倍之大,其中SkirtFactor (邊緣因子)是可配置的參數(shù)。當(dāng)視口區(qū)域的半徑較大(例如大于幾百公里)時,視口邊緣區(qū)域的半徑與視口區(qū)域的半徑近似相同。在示范性實施例中,將視口邊緣區(qū)域的半徑定義為SkirtRegionRadius = ViewportRadius X (1+SkirtFactor XEV)EV = A+BXe側(cè)1其中選擇A和B使得當(dāng)Xl等于O時(即當(dāng)視口區(qū)域非常小時),EV等于其最大值1,并且當(dāng)Xl等于其最大值1 (對應(yīng)于覆蓋整個地球的視口區(qū)域)時,EV等于其最小值O。 SkirtFactor是可配置的比例(scaling)因子。Skirti^actor的示范性值是10 ;在其它的實施例中,Skirthctor等于在4和20之間的值。M是可配置的指數(shù)率因子。M的示范性值是50 ;在其它的實施例中,M等于在10和200之間的值。另外,M的值取決于角距離Xl 的比例。根據(jù)上述約束分解(Solve)A和B, EV的等式變?yōu)?br>
權(quán)利要求
1.一種用于執(zhí)行位置搜索的方法,包括接收位置搜索查詢;識別滿足所述位置搜索查詢的地理特征文檔,其中所述地理特征文檔中的每一個與地理特征相對應(yīng);以及根據(jù)分值對所識別的地理特征文檔進行排名以產(chǎn)生一組已排名的地理特征文檔,所述分值至少部分地基于與所識別的地理特征文檔相對應(yīng)的所述地理特征到客戶端系統(tǒng)的地理視口區(qū)域的接近性;以及根據(jù)所述已排名的地理特征文檔提供結(jié)果,所述結(jié)果識別與所述已排名的地理特征文檔的至少一個相對應(yīng)的至少一個地理特征。
2.如權(quán)利要求1所述的方法,其中所述地理視口區(qū)域與在所述客戶端系統(tǒng)上顯示的地理區(qū)域相對應(yīng)。
3.如權(quán)利要求1所述的方法,其中所述地理視口區(qū)域與響應(yīng)于在先位置搜索查詢而在所述客戶端系統(tǒng)上顯示的地理區(qū)域相對應(yīng)。
4.如權(quán)利要求1所述的方法,其中所述地理視口區(qū)域包括包圍在所述客戶端系統(tǒng)上顯示的矩形地理區(qū)域的圓形地理區(qū)域。
5.如權(quán)利要求4所述的方法,其中所述地理視口區(qū)域具有與在所述客戶端系統(tǒng)上顯示的所述矩形地理區(qū)域的大小相對應(yīng)的大小。
6.如權(quán)利要求1所述的方法,包括確定與所述位置搜索查詢相對應(yīng)的關(guān)鍵詞、以及識別與在所述位置搜索查詢中的所述關(guān)鍵詞相匹配的地理特征文檔;其中確定所述關(guān)鍵詞包括從所述位置搜索查詢中移除標(biāo)點符號和非位置詞語。
7.如權(quán)利要求1所述的方法,包括確定與所述位置搜索查詢相對應(yīng)的關(guān)鍵詞、以及識別與在所述位置搜索查詢中的所述關(guān)鍵詞相匹配的地理特征文檔;其中所述關(guān)鍵詞包括在所述位置搜索查詢中的一個或多個詞語的一個或多個同義詞。
8.如權(quán)利要求1所述的方法,包括確定與所述位置搜索查詢相對應(yīng)的關(guān)鍵詞、以及識別與在所述位置搜索查詢中的所述關(guān)鍵詞相匹配的地理特征文檔;其中識別所述地理特征文檔包括確定與所述關(guān)鍵詞相對應(yīng)的典范式。
9.如權(quán)利要求1所述的方法,其中所述地理特征文檔是在包括與地理特征相對應(yīng)的多個地理特征文檔的索引中。
10.如權(quán)利要求9所述的方法,其中所述多個地理特征文檔包括與所述地理特征相對應(yīng)的參考坐標(biāo)。
11.如權(quán)利要求1所述的方法,其中識別所述地理特征文檔包括為所述地理特征文檔的每一個確定分值。
12.如權(quán)利要求11所述的方法,其中提供結(jié)果包括如果在所識別的地理特征文檔的前N個排名中,相應(yīng)的地理特征文檔的最佳分值大于下一個地理特征文檔的次最佳分值的預(yù)定倍數(shù),則提供單個地理特征或位置。
13.如權(quán)利要求1所述的方法,其中所述提供包括提供與至少所述一個地理特征相對應(yīng)的地像。
14.一種搜索引擎系統(tǒng),包括用于接收位置搜索查詢的裝置;用于識別滿足所述位置搜索查詢的地理特征文檔的裝置,其中所述地理特征文檔中的每一個與地理特征相對應(yīng);以及用于根據(jù)分值對所識別的地理特征文檔進行排名以產(chǎn)生一組已排名的地理特征文檔的裝置,所述分值至少部分地基于與所識別的地理特征文檔相對應(yīng)的所述地理特征到客戶端系統(tǒng)的地理視口區(qū)域的接近性;以及用于根據(jù)所述已排名的地理特征文檔提供結(jié)果的裝置,所述結(jié)果識別與所述已排名的地理特征文檔的至少一個相對應(yīng)的至少一個地理特征。
15.一種用于執(zhí)行位置搜索的方法,包括 接收位置搜索查詢;識別滿足所述位置搜索查詢的地理特征;根據(jù)分值對所識別的地理特征進行排名以產(chǎn)生一組已排名的地理特征,所述分值至少部分地基于所述地理特征到客戶端系統(tǒng)的地理視口區(qū)域的接近性;以及根據(jù)所述已排名的地理特征提供結(jié)果。
16.如權(quán)利要求15所述的方法,其中所述地理視口區(qū)域與在所述客戶端系統(tǒng)上顯示的地理區(qū)域相對應(yīng)。
17.如權(quán)利要求15所述的方法,其中所述地理視口區(qū)域與響應(yīng)于在先位置搜索查詢而在所述客戶端系統(tǒng)上顯示的地理區(qū)域相對應(yīng)。
18.如權(quán)利要求15所述的方法,其中所述地理視口區(qū)域包括包圍在所述客戶端系統(tǒng)上顯示的矩形地理區(qū)域的圓形地理區(qū)域。
19.如權(quán)利要求18所述的方法,其中所述地理視口區(qū)域具有與在所述客戶端系統(tǒng)上顯示的所述矩形地理區(qū)域的大小相對應(yīng)的大小。
20.如權(quán)利要求15所述的方法,包括確定與所述位置搜索查詢相對應(yīng)的關(guān)鍵詞;以及識別與在所述位置搜索查詢中的所述關(guān)鍵詞相匹配的地理特征。
21.如權(quán)利要求20所述的方法,其中確定所述關(guān)鍵詞包括從所述位置搜索查詢中移除標(biāo)點符號和非位置詞語。
22.如權(quán)利要求20所述的方法,其中所述關(guān)鍵詞包括在所述位置搜索查詢中的一個或多個詞語的一個或多個同義詞。
23.一種搜索引擎系統(tǒng),包括 用于接收位置搜索查詢的裝置;用于識別滿足所述位置搜索查詢的地理特征的裝置;用于根據(jù)分值對所識別的地理特征進行排名以產(chǎn)生一組已排名的地理特征的裝置,所述分值至少部分地基于所述地理特征到客戶端系統(tǒng)的地理視口區(qū)域的接近性;以及用于根據(jù)所述已排名的地理特征提供結(jié)果的裝置。
全文摘要
本申請涉及用于位置搜索查詢的地理編碼。一種用于執(zhí)行位置搜索的方法,包括接收位置搜索查詢、確定與位置搜索查詢相對應(yīng)的關(guān)鍵詞、識別與在位置搜索查詢中的關(guān)鍵詞相對應(yīng)的一個或多個文檔、以及向客戶端系統(tǒng)提供識別與一個或多個文檔相對應(yīng)的至少一個位置的信息。
文檔編號G06F17/30GK102354312SQ20111027632
公開日2012年2月15日 申請日期2007年1月26日 優(yōu)先權(quán)日2006年1月27日
發(fā)明者弗洛里安·米歇爾·布龍, 拉爾斯·埃爾斯特魯普·拉斯穆森, 拉梅什·巴拉科利什南, 泰·陳, 詹姆斯·克里斯托弗·諾利斯, 詹姆斯·羅伯特·穆勒 申請人:谷歌公司