高冰濤 ,翟振剛 ,劉 斌
(1.中國(guó)電子科技集團(tuán)公司第三十六研究所,浙江 嘉興 314000;2.西北農(nóng)林科技大學(xué) 信息工程學(xué)院,陜西 楊凌 712100)
近年來(lái),由于生物醫(yī)學(xué)領(lǐng)域命名實(shí)體識(shí)別研究的潛在應(yīng)用價(jià)值和問(wèn)題的復(fù)雜性,這項(xiàng)研究已經(jīng)吸引了很多感興趣的研究者。目前大部分生物醫(yī)學(xué)命名實(shí)體的識(shí)別主要集中在識(shí)別Medline文本中的基因和蛋白質(zhì)的名稱(chēng),識(shí)別分子生物醫(yī)學(xué)中的命名實(shí)體成為生物信息學(xué)中知識(shí)發(fā)現(xiàn)的最基本任務(wù)。例如Merry K P和Modi M在文本中提取蛋白質(zhì)互作信息,第一步就是蛋白質(zhì)名稱(chēng)的識(shí)別[1]。準(zhǔn)確高效的生物醫(yī)學(xué)命名實(shí)體識(shí)別系統(tǒng)對(duì)生物醫(yī)學(xué)和生物信息學(xué)工作者的研究具有重要的作用和意義[2]。
在傳統(tǒng)的生物醫(yī)學(xué)命名實(shí)體識(shí)別中工作中,由于維特比算法在序列數(shù)據(jù)中的優(yōu)良表現(xiàn)和生物醫(yī)學(xué)命名實(shí)體的特性,多采用隱馬爾可夫模型(Hidden Markov Models,HMM)[3]作為主要算法進(jìn)行研究和應(yīng)用[4]。例如:基于單詞相似度平滑技術(shù)的HMM命名實(shí)體識(shí)別分類(lèi)器[5]、PowerBioNE生物命名實(shí)體識(shí)別系統(tǒng)[6]、BioTrHMM生物醫(yī)學(xué)命名實(shí)體識(shí)別系統(tǒng)[7],Jie Zhang等人也指出HMM在生物醫(yī)學(xué)領(lǐng)域中進(jìn)行命名實(shí)體識(shí)別的有效性[8-9]等。
在生物醫(yī)學(xué)命名實(shí)體識(shí)別領(lǐng)域中,傳統(tǒng)的識(shí)別算法為了獲得良好的預(yù)測(cè)性能和保證模型的健壯性,通常要使用大量的標(biāo)注數(shù)據(jù)對(duì)模型進(jìn)行訓(xùn)練。但是,在實(shí)際應(yīng)用當(dāng)中,我們能夠直接獲得的全標(biāo)注數(shù)據(jù)往往很少,并且人工標(biāo)注數(shù)據(jù)的成本高昂。PU學(xué)習(xí)作為一種半監(jiān)督學(xué)習(xí)方法,具有比傳統(tǒng)的有監(jiān)督學(xué)習(xí)方法更大的靈活性。與有監(jiān)督學(xué)習(xí)方法相比,半監(jiān)督學(xué)習(xí)方法需要的標(biāo)注數(shù)據(jù)樣本數(shù)量少,降低了分類(lèi)模型對(duì)目標(biāo)領(lǐng)域標(biāo)注樣本的需求量,克服了模型學(xué)習(xí)過(guò)程中由于目標(biāo)領(lǐng)域標(biāo)注數(shù)據(jù)樣本不足造成的局限。半監(jiān)督學(xué)習(xí)方法,在標(biāo)注數(shù)據(jù)不足的情況下,不僅可以保證算法的性能,還有效地節(jié)約了資源。
正例未標(biāo)注學(xué)習(xí)[10],即PU學(xué)習(xí)(Positive and Unlabeled Learning),是一種半監(jiān)督學(xué)習(xí)方法。PU學(xué)習(xí)在疾病基因的識(shí)別[11]、與時(shí)間有關(guān)的數(shù)據(jù)流問(wèn)題的處理[12]和構(gòu)建AUC優(yōu)化方法[13]等方面應(yīng)用廣泛,并且在不確定數(shù)據(jù)和風(fēng)險(xiǎn)評(píng)估方面都取得了非常好的效果[14-17]。
研究至今,暫沒(méi)有發(fā)現(xiàn)研究者在生物醫(yī)學(xué)命名實(shí)體識(shí)別領(lǐng)域中通過(guò)使用PU學(xué)習(xí)進(jìn)行研究的相關(guān)內(nèi)容。本文將PU學(xué)習(xí)有效地應(yīng)用到生物醫(yī)學(xué)命名實(shí)體識(shí)別當(dāng)中,在少量標(biāo)注數(shù)據(jù)和大量未標(biāo)注數(shù)據(jù)的情況下構(gòu)建模型,實(shí)現(xiàn)命名實(shí)體識(shí)別。本文主要是從PU學(xué)習(xí)中的兩步法和隱馬爾可夫模型的角度展開(kāi)研究,將生物醫(yī)學(xué)領(lǐng)域中的命名實(shí)體識(shí)別問(wèn)題轉(zhuǎn)化為PU場(chǎng)景下的命名實(shí)體識(shí)別問(wèn)題,在PU場(chǎng)景下建立隱馬爾可夫模型,對(duì)命名實(shí)體進(jìn)行識(shí)別。
給定目標(biāo)領(lǐng)域數(shù)據(jù)集為D=P∪U,其中P表示數(shù)據(jù)集中的正例樣本的集合,U表示數(shù)據(jù)集中未標(biāo)注數(shù)據(jù)樣本的集合,U中同時(shí)含有正例樣本數(shù)據(jù)和負(fù)例樣本數(shù)據(jù)。每個(gè)數(shù)據(jù)樣本可以表示為〈x,f(x),y〉,其中,x 表示觀測(cè)樣本數(shù)據(jù);f(x)表示樣本 x 對(duì)應(yīng)的詞性狀態(tài)屬性,當(dāng)樣本是未標(biāo)注樣本時(shí)f(x)取值為?;y∈{0,1},表示樣本是否為蛋白質(zhì)命名實(shí)體,y取值為0時(shí)表示該樣本不是蛋白質(zhì)命名實(shí)體,y取值為1時(shí)表示該樣本是蛋白質(zhì)命名實(shí)體。本研究目標(biāo)是使用少量的標(biāo)注正例樣本,對(duì)大量未標(biāo)注的數(shù)據(jù)分類(lèi)出強(qiáng)負(fù)例樣本RN,最后在強(qiáng)負(fù)例樣本RN和正例數(shù)據(jù)樣本P的基礎(chǔ)上學(xué)習(xí)構(gòu)建隱馬爾可夫模型f,對(duì)目標(biāo)數(shù)據(jù)集Dt中的樣本x有:
即得到樣本對(duì)應(yīng)的詞性狀態(tài),從而得到特征的取值,進(jìn)而實(shí)現(xiàn)命名實(shí)體識(shí)別。
本文將通過(guò)使用PU學(xué)習(xí)兩步法構(gòu)建模型:在使用少量標(biāo)注數(shù)據(jù)樣本的情況下,通過(guò)PU學(xué)習(xí)構(gòu)建模型,對(duì)待測(cè)樣本進(jìn)行預(yù)測(cè);通過(guò)算法分類(lèi)未標(biāo)注數(shù)據(jù)中的強(qiáng)負(fù)例,使用強(qiáng)負(fù)例樣本和正例樣本構(gòu)建PU場(chǎng)景下的隱馬爾可夫模型。技術(shù)路線可分為4個(gè)主要步驟:數(shù)據(jù)集收集與預(yù)處理、分類(lèi)出強(qiáng)負(fù)例構(gòu)建分類(lèi)模型訓(xùn)練數(shù)據(jù)集、構(gòu)建分類(lèi)模型和預(yù)測(cè)與評(píng)估,算法模塊的關(guān)系如圖1所示。
本文主要使用了Rocchio算法、樸素貝葉斯算法、Spy算法和1-DNF算法等4種方法對(duì)未標(biāo)注數(shù)據(jù)中的強(qiáng)負(fù)例樣本進(jìn)行分類(lèi)。
(1)Rocchio 算法
在Rocchio分類(lèi)算法中,每一個(gè)文本d用一個(gè)特征向量表示,=(q1,q2,…,qn)。 其中,向量中的每一個(gè)元素q1表示一個(gè)單詞wi。Rocchio算法構(gòu)建模型是通過(guò)構(gòu)建算法中的正例標(biāo)準(zhǔn)向量和負(fù)例標(biāo)準(zhǔn)向量實(shí)現(xiàn)的,正例標(biāo)準(zhǔn)向量和負(fù)例標(biāo)準(zhǔn)向量的計(jì)算方式如下:
圖1 算法模塊關(guān)系圖
其中,參數(shù)α和β是用來(lái)對(duì)正例訓(xùn)練樣本和負(fù)例訓(xùn)練樣本的相關(guān)影響進(jìn)行調(diào)整的,推薦使用α=16,β=4[18]。
Rocchio算法具體如下:
(2)樸素貝葉斯算法
樸素貝葉斯算法在分類(lèi)問(wèn)題當(dāng)中應(yīng)用非常普遍。對(duì)于想要分類(lèi)的文本集D中的樣本數(shù)據(jù),C=(c1,c2,…,cn)是預(yù)先定義的文本序列數(shù)據(jù)類(lèi)別,V=(x1,x2,…,x|v|)表示詞匯表,其中 xi表示一個(gè)單詞。樸素貝葉斯(NB)分類(lèi)器對(duì)給定的文本數(shù)據(jù)計(jì)算條件概率,計(jì)算得到的最大概率的那個(gè)類(lèi)別被認(rèn)為是文本數(shù)據(jù)的類(lèi)別。
N(xt,di)表示單詞 xt在文本摘要 di中出現(xiàn)的次數(shù),在給定一個(gè)類(lèi)別cj的情況下通過(guò)公式(3)計(jì)算單詞xt出現(xiàn)的概率P(xt|cj),本文中所需要的先驗(yàn)概率P(cj)通過(guò)統(tǒng)計(jì)得到。
為了防止詞匯表V中的某些單詞在某些類(lèi)別的文本當(dāng)中沒(méi)有出現(xiàn),使用拉普拉斯平滑技術(shù)進(jìn)行處理,如公式(4)所示:
最后,假設(shè)給定類(lèi)別的文本中單詞出現(xiàn)的概率相互獨(dú)立,本文使用式(5)所示的樸素貝葉斯分類(lèi)器:
對(duì)于給定的文本序列di,通過(guò)上述公式計(jì)算條件概率P(xt|cj),概率最大的類(lèi)別作為單詞xt的類(lèi)別。為了從未標(biāo)注數(shù)據(jù)U中識(shí)別出強(qiáng)負(fù)例數(shù)據(jù)集RN,本文在正例數(shù)據(jù)集P和未標(biāo)注數(shù)據(jù)集U上訓(xùn)練一個(gè)樸素貝葉斯分類(lèi)器,并且用該分類(lèi)器對(duì)未標(biāo)注數(shù)據(jù)U進(jìn)行分類(lèi)。對(duì)于給定的文本數(shù)據(jù),如果是正例的概率小于是未標(biāo)注數(shù)據(jù)的概率,則把文本數(shù)據(jù)看做是一個(gè)強(qiáng)負(fù)例樣本。
樸素貝葉斯分類(lèi)器的算法框架如下:
(3) Spy 算法
Spy算法見(jiàn)算法3。對(duì)在Spy算法中使用的概率閾值t進(jìn)行簡(jiǎn)單說(shuō)明:計(jì)算“Spy”數(shù)據(jù)S中每一個(gè)樣本分布為正例的概率,取其中的概率最小值作為概率閾值t。
Spy算法的具體過(guò)程如下:
(4)1-DNF 算法
1-DNF算法是通過(guò)對(duì)正例樣本數(shù)據(jù)P和未標(biāo)注樣本數(shù)據(jù)U中的數(shù)據(jù)特征進(jìn)行對(duì)比,找到一些正例樣本所具有的的特征,構(gòu)建一個(gè)正例特征集PF。該方法計(jì)算在正例樣本數(shù)據(jù)P和未標(biāo)注樣本數(shù)據(jù)U中單詞出現(xiàn)的頻率,然后使用在正例樣本數(shù)據(jù)P中出現(xiàn)頻率比在未標(biāo)注樣本數(shù)據(jù)U中出現(xiàn)頻率高的單詞構(gòu)建正例特征集PF。該方法是通過(guò)對(duì)未標(biāo)注數(shù)據(jù)U中的所有數(shù)據(jù)樣本進(jìn)行核查,將其中可能是正例數(shù)據(jù)的樣本篩選出來(lái),這樣未標(biāo)注數(shù)據(jù)U中的不含任何正例特征的樣本就被分類(lèi)為強(qiáng)負(fù)例樣本。
1-DNF算法的具體過(guò)程如下:
通過(guò)上述4種方法可以有效地從未標(biāo)注數(shù)據(jù)中將強(qiáng)負(fù)例樣本分類(lèi)出來(lái),進(jìn)而與正例樣本形成訓(xùn)練集,這樣就可以進(jìn)行有監(jiān)督學(xué)習(xí)。由于HMM在命名實(shí)體識(shí)別研究中的有效性,本文同樣選擇HMM作為基礎(chǔ)模型。HMM的三個(gè)主要參數(shù)分別是初始狀態(tài)概率向量π、狀態(tài)轉(zhuǎn)移概率矩陣A和觀測(cè)概率矩陣B。
轉(zhuǎn)移概率aij的估計(jì)。設(shè)文本序列樣本中時(shí)刻t處于狀態(tài)i,在時(shí)刻t+1轉(zhuǎn)移到狀態(tài)j的頻數(shù)為Na,ij,則狀態(tài)轉(zhuǎn)移概率 aij的計(jì)算公式如下:
觀測(cè)概率bj(k)的估計(jì)。設(shè)樣本中狀態(tài)為j并且觀測(cè)為k的頻數(shù)為Nb,jk,則狀態(tài)為j觀測(cè)為k的概率 bj(k)的計(jì)算公式如下:
初始狀態(tài)概率πi的估計(jì)。i為S個(gè)樣本中初始狀態(tài)為qi的頻率,計(jì)算公式如下:
由于可能出現(xiàn)的數(shù)據(jù)稀疏問(wèn)題,本文使用拉普拉斯平滑的方法進(jìn)行處理,具體如下:
初始狀態(tài)概率計(jì)算為:
轉(zhuǎn)移概率aij的計(jì)算為:
觀測(cè)概率 bj(k)的計(jì)算為:
至此得到分類(lèi)預(yù)測(cè)模型,并使用維特比算法對(duì)待測(cè)數(shù)據(jù)進(jìn)行標(biāo)注,從而對(duì)命名實(shí)體進(jìn)行識(shí)別。
為了驗(yàn)證本文提出算法的性能,本文在GENIA V3.02語(yǔ)料庫(kù)上進(jìn)行了實(shí)驗(yàn)。
為了驗(yàn)證本文提出的算法在生物醫(yī)學(xué)領(lǐng)域中命名實(shí)體識(shí)別的性能,選取傳統(tǒng)的HMM算法與本文提出的PU場(chǎng)景下的兩步法算法進(jìn)行比較。目前,最常用的生物醫(yī)學(xué)標(biāo)注語(yǔ)料庫(kù)是GENIA V3.02語(yǔ)料庫(kù),該語(yǔ)料庫(kù)包含了來(lái)自MEDLINE的2000個(gè)摘要標(biāo)注文本(約360000個(gè)單詞),并且包含36個(gè)詞性類(lèi)別,其中包含5個(gè)生物醫(yī)學(xué)實(shí)體類(lèi)型。本文識(shí)別的是蛋白質(zhì)命名實(shí)體,采用了精確率、召回率和F值[19]作為評(píng)價(jià)指標(biāo)。GENIA V3.02語(yǔ)料庫(kù)中實(shí)體標(biāo)簽分布說(shuō)明見(jiàn)表1。
表1 GENIA V3.02語(yǔ)料庫(kù)中實(shí)體標(biāo)簽分布
本文中Dt是含有蛋白質(zhì)命名實(shí)體標(biāo)簽和其他詞性標(biāo)簽的目標(biāo)集,Ds是把蛋白質(zhì)命名實(shí)體標(biāo)簽處理為NN類(lèi)型的輔助集,輔助集中標(biāo)簽分布見(jiàn)表2。
表2 輔助集中實(shí)體標(biāo)簽分布
本文采用PU學(xué)習(xí)中一種普遍使用的方法[20]構(gòu)造PU數(shù)據(jù)集。對(duì)一個(gè)數(shù)據(jù)集,正例樣本以概率(1-α)隨機(jī)選擇標(biāo)記為正例,這部分樣本構(gòu)成正例樣本集,剩下的正例樣本作為未標(biāo)注樣本,這部分樣本和所有的負(fù)例樣本構(gòu)成未標(biāo)注樣本集。
根據(jù)He J[21]等提出的實(shí)驗(yàn)方法,為了測(cè)試在不同PU場(chǎng)景下算法的預(yù)測(cè)性能,本文設(shè)置了兩個(gè)參數(shù)α和Unlevel來(lái)模擬不同的PU場(chǎng)景。α表示正例樣本占源數(shù)據(jù)集的比例;Unlevel表示未標(biāo)注樣本占源數(shù)據(jù)集的比例。
本文通過(guò)對(duì)每組實(shí)驗(yàn)進(jìn)行十折交叉驗(yàn)證的方法,確保結(jié)果的有效性。
為了驗(yàn)證PU場(chǎng)景下兩步法算法的性能,本文分別從不同角度進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)如下:
(1)針對(duì) α的實(shí)驗(yàn)
本文分別設(shè)置參數(shù)α為0.2,0.4,0.6,對(duì)PU情況下通過(guò)兩步法訓(xùn)練構(gòu)建的HMM與直接使用現(xiàn)有的少量標(biāo)注數(shù)據(jù)構(gòu)建的HMM的分類(lèi)性能進(jìn)行了對(duì)比,實(shí)驗(yàn)結(jié)果如表3至表5所示。
實(shí)驗(yàn)結(jié)果顯示,標(biāo)注數(shù)據(jù)較少的情況下,使用兩步法構(gòu)建的分類(lèi)模型比直接使用現(xiàn)有標(biāo)注數(shù)據(jù)構(gòu)建的分類(lèi)模型性能更優(yōu)。當(dāng)參數(shù)α為0.2,0.4和0.6時(shí),通過(guò)PU學(xué)習(xí)方法構(gòu)建的分類(lèi)模型比直接使用現(xiàn)有的少量標(biāo)注數(shù)據(jù)構(gòu)建的模型在準(zhǔn)確率和召回率方面具有顯著的優(yōu)勢(shì)。同時(shí),通過(guò)PU學(xué)習(xí)得到的分類(lèi)模型的準(zhǔn)確率和召回率雖然隨著參數(shù)的變化有所起伏,但是總體變化不大,比直接使用現(xiàn)有的少量標(biāo)注數(shù)據(jù)構(gòu)建的分類(lèi)模型更加穩(wěn)定。
表3 α=0.2時(shí)分類(lèi)性能對(duì)比
表4 α=0.4時(shí)分類(lèi)性能對(duì)比
表5 α=0.6時(shí)分類(lèi)性能對(duì)比
(2)針對(duì) Unlevel的實(shí)驗(yàn)
本文將Unlevel分別設(shè)置為50%,60%,70%,80%,90%。對(duì)在PU情況下通過(guò)兩步法訓(xùn)練構(gòu)建的HMM與直接使用現(xiàn)有少量標(biāo)注數(shù)據(jù)構(gòu)建的HMM的分類(lèi)性能進(jìn)行了對(duì)比。表6至表10是模型在不同的Unlevel情況下的實(shí)驗(yàn)結(jié)果對(duì)比。
本文在不同的PU學(xué)習(xí)情況下,分別使用1-DNF、Spy、NB和 Rocchio算法作為兩步法的第一步,然后在第二步中使用已有正例數(shù)據(jù)和分類(lèi)出的強(qiáng)負(fù)例數(shù)據(jù)訓(xùn)練HMM。實(shí)驗(yàn)結(jié)果顯示,在標(biāo)注數(shù)據(jù)較少的情況下,本文通過(guò)兩步法得到的模型比直接使用已有標(biāo)注數(shù)據(jù)訓(xùn)練得到的分類(lèi)模型具有更好的分類(lèi)性能。并且在模型實(shí)驗(yàn)結(jié)果的準(zhǔn)確率和召回率方面,與直接學(xué)習(xí)得到的分類(lèi)模型相比優(yōu)勢(shì)明顯,特別是在未標(biāo)注樣本比例逐漸增大的情況下,優(yōu)勢(shì)越加顯著。
表6 Unlevel=50%時(shí)分類(lèi)性能對(duì)比
表7 Unlevel=60%時(shí)分類(lèi)性能對(duì)比
表8 Unlevel=70%時(shí)分類(lèi)性能對(duì)比
表9 Unlevel=80%時(shí)分類(lèi)性能對(duì)比
表10 Unlevel=90%時(shí)分類(lèi)性能對(duì)比
通過(guò)設(shè)置不同的參數(shù)α和Unlevel值,模擬不同PU場(chǎng)景下的生物醫(yī)學(xué)領(lǐng)域的蛋白質(zhì)命名實(shí)體識(shí)別問(wèn)題。以上的實(shí)驗(yàn)結(jié)果表明,在不額外增加人工標(biāo)注目標(biāo)數(shù)據(jù)的情況下,通過(guò)兩步法構(gòu)建的分類(lèi)模型比直接使用現(xiàn)有的少量標(biāo)注數(shù)據(jù)構(gòu)建的分類(lèi)模型具有更好的分類(lèi)性能。
針對(duì)傳統(tǒng)生物醫(yī)學(xué)命名實(shí)體識(shí)別方法需要大量標(biāo)注數(shù)據(jù),而人工標(biāo)注數(shù)據(jù)困難、能獲取標(biāo)注數(shù)據(jù)比較少的問(wèn)題,本文提出PU情況下通過(guò)兩步法構(gòu)建分類(lèi)模型的生物醫(yī)學(xué)命名實(shí)體識(shí)別方法。通過(guò)PU學(xué)習(xí)方法中的兩步法在未標(biāo)注數(shù)據(jù)中分類(lèi)出強(qiáng)負(fù)例樣本,在已有的正例樣本和分類(lèi)出的強(qiáng)負(fù)例樣本的基礎(chǔ)上對(duì)模型進(jìn)行訓(xùn)練,構(gòu)建出分類(lèi)模型,對(duì)目標(biāo)數(shù)據(jù)進(jìn)行命名實(shí)體識(shí)別。實(shí)驗(yàn)顯示,在只有少量標(biāo)注數(shù)據(jù)的情況下,通過(guò)PU學(xué)習(xí)中的兩步法構(gòu)建的分類(lèi)模型比直接使用現(xiàn)有少量標(biāo)注數(shù)據(jù)的監(jiān)督學(xué)習(xí)方法構(gòu)建分類(lèi)模型具有顯著優(yōu)勢(shì)。此外,通過(guò)PU學(xué)習(xí)方法構(gòu)建分類(lèi)模型不僅識(shí)別性能有所提升,同時(shí)大大節(jié)省了人工標(biāo)注數(shù)據(jù)的成本。
在本文中主要通過(guò)PU學(xué)習(xí)方法構(gòu)建分類(lèi)模型,降低模型對(duì)標(biāo)注數(shù)據(jù)的需求?,F(xiàn)在深度學(xué)習(xí)方法的研究越來(lái)越熱,逐漸涉及到多個(gè)領(lǐng)域,未來(lái)工作考慮在生物醫(yī)學(xué)命名實(shí)體領(lǐng)域?qū)ι疃葘W(xué)習(xí)方法進(jìn)行研究。