陳 寅,馬佳斌
(長(zhǎng)三角(嘉興)城鄉(xiāng)建設(shè)設(shè)計(jì)集團(tuán)有限公司,浙江 嘉興 314050)
地名地址是由政府統(tǒng)一發(fā)布的社會(huì)公共信息,地址中承載了數(shù)據(jù)的空間位置信息,與人們生產(chǎn)生活密切相關(guān),無(wú)論是政府管理(不動(dòng)產(chǎn)登記、工商登記、居民戶口登記等),還是社會(huì)經(jīng)濟(jì)活動(dòng)(快遞、外賣(mài)等)都利用地址數(shù)據(jù)作為地理位置的空間表達(dá)方式[1-3],它是國(guó)家信息化發(fā)展戰(zhàn)略中最基礎(chǔ)的信息資源,是各類(lèi)信息的紐帶。為此,對(duì)地址進(jìn)行清洗使其匹配結(jié)果更加準(zhǔn)確,可為測(cè)繪、交通、導(dǎo)航等各個(gè)領(lǐng)域提供有效的地址地名數(shù)據(jù)資源[4]。
當(dāng)前已有相關(guān)領(lǐng)域?qū)W者研究了地址匹配方法,例如,張琛[5]等人提出的自適應(yīng)分詞地址匹配方法,該方法通過(guò)對(duì)地址名詞進(jìn)行標(biāo)記后構(gòu)建Lucene索引,然后使用IK分詞器對(duì)地址名詞進(jìn)行分詞處理,根據(jù)分詞結(jié)果匹配度,得出地址匹配結(jié)果。但該方法在應(yīng)用過(guò)程中受地址名詞相似度高、存在冗余詞等情況影響,致使其地址匹配結(jié)果不夠準(zhǔn)確。劉斐[6]等人提出了運(yùn)輸?shù)刂菲ヅ浞椒?,該方法利用在線地理解析方式獲取運(yùn)輸?shù)刂坊A(chǔ)數(shù)據(jù),利用加權(quán)拼音全文檢索機(jī)制獲取地址匹配結(jié)果。但該方法在檢索地址匹配結(jié)果時(shí),檢索機(jī)制參數(shù)設(shè)置為人為設(shè)置,存在主觀性。ERNIE-DPCNN模型是由語(yǔ)言表征模型(ERNIE)和文本分類(lèi)模型(DPCNN)組成,其可獲取地址名詞表征并將該表征作為輸入,使用文本分類(lèi)模型獲得地址的特征,其輸出結(jié)果較為準(zhǔn)確,且受數(shù)據(jù)維度影響較小,在文本處理領(lǐng)域應(yīng)用極為廣泛。
在此背景下,本文引入ERNIE-DPCNN模型,研究基于ERNIE-DPCNN模型的地址清洗匹配方法,通過(guò)對(duì)地址詞向量特征進(jìn)行地址分詞匹配處理,通過(guò)地址匹配引擎層實(shí)現(xiàn)地址清洗處理,獲取地址清洗匹配結(jié)果。
依據(jù)分層思想,設(shè)計(jì)地址清洗匹配方法技術(shù)架構(gòu),如圖1所示。
圖1 地址清洗匹配方法技術(shù)架構(gòu)示意圖Fig.1 Schematic diagram of technical architecture of address cleaning and matching method
地址清洗匹配方法技術(shù)架構(gòu)由數(shù)據(jù)準(zhǔn)備層、邏輯計(jì)算層、地址匹配引擎和應(yīng)用層組成。利用數(shù)據(jù)準(zhǔn)備層獲取行政區(qū)分區(qū)、街道、POI(地圖上非地理意義的標(biāo)記點(diǎn),如超市、加油站等)和門(mén)牌等地址數(shù)據(jù),然后將該地址數(shù)據(jù)輸入到邏輯計(jì)算層內(nèi)。邏輯計(jì)算層使用地址字段清洗方法對(duì)獲取的地址數(shù)據(jù)進(jìn)行清洗預(yù)處理,去除地址數(shù)據(jù)內(nèi)的冗余字段和意義不明的字段,然后將清洗后的地址數(shù)據(jù)存儲(chǔ)到地址標(biāo)準(zhǔn)數(shù)據(jù)庫(kù)內(nèi)。利用ERNIE-DPCNN模型調(diào)取地址標(biāo)準(zhǔn)數(shù)據(jù)庫(kù)內(nèi)的地址數(shù)據(jù),并通過(guò)迭代訓(xùn)練輸出地址詞向量特征。然后利用地址分詞匹配方式對(duì)地址詞向量實(shí)施匹配處理,再利用地址匹配引擎層內(nèi)的門(mén)牌檢索器、方位詞處理器等生成行政區(qū)、街道、POI、門(mén)牌地址索引。該索引與應(yīng)用層內(nèi)的Web服務(wù)器連接,通過(guò)Web服務(wù)器為用戶展示地址清洗匹配結(jié)果。
由于街道、POI、門(mén)牌等地址數(shù)據(jù)眾多,存在大量的字段冗余情況,在對(duì)其進(jìn)行匹配時(shí),需對(duì)其進(jìn)行字段清洗預(yù)處理。在此使用Word2Vec詞向量開(kāi)源工具清洗地址數(shù)據(jù)內(nèi)的冗余字段,其詳細(xì)過(guò)程如下:
首先利用Word2Vec詞向量開(kāi)源工具提取地址數(shù)據(jù)的文本,然后使用Skip-Gram模型訓(xùn)練地址字段的詞向量,Skip-Gram模型網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 Skip-Gram模型網(wǎng)絡(luò)結(jié)構(gòu)示意圖Fig.2 Schematic diagram of Skip-Gram model network structure
Skip-Gram模型網(wǎng)絡(luò)輸入層輸入的是中心詞g的詞向量v(g),然后將v(g)輸入到投影層內(nèi),投影層的恒等投影表達(dá)公式[7]為:
v(g)=v′(g)
(1)
式中:v′(g)表示v(g)的投影。
Skip-Gram模型輸出層的目標(biāo)函數(shù)表達(dá)公式[8]為:
(2)
式中:C表示地址詞向量的語(yǔ)料庫(kù);Context(g)表示地址中心詞上下文;ζ(Context(g)|g)表示上下文的出現(xiàn)概率,其表達(dá)公式[9]為:
(3)
式中:u表示上下文Context(g)內(nèi)的冗余字段。
將式(3)結(jié)果代入到式(2)中,輸出m個(gè)上下文Context(g)的地址詞向量。再結(jié)合距離算法計(jì)算上下文Context(g)地址詞向量與待清洗地址詞向量的距離,依據(jù)該距離去除待清洗地址詞向量?jī)?nèi)的超出距離閾值的字段,達(dá)到地址冗余字段清洗的目的。
以清洗后的地址數(shù)據(jù)為基礎(chǔ),使用ERNIE-DPCNN模型獲取地址數(shù)據(jù)向量特征。首先使用ERNIE模型內(nèi)的Transformer編碼器對(duì)地址數(shù)據(jù)向量進(jìn)行表征描述,則Transformer編碼器輸出表達(dá)公式[10]為:
Attentionoutput=Attention(Y,U,O)
(4)
式中:Attentionoutput表示輸出數(shù)值,該值即可描述數(shù)據(jù)向量表征;Y、U、O均表示地址詞向量矩陣;dk表示地址詞向量的維度。
將式(4)結(jié)果作為輸入值,使用DPCNN模型輸出地址數(shù)據(jù)詞向量特征。將ERNIE模型和DPCNN模型相結(jié)合,則ERNIE-DPCNN模型獲取地址數(shù)據(jù)詞向量特征過(guò)程如下:
第一步:將清洗后的地址數(shù)據(jù)提取成文本形式,并由A=(A1,A2,…,An)描述,其中An表示該文本內(nèi)第n個(gè)詞語(yǔ)。
第二步:將A=(A1,A2,…,An)輸入到ERNIE模型內(nèi),經(jīng)過(guò)Transformer編碼器輸出地址詞向量表征描述,并構(gòu)建地址詞向量表征描述矩陣X。
第三步:將X輸入到DPCNN模型內(nèi),利用該模型內(nèi)的等長(zhǎng)卷積層生成地址詞向量特征,其表達(dá)式[11]為:
γ=f(φ)*X+f(?)+X
(5)
式中:γ表示等長(zhǎng)卷積層輸出數(shù)值;φ、?分別表示卷積核與偏差數(shù)值;f(·)表示非線性激活函數(shù)。
第四步:使用池化層對(duì)上一步獲取的地址詞向量特征進(jìn)行分類(lèi)并歸一化處理,則地址詞向量特征的分類(lèi)概率表達(dá)公式[12]為:
(6)
利用式(6)獲得地址詞向量特征分類(lèi)結(jié)果,得到不同屬性的地址詞向量特征。
使用地址分詞算法對(duì)上個(gè)小節(jié)獲取的地址詞向量特征進(jìn)行匹配[13]。分詞匹配算法是通過(guò)用戶輸入中文地址,對(duì)該中文地址進(jìn)行分詞處理,依據(jù)特征匹配規(guī)則不斷迭代將匹配范圍逐漸縮小[14],將最小范圍的匹配結(jié)果返回給用戶。使用分詞匹配算法對(duì)地址分詞進(jìn)行匹配過(guò)程如下:
第一步:讀入需匹配的地址詞和地址標(biāo)準(zhǔn)庫(kù)數(shù)據(jù),判斷需匹配的地址詞內(nèi)是否劃分行政區(qū),若是則先進(jìn)行行政區(qū)判斷,然后進(jìn)行下一步。當(dāng)不存在行政區(qū)劃分時(shí)直接進(jìn)行下一步。
第二步:尋找最大匹配子地址,并依據(jù)該最大匹配子地址尋找父地址。
第三步:判斷父地址后是否存在下一個(gè)父地址,若是則匹配更上一級(jí)的地址詞特征[15],然后返回第二步繼續(xù)迭代,直至輸出終極父地址為止。
第四步:判斷地址詞內(nèi)是否存在同義詞,若是則匹配下一個(gè)同義詞要素,并返回到第二步繼續(xù)迭代。反之則判斷地址詞特征相似度是否符合預(yù)設(shè)閾值,若是則輸出地址特征詞匹配結(jié)果,反之則繼續(xù)尋找地址特征詞的父地址。
經(jīng)過(guò)上述過(guò)程,即可得到地址清洗匹配結(jié)果。
以浙江省嘉興市地址數(shù)據(jù)為實(shí)驗(yàn)對(duì)象,應(yīng)用本文方法對(duì)該城市地址數(shù)據(jù)進(jìn)行清洗匹配處理,驗(yàn)證本文方法的應(yīng)用效果。
以ERNIE-DPCNN模型迭代的損失值作為衡量本文方法地址清洗匹配結(jié)果可靠性指標(biāo),測(cè)試在地址數(shù)據(jù)量不同情況下,本文方法損失函數(shù)值變化情況,結(jié)果如圖3所示。
圖3 可靠性驗(yàn)證結(jié)果Fig.3 Reliability verification results
分析圖3可知,本文方法的損失函數(shù)數(shù)值隨著地址數(shù)據(jù)維度的增加而降低,且其降低到一定程度后開(kāi)始保持平衡狀態(tài)。在地址數(shù)據(jù)量為220個(gè)之前時(shí),本文方法的損失函數(shù)數(shù)值呈現(xiàn)大幅度降低趨勢(shì),當(dāng)?shù)刂窋?shù)據(jù)量超過(guò)220個(gè)之后,其損失函數(shù)值下降幅度較小。在地址數(shù)據(jù)量超過(guò)900個(gè)之后,本文方法的損失函數(shù)數(shù)值保持在0.5%左右。該結(jié)果說(shuō)明本文方法在清洗匹配地址時(shí)損失值小,輸出結(jié)果精度較高。
以10組地址數(shù)據(jù)作為實(shí)驗(yàn)對(duì)象,使用本文方法對(duì)其進(jìn)行地址字段清洗處理,測(cè)試本文方法地址字段清洗功能。為更清楚地呈現(xiàn)本文方法的地址字段清洗功能,同時(shí)使用文獻(xiàn)[5]方法和文獻(xiàn)[6]方法展開(kāi)實(shí)驗(yàn)。結(jié)果如表1所示。
表1 地址字段清洗后字段數(shù)量(個(gè))Tab.1 Number of fields after address field cleaning
分析表1可知,在3種方法中,本文方法對(duì)地址數(shù)據(jù)字段進(jìn)行清洗后,其地址字段降低幅度稍大,而文獻(xiàn)[5]方法和文獻(xiàn)[6]方法清洗后的地址數(shù)據(jù)字段下降幅度均低于本文方法。上述結(jié)果說(shuō)明:本文方法可有效對(duì)地址數(shù)據(jù)字段進(jìn)行清洗,且清洗后的地址數(shù)據(jù)字段數(shù)量下降明顯。
以8組地址數(shù)據(jù)作為實(shí)驗(yàn)對(duì)象,進(jìn)一步驗(yàn)證本文方法對(duì)地址數(shù)據(jù)字段清洗能力,以地址數(shù)據(jù)字段的保留特征作為衡量指標(biāo),測(cè)試本文方法對(duì)其清洗后,該地址字段特征保留程度,結(jié)果如圖4所示。
圖4 地址字段清洗后特征保留程度Fig.4 Degree of feature retention after address field cleaning
分析圖4可知,在3種方法中,本文方法對(duì)地址數(shù)據(jù)字段進(jìn)行清洗后,該地址數(shù)據(jù)字段特征保留程度數(shù)值均高于95%。而文獻(xiàn)[5]方法和文獻(xiàn)[6]方法對(duì)地址數(shù)據(jù)字段進(jìn)行清洗后,較大程度地降低了地址數(shù)據(jù)字段特征,影響后續(xù)的地址匹配效果。綜上結(jié)果可知:本文方法具備較強(qiáng)的地址數(shù)據(jù)字段清洗能力,可有效保留地址數(shù)據(jù)字段特征。
以6組地址數(shù)據(jù)為實(shí)驗(yàn)對(duì)象,使用本文方法對(duì)其進(jìn)行匹配,結(jié)果如表2所示。
表2 地址匹配測(cè)試結(jié)果Tab.2 Address matching test results
分析表2可知,使用本文方法對(duì)待匹配地址進(jìn)行清洗匹配后,得到的匹配結(jié)果相似度較高,且可有效匹配到地址的行政區(qū)劃分。上述結(jié)果表明本文方法對(duì)地址清洗匹配效果精度高,具備較強(qiáng)的可靠性。
本文研究基于ERNIE-DPCNN模型的地址清洗匹配方法,并對(duì)該方法進(jìn)行了實(shí)際驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,本文方法在地址數(shù)據(jù)字段清洗時(shí)有效性較好,且其保留地址數(shù)據(jù)特征程度均高于60%。在地址清洗匹配過(guò)程中,本文方法的地址匹配結(jié)果準(zhǔn)確,證明了本文方法的實(shí)際應(yīng)用效果較好。