程琦,梁武衛(wèi),汪培
(武漢市測(cè)繪研究院,湖北 武漢 430022)
地名地址匹配定位是將文字性的描述地址與其空間的地理位置坐標(biāo)建立起對(duì)應(yīng)關(guān)系的過(guò)程。地名地址匹配定位按照特定的步驟為地址查找匹配對(duì)象,首先要將地址標(biāo)準(zhǔn)化,然后搜索地址匹配參考數(shù)據(jù)進(jìn)行分詞,最后根據(jù)與地址的接近程度為每個(gè)候選位置指定分值,用分值最高的來(lái)匹配地址,達(dá)到空間定位的目的。
通常來(lái)說(shuō),地名地址匹配工作分為標(biāo)準(zhǔn)地址數(shù)據(jù)庫(kù)建設(shè)和中文分詞算法實(shí)現(xiàn)兩個(gè)步驟。一是建立標(biāo)準(zhǔn)地址數(shù)據(jù)庫(kù)建設(shè)是研究城市地名地址要素分類及描述規(guī)則,在此基礎(chǔ)上構(gòu)建地址標(biāo)準(zhǔn)化模型,依據(jù)地址標(biāo)準(zhǔn)化模型來(lái)建立標(biāo)準(zhǔn)地址數(shù)據(jù)庫(kù),同時(shí)在數(shù)據(jù)庫(kù)中記錄各類地名地址要素的標(biāo)準(zhǔn)名稱和空間坐標(biāo)的編碼。二是實(shí)現(xiàn)一種適合本地化的地名地址中文分詞算法,將拆分結(jié)果與標(biāo)準(zhǔn)地址數(shù)據(jù)庫(kù)地址要素進(jìn)行匹配,通過(guò)將標(biāo)準(zhǔn)化的地址賦予空間坐標(biāo)信息,完成地址字符串的空間定位,從而實(shí)現(xiàn)地名地址匹配。
地名地址信息中的地名數(shù)據(jù)具有數(shù)據(jù)量大、覆蓋范圍廣、信息復(fù)雜度高的特點(diǎn)。在地名地址匹配過(guò)程中,地名庫(kù)的字典設(shè)計(jì)既要考慮區(qū)域范圍內(nèi)地名數(shù)據(jù)的特征,還要考慮用戶對(duì)地名數(shù)據(jù)的模糊查詢、日常用詞、短語(yǔ)、專用詞匯、地名詞條等均應(yīng)包含其中。
中文分詞的精確性很大程度上取決于分詞字典的規(guī)范程度。目前,用于分詞的傳統(tǒng)字典存在以下不足:一是對(duì)于同音字、錯(cuò)別字、簡(jiǎn)稱、舊稱等情況沒(méi)有進(jìn)行更好地糾正;二是僅包含日常用詞、短語(yǔ)、專用詞匯、地名地址信息,未對(duì)其精確程度進(jìn)行分級(jí);三是對(duì)于特殊字符沒(méi)有考慮更多,導(dǎo)致錯(cuò)分、漏分等多種情況。因此,針對(duì)以上三點(diǎn)問(wèn)題設(shè)計(jì)了一套復(fù)合字典,包括用于糾錯(cuò)的標(biāo)準(zhǔn)化字典,用于定位精確度分級(jí)的地名字典、用于提取地址準(zhǔn)確度標(biāo)識(shí)信息的特殊標(biāo)識(shí)字典等,我們將這一系列不同作用的字典組合而成的字典組稱之為“復(fù)合字典”。
復(fù)合字典的主要作用有以下四點(diǎn):使用“通用字典”,拆分出常用詞語(yǔ);使用“標(biāo)準(zhǔn)化字典”,標(biāo)準(zhǔn)化位置描述;使用帶權(quán)重級(jí)別的“地名字典”,量化拆分結(jié)果;使用“標(biāo)識(shí)字典”,精確標(biāo)識(shí)出門(樓)牌號(hào)。
通用字典的目的在于拆分出常用詞語(yǔ),該字典在拆分與地域性無(wú)關(guān)的單位名稱時(shí)十分有效,如:招商銀行武漢市分行,拆分為“招商銀行/武漢市/分行”,其來(lái)源為新華字典。
標(biāo)準(zhǔn)化字典的來(lái)源有兩部分:一部分來(lái)源于標(biāo)準(zhǔn)地名地址編碼庫(kù)中對(duì)行政區(qū)劃、街路巷、小區(qū)、標(biāo)志性建筑物的標(biāo)準(zhǔn)稱謂,其數(shù)據(jù)出處一般來(lái)源于當(dāng)?shù)毓矙C(jī)關(guān)戶政處或民政部門的地名辦;另一部分來(lái)源于社會(huì)上對(duì)地名的各種叫法和稱呼,如一個(gè)地名不同的叫法、簡(jiǎn)稱、別名等。標(biāo)準(zhǔn)化字典則是建立兩者之間的關(guān)系,將非標(biāo)準(zhǔn)的地名與標(biāo)準(zhǔn)名稱進(jìn)行對(duì)照,其作用是在中文分詞步驟前將待分析的詞進(jìn)行標(biāo)準(zhǔn)化處理,從而提高地名地址匹配的準(zhǔn)確率。
標(biāo)準(zhǔn)化字典的建立主要是在地名地址批量匹配后,對(duì)未匹配的大量地址結(jié)果逐級(jí)進(jìn)行篩選分析出來(lái)的。標(biāo)準(zhǔn)化字典中的對(duì)應(yīng)關(guān)系可以是一對(duì)一或多對(duì)一,例如:我們?cè)趯?shí)際工作中遇到過(guò)土地發(fā)證部門的土地坐落中有“轉(zhuǎn)車樓小區(qū)”,工商組織機(jī)構(gòu)代碼中有“轉(zhuǎn)車樓社區(qū)”,其對(duì)應(yīng)的標(biāo)準(zhǔn)名稱應(yīng)均為“轉(zhuǎn)車樓一村”。表1顯示了標(biāo)準(zhǔn)化字典的結(jié)構(gòu):
標(biāo)準(zhǔn)化字典 表1
注:經(jīng)過(guò)30 w條地名地址匹配的實(shí)驗(yàn)結(jié)果,使用標(biāo)準(zhǔn)化字典能使匹配準(zhǔn)確率提高20%左右。
地名字典包含各級(jí)行政區(qū)劃、道路、小區(qū)、標(biāo)志性建筑物名稱、各場(chǎng)所、單位名稱等,除了單一的拆分作用外,還根據(jù)其精確程度進(jìn)行逐級(jí)排序,取累計(jì)權(quán)重最大的為精確結(jié)果。表2顯示了地名字典的結(jié)構(gòu):
帶分級(jí)權(quán)重的地名字典 表2
特殊標(biāo)識(shí)字典主要作用是識(shí)別出地址描述中與門(樓)牌號(hào)相關(guān)的數(shù)字和字母。來(lái)源于待處理地址的具體描述,包含:號(hào)棟門幢座#舍#等。
實(shí)際應(yīng)用的字典根據(jù)不同目標(biāo)源還有很多種,以上只是列出了幾個(gè)主要的字典。
選擇了基于字符串匹配的分詞算法作為基本算法。此算法也稱為機(jī)械分詞算法,它是按照一定的策略將待分析的漢字串與一個(gè)“充分大的”機(jī)器詞典中的詞條進(jìn)行配,若在詞典中找到某個(gè)字符串,則匹配成功(識(shí)別出一個(gè)詞)。按照掃描方向的不同,串匹配分詞方法可以分為正向匹配和逆向匹配;按照不同長(zhǎng)度優(yōu)先匹配的情況,可以分為最大(最長(zhǎng))匹配和最小(最短)匹配。實(shí)際過(guò)程中設(shè)計(jì)了一種正向最大匹配方法和逆向最大匹配方法結(jié)合的雙向匹配法,以提高分詞的準(zhǔn)確性。
首先,選擇了易于實(shí)現(xiàn)的、準(zhǔn)確率高的基于字符串匹配的分詞算法。其逆向匹配的切分精度略高于正向匹配,遇到的歧義現(xiàn)象也較少。統(tǒng)計(jì)結(jié)果表明,單純使用正向最大匹配的錯(cuò)誤率為1/169,單純使用逆向最大匹配的錯(cuò)誤率為1/245。但這種精度還遠(yuǎn)遠(yuǎn)不能滿足實(shí)際的需要。因此,我們將此分詞作為一種初分手段,利用復(fù)合字典和算法特性相匹配,進(jìn)一步提高切分的準(zhǔn)確率。
其次,除了通常的批量匹配、正向反相匹配、單條匹配之外,為了適應(yīng)地址的復(fù)雜性,還增加了豐富的地址標(biāo)準(zhǔn)化處理功能,如繁體簡(jiǎn)體轉(zhuǎn)換、半角全角轉(zhuǎn)換、漢字和數(shù)字轉(zhuǎn)化等,對(duì)匹配條件也可設(shè)置選擇,特別是別名處理功能,抗干擾處理功能,多次匹配功能,以這些豐富的手段和方法來(lái)提高地址匹配得準(zhǔn)確率。流程如圖1所示:
圖1 地名地址逐級(jí)定位匹配流程
(1)解決地址描述不規(guī)范問(wèn)題。如“1棟”變?yōu)椤耙粭潯?、統(tǒng)一增加或去掉“江漢區(qū)”等,使之與標(biāo)準(zhǔn)地址庫(kù)中的描述一致。解決思路就是設(shè)計(jì)一個(gè)類似WORD里的Replace功能,用規(guī)范的描述來(lái)代替不規(guī)范的描述,并且具有智能擴(kuò)展功能的選項(xiàng),將類似的“二棟”、“乙棟”變成所希望的描述“2棟”;建立常見(jiàn)替換詞典庫(kù),把常見(jiàn)的、需要替換的詞匯和對(duì)應(yīng)詞匯建立一個(gè)通用詞典,讓程序?qū)ΤR?jiàn)不規(guī)范的描述批量判別和替換(如別名、簡(jiǎn)稱等),達(dá)到常見(jiàn)問(wèn)題自動(dòng)處理,個(gè)別問(wèn)題單獨(dú)處理的目的,逐個(gè)規(guī)范。
(2)解決地址拆分問(wèn)題。將地址按標(biāo)準(zhǔn)地址庫(kù)的描述,拆分成區(qū)、街、路、巷、小區(qū)、棟、號(hào)格式。解決辦法就是:建立可維護(hù)(添加、編輯、查找、刪除等)常用拆分詞匯字典,按照其精確度建立包括區(qū)、街道、道路、小區(qū)、獨(dú)棟房屋、標(biāo)志性樓宇等詞典庫(kù),設(shè)計(jì)不同類型經(jīng)典匹配算法和拆分處理步驟,并對(duì)其反復(fù)鍛煉優(yōu)化,按照分類處理的原則,逐類拆分。
(3)解決地址匹配問(wèn)題。將目標(biāo)地址與標(biāo)準(zhǔn)地址進(jìn)行關(guān)聯(lián)。解決辦法就是,建立標(biāo)準(zhǔn)地址庫(kù)維護(hù)更新模塊,確保標(biāo)準(zhǔn)地址庫(kù)的規(guī)范描述;根據(jù)目標(biāo)數(shù)據(jù)的不同特點(diǎn),按照拆分后的標(biāo)準(zhǔn)地址庫(kù)字段結(jié)構(gòu),由大地址向小地址(按權(quán)重進(jìn)行遞減),逐級(jí)匹配。
圖2 地名地址逐級(jí)定位匹配層次
目前,武漢市標(biāo)準(zhǔn)地址編碼數(shù)據(jù)庫(kù)覆蓋了武漢市中心城區(qū)、兩個(gè)開(kāi)發(fā)區(qū)及新城區(qū)城關(guān)鎮(zhèn),共計(jì)63萬(wàn)余條,能滿足絕大多數(shù)行業(yè)對(duì)武漢地區(qū)地址匹配技術(shù)的需要。例如,在武漢警用信息數(shù)據(jù)庫(kù)建設(shè)過(guò)程中,對(duì)4大類、33小類警用公共地理信息以及16類業(yè)務(wù)信息,采用批量匹配的方法進(jìn)行定位,大大提高了數(shù)據(jù)采集的效率,縮短了外業(yè)數(shù)據(jù)采集的時(shí)間。在武漢市土地證落地項(xiàng)目中針對(duì)武漢市10萬(wàn)余發(fā)證土地進(jìn)行了定位,依據(jù)其采集要求,以完成80%左右土地證精確定位。在武漢市“兩實(shí)”人口調(diào)查應(yīng)用中,利用算法成功將武漢市800多萬(wàn)戶籍人口信息進(jìn)行了定位,由于其效率高、并具有多線程功能,一個(gè)月的時(shí)間內(nèi)完成了所有人口的定位工作。在2015年開(kāi)展的武漢市第一次地理國(guó)情普查中利用算法將武漢市5萬(wàn)余工商登記企業(yè)進(jìn)行了上圖定位,準(zhǔn)確率達(dá)76%。
經(jīng)過(guò)反復(fù)調(diào)試和優(yōu)化,并結(jié)合抗干擾、別名、多次匹配等技術(shù),效率和精度得到大幅提升,匹配速度達(dá)到200條/分鐘,準(zhǔn)確度能達(dá)90%以上。目前,通過(guò)該算法已完成了100多種業(yè)務(wù)數(shù)據(jù)的定位工作,業(yè)務(wù)數(shù)據(jù)涉及公安、安全、土地、環(huán)保等多個(gè)部門,極大地提高了管理對(duì)象定位上圖的效率;同時(shí)通過(guò)相關(guān)匹配上圖工作,又大大拓展了地理信息外延,這些數(shù)據(jù)涉及了房產(chǎn)、機(jī)關(guān)團(tuán)體、文教衛(wèi)生、食宿娛樂(lè)、金融保險(xiǎn)、工商質(zhì)監(jiān)、環(huán)保水務(wù)和應(yīng)急危險(xiǎn)源等。
圖3 匹配軟件
圖4 匹配上圖效果
今后,匹配算法的發(fā)展方向一是在線封裝,通過(guò)將算法編寫成JSON、API之類的接口,借助網(wǎng)絡(luò)進(jìn)行在線實(shí)時(shí)解析,提供在線式服務(wù)。二是通過(guò)網(wǎng)絡(luò)爬蟲(chóng)技術(shù)進(jìn)行網(wǎng)絡(luò)熱詞的自動(dòng)搜索,通過(guò)大數(shù)據(jù)手段使得更新復(fù)合字典,不斷提高匹配效率。三是通過(guò)不同行業(yè)的信息對(duì)比,積累不同行業(yè)的分詞信息,不斷豐富分詞字典內(nèi)容,以提高地名地址匹配的成功率。
[1] 袁園. 標(biāo)準(zhǔn)地址庫(kù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 地理空間信息,2009(6).
[2] 宋子輝. 自然語(yǔ)言理解的中文地址匹配算法[J]. 遙感學(xué)報(bào),2013(4).
[3] 黃華國(guó). 標(biāo)準(zhǔn)地址模型在PGIS中的研究與應(yīng)用[J]. 中小企業(yè)管理與科技(中旬刊).2014(4).
[4] 錢敏,顧國(guó)強(qiáng),魯明. 用于地址(地理位置) 匹配的關(guān)鍵路徑法[J]. 計(jì)算機(jī)應(yīng)用與軟件,2012(29).
[5] 馬照亭,李志剛,張偉等. 一種基于地址分詞的自動(dòng)地理編碼算法[J]. 測(cè)繪通報(bào),2011(2).
[6] 范立新,謝曉能,吳飛. 基于過(guò)濾的中文多模式近似字符串匹配算法[J]. 計(jì)算機(jī)工程,2006(20).
[7] 丁小陸,黃炳耀,鮑曉娣. 基于GIS的地名地址管理系統(tǒng)構(gòu)建[J] . 地理空間信息,2015(4).
[8] 王野,張志文. 沈陽(yáng)市地名地址數(shù)據(jù)采集與建庫(kù)[J]. 城市勘測(cè),2013(6).