姜亞輝,姬東鴻
(武漢大學(xué) 計算機(jī)學(xué)院,湖北 武漢430072)
本文研究的目標(biāo)是包含至少3個詞語且不含助詞 “的”的復(fù)雜名詞短語。名詞短語的識別在自然語言處理很多領(lǐng)域有著重要的應(yīng)用,例如自動問答、信息檢索、信息恢復(fù)[1]、機(jī)器翻譯等領(lǐng)域。復(fù)雜名詞短語包含多個名詞詞語,內(nèi)部包含豐富的語義信息,其識別分析對句子乃至篇章的語義理解有著重要的意義。主動學(xué)習(xí)[2](active learning)是一種可以有效減少學(xué)習(xí)器對標(biāo)簽數(shù)據(jù)需求量的學(xué)習(xí)方法,而半監(jiān)督學(xué)習(xí)[3]方法則是建立在圖理論上,能夠有效的利用未標(biāo)簽數(shù)據(jù),在數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)上已經(jīng)取得了很多成果。目前,半監(jiān)督和主動學(xué)習(xí)相結(jié)合起來的算法已經(jīng)應(yīng)用到高光譜圖像識別[4]、生物信息抽?。?]等領(lǐng)域,但在中文復(fù)雜名詞短語的識別方面,尚有待對半監(jiān)督和主動學(xué)習(xí)結(jié)合的識別方法進(jìn)行探索。國內(nèi)外將機(jī)器學(xué)習(xí)應(yīng)用到最長名詞短語識別方面的主要有:條件隨機(jī)域模型、最大熵馬爾科夫模型、隱馬爾科夫模型等。對于外語的名詞短語識別系統(tǒng)中:法語的最長名詞短語抽取系統(tǒng)[6]是基于規(guī)則的,英文的最長名詞短識別方面有利用有限狀態(tài)分析機(jī)制[7]的識別系統(tǒng)以及結(jié)合統(tǒng)計和規(guī)則方法[8]的抽取系統(tǒng)。在中文領(lǐng)域,周強(qiáng)等在中文最長名詞短語的識別方面做了重要的工作。傳統(tǒng)的有監(jiān)督的學(xué)習(xí)方法依賴于大量的標(biāo)簽數(shù)據(jù)來訓(xùn)練學(xué)習(xí)器,在現(xiàn)實中可以很容易獲得大量未標(biāo)簽數(shù)據(jù),而獲得標(biāo)簽數(shù)據(jù)需要昂貴的資源,因此一個關(guān)鍵問題是:在學(xué)習(xí)器達(dá)到相同的性能情況下,盡可能減少標(biāo)簽數(shù)據(jù)的使用。
名詞短語的識別工作是自然語言處理中的一重要的子任務(wù)。它的識別結(jié)果可以用來簡化句子的結(jié)構(gòu),進(jìn)而降低句法分析難度以及復(fù)雜度,這對句子的整體結(jié)構(gòu)框架的把握,句子完整句法樹的構(gòu)建有著非常重要意義。例如:“我在大連理工大學(xué)工作了十五年了”,如果正確識別出 “大連理工大學(xué)”這一復(fù)雜名詞短語,則能很容易把握句子的整體結(jié)構(gòu),做出正確的句法分析。
句子中名詞短語按照組成結(jié)構(gòu)可以分為[9]:①不包含其它名詞短語的最短名詞短語 (mNP);②不被其它名詞短語包含的最長名詞短語 (MNP);③所有不是mNP 和MNP的一般名詞短語 (GNP)。
套疊現(xiàn)象是中文所特有的,這使得對中文最長名詞的識別比英文的復(fù)雜名詞短語的識別更加困難。名詞短語長度越長,其識別的難度也越大。研究表明:對名詞短語的識別中,在準(zhǔn)確率方面,長度超過5的識別結(jié)果要少于不超過5的識別結(jié)果15 個百分點(diǎn),召回率低了35 個百分點(diǎn)[9]。周強(qiáng)等人在研究中將復(fù)雜名詞短語定義為長度大于或者等于5的MNP,本文中 “復(fù)雜名詞短語”是指:包含至少3個詞語且不含助詞 “的”的復(fù)雜名詞短語。
復(fù)雜名詞短語的識別問題可以看作標(biāo)注問題,每個句子形式化為:x= (x1,…,xt),其中xi為句子中的各個字,看作為輸入;相應(yīng)的y= (y1,…,yt)則表示對應(yīng)的標(biāo)記序列,目標(biāo)就是找到最有可能的標(biāo)記序列。
條件隨機(jī)域模型 (conditional random fields,CRF)的基礎(chǔ)是最大熵模型以及隱馬爾科夫模型,是一種判別式概率無向圖學(xué)習(xí)模型,它綜合了最大熵模型和隱馬爾科模型的優(yōu)點(diǎn)。CRF最早的提出是針對序列數(shù)據(jù)分析的,現(xiàn)在已經(jīng)成功應(yīng)用在生物信息學(xué)、機(jī)器視覺、網(wǎng)絡(luò)智能及自然語言處理等領(lǐng)域。指定的觀察序列可以應(yīng)用CRF得到最好的標(biāo)記序列的概率。該模型最常用的是線性鏈結(jié)構(gòu),每一個線性鏈和一個有限狀態(tài)機(jī)相對應(yīng),可應(yīng)用于序列化數(shù)據(jù)的標(biāo)注問題[10]。
令珗x=(x1,…,xT)表示需要標(biāo)記的長度為T 觀察序列,珗y=(y1,…,yT)表示對應(yīng)于觀察序列的標(biāo)記序列。在本文的復(fù)雜名詞短語的識別中,珗x代表一個需要標(biāo)注的句子,珗y對應(yīng)于詞的詞性的標(biāo)簽序列。對一個給定的輸入序列珗x到狀態(tài)序列珗y的條件概率,帶有參數(shù)θ的線性鏈條件隨機(jī)場模型將其定義為
式中:Z(珝x)——泛化因子,在線性鏈模型中,泛化因子的計算可以通過前向后向算法來計算,使用泛化因子是為了保證對給定輸入序列,它所有可能的狀態(tài)序列的概率和為1。fk(yt-1,yt,xt)——觀察序列標(biāo)記位于T 和T-1 的特征函數(shù),特征函數(shù)值可以是0、1值,θk是特征權(quán)重,也即需要學(xué)習(xí)的參數(shù),對應(yīng)于特征函數(shù)。條件隨機(jī)域可以使用最大似然估計法來訓(xùn)練最大后驗概率,相對于傳統(tǒng)的GIS、IIS算法,L-BFGS收斂的速度更快[11]。
對于輸入序列珗x,最佳的標(biāo)注序列滿足
主動學(xué)習(xí):從未標(biāo)注的樣本集中選取出含有效信息最多的樣本,來進(jìn)行人工標(biāo)注[12]。由于選擇標(biāo)注的樣本的價值最大,因此在相同人工標(biāo)注工作量的情況下能有效提高學(xué)習(xí)器的性能,另一方面,在達(dá)到相同的學(xué)習(xí)器性能的情況下,能有效減少人工標(biāo)注工作量。
不確定性抽樣的方法是最常用的方法之一,該策略是選取學(xué)習(xí)器最不確定如何標(biāo)注的樣本進(jìn)行人工標(biāo)注。
熵是衡量信息量大小的一個常用的方式,熵值越大說明不確定度也就越大。因此對于一個序列,可以引入總符號熵 (total token entropy,TTE)的概念來衡量一個序列的不確定度
式中:T——輸入序列珝x 的長度,m 的范圍是所有可能的標(biāo)簽的個數(shù)。P (yt=m|θ)——在本模型下,序列中第t個位置被標(biāo)記為標(biāo)簽m 的邊緣概率。對于CRF模型,這個邊緣概率可以通過前向后向算法來計算。
Culotta和McCallum 提出一種基于不確定性的策略,稱為最小信任度 (least confidence,LC)[12]
式中:珗y*——對于給定的觀察序列珝x 最有可能的標(biāo)記序列。對于條件隨機(jī)域,信任度可以通過式 (1)來計算。
隨著觀察序列長度的增加,機(jī)器模型對標(biāo)記序列整體的確信度會逐漸減低,故LC選擇策略會偏向于選擇較長序列。對于中文的復(fù)雜名詞短語的識別而言,由于中文句子的長短存在巨大差異,LC偏向于選擇長句,而長句中可能含有大量非復(fù)雜名詞短語成分,故選擇長句不一定會對機(jī)器模型有很大的改進(jìn),反而會增加人工標(biāo)注的工作量。因此,本文給出一種改進(jìn)的選擇策略(least confidence-2,LC2)
式中:length——句子的長度,使用該策略來改善LC 策略傾向于選擇長句的問題。
半監(jiān)督學(xué)習(xí)能夠有效結(jié)合標(biāo)簽數(shù)據(jù)和未標(biāo)簽數(shù)據(jù)來提高監(jiān)督學(xué)習(xí)的任務(wù),目前根據(jù)半監(jiān)督學(xué)習(xí)算法的目的,大致將半監(jiān)督學(xué)習(xí)算法分為3類:半監(jiān)督聚類、半監(jiān)督回歸和半監(jiān)督分類,目前研究的熱點(diǎn)是半監(jiān)督分類和半監(jiān)督聚類。
一方面,使用半監(jiān)督方法選擇出學(xué)習(xí)器比較確信標(biāo)注正確的樣本加入到訓(xùn)練樣本集中[13]。使用主動學(xué)習(xí)選擇出需要人工標(biāo)注的序列中依然可能包含對學(xué)習(xí)器幫助不大的子序列,例如在中文中一個長句中可能包含許多非復(fù)雜名詞短語的部分,而這部分內(nèi)容對學(xué)習(xí)器的幫助不大,另外這部分內(nèi)容是學(xué)習(xí)器也可能很容易被正確標(biāo)注的,因此,引入半監(jiān)督的方法,使學(xué)習(xí)器對這部分子序列采用學(xué)習(xí)器的自動標(biāo)注,而人工只標(biāo)注對學(xué)習(xí)器價值最大并且學(xué)習(xí)器對其標(biāo)簽確信度較小的子序列。
另一方面,使用半監(jiān)督的方法可以作為一種啟發(fā)式的主動學(xué)習(xí)樣本選擇策略[4]。在很多半監(jiān)督學(xué)習(xí)算法中,使用學(xué)習(xí)器對一些未標(biāo)記序列添加偽標(biāo)記序列 (pseudo-labels)來訓(xùn)練新的學(xué)習(xí)器,但這種方式在選擇哪些機(jī)器標(biāo)注序列加入偽標(biāo)注集是個難點(diǎn)。
基于以上,本文提出一種同時使用兩種結(jié)合方式的算法 (SSAL),算法核心有兩點(diǎn):對于主動學(xué)習(xí)算法選擇出的待標(biāo)記序列 (也就是一個句子),選擇一個序列中的最有價值子序列來進(jìn)行人工標(biāo)注,其余子序列由學(xué)習(xí)器進(jìn)行標(biāo)注;在每輪迭代中使用半監(jiān)督學(xué)習(xí)的算法來動態(tài)更新偽標(biāo)記序列。
通過對子序列標(biāo)注的邊緣概率的計算可以確定該子序列是采用學(xué)習(xí)器的標(biāo)注,還是需要人工來標(biāo)注。可以按照以下來計算
式中:珗y*——對于給定的子序列 珝x 最有可能的標(biāo)記序列。如果C(珗y*,θ)超過某個置信度閾值T 則可以認(rèn)為學(xué)習(xí)器標(biāo)注正確,否則必須需要人工進(jìn)行標(biāo)注。算法如下。
半監(jiān)督和主動學(xué)習(xí)相結(jié)合的算法:
(1)使用訓(xùn)練集L∪Spsuedo訓(xùn)練模型:CRF1
(2)根據(jù)Φ 選擇最不確定的q個樣本,對每個樣本計算子序列的邊緣概率C(|),更新Sq
其余子序列加入到樣本集Sm
(3)使用模型CRF1標(biāo)注Sm,人工標(biāo)注Sq,更新訓(xùn)練集和未標(biāo)注集
(5)使用L 訓(xùn)練模型CRF2,對U 進(jìn)行標(biāo)注,標(biāo)注結(jié)果為
(6)更新偽標(biāo)注集Spsuedo:
其中,步驟2根據(jù)CRF1 對未標(biāo)注集的標(biāo)注情況和策略Φ 選擇出需要添加可信標(biāo)簽的序列集合,并對集合中的每個序列進(jìn)一步進(jìn)行劃分成兩部分子序列,Sm是當(dāng)前學(xué)習(xí)器確信度較大并且對學(xué)習(xí)器價值不大的子序列的集合,Sq是需要人工標(biāo)注的子序列的集合。步驟3是對步驟2劃分出來的子序列集合分別采用機(jī)器標(biāo)注和人工標(biāo)注,并將它們加入到訓(xùn)練集中,同時更新未標(biāo)注集。
本文作為訓(xùn)練和測試數(shù)據(jù)的語料約12萬字,共有2835個句子,每個句子均經(jīng)過人工嚴(yán)格標(biāo)注,標(biāo)注出的復(fù)雜名都短語共8674個。例如 “經(jīng) [中國人民銀行]批準(zhǔn), [泰康人壽保險股份有限公司等五家保險公司]正在緊張籌建中”,其中 “中國人民銀行”、“泰康人壽保險股份有限公司等五家保險公司”是人工標(biāo)注的復(fù)雜名詞短語。
實驗統(tǒng)計評估中,只選擇含有3個及以上名詞并且不含有介詞 “的”的復(fù)雜名詞短語進(jìn)行統(tǒng)計,利用人工的正確標(biāo)注的復(fù)雜名詞短語作為評價標(biāo)注來對自動識別結(jié)果進(jìn)行評估,學(xué)習(xí)器的性能我們采用常用的F-score來評估。
實驗結(jié)果將在兩方面進(jìn)行對比,一方面是在相同的人工標(biāo)注樣本量的情況下,學(xué)習(xí)器的性能的比較;另一方面是在學(xué)習(xí)器達(dá)到同樣性能的情況下需要人工標(biāo)注的樣本量的比較。
實驗中,初始采用2%的標(biāo)注數(shù)據(jù)來訓(xùn)練學(xué)習(xí)器,然后通過每次主動學(xué)習(xí)的抽樣策略選2%的數(shù)據(jù)進(jìn)行人工標(biāo)注,共迭代24次。同時為了與主動學(xué)習(xí)對比,本文采用每次隨機(jī)選擇2%的數(shù)據(jù)的方法作為基準(zhǔn)測試。置信度閾值T 設(shè)置為0.99。
本文進(jìn)行5組實驗,分別來實驗本文提出的改進(jìn)的樣本選擇策略 (LC2)、本文提出半監(jiān)督于主動學(xué)習(xí)相結(jié)合的復(fù)雜名詞短語識別算法 (SSAL)和作為對比的算法學(xué)習(xí)模型:隨機(jī)抽樣 (RANDOM):每次隨機(jī)選擇句子進(jìn)行標(biāo)注。不確定性抽樣TTE選擇策略:此策略選擇熵最大的句子進(jìn)行人工標(biāo)記。
不確定性抽樣LC選擇策略:選擇最不確定的句子進(jìn)行標(biāo)注。
表1表示在迭代結(jié)束時,采用上述各算法的學(xué)習(xí)器性能,可以看出,相當(dāng)于隨機(jī)選擇的方式,LC 提高了5.2個百分點(diǎn),LC2提高了6.8個百分點(diǎn),而本文給出的半監(jiān)督與主動學(xué)習(xí)相結(jié)合的算法提高了10.2個百分點(diǎn)。
表1 學(xué)習(xí)器性能
圖1描述在相同的人工標(biāo)注樣本量的情況下,隨著人工標(biāo)注樣本的增加,學(xué)習(xí)器的性能的變化。從圖中可以看出,本文提出的半監(jiān)督與主動學(xué)習(xí)相結(jié)合的算法的性能一直是最優(yōu)的,樣本選擇策略LC2也優(yōu)于其它的樣本選擇策略。例如在30%的數(shù)據(jù)作為訓(xùn)練集的情況下對于像 “中國人民銀行昨日公布消息”這樣的句子,本文給出的半監(jiān)督和主動學(xué)習(xí)相結(jié)合的算法的識別結(jié)果為 “[中國人民銀行]昨日公布消息”,能夠正確識別出復(fù)雜名詞短語 “中國人民銀行”,而其它的算法的識別結(jié)果為 “[中國人民銀行昨日]公布消息”錯誤的將 “昨日”這一詞也認(rèn)為是復(fù)雜名詞短語的一部分。
圖1 各方法對測試集的F-score曲線
圖2描述了當(dāng)F-score達(dá)到0.69時需要人工標(biāo)注數(shù)據(jù)的比例,可以看出,在達(dá)到此性能下,基于隨機(jī)選擇的算法需要標(biāo)注48%的樣本,而基于半監(jiān)督和主動學(xué)習(xí)相結(jié)合的算法只需要標(biāo)注16%的樣本,半監(jiān)督與主動學(xué)習(xí)相結(jié)合算法幾乎可以減少32個百分點(diǎn)的人工工作量。
圖2 當(dāng)F-score達(dá)到0.69時,基準(zhǔn)測試和各算法需要人工標(biāo)注數(shù)據(jù)量
本文給出的一種同時在兩個方面結(jié)合主動學(xué)習(xí)和半監(jiān)督學(xué)習(xí)的算法,一方面啟發(fā)式地選擇需要人工標(biāo)注樣本,選擇的樣本更加有價值,另一方面劃分句子為可以機(jī)器標(biāo)注的子句以及必須需要人工標(biāo)注的子句,進(jìn)一步減少人工標(biāo)注來標(biāo)注機(jī)器容易確定的句子中部分子句,算法有效減少了學(xué)習(xí)器對人工標(biāo)注的數(shù)據(jù)的需求量。在以后的工作中將在兩方面進(jìn)行:探索加強(qiáng)算法對人工錯誤標(biāo)注的容錯能力;優(yōu)化置信度閾值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].中文信息學(xué)報,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.