《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 基于Apache Lucene的地址匹配技術(shù)研究
基于Apache Lucene的地址匹配技術(shù)研究
2015年微型機(jī)與應(yīng)用第18期
盧盛祺1,2,3,,何施晶2,,韓景倜1
(1.上海財(cái)經(jīng)大學(xué) 信息管理與工程學(xué)院,上海 200433; 2.復(fù)旦大學(xué) 軟件學(xué)院,上海 200433; 3.上海市智能信息處理重點(diǎn)實(shí)驗(yàn)室(復(fù)旦大學(xué)),,上海 200433)
摘要: 地址匹配技術(shù)常常被用于對(duì)屬性地址信息快速定位,也是解決目前GIS系統(tǒng)分析能力瓶頸的重要方法,。首先分析了中文地址匹配技術(shù)應(yīng)用的現(xiàn)狀以及常用地址匹配方法的優(yōu)缺點(diǎn),,在此基礎(chǔ)上給出了基于全文檢索技術(shù)的地址匹配方法,并使用參考規(guī)則進(jìn)行匹配結(jié)果優(yōu)化,,隨后使用實(shí)驗(yàn)證明了方法的準(zhǔn)確性,。
關(guān)鍵詞: 全文檢索 地址匹配 GIS Lucene
Abstract:
Key words :

  摘  要地址匹配技術(shù)常常被用于對(duì)屬性地址信息快速定位,也是解決目前GIS系統(tǒng)分析能力瓶頸的重要方法,。首先分析了中文地址匹配技術(shù)應(yīng)用的現(xiàn)狀以及常用地址匹配方法的優(yōu)缺點(diǎn),,在此基礎(chǔ)上給出了基于全文檢索技術(shù)的地址匹配方法,并使用參考規(guī)則進(jìn)行匹配結(jié)果優(yōu)化,,隨后使用實(shí)驗(yàn)證明了方法的準(zhǔn)確性,。

  關(guān)鍵詞: 全文檢索;地址匹配,;GIS,;Lucene

0 引言

  企業(yè)管理以及信息化業(yè)務(wù)越來(lái)越多地依賴于電子地圖[1-2]。國(guó)外對(duì)空間地址匹配技術(shù)的研究已經(jīng)形成了完善的規(guī)范體系,,各大地圖提供廠商也形成了標(biāo)準(zhǔn)的工業(yè)化組件[3-4],。一些特殊領(lǐng)域也針對(duì)地理編碼精度的量化以及評(píng)估方法進(jìn)行了一系列的研究[5-6],。隨著GIS技術(shù)在空間分析上的普及,一些研究人員開(kāi)始探索使用空間要素之間的相關(guān)性幫助對(duì)地址匹配結(jié)果進(jìn)行糾偏[7],。

  中文地址匹配的研究在國(guó)內(nèi)盡管已經(jīng)有了成熟的應(yīng)用,,但對(duì)不規(guī)范地址的匹配仍然依賴于數(shù)據(jù)的預(yù)處理,,對(duì)于模糊地址的查詢還依賴用戶對(duì)系統(tǒng)推薦的結(jié)果進(jìn)行二次選擇,。

  中文地址匹配的難度主要來(lái)自城市門(mén)牌地址不規(guī)范以及中文的語(yǔ)言復(fù)雜性。由于國(guó)內(nèi)城市地址編碼規(guī)范的缺失,,門(mén)牌地址的缺,、跳、同,、錯(cuò)等問(wèn)題非常普遍,,增加了地址匹配的難度,同時(shí)一些糾偏手段也往往也很難達(dá)到預(yù)期的效果,。另外,,不同機(jī)構(gòu)所采集的地址門(mén)牌數(shù)據(jù)往往使用不同的描述風(fēng)格,甚至地址要素的先后順序都存在不同,。此外,,對(duì)同一地點(diǎn)查詢的地址描述也可能使用截然不同的描述方式。對(duì)此,,一方面需要對(duì)門(mén)牌地址的標(biāo)準(zhǔn)進(jìn)行研究[8],,另一方面需要對(duì)現(xiàn)有城市地址的規(guī)則進(jìn)行研究。

  本文針對(duì)地址匹配技術(shù)中地址庫(kù)維護(hù)成本高,、可拓展性差的問(wèn)題,,給出了基于Apache Lucene的地址匹配技術(shù),利用搜索引擎技術(shù)對(duì)空間地址要素進(jìn)行索引,,通過(guò)搜索規(guī)則進(jìn)行地址匹配,,實(shí)現(xiàn)地址庫(kù)的自學(xué)習(xí)并可提高地址匹配的精度。

1 常見(jiàn)中文地址匹配技術(shù)比較

  現(xiàn)有地址匹配技術(shù)包括:地址庫(kù)預(yù)處理(對(duì)不規(guī)則的地址數(shù)據(jù)進(jìn)行一些人工干預(yù)的處理使之達(dá)到設(shè)計(jì)所需的格式要求),,提高地址分詞精度以及與用戶交互(當(dāng)用戶輸入的地址得到多個(gè)匹配度相似的結(jié)果時(shí),,通過(guò)詢問(wèn)用戶而得到更為準(zhǔn)確的結(jié)果)。這些方法需要大量人工干預(yù),。常見(jiàn)的中文地址匹配方法有:正則表達(dá)式法,、關(guān)鍵路徑法以及自然語(yǔ)言理解法[9]。

  本文針對(duì)對(duì)中文地址描述模糊,、不規(guī)范以及使用參照物等特點(diǎn),,提出一種可用于中文地址匹配的思路:首先確定地址的大概方位,然后通過(guò)待匹配地址中的參考值進(jìn)行地址修正,。

2 基于全文搜索的地址匹配法

  本文方法的核心是基于Apache Lucene全文檢索工具包[10]的全文檢索:首先對(duì)現(xiàn)有地址門(mén)牌以及POI等空間地址數(shù)據(jù)進(jìn)行分析并建立索引,,形成基礎(chǔ)地址索引庫(kù),;接下來(lái)通過(guò)對(duì)索引庫(kù)的搜索實(shí)現(xiàn)初步的地址匹配;最后在此基礎(chǔ)上利用參照物糾偏等方法對(duì)匹配結(jié)果進(jìn)行進(jìn)一步糾正以得到精確的地址空間位置信息,。

  常見(jiàn)的地址數(shù)據(jù)有3種:第一種是精確的地址描述,,如“上海宛平南路75號(hào)”,搜索引擎可以很容易地搜索到相似度最高的結(jié)果,;第二種是基于參考物的描述,,如“肇嘉浜路上7號(hào)線地鐵站”,地址匹配通過(guò)執(zhí)行預(yù)先制定的“地點(diǎn)+參照物”的規(guī)則得到最終的匹配結(jié)果,;第三種是基于不確定的指路形式,,如“上海宛平南路75號(hào)向南50米”,地址匹配引擎按照規(guī)則“地點(diǎn)+方向”得到最終的匹配結(jié)果,。

  在設(shè)計(jì)時(shí)定義了3種類(lèi)型的規(guī)則:第一種是預(yù)處理規(guī)則,,對(duì)地址文本進(jìn)行預(yù)處理,包含錯(cuò)別字替換,、特殊符號(hào)替換以及錯(cuò)誤描述替換等,;第二種是計(jì)算以及參考規(guī)則,對(duì)原地址進(jìn)行要素拆分提取,,比如在地址數(shù)據(jù)中常見(jiàn)的方向描述,、當(dāng)不清楚具體門(mén)牌時(shí)的參照物描述以及一些專業(yè)領(lǐng)域中的特有對(duì)象的內(nèi)容;第三種是檢索規(guī)則,,當(dāng)無(wú)法檢索到合適的結(jié)果時(shí),,引擎需要減少檢索的條件,檢索規(guī)則用來(lái)判斷舍棄哪些關(guān)鍵要素,,比如在路名庫(kù)中存在的詞不可舍棄,、數(shù)值要素可以舍棄等。

  通過(guò)完善規(guī)則可以提高匹配精確度,,此外可針對(duì)特定領(lǐng)域制定特定的規(guī)則,,通過(guò)數(shù)據(jù)分析以及規(guī)則挖取也為地址匹配引擎的自我學(xué)習(xí)打下了基礎(chǔ)。

  本文的地址匹配基本思路包含以下步驟,。

 ?。?)詞庫(kù)準(zhǔn)備。詞庫(kù)主要有地址固定名詞庫(kù),、興趣點(diǎn)固定詞庫(kù),、常用別稱庫(kù)以及常見(jiàn)誤稱庫(kù)。其中地址固定名詞庫(kù)包含城市名,、鄉(xiāng)鎮(zhèn)名以及道路名等,;興趣點(diǎn)則包括如超市、醫(yī)院以及學(xué)校等POI數(shù)據(jù);常用別稱則是對(duì)一些地點(diǎn)約定俗成的非官方叫法或者一地多名的叫法,,如新客站,、上海火車(chē)站都指的是同一地點(diǎn),;而誤稱庫(kù)則是在地址描述中一些常見(jiàn)的錯(cuò)誤描述形式,。

  (2)地址索引建立,。在準(zhǔn)備好詞庫(kù)的基礎(chǔ)上對(duì)門(mén)牌地址庫(kù)以及POI數(shù)據(jù)庫(kù)進(jìn)行分詞索引,。

  (3)匹配規(guī)則制定,。使用了預(yù)設(shè)的規(guī)則引擎進(jìn)行匹配規(guī)則描述,,匹配規(guī)則主要用于對(duì)已經(jīng)經(jīng)過(guò)初步篩選的大致范圍進(jìn)行精確定位的情況,,比如方位描述規(guī)則“[D]{關(guān)鍵字}<計(jì)算符>(數(shù)據(jù)提取正則表達(dá)式)”可以用于對(duì)“路口向東20米”這類(lèi)數(shù)據(jù)進(jìn)行糾偏,,參考物規(guī)則“[R]{關(guān)鍵字}<空間圖層ID>”可以對(duì)“人民路口東側(cè)行道樹(shù)”這類(lèi)數(shù)據(jù)進(jìn)行糾偏,還可以通過(guò)規(guī)則的組合來(lái)實(shí)現(xiàn)更為復(fù)雜的情況,。

 ?。?)地址匹配過(guò)程。首先對(duì)待匹配地址進(jìn)行規(guī)則檢測(cè),,如果符合地址匹配規(guī)則庫(kù)中的規(guī)則,,則對(duì)地址數(shù)據(jù)進(jìn)行規(guī)則運(yùn)算,得到匹配規(guī)則以及規(guī)則計(jì)算后的地址文本,。之后對(duì)地址文本進(jìn)行分詞,,進(jìn)而使用檢索規(guī)則進(jìn)行檢索條件的構(gòu)建,并對(duì)索引進(jìn)行搜索,。

  對(duì)于不規(guī)范或有問(wèn)題的地址,,往往會(huì)出現(xiàn)無(wú)法檢索到結(jié)果的情況,這時(shí)系統(tǒng)將根據(jù)制定的縮詞規(guī)則對(duì)分詞的結(jié)果進(jìn)行篩選,,去除權(quán)重低的詞匯并重新構(gòu)建檢索條件進(jìn)行地址庫(kù)檢索,。

  最終如果成功檢索到結(jié)果,則根據(jù)先前提取到的規(guī)則,,系統(tǒng)還將對(duì)這個(gè)結(jié)果進(jìn)行修正,,比如“向東20米”這樣的方向規(guī)則,那么地址匹配引擎將在匹配的結(jié)果上進(jìn)行方向距離的計(jì)算得到最終的精確結(jié)果,;而類(lèi)似“某某路便利店”這類(lèi)的情況,,則可以應(yīng)用地圖要素參考的規(guī)則,使用地圖要素的空間進(jìn)行分析計(jì)算得到更為精確的結(jié)果,。

  在地址信息發(fā)生變化或詞庫(kù)信息發(fā)生變化時(shí),,還需要對(duì)索引文件進(jìn)行維護(hù)。

  地址匹配流程如圖1所示。

001.jpg

3 實(shí)驗(yàn)結(jié)果與分析

  本文的實(shí)驗(yàn)將分兩部分進(jìn)行,,第一部分驗(yàn)證對(duì)于門(mén)牌地址的匹配效果,。數(shù)據(jù)來(lái)源主要有兩部分,某企業(yè)的用戶信息庫(kù)中的地址以及某企業(yè)員工外出登記中的地址,。第二部分驗(yàn)證本文地址匹配方法中的參考規(guī)則對(duì)于實(shí)現(xiàn)專業(yè)領(lǐng)域的地址精確定位的效果,,這部分?jǐn)?shù)據(jù)來(lái)自某燃?xì)夤芾砥髽I(yè)的故障報(bào)修地址數(shù)據(jù)。

  實(shí)驗(yàn)分別從地址庫(kù)中抽取500條地址數(shù)據(jù)進(jìn)行匹配,,測(cè)試庫(kù)中的樣本數(shù)據(jù)事先都進(jìn)行了空間位置確認(rèn),,實(shí)驗(yàn)規(guī)定匹配得到的空間位置與數(shù)據(jù)基準(zhǔn)位置距離在50米內(nèi)則視為正確匹配。每部分實(shí)驗(yàn)分別進(jìn)行3次,,結(jié)果取平均值,,實(shí)驗(yàn)結(jié)果表1和表2所示。

002.jpg

 ?。?)門(mén)牌號(hào)數(shù)據(jù)地址匹配結(jié)果分析

  從表1可以看到,,對(duì)門(mén)牌地址的匹配成功率,本文的方法與關(guān)鍵路徑法相近,,且略高于在線地圖的匹配結(jié)果,,而本文方法的匹配準(zhǔn)確率則略高于另外兩項(xiàng)。通過(guò)分析,,由于匹配的成功率主要取決于分詞的精度以及基準(zhǔn)數(shù)據(jù)庫(kù)的質(zhì)量,,在實(shí)驗(yàn)中本文的算法與關(guān)鍵路徑法使用的是相同的基準(zhǔn)數(shù)據(jù)庫(kù),因此結(jié)果也更加接近,。

  由于實(shí)驗(yàn)所使用的門(mén)牌數(shù)據(jù)相對(duì)比較規(guī)范,,系統(tǒng)在地址采集時(shí)作了較為嚴(yán)格的格式驗(yàn)證,因此幾種方法的匹配準(zhǔn)確率相對(duì)都比較高,,通過(guò)數(shù)據(jù)分析,,其中存在的差異主要來(lái)源有如下幾點(diǎn):

  ①在線地圖在對(duì)待“xx路xx路”這類(lèi)路口數(shù)據(jù)時(shí)并沒(méi)有準(zhǔn)確定位到路口,;

 ?、陉P(guān)鍵路徑法實(shí)現(xiàn)的地址匹配工具對(duì)于中文表述的門(mén)牌號(hào)碼沒(méi)有做好數(shù)據(jù)處理,使得在定位時(shí)準(zhǔn)確性降低了不少,;

 ?、墼诰€地圖對(duì)于門(mén)牌插值的效果在幾種方法中最好。

  通過(guò)地址匹配的基本概念分析可以發(fā)現(xiàn),,這些都不是影響地址匹配效果的關(guān)鍵因素,,因此,通過(guò)門(mén)牌號(hào)實(shí)驗(yàn)驗(yàn)證了幾種算法對(duì)于規(guī)范化的門(mén)牌數(shù)據(jù)都有不錯(cuò)的定位效果,。

 ?。?)特定領(lǐng)域地址匹配結(jié)果分析

  從表2可以看到,,對(duì)于像燃?xì)鈭?bào)修這個(gè)特殊領(lǐng)域,本文方法的匹配成功率最高,,在線地圖結(jié)果略低,,而關(guān)鍵路徑法相對(duì)就比較低了;而匹配的準(zhǔn)確率上,,本文的方法要遠(yuǎn)遠(yuǎn)高于其他兩種方法,。

  經(jīng)過(guò)分析發(fā)現(xiàn),燃?xì)鈭?bào)修的數(shù)據(jù)庫(kù)中的數(shù)據(jù)存在著嚴(yán)重的描述不規(guī)范現(xiàn)象,,這使得關(guān)鍵路徑這一辦法在這里的應(yīng)用效果就沒(méi)有那么理想,,而對(duì)于模糊地址的匹配,在線地圖做得相當(dāng)出色,,而本文的方法由于使用了搜索引擎技術(shù),,這也使得對(duì)不規(guī)范地址有著不錯(cuò)的匹配成功率。

  在特定領(lǐng)域地址匹配實(shí)驗(yàn)中,,本文方法準(zhǔn)確率遠(yuǎn)遠(yuǎn)高于其他兩種方法的原因主要來(lái)自于引擎的規(guī)則系統(tǒng),,同門(mén)牌號(hào)數(shù)據(jù)地址匹配實(shí)驗(yàn)類(lèi)似,對(duì)于“xx路xx路”這類(lèi)數(shù)據(jù),,本文的方法可以準(zhǔn)確定位到路口,,而在線地圖僅僅能識(shí)別“xx路xx路路口”這種形式。而在燃?xì)鈭?bào)修的數(shù)據(jù)中,,路口這類(lèi)數(shù)據(jù)是非常多的,本文通過(guò)數(shù)據(jù)的預(yù)處理規(guī)則,、參考規(guī)則以及檢索規(guī)則的添加,,可以很好地適應(yīng)如“xx路xx路向東20米”、“xx路xx號(hào)附近窨井”等這類(lèi)數(shù)據(jù)形式,。

4 結(jié)論

  本文給出的方法具有減少對(duì)地址庫(kù)格式的依賴,、提高對(duì)不規(guī)范數(shù)據(jù)的利用率的優(yōu)點(diǎn),它將技術(shù)以及人力都集中在對(duì)匹配引擎規(guī)則的研發(fā)和制定上,,通過(guò)完善和補(bǔ)充匹配規(guī)則以及搜索引擎排序規(guī)則,,可以在使用過(guò)程中不斷提高地址匹配引擎的精度。

  在未來(lái)的研究中,,還需要進(jìn)一步研究通過(guò)匹配日志的分析挖掘提供規(guī)則自動(dòng)學(xué)習(xí)的功能,,使得系統(tǒng)可以分析并抽取大量數(shù)據(jù)中潛在的匹配規(guī)則,滿足特定領(lǐng)域特定描述習(xí)慣的自適應(yīng)需求,。另外,,基于空間位置的參照糾偏計(jì)算成為系統(tǒng)潛在的性能瓶頸,因此這方面也是今后研究?jī)?yōu)化的一個(gè)方向,。

參考文獻(xiàn)

  [1] WILLIAM J D. Address matching: GIS technology for mapping human activity patterns[J]. Journal of the American Planning Association,, 1995,61(2):240-251.

  [2] KWAN M P. How GIS can help address the uncertain geographic context problem in social science research[J]. Annals of GIS,2012,,18(4):245-255.

  [3] ROTH A,, SCHREIER G. The D-PAF ERS-1 geocoding system[J]. International Journal of Remote Sensing, 1992,,13(9):1619-1625.

  [4] JERRY H. R. On the accuracy of TIGER-type geocoded address data in relation to cadastral and census areal units[J]. International Journal of Geographical Information Science,,2001,15(5):473-485.

  [5] GEOFFREY M J. A research agenda: does geocoding positional error matter in health GIS studies[J]. Spatial and Spatio-temporal Epidemiology,, 2012,,3(1):7-16.

  [6] CAYO M R, TALBOT T O. Positional error in automated geocoding of residential addresses[J]. International Journal of Health Geographics,,2003,,2(1):10.

  [7] TIMOTHY C. H, PAUL A Z. Reference data and geocoding quality: examining completeness and positional accuracy of street geocoded crime incidents[J]. Policing: An International Journal of Police Strategies & Management,,2013,,36(2):263-294.

  [8] 夏蘭芳,毛煒青,,郭功舉.上海城市地理編碼系統(tǒng)應(yīng)用與研究[J].測(cè)繪通報(bào),,2012(1):78-80.

  [9] 張雪英,閭國(guó)年,,李伯秋,,等.基于規(guī)則的中文地址要素解析方法[J].地球信息科學(xué)學(xué)報(bào),2010(1):9-16.

  [10] MICHAEL M,, ERIK H,, OTIS G. Lucene in Action[M]. American: MANNING PUBN, 2010.


此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。