時間:2017年11月20日 分類:科學技術論文 次數:
為獲取中文自然地址描述語句中的位置信息,提出一種不依賴于詞典的中文地址分詞方法。首先根據地址語料庫中字串共現的統計規律統計詞頻,然后對地名地址串進行正則表達式預處理,再對地址串進行全切分處理。通過互信息和信息熵得到最優粗分結果,通過置信度對粗分結果進行過濾得到最優分詞結果。實驗結果表明,該方法在不依賴詞典的情況下能有效實現對地名地址串的拆分,正確率和召回率分別達到了80.03%和89.28%。
關鍵詞:中文分詞,地名地址分詞,中文地址位置
互聯網是信息傳播交流的重要平臺。網絡空間中存在海量的中文地址數據,蘊含著豐富的空間信息。但是與傳統的地理信息或數據相比,文本中的地理信息是非結構化的,只有在形式化處理后才能進行分析和挖掘。文本中的空間信息形式包括中文地址分詞、空間關系提取、事件提取等。地名地址分詞作為空間信息形式化最基礎的工作,其準確性將直接影響到后續工作的有效性和準確性。地名地址分詞是中文分詞在地名地址中的應用,它將地名地址串拆分成若干地理要素[1]。
中文分詞算法大體分為3類:基于詞庫的分詞算法、基于統計的分詞算法、基于理解的分詞算法[2]。基于詞庫的方法將待分析的漢字串與一個“充分大的”機器詞典中的詞條進行匹配,若在詞典中找到某個字符串則匹配成功。這類方法簡單、分詞效率較高。但漢語語言現象復雜豐富,詞典的完備性、規則的一致性等問題使其難以適應開放的大規模文本分詞處理。基于統計的方法將相鄰字間的信息、詞頻及相應的共現信息等應用于分詞。由于這些信息是通過真實語料取得的,因而基于統計的分詞方法具有較好的實用性。基于理解的方法是試圖通過計算機模擬人對文字的理解過程來進行分詞,但目前尚不成熟,實際應用中無法直接使用該算法。
中文地址解析方面,文獻[3]首先創建一個符合地址分級模型的地名庫,并在此基礎上通過地址串的拆分和匹配完成地址標準化編碼工作,這種方法的困難在于需要人工維護基礎地址庫。文獻[4]在中文地址編碼研究中采用分段、組合、優先規則,對中文地址進行分段匹配。這些規則在一定程度上減少了地址要素的匹配次數,但由于采用數據庫查詢方式,使算法總體匹配速率不佳。文獻[5]應用自然語言處理中的中文分詞和語義推理原理(HMM模型)對非結構化中文地址進行處理,該方法缺點是依賴于訓練語料,前期需要進行大量的地址訓練操作。
由于我國地址名稱多而雜亂,而且地址名稱不斷在更新,人工構建一個標準的涵蓋各級地址的工作量非常大。因此,本文針對地名地址串,提出一種基于統計的中文地址分詞方法:首先統計語料庫詞頻,然后對地名地址串進行正則表達式預處理,再對地址串進行全切分處理,通過互信息和信息熵得到最優粗分結果,最后通過置信度對粗分結果進行過濾,得到最優結果。該方法地址識別率高,對原始地址結構和部分地址元素缺失不敏感,不需要人工構建一個海量地址庫。
1基于統計的中文地址解析方法
本文提出了基于無詞典的中文地址分詞方法。首先對互聯網上爬取的30萬條地址數據構成的語料庫詞頻、相鄰詞語之間的互信息、詞語的信息熵進行統計,然后對地名地址串進行正則表達式預處理,提取出“數字+號”這類描述方式以及一些標點符號;再對剩下的地址串進行全切分處理,得到所有的分詞方案,然后通過互信息和信息熵計算選擇弧度花費最小的分詞方案;最后通過置信度對該分詞方案進行過濾得到最優結果。
1.1統計詞頻
詞是最小的能夠獨立活動的有意義的語言成分[6],是相鄰的字與字構成的穩定組合。在語料庫中,相鄰的字同時出現的頻率越高,就越有可能構成一個詞。因此字與字相鄰共現的頻率或概率能夠較好地反映成詞的可信度。本文對互聯網上爬取的30多萬條地址文本進行統計處理。在沒有地名詞典的情況下,任意長度的字串都有可能構成一個地理要素。一個最長的地理要素長度為8(如新疆維吾爾自治區),所以將字符串的最大長度設為8,統計語料庫中任意長度(最大為8)字符串的詞頻。在地名地址串比如“武漢市洪山區珞瑜路312號”中,312在計算機中是3個字符,而在人們認知的地址數據中312是一個整體,所以在預處理時將連續的數字認定為一個字符。哈希查找方法是效率較高的查詢算法,因此將統計好的詞頻采用哈希結構存儲。
1.2構造切分詞圖
給定一個中文地址字符串S,對S進行全切分處理,那么就有2l-1種切分方法。其中,l是地址字符串S的長度,S的全切分集合為W={Wi},1≤i≤2l-1,Wi代表一種切分方法。把切分的字符串當作節點,把字符串的切分位置當作弧段,就可以將地址語句的全切分集合表示為圖,稱為地址語句的切分詞圖。
1.3設定弧段花費
中文信息處理中,統計方法主要應用于自動抽詞或未登錄詞識別,比如串頻、互信息、信息熵、檢驗值、相關度等統計量可用于定量判斷候選詞的邊界[7],其中最常用的是互信息和信息熵。
互信息度量兩個對象之間的相互性。互信息通常用來衡量兩個信號的相互依賴程度,并可用來衡量詞語的內部結合緊密程度。互信息越大,說明詞語的內部結合緊密度越大,它們構成詞語的可能性越大。互信息越小,構成詞語的可能性越小。其計算公式為:
MI(x,y)=log2p(x,y)p(x)p(y)(1)
其中:p(xy)是字符串xy在語料庫中鄰接出現的概率,p(x)是x在語料庫出現的概率;p(y)是y在語料庫中出現的概率。當MI(x,y)大于一定閾值時,表明字符串xy是一個詞;當MI(x,y)小于一定閾值時,字符串xy不會結合成詞。
信息熵是用來衡量一個隨機變量出現的期望值,一個變量的信息熵越大,它出現的各種情況就越多,不確定性就越大,正確估計其值的可能性也越小。字符串左右搭配越豐富,選擇越多。在自然語言處理中,分別利用左信息熵和右信息熵來判斷字符串的邊界。一個字符串的左信息熵指該字符串與它相鄰的左鄰接字串集合的信息熵之和,用來表示該字符串的左鄰接字的不確定性。左信息熵越大,說明該字符串的左鄰接字越不確定,該字符串成為某一個詞語左邊界的可能性越大。相反,左信息熵越小,該字符串的左鄰接字越確定,它成為某一個詞語左邊界的可能性就越小。同理,右信息熵可以確定詞語的右邊界。
EL(w)=-∑a∈AP(aww)log2P(aww)(2)
ER(w)=-∑b∈BP(wbw)log2p(wbw)(3)
上式中,w表示該字符串,aw表示該字符串和左鄰接字的組合形式,wb表示該字符串和右鄰接字的組合形式。
本文根據互信息和信息熵原理將其轉化為切分詞圖中弧段的開銷。一條弧段相鄰字符串之間的互信息越大,越不適合作為詞的邊界,弧段開銷越大;其連接左右字串的信息熵越大,越適合作為詞的邊界,該弧段開銷越小。因此,可以定義如下弧段花費計算公式:
c(A,B)=MI(a,b)ER(A)EL(B)(4)
A、B表示弧段連接的左右字串,a、b表示左字串最右側的字和右字串最左側的字。
1.4置信度過濾
在地址語句中,由于地理要素存在層級關系,上述計算方式容易產生數據稀疏問題,不能將兩個地理要素切分開,因此引入置信度過濾的計算方法。
已知字符串w1為fre(w1),字符串w2的詞頻為fre(w2),字符串w=w1+w2的詞頻為fre(w),則字符串w1相對于字符串w,詞的置信度如公式(5)所示。
conf(w1w)=fre(w1)-fre(w)fre(w1)(5)
同樣可知字符串w2相對于字符串w的置信度。
字符串w1相對于字符串w的置信度,反映了字符串與前綴漢字串或后綴漢字串結合的穩定性,即字符串w2構成詞條的可能性。如果字符串w1相對于字符串w的置信度小于閾值α,則認為字符串w是真實字符串的可能性比w1大,則從詞頻生成的詞庫中去掉w1字符串。如果字符串w1相對于字符串w的置信度大于閾值β,則認為字符串w1是真實字符串的可能性比w大,從詞頻生成的詞庫中去掉w字符串。如果字符串w1相對于字符串w的置信度大于閾值α且小于閾值β,則比較兩個詞的詞頻大小,保留詞頻大的字符串。
通過分析不同取值條件下的實驗結果選取α和β的閾值。一般在α=0.3和β=0.8的情況下分詞結果更好。
比如w1=“武漢”,w=“武漢市”,fre(w1)=7 096,fre(w)=7 086,則conf(w1w)=(7 096-7 086)/7 096=0.001 9,小于閾值α=0.3,所以從詞頻生成的詞庫中去掉“武漢”字符串,保留字符串“武漢市”。
再比如w1=“武漢市”,w=“武漢市武”,fre(w1)=7 082,fre(w)=1 110,則conf(w1w)=(7 083-1 110)/7 082=0.84>β=0.8。所以,應從統計語料庫的詞頻生成詞庫中去掉“武漢市武”字符串,保留“武漢市”字符串。
2實驗結果分析
實驗采用完全基于統計特征的分詞方法和引入了置信度過濾的分詞方法。前者基于統計考慮,說明了統計分詞方法的有效性,后者通過引入置信度過濾改進了統計分詞效果。從互聯網上爬取30萬條地址數據構成的語料庫中,隨機選取2 000條地址語句,采用上述兩種方法進行分詞實驗,統計兩種分詞方法的正確率、召回率和F值,各指標計算如公式(6)~(8)所示。
通過分析地址解析方法,將最大熵分詞方法與本文方法對比。本文方法雖然在正確率上沒有前者高,但是在召回率和F值上有了較大提升。而且最大熵方法在前期需要人工標注大量的語料,工作量大,本文方法則不需要標注,實用性更強。兩者對比結果如表1所示。
正確率(P)=切分正確的總詞數切分出的總詞數×100%(6)
召回率(R)=切分正確的總詞數標準結果中的總詞數×100%(7)
F=2×P×RP+R×100%(8)
3結語
本文提出了一種無詞典的中文地址分詞方法。在互聯網上爬取30多萬條地址數據構成語料庫,通過統計地址文本中各個字的組合頻度,計算待分詞文本的各種參數,判斷漢字之間的緊密程度,通過置信度過濾最后獲得分詞結果。實驗結果表明,本文方法不需要依靠人工去構建一個地名地址庫,且不需要人工去標注訓練語料就能實現對地名地址串的切分,且分詞效果較好,實用性強。
參考文獻參考文獻:
[1]趙陽陽,王亮,仇阿根.地址要素識別機制的地名地址分詞算法[J].測繪科學,2013,38(5):8183.
[2]于光.中文分詞系統的設計與實現[D].成都:電子科技大學,2012.
[3]孫存群,周順平,楊林.基于分級地名庫的中文地理編碼[J].計算機應用,2010(7):19531958
[4]唐靜.城市地名地址的編碼匹配研究[D].昆明:昆明理工大學,2011.
[5]宋子輝.自然語言理解的中文地址匹配算法[J].遙感學報,2013,17(4):788801.
[6]徐飛,孫勁光.中文分詞切分技術研究[J].計算機工程與科學,2008,30(5):126128.
相關閱讀:現代測繪雜志投稿測繪論文好發嗎