楊 培 楊志豪 羅 凌 林鴻飛 王 健
(大連理工大學計算機科學與技術(shù)學院 遼寧大連 116024) (yangperasd@mail.dlut.edu.cn)
近年來伴隨著生物醫(yī)學領(lǐng)域的飛速發(fā)展,生物醫(yī)學領(lǐng)域的相關(guān)文獻也以指數(shù)級別快速增長.這也隨之促進了生物醫(yī)學文本挖掘技術(shù)的快速發(fā)展.而化學藥物命名實體識別便是生物醫(yī)學文本挖掘技術(shù)中非常重要的一步.
BioCreative評測是國際上關(guān)于生物醫(yī)學文本挖掘的重要評測,而CHEMDNER(chemical compound and drug name recognition)是其中關(guān)于化學藥物命名實體識別的一項子任務(wù)[1-2].在CHEMDNER這個任務(wù)上,很多研究者將該任務(wù)轉(zhuǎn)化為序列標注問題,而條件隨機場(conditional random fields, CRF)在處理這類問題上有著優(yōu)秀的性能.因此,大多數(shù)研究者都采用CRF模型來處理該任務(wù).Leaman等人[3]針對化學名實體識別提出了tmChem系統(tǒng),該系統(tǒng)由2個使用了豐富特征的CRF模型組成,并運用了若干后處理,在CHEMDNER任務(wù)上該系統(tǒng)獲得的最高F值為87.39%.Lu等人[4]同樣利用2個CRF模型在CHEMDNER任務(wù)上獲得了88.06%的F值.這2個CRF模型分別為單詞級別的CRF和字符級別的CRF.在單詞級別的CRF模型中,它們使用了詞聚類的特征.基于傳統(tǒng)的統(tǒng)計機器學習的方法在該任務(wù)上雖然取得了不錯的成績,但是大多數(shù)方法均需要領(lǐng)域?qū)<襾碓O(shè)計各種豐富的特征,而這些豐富特征的設(shè)計,需要大量的人力、物力,于此同時這些特征往往都與任務(wù)密切相關(guān),無法擴展到其他任務(wù).
目前,深度學習在各個領(lǐng)域受到了大量研究者的關(guān)注.深度學習主要是利用復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)或由多重非線性變換構(gòu)成的多個處理層對數(shù)據(jù)進行高層抽象的方法[5].最初,深度學習方法在圖像和語音識別領(lǐng)域上獲得較大成果,隨后被運用到自然語言處理(natural language processing, NLP)領(lǐng)域.在命名實體識別任務(wù)上,Collobert等人[6]提出了一種有效的神經(jīng)網(wǎng)絡(luò)模型,該模型不再需要大量的人工特征,并且能夠從海量的未標注文本中學習詞向量,進而有助于模型的訓練;Huang等人[7]提出BiLSTM-CRF模型,該模型是BiLSTM與CRF的結(jié)合,其中BiLSTM能有效利用當前詞的上下文,而CRF層能利用句子級別的標簽序列信息;Ma等人[8]提出BiLSTM-CNN-CRF模型,該模型首先利用CNN學習字符級別的表示,然后利用BiLSTM-CRF進行后續(xù)處理.與傳統(tǒng)的機器學習方法相比,深度學習在表示學習上具有很大的優(yōu)勢,它不需要或只需要少量的特征便可以達到較好的性能.在當今的序列標注問題上,BiLSTM-CRF模型成為了主流的方法.該方法引入了句子級別的似然函數(shù)(sentence level log-likelihood),與原始的單詞級別的似然函數(shù)(word level log-likelihood)——交叉熵相比,該函數(shù)考慮了句子中單詞標簽的相關(guān)性.雖然該方法利用了句子級別的信息,但是該方法并沒有利用全文信息.目前的方法,無論是基于傳統(tǒng)機器學習的方法,還是基于深度學習的方法,它們都沒有很好地利用篇章信息,僅僅停留在句子信息.這就造成了實體標簽的全文非一致性問題(一篇文章中的相同實體被賦予不同的類別標簽)的產(chǎn)生.
針對目前方法的不足,本文提出一種基于Attention機制的BiLSTM-CRF模型(Attended-BiLSTM-CRF).該方法以篇章為基礎(chǔ),首先通過大量無標注數(shù)據(jù)來學習低維、稠密的詞向量;然后利用BiLSTM對文檔的詞向量和單詞字符向量進行處理,抽取每個詞的上下文表示;隨后利用Attention機制來獲得當前詞在全文范圍內(nèi)的上下文表示;然后將全文范圍內(nèi)的上下文表示和該詞的鄰近上下文表示經(jīng)過融合后送往CRF層;最后利用CRF層來獲得這篇文章所對應(yīng)的全文標簽序列.實驗結(jié)果表明,該模型在CHEMDNER評測數(shù)據(jù)集上獲得了更好的表現(xiàn).
本文方法的創(chuàng)新點在于利用Attention機制引入了篇章級別的信息,在篇章級別信息的幫助下,單詞的類別標簽的一致性獲得了提升;同時將Attention機制和BiLSTM-CRF結(jié)合,并在CHEMDNER評測數(shù)據(jù)集上取得更高的F值.
本節(jié)我們首先描述模型使用的詞特征和字符特征,然后描述BiLSTM-CRF模型,最后闡述本文提出的Attended-BiLSTM-CRF模型.模型的整體結(jié)構(gòu)如圖1所示:
Fig. 1 The model architecture of Attended-BiLSTM-CRF圖1 Attended-BiLSTM-CRF模型結(jié)構(gòu)
1.1.1 詞向量
目前在利用深度學習處理NLP任務(wù)上,詞向量的表示方法被廣泛運用.詞向量是一種分布式的詞表示方法,它能夠從大量的未標注數(shù)據(jù)中學習到詞的語義和語法信息.與傳統(tǒng)的詞袋模型(bag of words, BOW)表示相比,詞向量表示具有維度低和稠密的特點.目前已有很多工具可以用來學習詞向量,如word2vec[9]和GolVe[10]等.
為了獲得高質(zhì)量的詞向量,我們從PubMed利用“drug”關(guān)鍵字下載了1 918 662 篇MEDLINE摘要.隨后利用word2vec工具使用這些無標注的數(shù)據(jù)進行訓練,獲得了50維的詞向量表示.我們使用這50維的詞向量來初始化模型的詞向量,模型的詞向量是可以訓練的,伴隨訓練不斷更新.
1.1.2 字符向量
字符向量與詞向量存在顯著不同.詞向量主要關(guān)注詞語本身的語義,而字符向量主要關(guān)注詞語本身的拼寫特點(如前綴、后綴等).利用字符向量和詞向量能更好地刻畫單詞的屬性.此外,化學藥名與普通詞在字符級別上存在較大的差異(藥物命名存在一系列的標準規(guī)范,如IUPAC),因此字符向量可以進一步幫助模型來識別化學藥名.
it=σ(Wxixt+Whiht-1+Wcict-1+bi),
(1)
ct=(1-it)⊙ct-1+it⊙tanh(Wxcxt+Whcht-1+bc),
(2)
ot=σ(Wxoxt+Whoht-1+Wcoct+bo),
(3)
ht=ot⊙tanh(ct).
(4)
其中,σ是非線性函數(shù),本文使用hard sigmoid函數(shù),{Wxi,Whi,Wci,Wxc,Whc,Wxo,Who,Wco}是LSTM的參數(shù)矩陣,{bi,bc,bo}是LSTM的偏置項.
對于一篇文章,經(jīng)過上述處理后,便可以獲得當前詞的詞向量和字符向量,隨后將所有詞的這2部分直接拼接后輸入到另一個BiLSTM中,便可以得到每個詞的上下文表示.
在序列標注任務(wù)上,BIO(begin,inside,outside)標簽機制被廣泛使用,因此本文也采用該標簽機制.在實際文本中,化學藥物命名實體通常不是由一個單詞組成,而是由多個單詞組成.這樣,利用BIO標簽機制后,一個實體的第1個詞被賦予B標簽,第2個詞到最后一個詞都被賦予I標簽,同時實體之前和實體之后的詞都被賦予O標簽.由此可知,在實際的標注序列中,B,I,O標簽并不是任意出現(xiàn),它們之間存在緊密的邏輯聯(lián)系,即一個單詞的實體標簽不僅受到該單詞的上下文環(huán)境和該詞本身含義的影響,而且還受到該單詞的上下文標簽的影響.但是在普通的序列標注模型中并沒有考慮到這種約束,它們在對當前詞的標簽判斷上,僅僅使用當前詞的上下文,并沒有使用當前詞標簽的上下文.因此,在某些情況下會產(chǎn)生不可能的標簽序列.如I標簽出現(xiàn)在O標簽之后等.為了進一步提高實體識別的準確性,這里我們借鑒Collobert等人[6]和Huang等人[7]的工作,結(jié)合CRF模型考慮標簽轉(zhuǎn)移概率的優(yōu)點,我們在原始的BiLSTM基礎(chǔ)上加入整個句子的標簽轉(zhuǎn)移信息.
(5)
(6)
(7)
我們使用隨機梯度下降法(stochastic gradient descent, SGD)來優(yōu)化參數(shù).
訓練結(jié)束后,在預(yù)測標簽時,我們需要尋找得分最高的標簽序列作為預(yù)測標簽序列,即:
(8)
這里本文采用維特比算法[13]來找到最佳標簽序列.
迄今基于深度學習和傳統(tǒng)機器學習的方法中,無法避免的一個問題是單詞標簽的全文非一致性:在一篇文章中,相同的詞、相同的實體卻常常被模型賦予不同的實體標簽.顯然,這會降低模型的正確率,也不易于實際的工程使用.這種問題發(fā)生的主要原因在于現(xiàn)今的模型通常以句子作為單獨的處理單元.在一個單獨的處理單元中,模型根據(jù)該詞的上下文來賦予標簽,即這些模型僅僅利用了句子信息,是句子級別的方法.在同一篇文章中,如果同一實體在不同句子中的上下文不同,則句子級別模型所賦予的標簽也會不同,這便是單詞標簽的全文不一致性產(chǎn)生的原因.同時,如果在同一篇文章中,對于同一個實體,在其眾多的上下文中,如果只有唯一一處或幾處的上下文對該實體的標簽類別的判斷起決定性的作用,則現(xiàn)今的句子級別的方法也不能很好地處理該問題.
句子級別方法在化學藥名識別這一具體任務(wù)上,同樣存在單詞標簽非一致性的問題.同時,單詞標簽非一致性在這一任務(wù)上的另一個體現(xiàn)便是縮寫識別準確率的低下.在一篇文章中,作者通常只會在第一次提到縮寫時給出該縮寫的全稱,通常普通模型能夠根據(jù)此處的上下文對該縮寫賦予正確的實體標簽.在其后提到該實體時,作者通常不會給出全稱,而僅僅給出該實體的縮寫,而此處的上下文和該縮寫的拼寫與該縮寫所代指的實體之間的關(guān)系較弱,普通模型無法僅根據(jù)這些信息作出正確的實體標簽類別判斷.模型要作出正確的判斷,必須要從全文找到該縮寫所對應(yīng)的全稱,并獲得此處的上下文信息.因此,只有引入篇章信息才能很好地解決這類問題.
在解決單詞標簽非一致性問題上,研究者通常采用基于規(guī)則的后處理.但是規(guī)則的制定較為復(fù)雜,也無法根據(jù)任務(wù)學習、變化,而且很難制定出完善的規(guī)則.對于該問題本文提出利用Attention機制來引入篇章信息,在篇章信息的幫助下,通過模型的不斷學習來緩解該問題.Attention機制最早被運用到圖像領(lǐng)域,隨后被運用到NLP領(lǐng)域,但目前并沒有研究者將Attention機制運用到化學藥物命名實體識別任務(wù)上.在圖像領(lǐng)域,Attention機制主要是模擬人的注意機制[14]:人在觀察一副圖像時,并不會將自己的注意力平均地分散到整幅圖像的每個部位,而大多是根據(jù)需求將注意力集中到圖像的特定部分,例如看人物肖像時,通常會將注意力集中到臉部.在本文中,對于每一個詞,擬使用Attention機制來獲取篇章級信息,進而改善相同詞的標簽的全文非一致性問題.
energyi=f(attended,statei,W),
(9)
αι=softmax(energyi),
(10)
其中,f(·) 是用于衡量statei與attended之間相關(guān)性的函數(shù),函數(shù)中的參數(shù)W隨模型一同訓練.本文使用曼哈頓距離作為衡量相關(guān)性的函數(shù).由于a與自己的距離為0,同時不同詞的詞義相關(guān)性越弱,其曼哈頓距離也就越大,但我們需要詞義越相近的詞的能量越大,故在實現(xiàn)中我們利用max(energyi)-energyi來修正所需的能量.本文使用曼哈頓距離:
(11)
在實現(xiàn)中,我們對W全部初始化為1,并且在訓練過程中保持為正數(shù).
隨后,我們利用得到的注意力權(quán)重αi對source中的信息進行重新篩選和融合,獲得當前詞在全文范圍下的上下文,這里我們定義為glimpsei:
(12)
為了使Attention模型更容易訓練,同時當前詞的實體標簽不僅取決于全文范圍內(nèi)的上下文信息,還應(yīng)該取決于當前詞鄰近的上下文信息,因此,我們將glimpsei與sourcei相結(jié)合后,輸入到后續(xù)的模型結(jié)構(gòu)中:
contexti=g(glimpsei,sourcei,U).
(13)
其中,g(·)為非線性函數(shù),本文使用tanh,U為隨模型訓練的參數(shù).
(14)
在預(yù)測階段,與1.2節(jié)不同的是,對每個句子分別采用維特比解碼.
(15)
本文在BioCreative IV命名實體識別子任務(wù)CHEMDNER的數(shù)據(jù)集上進行實驗[1].表1展示了CHEMDNER原始數(shù)據(jù)集的構(gòu)成:
Table 1 CHEMDNER Corpus Analysis表1 CHEMDNER語料的數(shù)據(jù)統(tǒng)計
實驗中,我們將訓練集(training set)和開發(fā)集(development set)合并,并從中隨機抽取10%作為新的開發(fā)集,并利用新的開發(fā)集來調(diào)參,測試集(evaluation set)保持不變.在結(jié)果評估上,我們采用序列標注中常用的準確率(precision,P)、召回率(recall,R)、F值(F-score,F)作為實驗數(shù)據(jù)的評價指標.表2展示了本文模型使用的超參數(shù):
Table 2 The Hyper-Parameters of Model表2 實驗中模型的超參數(shù)列表
我們將目前的主流方法BiLSTM-CRF與加入Attention機制的BiLSTM-CRF進行對比.此外,為了探索詞特征和字符特征對模型性能的影響,對于詞特征和字符特征我們分別采用了2種形式的處理方式:1)詞特征或字符特征是否經(jīng)過Attention層處理,即Attention利用何種特征來決定在全文范圍內(nèi)的對齊;2)詞特征和字符特征是否經(jīng)過LSTM層,即是否將詞特征或字符特征用于最后的分類.實驗結(jié)果如表3所示:
Table 3 Experment Results for the Feature of Attention表3 Attention特征的實驗結(jié)果
Note: “○” indicates that our model uses this feature. “×” indicates that our model does not use this feature. Word LSTM or char LSTM indicates that our model whether use LSTM layer to process word feature or char feature. Word attention or char attention indicates that our model whether use attention layer to process word feature or char feature.
由表3我們可以獲得:
1) 無論是詞特征、字符特征或它們的組合,運用Attention機制均能提高性能.
2) 在LSTM層,單獨的詞特征要比單獨的字符特征好,而同時運用詞特征和字符特征能進一步提高性能.
3) 在Attention層,單獨的詞特征要比單獨的字符特征差,而同時運用詞特征和字符特征反而會降低性能.
對于以上結(jié)果,我們分析如下:
1) Attention機制能夠?qū)W習到篇章級的信息,能夠幫助模型提高全文一致性和縮寫識別的準確率.在進行結(jié)果分析時,我們得到如表4的結(jié)果.表4中有背景顏色的單詞是模型識別出的實體.由于篇幅限制,我們省略了文中的部分句子和除ANIT以外的標注.從表4中可以看到,本文提出的模型在縮寫識別上優(yōu)于BiLSTM-CRF模型.
2) 在做標簽類別判斷時,主要依靠詞義,而不是字符含義,同時詞義與字符含義并不是相互對斥,而是可以相互互補.所以在LSTM層,單獨詞特征好于單獨的字符特征,而同時使用也能提高性能.
3) 由于在詞級別存在未登錄詞,而化學名中也存在大量的未登錄詞,所以在使用詞來做Attention時,未登錄詞會影響Attention權(quán)重αi的生成,造成權(quán)重分配不恰當;而字符卻不存在這種問題.所以在Attention層單獨的字符特征要好于詞特征.而這兩者同時使用時,模型無法完全消除詞特征的缺點,所以造成聯(lián)合使用時性能有所下降.
為了展示Attention權(quán)重的學習效果,我們可視化了Attention權(quán)重,如圖2所示.該表是當前詞為Retinoic時,全文每個單詞所獲得的權(quán)重.由于全文單詞過多,無法一一顯示,故做相應(yīng)的省略.
Table 4 An Sample of Tagging Consistency表4 標簽一致性展示
Fig. 2 A sample’s attention weight from CHEMDNER dataset圖2 CHEMDNER數(shù)據(jù)集中某一樣本的Attention權(quán)重展示
為了驗證Attended-BiLSTM-CRF的性能,我們和其他現(xiàn)存的一些方法進行了對比,實驗結(jié)果如表5所示:
Table 5 The Results of Different Method表5 各種方法對比實驗結(jié)果
Δindicates the percentage of promotion inF-value.
對比方法簡介:
1) CRF 模型[3].利用多個CRF組成的tmChem系統(tǒng),并作相應(yīng)的后處理,如縮寫識別等,該模型在BioCreative CHEMDNER測評任務(wù)上排名第1.
2) CRF模型[4].同樣利用多個CRF組成的系統(tǒng),并運用了詞聚類特征和使用了相應(yīng)后處理,如括號匹配等,該模型在BioCreative CHEMDNER測評任務(wù)上排名第2,但測評結(jié)束后利用多粒度的詞聚類進一步提高模型性能達到88.06%.
3) BiLSTM-CRF.利用BiLSTM-CRF構(gòu)成的模型,僅僅使用詞和字符向量特征,未做后處理.
4) Attended-BiLSTM-CRF.本文提出的基于Attention的BiLSTM-CRF的模型,未做后處理.
以上模型可以分為:傳統(tǒng)機器學習方法(前2種方法)和深度學習方法(后2種方法).從實驗結(jié)果來看,深度學習方法好于傳統(tǒng)機器學習方法,而且在特征構(gòu)造上也無需大量的人工特征,同時也無需復(fù)雜的后處理.本文提出的Attended-BiLSTM-CRF模型相比其他方法在F值上均有提高,相比傳統(tǒng)的機器學習方法F值提高超過3%,同樣相比目前主流的BiLSTM-CRF模型F值提高1.48%.在表5中,可以得到:本文提出的方法與BiLSTM-CRF方法最大的不同在于保持P值基本不變的情況下,大幅度提高R值,這從側(cè)面顯示本文提出的方法提高了標簽的一致性.同時,在對Attended-BiLSTM-CRF模型的結(jié)果分析中,我們發(fā)現(xiàn)單詞標簽的一致性的確得到提高,縮寫識別的正確率也得到提高.
本文提出了一種用于化學藥物命名實體識別的Attended-BiLSTM-CRF方法.實驗結(jié)果表明Attended-BiLSTM-CRF相比現(xiàn)存的方法均能獲得更好的結(jié)果,這主要有3個原因:
1) 低維、稠密的詞向量和字符向量比傳統(tǒng)的機器學習有更好的表現(xiàn)能力,同時深度模型如LSTM能更好地學習到高層的抽象信息;
2) CRF層的引入,降低了不可能出現(xiàn)的類別序列,利用了句子級別的標簽之間的依賴信息;
3) Attention機制利用了篇章級別的信息,有效降低了單詞標簽的全文的非一致性,同時,也帶來了縮寫識別的準確率的提高.
但是深度學習和Attention機制在生物醫(yī)學文本挖掘中仍然有很大的提升空間.從本文的實驗結(jié)果可以看出Attention機制對利用篇章級別的信息很有幫助.將來我們會進一步探索Attention機制在生物醫(yī)學文本挖掘中的應(yīng)用.