laravel 分词搜索匹配度_【地名地址】面向智慧城市的高精度地名地址匹配方法...
原 文 摘 要
針對智慧城市建設中各種業務數據對地名地址匹配準確度和效率不高的問題,本文提出一種面向智慧城市的高精度地名地址匹配方法。該方法在基于中文分詞的地名地址匹配技術框架下,綜合利用精細化地名地址庫構建、地名地址特征分詞庫構建和基于用戶搜索行為大數據分析 3 種關鍵技術提高地址匹配度和匹配精度。利用該方法對智慧德清建設項目中工商法人 6537 條數據和 130988 條精細化地址樣本數據進行實驗與分析。實驗結果表明,在智慧城市大數據環境下,相比于傳統地名地址匹配方法,該方法匹配精度高,效率也大大提升,同時在匹配度與精確度兩個指標上匹配結果更加均衡。?0
引? 言
當前,智慧城市的建設如火如荼,空間位置信息作為城市信息的重要維度受到越來越多的重視。在城市工商、稅務、規劃、公安、銀行等職能單位擁有的業務數據中,通常以文本形式描述區域、街路、門牌號碼等空間位置信息[1]。如何將這些文本描述的空間位置信息與精確的空間位置進行匹配是地名地址匹配技術的關鍵問題[2]。因而,高效、高精度的地名地址匹配技術成為智慧城市建設空間位置信息獲取與應用的必然需求[3]。如何建立適用于大數據環境下的地名地址匹配方法,并提供數據分析、定位以及可視化等功能,已成為我國智慧城市發展中的現實需要[4]。
由于中文地名地址的特殊性,中文地名地址的匹配一直以來也是地理信息領域研究的熱點和難點問題。近年來,國內專家學者針對地名地址匹配的工作開展了大量研究。馬照亭等基于可伸縮地址模型提出一種基于地址分詞的自動地理編碼算法,根據地理編碼編制地址詞典,利用地址詞典進行地址分詞形成地址要素及其級別,最終根據查詢條件進行匹配[5]; 趙陽陽等提出基于地址要素識別機制的地名地址分詞算法,基于整詞二分分詞詞典,采用 FMM 算法,增加了基于地址要素的識別機制,從而有效地實現了對地名地址串的拆分[6]; 魏金明等針對市域地址數據特點,提出了一種基于置信度的地址匹配方法,該方法以地址數據庫為基礎,依托規范化地址編碼,利用分詞算法和置信度篩選的方法匹配數據,通過人機交互的方式擴充地址庫,實現了地址的自動匹配定位[7]。
上述匹配方法主要都是從技術層面在某一個具體的關注點上提高匹配的精度,忽略了智慧城市大數據環境下的數據本身語義多樣性、采集源異構等特征。目前這些高效準確的地名地址匹配技術并不能完全滿足智慧城市建設的需求,無法提供高效精準的匹配和智能化服務,兼容性不強,覆蓋面不廣。因此,本文提出一種面向智慧城市的高精度地名地址匹配方法,首先在基于中文分詞的地名地址匹配技術框架下,通過精細化標準地名地址庫構建覆蓋全面的全文檢索索引庫; 其次結合中文地名地址語義特點和通用地址表述方式,對通用地名地址詞組設置不同的權重,構建面向地名地址匹配的特征分詞庫,以提高分詞庫的專業性,降低分詞過程中的冗余和錯誤率; 最后,利用深度學習技術,將用戶搜索行為和匹配結果進行統計與分析,進一步補充和完善專業特征分詞庫,提高地名地址匹配效率,以滿足智慧城市建設的需求。
1
基于中文分詞的地名地址匹配方法
基于中文分詞的地名地址匹配采用的是全文檢索技術[8],主要分為索引創建和索引搜索兩個過程( 如圖 1 所示) 。高精度地名地址庫作為樣本庫,每一條地名地址都對應采集的精確空間坐標,索引創建利用分詞庫,通過分詞組件對樣本庫中的地名地址文本字符串進行分詞,形成一個一個的單詞,然后對這些單詞建立索引。匹配就是索引搜索的過程,將待匹配的字符串通過分詞組件進行分詞,然后與索引庫中的索引進行匹配,找出匹配度最高的索引,然后得出與地名地址樣本庫中一致的空間位置,以此實現非空間信息向空間信息的轉換[9-10]。
索引創建和索引搜索都離不開分詞。分詞是通過分詞算法將標準化后的地址字符串分解成多個地址要素詞組的過程。目前常用的中文分詞方法主要有基于字符串匹配的分詞方法、基于統計的分詞方法、基于知識理解的分詞方法和基于語義的分詞方法。以“浙江省杭州市西湖區保俶北路 83 號”為例,對地址進行分詞,可得到“浙江省 | 杭州市 | 西湖區 | 保俶北路 | 83 | 號”這組地址要素詞組。同一條地名地址字符串,不同的分詞庫和不同的分詞算法會得出不一樣的分詞結果,如上述地址也可分詞為“浙江 | 省 | 杭州 | 市 | 西湖 | 區 | 保俶 | 北 | 路 | 83 號”。
影響全文檢索的核心是樣本庫的詳細程度和分詞的準確性。樣本庫越豐富,描述越準確,則索引庫越全,匹配的命中率和準確度越高。分詞庫越豐富,分詞庫語義特征越明顯,則分詞結果越好,索引創建和索引搜索的準確度越高。
2
面向智慧城市的高精度地名地址匹配方法
2.1 構建精細化的標準地名地址庫
標準地名地址庫的建立是地址匹配的基礎和前提,需要將采集的城市地名地址按照確定的模型進行標準化,然后對標準地址要素進行編碼。這些地址要素一般包括行政區域、街道名、小區名、門址和樓址、標志物名等。標準地名地址數據庫存儲各類地址的標準名稱和空間坐標的唯一編碼。在匹配過程中,輸入的關鍵詞需要在標準地名地址庫中進行檢索和匹配,因而標準庫越詳細,匹配的契合度就越高。本文采用以下3種方式實現全覆蓋、高精度、實時更新的智慧城市標準地名地址庫。
1) 多源采集模式。在傳統的人工測繪采集方式的基礎上,結合高分影像和在線眾包模式實現區域內地名地址的全覆蓋和高精度采集,采集的地名地址細化到門牌樓址信息。
2)?地址線性內插和模擬。對于不能夠在標準地名地址庫中準確查詢匹配的數據進行地址線性內插和模擬,基本實現全覆蓋地址數據[11]。我們利用待匹配地址的門牌號在地址庫中查詢相鄰最近的前后一對地址門牌號,結合所在道路的門牌號編碼規則,根據距離線性內插得到待匹配地址的空間位置。如查找 7 號地址,可利用已有空間位置的 5 號和 9 號進行內插和模擬。同時,當有新的門牌地址空間數據更新到地址空間數據庫時,將之前匹配結果中內插匹配的部分重新利用上述流程計算一遍,讓內插匹配的空間位置更接近真實位置。
3) 建立協同更新機制。在精細地名地址采集形成的數據庫體上,采用多部門業務協同機制,實現多個涉及地名地址數據使用與更新的部門( 如民政、測繪、工商、公安) 之間的業務協同,實現地名地址數據的實時更新[12]。
通過以上 3 種方法的結合使用,可以形成完整的智慧城市地名地址數據庫,在此基礎上對所有的數據進行檢查和標準化,形成精細化標準地名地址庫,為地址匹配和索引庫建立奠定基礎。
2.2 建立面向地名地址匹配的專業特征分詞庫
中文地址分詞具有準確性、高效性、通用性、適用性 4 個原則[13]。其中準確性關系到地址匹配的效率,提高分詞準確性是地址分詞的主要目標。國內對中文分詞技術已進行了大量的研究,技術較為成熟,分詞準確率已經超過 95%,本文主要采用基于字典匹配的分詞方法。
基于字典匹配的分詞方法又叫作基于字符串的分詞方法或機械分詞方法[14]。這種方法是基于詞典的,即分詞庫,然后將待拆分的漢語字符串,按照一定的掃描規則與分詞庫的詞條進行匹配。因而,基于分詞庫的匹配模式,最關鍵的是分詞庫的內容,不同的分詞庫和解析器,對同一個地址字符串則會分解成不同的詞組[15]。如“保俶北路 83 號”可能會被分解為“保俶 | 北 | 路 | 83 | 號”或 “保俶北路 | 83 | 號”,顯然后面一種分解更加符合實際情況。為保證地址字符串能準確地分解為符合實際需求的詞組,本文通過在精細化標準地名地址庫的基礎上,對分詞庫的詞語進行權重設置,建立面向地名地址的專業特征分詞庫。
1) 在分詞庫中加入具有地名和空間特征的通用詞語,如“街道、路、巷,樓、幢、棟、小區”等詞語,分詞庫中對這些詞語設置高權重值。
2) 通過正則表達式,從精細地名地址樣本庫中提取具體的地名地址詞組,主要包括具體的行政區劃名稱、街道馬路名、樓幢名等,將這些詞語也加入分詞庫,并設置高權重值。
3) 在基礎中文詞庫的基礎上減去與地名地址關系不大的一些特征詞,降低與地名地址無關匹配,提高地名地址匹配的準確度。
2.3 利用深度學習完善分詞庫和提高匹配精度
隨著人工智能技術的不斷深化,深度學習在機器學習領域獲得巨大進展,它用非監督式或半監督式的特征學習和分層特征提取高效算法來替代手工獲取特征,在學習各類數據的規律中扮演著重要的角色[16]。類似于人類的學習能力,深度學習旨在利用計算機程序模擬出自學習系統,完成各種學習,可以使分類或預測變得更加簡單[17]。
在智慧城市建設與出行導航過程中,我們發現描述空間位置語句十分復雜,目前還沒有技術可以實現 100%的正確匹配。采用深度學習,讓用戶搜索行為和匹配結果進行學習,則可以不斷提高匹配精度。用戶在使用地名地址匹配進行檢索時,都會使用正確且具有實際空間語義的詞,這些詞隱藏著用戶行為習慣和個人認知,將這些詞語進行記錄,不斷地加入分詞庫,讓分詞庫不斷完善和專業化; 同時將用戶從匹配候選結果中選擇的結果與搜索關鍵詞進行關聯,建立樣本和標簽的對應關系,生成深度學習樣本數據,不斷進行訓練和學習,當下次進行相同關鍵詞進行地名地址檢索時,深度學習優先選擇與之關聯的地名地址作為結果詞條。通過深度學習的地名地址匹配方法能預先自我糾錯,提高匹配精度和效率,自動獲取和發現所需要的知識和信息。
3
試驗與分析?
為了驗證上述匹配方法的有效性,在智慧德清時空信息云平臺的建設過程中,本文以智慧德清工商企業 6537 條數據作為待匹配試驗數據,以德清 130988 條精細化為地址樣本數據,通過空間內插和模擬后新增了 52300條地址數據,形成 183288 條全覆蓋地址數據,并根據在線業務協同系統,每天平均更新 50 條地址數據和 43 條地名數據。在中文盤古分詞庫 146260 條的基礎上新增 821條德清地名地址專業詞,形成智慧德清地名地址專業分詞庫,見表 1。
試驗結果表明,在默認的中文分詞匹配方法下,匹配準確率為 65%,通過精細化地址樣本庫完善能提高到85%,通過分詞庫優化能提高到 78%,通過基于用戶搜索行為的深度學習能提高到 70%,通過 3 種方式的綜合運用,可以將整個匹配結果從原來的 65%提高到 90%,如圖2 所示。
4
結束語
智慧城市大數據環境下的地名地址匹配技術對推動智慧城市、智慧應用的發展提供了有力的技術支持。本文基于中文分詞的全文檢索匹配方法,針對全文檢索的原理,提出通過精細地名地址庫的建立、地名地址業務協同模式的采用來實現地名地址數據的常態化更新; 提取行政區劃、道路、房屋等測繪地理信息專業詞譜,建立面向地名地址匹配的中文分詞庫; 通過對用戶搜索行為的深度學習來完善分詞庫,并提高匹配關聯度 3 種方式的綜合運用水平,能有效提高地名地址匹配準確率,能夠較好滿足智慧城市建設中各類專題部門的地址信息空間化需求。該方法在處理智慧城市大規模數據時,相比于傳統地名地址匹配算法,在一定程度上提升了效率和性能,有效地提高了地名地址在智慧城市建設中的應用價值。
參考文獻[1] 李琴,梁寒冬,付蔚霞.寧波市地名地址數據建設與用[J]. 測繪與空間 地 理 信 息,2017,40 (8) : 212 -214,217.
[2] 江洲,李琦.地理編碼( Geocoding) 的應用研究[J].地理與地理信息科學 2003(3) : 22-2.
[3] 李林,程宇翔.智慧重慶地理編碼系統研究與應用[J].地理空間信息 2015,13(6) : 40-43,12.
[4] 許普樂,王楊,黃亞坤,等.大數據環境下基于貝葉斯推理的中文地名地址匹配方法[J]. 計算機科學, 2017,44(9) : 266-271.
[5] 馬照亭,李志剛,孫偉,等.一種基于地址分詞的自動地理編碼算法[J].測繪通報 2011(2) : 59-62.
[6] 趙陽陽,王亮,仇阿根.地址要素識別機制的地名地址分詞算法[J].測繪科學 2013,38(5) : 74-76.
[7] 魏金明,仲偉政.基于置信度的地址匹配方法初探[J].測繪科學 2015,40(1) : 122-125.
[8] 李奇.基于 REST 風格的地理編碼服務研究[D]. 青島: 山東科技大學 2012.
[9] 張雪英,閭國年,李伯秋,等.基于規則的中文地址要素解析方法[J].地球信息科學學報,2010,12 (1) : 9-16.
[10] 呂歡歡. 基于地理信息公共服務平臺的語義地名地址匹配方法研究[D].阜新: 遼寧工程技術大學 2014.
[11] 閔星,周沖,曹偉.基于內插的一種門牌地址匹配方法的研究與實現[J].測繪與空間地理信息,2015,38(6) : 119-120,12.
[12] 李東陽,方俊杰,許大璐.GIS 技術支持下的多部門地名地址業務協同研究與實現[J]. 測繪通報,2016(10) : 121-124.
[13] 譚侃侃. 基于規則的中文地址分詞與匹配方法[D].青島: 山東科技大學 2011.
[14] 程琦,梁武衛,汪培.基于復合字典的地名地址匹配技術[J].城市勘測 2018(1) : 76-78,82.
[15] 陳建英. 面向中文地址的分詞引擎設計及實現[D].北京: 中國科學院大學 2015.
[16] 奚雪峰,周國棟.面向自然語言處理的深度學習研究[J].自動化學報 2016,42(10) : 1445-1465.
[17] 來斯惟,徐立恒,陳玉博,等.基于表示學習的中文分詞算法探索[J].中文信息學報 2013,27(5) : 8-1.
作者簡介張劍( 1985- ) ,男,湖北監利人,浙江省自然資源監測中心工程師,碩士,2010 年畢業于中南大學地圖制圖學與地理信息工程專業,主要從事空間地理大數據分析及應用工作。葉遠智,浙江省自然資源監測中心。翁寶鳳,浙江省自然資源監測中心。End
原載于《測繪與空間地理信息》2019年11期。地名筆談小組搜集整理,如文字識別錄入偶有差錯,請見諒。非商業用途,如有侵權請聯系刪除。轉載請注明。
?????????????????? ? 往期推薦??????????????????????【地名地址】地名地址應用服務系統的研究與實現
2020-10-15
【地名地址】基于地名地址的政務數據空間化方法
2020-11-03
【地名地址】縣區地名綜合數據庫建設研究
2020-11-26
點個在看,你最好看
總結
以上是生活随笔為你收集整理的laravel 分词搜索匹配度_【地名地址】面向智慧城市的高精度地名地址匹配方法...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 世界十大红酒品牌(全球10大最畅销葡萄酒
- 下一篇: 怎么导出pr视频快捷键(pr导入导出快捷