姜亞輝,姬東鴻
(武漢大學 計算機學院,湖北 武漢430072)
本文研究的目標是包含至少3個詞語且不含助詞 “的”的復雜名詞短語。名詞短語的識別在自然語言處理很多領域有著重要的應用,例如自動問答、信息檢索、信息恢復[1]、機器翻譯等領域。復雜名詞短語包含多個名詞詞語,內部包含豐富的語義信息,其識別分析對句子乃至篇章的語義理解有著重要的意義。主動學習[2](active learning)是一種可以有效減少學習器對標簽數據需求量的學習方法,而半監督學習[3]方法則是建立在圖理論上,能夠有效的利用未標簽數據,在數據挖掘和機器學習上已經取得了很多成果。目前,半監督和主動學習相結合起來的算法已經應用到高光譜圖像識別[4]、生物信息抽取[5]等領域,但在中文復雜名詞短語的識別方面,尚有待對半監督和主動學習結合的識別方法進行探索。國內外將機器學習應用到最長名詞短語識別方面的主要有:條件隨機域模型、最大熵馬爾科夫模型、隱馬爾科夫模型等。對于外語的名詞短語識別系統中:法語的最長名詞短語抽取系統[6]是基于規則的,英文的最長名詞短識別方面有利用有限狀態分析機制[7]的識別系統以及結合統計和規則方法[8]的抽取系統。在中文領域,周強等在中文最長名詞短語的識別方面做了重要的工作。傳統的有監督的學習方法依賴于大量的標簽數據來訓練學習器,在現實中可以很容易獲得大量未標簽數據,而獲得標簽數據需要昂貴的資源,因此一個關鍵問題是:在學習器達到相同的性能情況下,盡可能減少標簽數據的使用。
名詞短語的識別工作是自然語言處理中的一重要的子任務。它的識別結果可以用來簡化句子的結構,進而降低句法分析難度以及復雜度,這對句子的整體結構框架的把握,句子完整句法樹的構建有著非常重要意義。例如:“我在大連理工大學工作了十五年了”,如果正確識別出 “大連理工大學”這一復雜名詞短語,則能很容易把握句子的整體結構,做出正確的句法分析。
句子中名詞短語按照組成結構可以分為[9]:①不包含其它名詞短語的最短名詞短語 (mNP);②不被其它名詞短語包含的最長名詞短語 (MNP);③所有不是mNP 和MNP的一般名詞短語 (GNP)。
套疊現象是中文所特有的,這使得對中文最長名詞的識別比英文的復雜名詞短語的識別更加困難。名詞短語長度越長,其識別的難度也越大。研究表明:對名詞短語的識別中,在準確率方面,長度超過5的識別結果要少于不超過5的識別結果15 個百分點,召回率低了35 個百分點[9]。周強等人在研究中將復雜名詞短語定義為長度大于或者等于5的MNP,本文中 “復雜名詞短語”是指:包含至少3個詞語且不含助詞 “的”的復雜名詞短語。
復雜名詞短語的識別問題可以看作標注問題,每個句子形式化為:x= (x1,…,xt),其中xi為句子中的各個字,看作為輸入;相應的y= (y1,…,yt)則表示對應的標記序列,目標就是找到最有可能的標記序列。
條件隨機域模型 (conditional random fields,CRF)的基礎是最大熵模型以及隱馬爾科夫模型,是一種判別式概率無向圖學習模型,它綜合了最大熵模型和隱馬爾科模型的優點。CRF最早的提出是針對序列數據分析的,現在已經成功應用在生物信息學、機器視覺、網絡智能及自然語言處理等領域。指定的觀察序列可以應用CRF得到最好的標記序列的概率。該模型最常用的是線性鏈結構,每一個線性鏈和一個有限狀態機相對應,可應用于序列化數據的標注問題[10]。
令珗x=(x1,…,xT)表示需要標記的長度為T 觀察序列,珗y=(y1,…,yT)表示對應于觀察序列的標記序列。在本文的復雜名詞短語的識別中,珗x代表一個需要標注的句子,珗y對應于詞的詞性的標簽序列。對一個給定的輸入序列珗x到狀態序列珗y的條件概率,帶有參數θ的線性鏈條件隨機場模型將其定義為
式中:Z(珝x)——泛化因子,在線性鏈模型中,泛化因子的計算可以通過前向后向算法來計算,使用泛化因子是為了保證對給定輸入序列,它所有可能的狀態序列的概率和為1。fk(yt-1,yt,xt)——觀察序列標記位于T 和T-1 的特征函數,特征函數值可以是0、1值,θk是特征權重,也即需要學習的參數,對應于特征函數。條件隨機域可以使用最大似然估計法來訓練最大后驗概率,相對于傳統的GIS、IIS算法,L-BFGS收斂的速度更快[11]。
對于輸入序列珗x,最佳的標注序列滿足
主動學習:從未標注的樣本集中選取出含有效信息最多的樣本,來進行人工標注[12]。由于選擇標注的樣本的價值最大,因此在相同人工標注工作量的情況下能有效提高學習器的性能,另一方面,在達到相同的學習器性能的情況下,能有效減少人工標注工作量。
不確定性抽樣的方法是最常用的方法之一,該策略是選取學習器最不確定如何標注的樣本進行人工標注。
熵是衡量信息量大小的一個常用的方式,熵值越大說明不確定度也就越大。因此對于一個序列,可以引入總符號熵 (total token entropy,TTE)的概念來衡量一個序列的不確定度
式中:T——輸入序列珝x 的長度,m 的范圍是所有可能的標簽的個數。P (yt=m|θ)——在本模型下,序列中第t個位置被標記為標簽m 的邊緣概率。對于CRF模型,這個邊緣概率可以通過前向后向算法來計算。
Culotta和McCallum 提出一種基于不確定性的策略,稱為最小信任度 (least confidence,LC)[12]
式中:珗y*——對于給定的觀察序列珝x 最有可能的標記序列。對于條件隨機域,信任度可以通過式 (1)來計算。
隨著觀察序列長度的增加,機器模型對標記序列整體的確信度會逐漸減低,故LC選擇策略會偏向于選擇較長序列。對于中文的復雜名詞短語的識別而言,由于中文句子的長短存在巨大差異,LC偏向于選擇長句,而長句中可能含有大量非復雜名詞短語成分,故選擇長句不一定會對機器模型有很大的改進,反而會增加人工標注的工作量。因此,本文給出一種改進的選擇策略(least confidence-2,LC2)
式中:length——句子的長度,使用該策略來改善LC 策略傾向于選擇長句的問題。
半監督學習能夠有效結合標簽數據和未標簽數據來提高監督學習的任務,目前根據半監督學習算法的目的,大致將半監督學習算法分為3類:半監督聚類、半監督回歸和半監督分類,目前研究的熱點是半監督分類和半監督聚類。
一方面,使用半監督方法選擇出學習器比較確信標注正確的樣本加入到訓練樣本集中[13]。使用主動學習選擇出需要人工標注的序列中依然可能包含對學習器幫助不大的子序列,例如在中文中一個長句中可能包含許多非復雜名詞短語的部分,而這部分內容對學習器的幫助不大,另外這部分內容是學習器也可能很容易被正確標注的,因此,引入半監督的方法,使學習器對這部分子序列采用學習器的自動標注,而人工只標注對學習器價值最大并且學習器對其標簽確信度較小的子序列。
另一方面,使用半監督的方法可以作為一種啟發式的主動學習樣本選擇策略[4]。在很多半監督學習算法中,使用學習器對一些未標記序列添加偽標記序列 (pseudo-labels)來訓練新的學習器,但這種方式在選擇哪些機器標注序列加入偽標注集是個難點。
基于以上,本文提出一種同時使用兩種結合方式的算法 (SSAL),算法核心有兩點:對于主動學習算法選擇出的待標記序列 (也就是一個句子),選擇一個序列中的最有價值子序列來進行人工標注,其余子序列由學習器進行標注;在每輪迭代中使用半監督學習的算法來動態更新偽標記序列。
通過對子序列標注的邊緣概率的計算可以確定該子序列是采用學習器的標注,還是需要人工來標注。可以按照以下來計算
式中:珗y*——對于給定的子序列 珝x 最有可能的標記序列。如果C(珗y*,θ)超過某個置信度閾值T 則可以認為學習器標注正確,否則必須需要人工進行標注。算法如下。
半監督和主動學習相結合的算法:
(1)使用訓練集L∪Spsuedo訓練模型:CRF1
(2)根據Φ 選擇最不確定的q個樣本,對每個樣本計算子序列的邊緣概率C(|),更新Sq
其余子序列加入到樣本集Sm
(3)使用模型CRF1標注Sm,人工標注Sq,更新訓練集和未標注集
(5)使用L 訓練模型CRF2,對U 進行標注,標注結果為
(6)更新偽標注集Spsuedo:
其中,步驟2根據CRF1 對未標注集的標注情況和策略Φ 選擇出需要添加可信標簽的序列集合,并對集合中的每個序列進一步進行劃分成兩部分子序列,Sm是當前學習器確信度較大并且對學習器價值不大的子序列的集合,Sq是需要人工標注的子序列的集合。步驟3是對步驟2劃分出來的子序列集合分別采用機器標注和人工標注,并將它們加入到訓練集中,同時更新未標注集。
本文作為訓練和測試數據的語料約12萬字,共有2835個句子,每個句子均經過人工嚴格標注,標注出的復雜名都短語共8674個。例如 “經 [中國人民銀行]批準, [泰康人壽保險股份有限公司等五家保險公司]正在緊張籌建中”,其中 “中國人民銀行”、“泰康人壽保險股份有限公司等五家保險公司”是人工標注的復雜名詞短語。
實驗統計評估中,只選擇含有3個及以上名詞并且不含有介詞 “的”的復雜名詞短語進行統計,利用人工的正確標注的復雜名詞短語作為評價標注來對自動識別結果進行評估,學習器的性能我們采用常用的F-score來評估。
實驗結果將在兩方面進行對比,一方面是在相同的人工標注樣本量的情況下,學習器的性能的比較;另一方面是在學習器達到同樣性能的情況下需要人工標注的樣本量的比較。
實驗中,初始采用2%的標注數據來訓練學習器,然后通過每次主動學習的抽樣策略選2%的數據進行人工標注,共迭代24次。同時為了與主動學習對比,本文采用每次隨機選擇2%的數據的方法作為基準測試。置信度閾值T 設置為0.99。
本文進行5組實驗,分別來實驗本文提出的改進的樣本選擇策略 (LC2)、本文提出半監督于主動學習相結合的復雜名詞短語識別算法 (SSAL)和作為對比的算法學習模型:隨機抽樣 (RANDOM):每次隨機選擇句子進行標注。不確定性抽樣TTE選擇策略:此策略選擇熵最大的句子進行人工標記。
不確定性抽樣LC選擇策略:選擇最不確定的句子進行標注。
表1表示在迭代結束時,采用上述各算法的學習器性能,可以看出,相當于隨機選擇的方式,LC 提高了5.2個百分點,LC2提高了6.8個百分點,而本文給出的半監督與主動學習相結合的算法提高了10.2個百分點。
表1 學習器性能
圖1描述在相同的人工標注樣本量的情況下,隨著人工標注樣本的增加,學習器的性能的變化。從圖中可以看出,本文提出的半監督與主動學習相結合的算法的性能一直是最優的,樣本選擇策略LC2也優于其它的樣本選擇策略。例如在30%的數據作為訓練集的情況下對于像 “中國人民銀行昨日公布消息”這樣的句子,本文給出的半監督和主動學習相結合的算法的識別結果為 “[中國人民銀行]昨日公布消息”,能夠正確識別出復雜名詞短語 “中國人民銀行”,而其它的算法的識別結果為 “[中國人民銀行昨日]公布消息”錯誤的將 “昨日”這一詞也認為是復雜名詞短語的一部分。
圖1 各方法對測試集的F-score曲線
圖2描述了當F-score達到0.69時需要人工標注數據的比例,可以看出,在達到此性能下,基于隨機選擇的算法需要標注48%的樣本,而基于半監督和主動學習相結合的算法只需要標注16%的樣本,半監督與主動學習相結合算法幾乎可以減少32個百分點的人工工作量。
圖2 當F-score達到0.69時,基準測試和各算法需要人工標注數據量
本文給出的一種同時在兩個方面結合主動學習和半監督學習的算法,一方面啟發式地選擇需要人工標注樣本,選擇的樣本更加有價值,另一方面劃分句子為可以機器標注的子句以及必須需要人工標注的子句,進一步減少人工標注來標注機器容易確定的句子中部分子句,算法有效減少了學習器對人工標注的數據的需求量。在以后的工作中將在兩方面進行:探索加強算法對人工錯誤標注的容錯能力;優化置信度閾值T 的選擇方式。
[1]ZHOU Qiaoli,ZHANG Ling,CAI Dongfeng,et al.Maximal-length noun phrases identification based on re-ranking using parsing [J].Journal of Computational Information Systems,2013,9 (6):2441-2449.
[2]Gregory Druck,Burr Settles,Andrew McCallum.Active learning by labeling features [C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing,2009:81-90.
[3]Yann Soullard,Martin Saveski,Thierry Artières.Joint semisupervised learning of hidden conditional random fields and hidden Markov models [J].Pattern Recognition Letters,2014,37:161-171.
[4]Li Mingzhi,Wang Rui,Ke Tang.Combining semi-supervised and active learning for hyperspectral image classification [C]//Proceeding of IEEE Symposium on Computational Intelligence and Data Mining,2013:89-94.
[5]Min Song,Hwanjo Yu,Wook-Shin Han.Combining active learning and semi-supervised learning techniques to extract protein interaction sentences[C]//BMC Bioinformatics,2011.
[6]Zheng Qinghua,Luo Junying,Liu Jun.Automatic term extraction from Chinese scientific texts[C]//Computer Supported Cooperative Work in Design,2011:727-734.
[7]José Aires,Gabriel Lopes,Joaquim Ferreira Silv.Efficient multi-word expressions extractor using suffix arrays and related structures[C]//Proceedings of the 2nd ACM Workshop on Improving Non English Web Searching,2008:1-8.
[8]Zhang Wen,Taketoshi Yoshida,Tang Xijin,et al.Improving effectiveness of mutual information for substantival multiword expression extraction [J].Expert Systems with Applications,2009,36 (8):10919-10930.
[9]ZHOU Qiaoli,LIU Xin,LANG Wenjing,et al.A divideand-conquer strategy for chunking [J].Journal of Chinese Information Processing,2012,26 (5):120-127 (in Chinese).[周俏麗,劉新,郎文靜,等.基于分治策略的組塊分析 [J].中文信息學報,2012,26 (5):120-127.]
[10]Christopher J Pal,Jerod J Weinman,Lam C Tran,et al.On learning conditional random fields for stereo[J].International Journal of Computer Vision,2012,99 (3):319-337.
[11]La The Vinh,Sungyoung Lee,Hung Xuan Le,et al.Semi-Markov conditional random fields for accelerometer-based activity recognition[J].Applied Intelligence,2011,35 (2):226-241.
[12]Burr Settles,Mark Craven.An analysis of Active Learning strategies for sequence labeling tasks [C]//Proceeding of Conference on Empirical Methods in Natural Language Processing,2008:1069-1078.
[13]Katrin Tomanek,Udo Hahn.Semi-supervised active learning for sequence labeling [C]//Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th International Joint Conference on Natural Language Processing of the AFNLP,2009:1039-1047.