陳婧汶,陳建國,王成彬,朱月琴
(1.中國地質大學地質過程與礦產資源國家重點實驗室,湖北 武漢 430074; 2.中國地質大學(武漢)緊缺礦產資源勘查協(xié)同創(chuàng)新中心,湖北 武漢 430074; 3.中國地質大學(武漢)資源學院,湖北 武漢 430074; 4.自然資源部地質信息技術重點實驗室,北京 100037; 5.中國地質調查局發(fā)展研究中心,北京 100037)
中國的地質工作自民國以來,取得了一系列的成就。與此同時,承載這些成就的地質科技文獻、地質報告等地質文本數據量急劇增加。從計算機信息處理角度來講,地質文本為利用自然語言書寫的,具有鮮明的地質特色的非結構化的語義數據[1-2]。如何從海量的非結構化地質文本資料中提出有效的、簡潔的、結構化的信息,并基于提取出來的結構化信息進行知識發(fā)現是目前地學信息領域極具實用價值和富有挑戰(zhàn)性的工作。中文分詞是解決信息檢索、文本分類、數據挖掘、信息過濾、自動標引提取、自動文摘生成等自然語言處理問題的前提和基礎。
根據方法原理的不同,中文分詞方法可以分為基于詞典匹配的分詞方法、基于統(tǒng)計的分詞方法和基于理解的分詞方法?;谠~典匹配的分詞方法是針對特定領域分詞的主要方法,如Jiang H J等[3]采用一種新型個性化分詞詞典對網絡文本進行分詞,但此類方法受限于專業(yè)詞典,對詞典中的未收錄的詞匯識別率低。而基于統(tǒng)計的分詞方法將中文分詞問題視為字串序列標注問題,并通過機器學習的方法預測最佳序列從而達到分詞的效果,主要的統(tǒng)計模型有隱馬爾科夫模型(hidden Markov model,HMM)[4]、最大熵馬爾科夫模型(maximum entropy Markov model,MEMM)[5]和條件隨機場(conditional random fields,CRFs)模型[6]等,統(tǒng)計分詞方法能夠自動從訓練數據中獲得知識,對未登錄詞具有很好的識別能力。其中,條件隨機場模型在歸一化時考慮數據的全局分布,消除了隱馬爾科夫模型中兩個不合理的假設條件,克服了最大熵馬爾科夫模型標記偏置(label bias)[7]的問題。條件隨機場模型能夠引入多種特征,Sun等[8]將詞性特征引入條件隨機場模型進行分詞和標注,Huang等[9]將字符特征和詞語特征引入條件隨機場模型。同時,條件隨機場模型能夠通過對引入的特征進行學習生成特征函數集合,從而預測最佳序列標注。基于理解的分詞方法利用計算機模擬人類閱讀中文時的理解過程以實現詞匯的有效識別,從而達到分詞的目的。目前,對中文分詞的研究大多采用基于詞典匹配和基于統(tǒng)計的分詞方法。
中文分詞方法根據應用的范圍,可以分為通用領域和特定知識領域。通用領域分詞方法使用靈活,不受專業(yè)領域知識的限制;特定知識領域分詞是基于專業(yè)領域的知識,提高領域知識詞匯的分詞準確率。在通用領域中文分詞中,隨著文本領域內容的變化,不可避免的出現大量未登錄領域專業(yè)詞匯,使得分詞效果欠佳。而特定領域分詞方法專門針對某一領域,對該領域的專業(yè)詞匯具有較好的分詞效果。
在特定領域中文分詞方法上,學者們做了大量的工作,均取得了較好的分詞效果,如岳金媛等[10]將領域詞典與鏈式條件隨機場模型相結合對專利文獻進行分詞,楊曉軍等[11]提出基于改進的正向最大匹配算法的中文分詞算法并應用于GIS領域,邱冰等[12]采用基于計算機自動分詞的統(tǒng)計方法對古代漢語分詞。
由于地質礦產文本中含有大量的專業(yè)術語,通用領域方法無法很好識別其未登錄詞,而其他特定領域中文分詞方法移植性較差,不適用于地質礦產文本分詞。目前,針對地質領域的中文分詞研究不多,張思發(fā)等[13]采用“庖丁解?!敝形姆衷~算法實現對地學信息領域文本進行了分詞研究,但其算法對未登錄詞匯識別能力較差。Huang等[14]基于條件隨機場構建地學領域分詞方法,其訓練語料庫的標注采用的是人工自定義的方法,其方法雖然對地礦專業(yè)術語具有很好的識別能力,但訓練語料庫對于地礦專業(yè)術語的標注、定義在規(guī)范程度方面仍需提高。為了提高訓練語料標注的規(guī)范程度,本文基于條件隨機場模型方法,引入地質大辭典和地質礦產術語等標準規(guī)范詞匯,采用半自動標注的語料處理方法制作地質領域語料庫,將地質語料庫和通用語料庫結合訓練條件隨機場模型的分詞規(guī)則,對地質礦產文本進行分詞研究。
地質礦產文本數據主要包括地質礦產報告和地質科技文獻,其中,地質礦產報告是用于描述地質礦產調查項目進展和成果的特殊文本,其嚴格按照中國地質調查局的編寫規(guī)范進行撰寫,主要由現代漢語常用詞匯和地質礦產專業(yè)術語組成。地質礦產文本數據在用詞上具有以下特點。
由于地質礦產文本是為報道地質礦產研究成果而撰寫的具有科學性的文本,其嚴格遵循編寫規(guī)范,描述性語句居多,用詞嚴謹,較少出現歧義詞,如“區(qū)內含礦地層主要為下三疊統(tǒng)永寧鎮(zhèn)組下段和飛仙關組上段”。
除了大量地質礦產專業(yè)術語,地質礦產文本應用統(tǒng)計學、計算機等學科研究方法的頻率高,存在學科交叉領域詞匯,如“層次分析法”“因子分析”“非線性耦合”等。
在地質礦產文本中,一些專業(yè)術語可用英文縮寫代替,文本中存在純英文詞匯和中文、英文、數字組合詞匯,如“Cu”“EH4”“SE向”等。
地質礦產文本具有針對性,對某一地區(qū)進行調查研究,故文本中包含大量地名,如“沱沱河地區(qū)”“個舊”“張家口”等。
存在大量專業(yè)術語嵌套現象,如“阿爾卑斯”“阿爾卑斯地槽”“粉砂巖”“粉砂巖包裹體”等。
根據地質礦產文本的特點,對地質礦產生語料進行預處理,首先將地質詞典與生語料進行匹配,將生語料中與詞典匹配的詞匯進行機械標注,形成粗加工語料,然后對沒有進行匹配的漢字進行人工校對與標注,形成完整序列標注的地質礦產熟語料。結合通用領域熟語料對分詞規(guī)則進行訓練,形成地質礦產分詞模型。在分詞模塊中,利用地質礦產分詞模型對輸入文本進行序列標注,再通過模型解碼,從而進行分詞。條件隨機場模型的訓練與測試采用CRF++-0.58工具包[注]CRF++:Yet another crf toolkit,http:∥crfpp.sourceforge.net/.。根據序列標注集和特征模板,CRF++0.58工具包會自動生成一系列特征函數,形成一個分詞模型,進而實現對地質礦產文本進行分詞(圖1)。
本文利用地質詞典對地質礦產語料進行處理,從而構建地質礦產文本領域知識。地質詞典由地質大辭典和地質礦產術語分類代碼表共同組成。地質大辭典是我國建國以來第一部綜合性地質辭典,全書共包括四十多個學科的名詞、術語一萬一千多條。地質礦產術語分類代碼表主要是由地質礦產生產、科學研究中的各種地質現象所涉及到的屬性和對屬性特征進行定性描述用的名詞、術語組成,共有地球物理學、巖礦鑒定等三十五個部分約八萬個詞條。本文采用地質大辭典及地質礦產術語分類代碼表中的名詞、術語約九萬個詞匯構建一個適用于地質礦產生語料預處理的地質詞典。
地質礦產文本是專業(yè)性很強的文本,含有大量專業(yè)術語,這些專業(yè)術語在現有分詞系統(tǒng)中多為未登錄詞。本文首先利用正向最大匹配(forward maximum matching,FMM)算法[15]對地質礦產生語料進行地質詞典匹配,將生語料中與地質詞典中相匹配的專業(yè)術語進行機械標注并將語料進行分句。對經過粗加工的語料進行人工校對及標注,標注的前提是對字串進行詞語切分,切分規(guī)范參考北京大學計算語言學研究所公布的《現代漢語語料庫加工規(guī)范——詞語切分與詞性標注》。
圖1 分詞方法總體結構圖
條件隨機場是一種判別式概率圖模型[16],用于標注和切分有序數據。
給定一個無向圖G=(V,E),其中V是非空的頂點集合,E是V中元素構成的無序二元組的邊集合(圖2)。
在前提條件為X的情況下,若無向圖G=(V,
圖2 無向圖示例
E)中每個隨機變量Yv均服從馬爾科夫獨立性,即式(1)。
P(Yv|X,Yu,u≠v)=P(Yv|X,Yu,u~v)
(1)
則(X,Y)就構成一個條件隨機場,其中u~v表示u和v是無向圖中相鄰的邊。
在進行中文分詞時,最常用的是一階鏈式結構的條件隨機場模型。設字串x={x1,x2,…,xn}為觀察序列,字串標注y={y1,y2,…,yn}為有限狀態(tài)集合。在給定輸入序列的情況下,一階鏈式結構的條件隨機場狀態(tài)序列的條件概率見式(2)。
(2)
式中:fj(yi-1,yi,x,i)為一個可選的特征函數;λj為每個特征函數的權值;Z(x)為歸一化因子,其計算公式為式(3)。
(3)
序列標注集是指字串中每個字對應的詞位信息的標注。序列標注集的選定與特征模板的設置關系到條件隨機場模型的分詞效果,特征模板中的每個特征分別對應一組特征函數,根據特征函數可以計算輸出最佳標注序列。
序列標注集中字的詞位信息設定決定了條件隨機場模型最終得到的分詞精度。根據實際研究需求,可自由選擇不同的序列標注集。地質礦產文本中含三字以上的詞匯較多,故本文選擇四位詞序列標注集{B,M,E,S}作為字標注方法,其中,B代表詞語首字,如“成礦預測”中的“成”;M代表詞語中字,如“成礦預測”中的“礦”“預”;E代表詞語尾字,如“成礦預測”中的“測”;S代表單字詞,如“的”“是”(表1)。標注及其對應的定義見表1。如將“基于GIS的證據權重法在成礦預測中的應用”這個句子進行標注,標注結果見表2,即分詞結果為“基于/GIS/的/證據權重法/在/成礦預測/中/的/應用”。
特征模板的設置是進行詞位標注時最重要的一個環(huán)節(jié)。條件隨機場模型不僅可以學習字本身的特征,還可以學習字的上下文特征。將上下文約束與序列標注集結合,即可設置特征模板。
特征模板有一元特征模板和二元特征模板兩類,根據地質礦產文本的特點,選用基于字的一元特征模板[17]作為特征描述模板,其原理為給出一個模板“U00:%x[-3,0]”,假設當前位置為“地”字,其左數第三個位置x為“礦”字,則生成一個特征函數集合(func1…funcL×N)(圖3)。
表1 四位詞序列標注集的定義
表2 上文句子標注后數據
圖3 特征函數集合
其中,模型生成的特征函數的個數為L×N,L表示輸出的類別的種類個數,N表示根據給定的一元特征模板擴展后的輸入x的種類個數。通過特征模板的設置,將字面信息作為特征,可以對比不同上下文窗口以及字共現情況下的分詞結果。一元特征模板的基本定義為式(4)~(6)。
Cn(n=-3,-2,-1,0,1,2,3)
(4)
CnCn+1(n=-3,-2,-1,0,1,2)
(5)
Cn-1CnCn+1(n=-2,-1,0,1,2)
(6)
式中:C為一個字;n為當前字的相對位置。
為了驗證采用雙語料庫構建條件隨機場分詞模型對地質礦產文本分詞的性能,筆者采用北京大學計算語言學研究所提供的《人民日報》標注語料和地質礦產熟語料作為試驗語料。在中國知網上檢索、下載地質礦產類文獻,隨機選取其中50篇地質礦產文獻,經處理后形成地質礦產熟語料,包含漢字284 572頻次。抽取30%的地質礦產熟語料作為測試語料集,70%作為訓練語料集的一部分,訓練語料集的另一部分為《人民日報》標注語料。
采用三種加入不同語料的條件隨機場分詞模型對測試語料進行對比分析:①CRF-pku:利用北京大學的語料庫構建條件隨機場模型對測試語料進行分詞;②CRF-geo:采用地質礦產訓練語料構建基于條件隨機場的分詞模型對測試語料進行分詞;③CRF-geo+pku:結合地質礦產訓練語料與北京大學語料庫,構建基于條件隨機場的地質礦產分詞模型對測試語料進行分詞。通過準確率(Precision)、召回率(Recall)和綜合指標F值(F-Measure)等指標對以上三種分詞模型得到的分詞結果進行評測,各指標的計算公式為式(7)~(9)。
(7)
(8)
(9)
采用字信息作為特征,比較上下文窗口為±1~3個字,以及二字、三字共現情況下的分詞結果。從表3可以看出,增加二字、三字共現特征比單字上下文關系特征的分詞效果有一定程度的提升。在窗口為[-2,2]、三字共現的情況下,三個分詞模型的精度均達到最高,分別為83.74%、、93.42%、93.73%(表3)。
表3 基于字面特征的分詞評測結果
為了探究分詞效果差異產生的原因,選取分詞效果最好的“[-2,2]窗口、三字共現”模板對不同分詞模型進行深入分析。
從圖4中可以看出,CRF-geo和CRF-geo+pku這兩種分詞模型取得的分詞效果明顯優(yōu)于CRF-pku分詞模型。其中,CRF-geo+pku分詞模型的分詞效果最好,F值至少比CRF-pku提高了9.99個百分點。CRF-geo+pku分詞模型與其他兩種分詞模型相比,準確率、召回率和F值都有不同程度的提高(表4)。
試驗結果表明,CRF-geo+pku分詞模型較其他分詞模型更加準確,該分詞模型既能很好的識別地質礦產專業(yè)術語,又能對地質礦產文本中的常用詞匯準確分詞。CRF-geo分詞模型準確率略低于CRF-geo+pku分詞模型,原因是CRF-geo對地質礦產文本中的常用詞匯分詞不夠準確。在地質礦產語料基礎上加入通用領域語料進行訓練的CRF-geo+pku分詞模型彌補了CRF-geo對常用詞匯分詞準確率較低的不足。以地質礦產語料訓練的CRF-geo+pku和CRF-geo分詞模型比僅采用通用領域語料進行訓練的CRF-pku分詞模型在準確率、召回率和F值上都有大幅提升,因為CRF-geo+pku和CRF-geo在分詞時考慮了地質礦產專業(yè)術語的特征,對地質礦產專業(yè)術語識別率高,如CRF-pku將“燕山早期”切分為“燕山”和“早期”兩個部分,而CRF-geo+pku和CRF-geo則正確的將“燕山早期”識別為一個詞。
圖4 開放測試下各分詞模型的分詞結果
表4 各分詞模型的分詞結果對比
分詞模型CRF-geo+pkuCRF-geo+pkuCRF-geo對比的分詞模型CRF-pkuCRF-geoCRF-pkuPrecision平均提高/%9.090.368.73Recall平均提高/%10.830.2510.58F-Measure平均提高/%9.990.319.68
由此可見,影響分詞效果的主要原因是能否正確識別地質礦產術語,次要原因是對地質礦產文本中的常用詞匯的識別。本次試驗中采用的CRF-geo+pku分詞模型可以有效的識別地質礦產術語和現代漢語常用詞匯,準確的對地質礦產文本進行中文分詞。
條件隨機場模型具有新詞發(fā)現的功能,能較好的識別未登錄詞。試驗過程中發(fā)現三種分詞模型可以在不同程度上識別一些未登錄地質礦產專業(yè)術語。CRF-pku分詞模型能夠識別部分的未登錄地質礦產專業(yè)術語,如“印支期”,但CRF-pku具有通用領域分詞方法對地質礦產專業(yè)術語識別率低的缺點,如CRF-pku把“車房溝”切分為“車”“房”“溝”三個部分,由于通用領域語料及通用領域詞典中不包含地質礦產專業(yè)術語“車房溝”及類似的詞語,故CRF-pku無法學習其規(guī)則。地質礦產文本中包含大量的地名及地名嵌套詞匯,如“車房溝”“銀洞子礦床”,對此CRF-pku均無法較好的識別。同時,對于“金屬硫化物”“泥化蝕變”“重力梯度帶”等由多個詞組成的地質礦產專業(yè)術語,分詞效果也很差。CRF-geo與CRF-geo+pku分詞模型對未登錄地質礦產專業(yè)術語的識別效果較佳,基本可以正確識別??梢?,加入地質礦產語料有助于識別未登錄地質礦產專業(yè)術語。
從上文試驗的結果來看,結合通用領域語料與地質礦產語料構建基于條件隨機場的中文分詞模型對地質礦產文本進行分詞能夠顯著提高分詞性能,它不僅解決了通用領域分詞方法對地質礦產專業(yè)術語識別率低的問題,而且對常用詞匯同樣具有很高的識別能力。
本文構建的基于雙語料庫的條件隨機場分詞模型具有發(fā)現未登錄地質礦產新詞的能力,如地層“額木爾河組”。除此之外,此方法還能對易產生歧義的句子進行準確切分,例如測試語料中有一句話為“巖體的中心為橄欖巖相”,CRF-pku的切分結果為“巖體/的/中心/為/橄欖/巖/相”,本文提出的方法的切分結果為“巖體/的/中心/為/橄欖巖相”。
本文基于條件隨機場模型,選取適當的特征模板和序列標注集,結合地質詞典特征,對地質礦產文本進行了中文分詞研究,取得了較好的分詞效果,對地質礦產文本的自然語言處理工作有著重要的意義。在語料預處理步驟中將地質詞典與生語料進行匹配進行機械分詞,避免了部分人工標注的誤差,提高了標注效率,為以后建立大規(guī)模語料庫提供了一個可行方案。研究使用多種分詞模型進行對比,得出采用通用領域語料與地質礦產語料共同訓練分詞模型可以較好識別地質礦產專業(yè)術語和常用詞匯的結論。
本文提出的地質礦產文本分詞方法比通用領域分詞方法對地質礦產專業(yè)術語的識別率有明顯提高,但分詞準確率還可以進一步提高。條件隨機場模型分詞效果受訓練語料規(guī)模的影響,訓練語料規(guī)模越大,分詞效果越好。采用的地質礦產語料規(guī)模較小,分詞準確率還有提高的空間。在以后的工作中,我們會重點建設一個規(guī)?;牡刭|礦產語料庫。