王 芳, 龍 欣, 周 剛, 劉寧寧
(1.四川省醫(yī)學(xué)科學(xué)院四川省人民醫(yī)院輔助生殖醫(yī)學(xué)中心, 成都 610110; 2.四川大學(xué)計算機(jī)學(xué)院, 成都 610065)
藥物和藥物的相互作用(Drug-Drug Interactions,DDI)指的是多種藥物被病人在同一時間服用時,不同藥物之間產(chǎn)生的協(xié)同或拮抗等作用[1]. 這些作用所帶來的副作用會導(dǎo)致治療費(fèi)用增加,嚴(yán)重的話,甚至?xí)颊叩纳眢w健康造成極大的威脅.因此了解藥物和藥物之間的相互作用知識對于患者的診治和醫(yī)學(xué)的發(fā)展有著非常重要的意義與價值. 現(xiàn)階段已經(jīng)提出的藥物相互作用關(guān)系提取研究,在系統(tǒng)生物學(xué)、個性化醫(yī)學(xué)等[2]許多生物醫(yī)學(xué)領(lǐng)域具有重要的價值.
現(xiàn)階段的學(xué)者們通常從DrugBank[3],Phar-mGKB[4]等醫(yī)學(xué)數(shù)據(jù)庫中獲取藥物相關(guān)知識.然而,調(diào)研發(fā)現(xiàn),醫(yī)學(xué)數(shù)據(jù)庫只存儲了少量DDI.相比而言,相關(guān)醫(yī)學(xué)文獻(xiàn)中記錄的藥物之間的相互作用信息更加豐富. 且現(xiàn)有醫(yī)學(xué)數(shù)據(jù)庫主要采用手動的方式更新數(shù)據(jù)庫,即依靠醫(yī)學(xué)專業(yè)人員從文獻(xiàn)中手動抽取出DDI,這種方法需要的成本高且效率較低.因此,醫(yī)學(xué)數(shù)據(jù)庫的更新速度遠(yuǎn)遠(yuǎn)落后于文獻(xiàn)的增長速度,導(dǎo)致無法充分利用生物醫(yī)學(xué)文獻(xiàn)中海量的醫(yī)學(xué)資源. 藥物相互作用關(guān)系抽取旨在自動從海量的醫(yī)學(xué)文獻(xiàn)中高效、準(zhǔn)確地抽取出關(guān)系來更新醫(yī)學(xué)數(shù)據(jù)庫. 此外,藥物相互作用知識在藥物研發(fā)、輔助醫(yī)生開藥、構(gòu)建醫(yī)學(xué)知識圖譜、更新醫(yī)學(xué)數(shù)據(jù)庫、預(yù)防藥物的不良反應(yīng)等應(yīng)用中也發(fā)揮著巨大的作用. 自2011年和2013年先后發(fā)布的兩個(DDIExtraction2011[5],DDIExtraction2013[6])對藥物相互作用進(jìn)行關(guān)系抽取的任務(wù)起,如何從文本中自動提取DDI逐漸成為研究熱點(diǎn). 目前在DDI抽取任務(wù)上,已經(jīng)有許多成功應(yīng)用的方法.
早期對于DDI的抽取通常使用基于規(guī)則的方法,其中規(guī)則的制定一般需要醫(yī)學(xué)領(lǐng)域中專業(yè)人員的輔助.這種方法的召回率偏低,這是因?yàn)檎Z言表達(dá)形式具有多樣性,部分藥物之間相互作用關(guān)系可能不能被制定的規(guī)則所覆蓋. 隨著機(jī)器學(xué)習(xí)技術(shù)的日益進(jìn)步,藥物相互作用關(guān)系開始更多地利用機(jī)器學(xué)習(xí)方法來進(jìn)行抽取. 這類方法的抽取性能很大一部分取決于外部自然語言處理工具的效果.這是因?yàn)樵摲椒ㄐ枰玫酱罅坑稍~性標(biāo)注器、句法分析器等自然語言處理工具生成的如詞性,句法,語法等人工定義的特征. 為了減少人工設(shè)計特征所耗費(fèi)的成本且取得比傳統(tǒng)方法更好的抽取效果,通過利用深度學(xué)習(xí)技術(shù)來自動學(xué)習(xí)特征并抽取DDI逐漸成為趨勢.
本文提出了一種結(jié)合外部知識的藥物關(guān)系抽取模型,針對藥物相互作用數(shù)據(jù)集中存在的樣本數(shù)目較少以及不同關(guān)系類別樣本數(shù)目差異較大的問題,提出將外部藥物知識融入關(guān)系抽取模型中. 首先需要對DrugBank藥物數(shù)據(jù)庫中存在的藥物知識進(jìn)行抽取,從中抽取出帶有藥物描述信息的藥物相互作用對,以此構(gòu)建帶有藥物描述信息的數(shù)據(jù)集. 然后通過在此數(shù)據(jù)集上進(jìn)行訓(xùn)練,得到訓(xùn)練好的藥物描述信息模型. 最后將該模型與基于注意力機(jī)制的藥物相互作用關(guān)系抽取模型相結(jié)合,即為融入外部知識的藥物相互作用關(guān)系抽取模型. 該模型可以有效利用藥物數(shù)據(jù)庫DrugBank中已有的知識,從而提高模型的抽取效果、緩解不同關(guān)系類別之間抽取結(jié)果差異過大的問題. 最后,本文模型的有效性也在數(shù)據(jù)集DDIExtraction2013上得到了驗(yàn)證.
本文的章節(jié)結(jié)構(gòu)安排如下:第2節(jié)介紹關(guān)于藥物相互作用關(guān)系抽取的相關(guān)工作;第3節(jié)中詳細(xì)地描述并展示了本文提出的模型;第4節(jié)中通過利用DDIExtraction2013數(shù)據(jù)集對本文模型的有效性進(jìn)行了綜合驗(yàn)證,并與其他模型進(jìn)行對比;第5節(jié)總結(jié)全文并提出了未來的發(fā)展方向.
目前,該領(lǐng)域主要有三類方法被應(yīng)用于提取藥物和藥物的相互作用關(guān)系,即基于規(guī)則的方法,基于傳統(tǒng)機(jī)器學(xué)習(xí)的方法和基于深度學(xué)習(xí)的方法.
基于規(guī)則方法的重點(diǎn)在于如何從醫(yī)學(xué)文本中找到合適的規(guī)則. 如Segura-Bedmar等[7]提出了一種混合方法來從生物醫(yī)學(xué)文本中提取藥物之間的關(guān)系,該方法結(jié)合了淺層分析和模式匹配,通過藥劑師根據(jù)專業(yè)經(jīng)驗(yàn)以及對語料庫中描述DDI語法結(jié)構(gòu)的分析觀察,制定出一組特定的DDI抽取規(guī)則,最后在生成的簡單句上應(yīng)用該規(guī)則進(jìn)行關(guān)系抽取. Blasco等[8]認(rèn)為在醫(yī)學(xué)文本中存在特定的描述DDI的語句形式,故采用Apriori算法來提取醫(yī)學(xué)文本中最大頻繁序列,然后利用該序列進(jìn)行DDI的抽取. Santiago等[9]通過使用臨床資料、科學(xué)文獻(xiàn)和社交媒體的數(shù)據(jù)挖掘研究檢測藥物相互作用. 數(shù)據(jù)挖掘在DDI分析中具有重要應(yīng)用:發(fā)現(xiàn)藥物之間的不利影響,建立知識數(shù)據(jù)庫、黃金標(biāo)準(zhǔn)以及抽取新的DDI.
基于傳統(tǒng)機(jī)器學(xué)習(xí)方法的重心在于對各種特征的使用以及核函數(shù)的設(shè)計. 如Chowdhury等[10]通過從文本中提取出一組觸發(fā)詞特征、否定詞特征、句法特征和詞匯特征,然后使用支持向量機(jī)完成DDI的抽取. Zheng等[11]提出了一種新型的基于圖的內(nèi)核函數(shù),該內(nèi)核函數(shù)不僅計算頂點(diǎn)本身的屬性,還計算了頂點(diǎn)的相鄰屬性,從而可以充分捕獲語句的結(jié)構(gòu)信息,提高了抽取效果. Zhang等[12]針對句子結(jié)構(gòu)中存在的噪聲問題,提出了一種圖修剪方法,可以從原始句子結(jié)構(gòu)中修剪明顯的噪聲信息,并強(qiáng)調(diào)相關(guān)的句法信息. 該方法可以更準(zhǔn)確的計算和表示語法結(jié)構(gòu)信息,在當(dāng)時取得了最佳結(jié)果. Chowdhury等[13]提出了一種復(fù)合內(nèi)核的方法,可以充分利用依賴特征、上下文特征以及全局特征等特征,效果比單個的核函數(shù)好.
近年來,利用深度神經(jīng)網(wǎng)絡(luò)來對藥物關(guān)系進(jìn)行抽取取得了較好的發(fā)展. Liu等[14]通過將單詞嵌入和位置嵌入信息輸入到卷積網(wǎng)絡(luò)中,首次提出利用CNN模型來進(jìn)行藥物關(guān)系抽取.實(shí)驗(yàn)結(jié)果表明,該方法即使在不提取任何詞性,句法等特征的基礎(chǔ)上,也能取得較好的結(jié)果,不僅證明在解決藥物關(guān)系抽取問題上深度學(xué)習(xí)方法是適用的,而且顯示該方法相對于基規(guī)則和傳統(tǒng)機(jī)器學(xué)習(xí)方法能取得更好的結(jié)果. 為了更好地對句子語義的表示進(jìn)行獲取,Kavuluru等[15]考慮到相比詞級別的嵌入,字符級別的嵌入更適用于表示形態(tài)較為豐富的自然語言,首次將字符級別的循環(huán)神經(jīng)網(wǎng)絡(luò)應(yīng)用到DDI抽取上. Zhou等[16]認(rèn)為判斷藥物之間的關(guān)系,單詞的位置信息有非常重要的作用,為了能更好地利用位置信息,他們提出將BiLSTM層產(chǎn)生的隱層狀態(tài)與位置嵌入結(jié)合,從而生成位置感知注意力. Zhao等[17]首次使用圖卷積網(wǎng)絡(luò)編碼語法圖進(jìn)行醫(yī)學(xué)關(guān)系的提取,通過將句法知識建模為圖卷積網(wǎng)絡(luò)中的邊,將單詞作為節(jié)點(diǎn),利用雙向門控循環(huán)單元網(wǎng)絡(luò)學(xué)習(xí)句子的序列特征,圖卷積網(wǎng)絡(luò)學(xué)習(xí)句法圖表示的特征. 實(shí)驗(yàn)結(jié)果表明,雙向門控循環(huán)單元網(wǎng)絡(luò)和圖卷積網(wǎng)絡(luò)的結(jié)合能夠進(jìn)一步提高模型性能. Asada等[18]采用卷積神經(jīng)網(wǎng)絡(luò)和圖卷積神經(jīng)網(wǎng)絡(luò)相結(jié)合的方法進(jìn)行DDI抽取,該模型首先利用卷積神經(jīng)網(wǎng)絡(luò)對文本語句進(jìn)行編碼,然后利用圖卷積神經(jīng)網(wǎng)絡(luò)對藥物的分子結(jié)構(gòu)信息進(jìn)行編碼,然后將二者的池化層相結(jié)合,生成最終的預(yù)測結(jié)果. 該方法能夠有效利用藥物分子結(jié)構(gòu)信息. Zhang等[19]通過將卷積神經(jīng)網(wǎng)絡(luò)與循環(huán)神經(jīng)網(wǎng)絡(luò)相結(jié)合,取得了比單個模型更好的結(jié)果. Feng等[20]用圖卷積網(wǎng)絡(luò)和深度神經(jīng)網(wǎng)絡(luò)結(jié)合,提出了一種有效且魯棒的方法,通過利用DDI網(wǎng)絡(luò)信息而不是考慮藥物特性來預(yù)測潛在的DDI. 該方法在其他與DDI相關(guān)的場景中也有用,例如藥物組合指導(dǎo)、檢測藥物副作用等.
本文提出了一種結(jié)合外部知識的藥物關(guān)系抽取模型,模型整體流程圖如圖1所示.
圖1 模型整體流程圖Fig.1 Flow chart of model architecture
圖1主要包括三個部分,分別是藥物描述信息數(shù)據(jù)集構(gòu)建、藥物描述信息模型以及EK-BiLSTM-Att-CapsNet模型. 各部分的主要內(nèi)容如下.
第1部分,藥物描述信息數(shù)據(jù)集構(gòu)建. 為了更好地利用外部知識來提高模型的抽取效果,在該部分中通過對藥物數(shù)據(jù)庫DrugBank中的知識進(jìn)行分析和處理,從中抽取出有相互作用的藥物對,并生成無相互作用的藥物對,同時保留每個藥物的描述信息,以此構(gòu)建帶有藥物描述信息的藥物相互作用數(shù)據(jù)集.
第2部分,藥物描述信息模型. 為了更好地利用藥物數(shù)據(jù)庫中已有的藥物相互作用知識以及藥物描述的相關(guān)信息,在本部分中構(gòu)建基于BiLSTM的藥物描述信息訓(xùn)練模型,并在第一部分構(gòu)建的藥物描述信息數(shù)據(jù)集上進(jìn)行訓(xùn)練,保存最優(yōu)模型.
第3部分,EK-BiLSTM-Att-CapsNet模型. 在本部分中,首先需要對藥物相互作用數(shù)據(jù)集DDIExtraction2013進(jìn)行處理,從中識別出藥物實(shí)體,再在藥物數(shù)據(jù)庫DrugBank中找到對應(yīng)的藥物描述信息,并將該信息保存. 然后將第二部分中保存的最優(yōu)模型與BiLSTM-Att-CapsNet模型相結(jié)合,即為結(jié)合外部知識的藥物相互作用關(guān)系抽取模型EK-BiLSTM-Att-CapsNet. 最后通過對該模型進(jìn)行訓(xùn)練,得到最優(yōu)的模型,用于藥物相互作用關(guān)系抽取.
DrugBank是較為知名的藥物數(shù)據(jù)庫,通過該數(shù)據(jù)庫可以查詢到藥物的各種信息,如藥物類型、藥物結(jié)構(gòu)、藥物描述信息、藥物別名以及與該藥物之間有相互作用的其他藥物等相關(guān)信息. 例如在DrugBank數(shù)據(jù)庫的查詢框中輸入“Amoxicillin”(阿莫西林)時,頁面就會顯示出所有與Amoxicillin相關(guān)的信息,如圖2所示.
圖2 DrugBank數(shù)據(jù)庫藥物查詢示例Fig.2 Example of DrugBank database inquiry
通過對藥物數(shù)據(jù)庫中藥物的各種信息進(jìn)行分析,我們發(fā)現(xiàn)藥物的描述信息是對該藥物的詳細(xì)介紹.在描述信息中一般包括該藥物適用的疾病類型、組成成分、作用效果等信息. 兩個藥物的描述信息中,有可能隱含著這兩個藥物之間的潛在關(guān)系,有助于判斷二者是否存在相互作用關(guān)系. 因此本文從藥物的各種信息中,選用藥物的描述信息作為本文模型使用的外部知識之一. 在對DrugBank中的信息進(jìn)行處理后,從中共計獲取到11 930個藥物以及對應(yīng)的描述信息.
在藥物數(shù)據(jù)庫DrugBank中,每個藥物的相關(guān)信息中包含與該藥物有相互作用的藥物信息,通過對該信息進(jìn)行處理,可以從中抽取出有相互作用的藥物對,以此利用DrugBank中已經(jīng)存在的大量的藥物相互作用的相關(guān)知識. 由圖2可以看出,與Amoxicillin有相互作用關(guān)系的有Tienilic acid、Vecuronium、Ulipristal以及Trestolone等藥物,即可產(chǎn)生如下幾組有相互作用的藥物對:(Amoxicillin,Tienilic acid)、(Amoxicillin,Vecuronium)、(Amoxicillin,Ulipristal)、(Amoxicillin,Trestolone).
由于模型訓(xùn)練用到的數(shù)據(jù)集不僅需要有相互作用的藥物對,還需要無相互作用的藥物對,即數(shù)據(jù)集中需要正樣本和負(fù)樣本同時存在.而藥物數(shù)據(jù)庫中不存在現(xiàn)成的無相互作用的藥物對,故本文為了得到無相互作用的藥物對,首先根據(jù)藥物編號隨機(jī)組合兩個藥物實(shí)體為一組藥物對,然后從中把有相互作用的藥物對過濾掉,即可得到無相互作用的藥物對. 為了不對實(shí)驗(yàn)結(jié)果造成干擾,我們將DDIExtraction2011和DDIExtraction2013數(shù)據(jù)集中出現(xiàn)過的藥物對過濾掉.
經(jīng)過上述數(shù)據(jù)處理操作,即可構(gòu)建成帶有藥物描述信息的藥物相互作用數(shù)據(jù)集.該數(shù)據(jù)集中的兩個藥物之間的關(guān)系有兩種,分別是有相互作用關(guān)系和無相互作用關(guān)系. 本文通過對DrugBank中的藥物信息進(jìn)行處理,獲取了總計60萬組有相互作用的藥物對,并隨機(jī)生成了60萬組無相互作用的藥物對.將其按照一定的比例劃分為訓(xùn)練集、驗(yàn)證集、測試集,數(shù)據(jù)集的詳細(xì)信息如表1所示.
表1 藥物描述信息數(shù)據(jù)集
為了更好地利用藥物的描述信息,我們設(shè)計了藥物描述信息模型.該模型共由五層構(gòu)成,分別是輸入層、嵌入層、BiLSTM層、全連接層、輸出層,如圖3所示.
由圖3可以看出,該模型首先將兩個藥物實(shí)體的描述信息作為模型的輸入,并在嵌入層中將輸入層的文本轉(zhuǎn)換為向量表示. 然后利用BiLSTM層分別獲取到兩個藥物描述信息的長序列依賴信息,并對該信息進(jìn)行處理. 最后經(jīng)過softmax等操作,得到最終的結(jié)果. 模型各層詳細(xì)的內(nèi)容介紹如下.
圖3 藥物描述信息模型結(jié)構(gòu)Fig.3 Structure of drug description information model
(1) 輸入層:在該層中,將兩個藥物實(shí)體對應(yīng)的描述語句進(jìn)行輸入.藥物實(shí)體1的描述語句用p表示,p={p1,p2,…,pi,…,pn},藥物實(shí)體2的描述語句用q表示,q=(q1,q2,…,qi,…,qn).其中pi和qi分別表示藥物實(shí)體1和藥物實(shí)體2的描述語句中的第i個單詞.
(1)
(2)
將藥物實(shí)體1的描述信息p經(jīng)過BiLSTM層之后,可以表示為h1∈RN,藥物實(shí)體2的描述信息q經(jīng)過BiLSTM層之后,可以表示為h2∈RN.將二者拼接,即h*=[h1;h2]∈R2N送入全連接層中,其中N表示BiLSTM隱藏層單元數(shù)目.
(4) 全連接層:由于BiLSTM的輸出維度為2N,而輸出層的節(jié)點(diǎn)為關(guān)系類別數(shù)目m,故需要使用全連接層進(jìn)行線性變換.如式(3)所示,其中W(fc)和b(fc)為全連接層的參數(shù).
output=W(fc)·h*+b(fc)
(3)
為了提高模型的泛化能力,降低模型過擬合的風(fēng)險,我們在全連接層應(yīng)用Dropout機(jī)制.其思想是在訓(xùn)練過程中,從神經(jīng)網(wǎng)絡(luò)中隨機(jī)丟棄神經(jīng)元(以及它們的連接),以此緩解神經(jīng)元之間過度協(xié)同適應(yīng)[21].
(4)
(5)
該模型使用3.1節(jié)構(gòu)建的帶有藥物描述信息的藥物相互用數(shù)據(jù)集進(jìn)行訓(xùn)練,并將取得最優(yōu)結(jié)果的模型進(jìn)行保存.
為了充分利用外部藥物描述信息和藥物相互作用知識,本文將3.2節(jié)中保存的最優(yōu)的藥物描述信息模型與基于注意力的藥物關(guān)系抽取模型相結(jié)合,構(gòu)成EK-BiLSTM-Att-CapsNet模型. 該模型將藥物的描述信息作為低層膠囊網(wǎng)絡(luò)的一部分,然后將其動態(tài)的傳輸?shù)礁邔幽z囊網(wǎng)絡(luò)中,從而更好地使用藥物描述信息,此外,藥物描述信息模型是在構(gòu)建的藥物相互作用數(shù)據(jù)集上進(jìn)行訓(xùn)練得到,該數(shù)據(jù)集是對藥物數(shù)據(jù)庫中已有的信息進(jìn)行處理得到,故可以充分利用外部已有的藥物相互作用知識. EK-BiLSTM-Att-CapsNet的模型結(jié)構(gòu)如圖4所示.
圖4 EK-BiLSTM-Att-CapsNet模型結(jié)構(gòu)Fig.4 Structure of EK-BiLSTM-Att-CapsNet model
假設(shè)輸入原語句Soriginal,該語句中兩個藥物實(shí)體之間的最短依存路徑為Ssdp,原語句中的兩個藥物實(shí)體在DrugBank中的描述信息分別des1用和des2表示.
如圖4上部所示,將以文本表示的Soriginal和Ssdp經(jīng)過嵌入層,可得到以向量形式進(jìn)行表示的Soriginal和Ssdp,再將二者分別送入BiLSTM層,即可得到原語句的長序列依賴信息Horiginal和最短依存路徑的長序列依賴信息表示Hsdp.語句中不同單詞的重要性不同,因此將單詞級別的注意力機(jī)制應(yīng)用在原語句Horiginal上,即可得到加權(quán)后的Horiginal. 為了緩解使用最短依存路徑可能造成的噪聲干擾問題,在Horiginal和Hsdp應(yīng)用句子級別的注意力機(jī)制,可以有效地將原語句信息和最短依存路徑信息相融合,用Hall表示.
如圖4下部所示,兩個藥物的描述信息des1和des2經(jīng)過嵌入層之后,我們將其分別送入BiLSTM層,即可得到相對應(yīng)的BiLSTM隱藏層輸出Hdes1和Hdes2,將二者結(jié)合,即可得到Hdes=[Hdes1;Hdes2].
將Hall以及Hdes分別經(jīng)過卷積操作,得到低層膠囊表示,uall=(u1,u2,…,um)和udes=(u1,u2,…,un),其中m和n分別表示Hall產(chǎn)生的低層膠囊個數(shù),以及藥物描述信息Hdes產(chǎn)生的膠囊個數(shù). 二者共同構(gòu)成膠囊網(wǎng)絡(luò)層的低層膠囊u=[uall;udes].低層膠囊向高層膠囊傳輸?shù)男畔⒘靠梢岳媚z囊網(wǎng)絡(luò)層的動態(tài)路由機(jī)制來動態(tài)地控制,這樣就可以動態(tài)地利用藥物描述信息這一外部知識.
本模型采用的損失函數(shù),如式(6)所示.
Lk=Tkmax(0,m+-‖vk‖)2+
λ(1-Tk)max(0,‖vk‖-m-)2
(6)
本文采用DDIExtraction2013數(shù)據(jù)集來進(jìn)行實(shí)驗(yàn),該數(shù)據(jù)集是由792篇DrugBank中的醫(yī)學(xué)文本和MedLine中的233篇摘要組成,并事先對藥物實(shí)體進(jìn)行了標(biāo)注.因此,識別出藥物實(shí)體不需要經(jīng)過命名實(shí)體識別等操作. 該數(shù)據(jù)集中共有如下5種藥物相互作用類型.
(1) Advice:文本中描述了同時使用兩種藥物時的建議.
(2) Effect:文本中清楚地表明了兩種藥物相互作用的結(jié)果.
(3) Mechanism:文本中明確討論了藥物動力學(xué)機(jī)制.
(4) Int:文本中表明兩種藥物有一定關(guān)系,但具體關(guān)系類型沒有被定義
(5) Negative:相互作用關(guān)系并沒有存在于兩種藥物之間.
數(shù)據(jù)集的詳細(xì)信息見表2. 本文采用精準(zhǔn)率,召回率和F1值這三個指標(biāo)來對實(shí)驗(yàn)結(jié)果進(jìn)行評價.
表2 DDIExtraction2013 數(shù)據(jù)描述
我們將藥物描述信息的長度設(shè)置為50,并將單詞轉(zhuǎn)換為300維的Glove詞向量.對于未在Glove詞表中出現(xiàn)的單詞,我們采用隨機(jī)初始化的方式表示該單詞的詞向量.膠囊網(wǎng)絡(luò)的迭代次數(shù)設(shè)置為3,Batchsize設(shè)置為64,dropout取值為0.5,學(xué)習(xí)率設(shè)置為0.001,藥物描述信息模型的迭代次數(shù)設(shè)置為50,EK-BiLSTM-Att-CapsNet模型的迭代次數(shù)設(shè)置為35,模型損失函數(shù)中的m+為0.9,m-為0.1,λ為0.25.
為了驗(yàn)證模型的有效性,我們從以下三個方面進(jìn)行實(shí)驗(yàn),分別是消融實(shí)驗(yàn)、不同關(guān)系類別上的結(jié)果對比以及與現(xiàn)有方法的對比實(shí)驗(yàn).
(1) 消融實(shí)驗(yàn).為了驗(yàn)證本章模型的有效性,即驗(yàn)證本章模型中利用的藥物描述信息以及藥物數(shù)據(jù)庫DrugBank中已有的相互作用知識是否有用,設(shè)計消融實(shí)驗(yàn),在DDIExtraction2013數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果,如表3所示.
表3 消融實(shí)驗(yàn)結(jié)果
由消融實(shí)驗(yàn)結(jié)果可以看出,在直接添加外部的藥物描述信息后,模型的F1值提高了0.27%,說明藥物描述信息中存在對藥物相互作用關(guān)系判斷的信息.通過使用該信息,可以提高模型的抽取效果. 在使用DrugBank中的帶有藥物描述信息的藥物相互作用數(shù)據(jù)集進(jìn)行訓(xùn)練后,模型的效果提升了0.73%.這證明了外部藥物數(shù)據(jù)庫中已有的知識對于模型抽取效果的提升有很大的幫助. 消融實(shí)驗(yàn)的結(jié)果表明,我們提出的模型可以有效利用外部已有的藥物描述信息,同時可以利用DrugBank中已有的大量的藥物相互作用知識,有助于提高模型的抽取結(jié)果.
(2) 不同關(guān)系類別上的結(jié)果對比.通過對數(shù)據(jù)集的分析可知,數(shù)據(jù)集中不同類別的數(shù)目相差較大,因此可能造成不同類別的預(yù)測結(jié)果相差較大.為了驗(yàn)證利用藥物描述信息能夠緩解該問題,將本文模型與相關(guān)模型在不同類別上的實(shí)驗(yàn)結(jié)果進(jìn)行對比,具體信息如表4所示.其中Xu等[22]提出的BR-LSTM和Sahu等[23]提出的Joint AB-LSTM都是基于LSTM的模型.
由表4可以看出,對比模型的不同類別之間的最大F1值差值在31.35%到36.15%之間浮動,與他人模型相比,使用本文模型不同類別之間的F1值最大相差僅為25.34%,較大降低了不同類別的F1值之間的差距. 由此可見,與其他模型相比,本章提出的模型能夠有效緩解因不同類型樣本數(shù)目差異較大造成的抽取結(jié)果差異較大的問題.更直觀的結(jié)果如圖5所示.
表4 不同關(guān)系類別上的實(shí)驗(yàn)結(jié)果
圖5 不同類別間的最大F1差值Fig.5 Maximum F1 score difference between different categories
由圖5可以明顯看出,與其他模型相比,本章提出的EK-BiLSTM-Att-CapsNet模型的不同類別之間的F1值差距較小,能夠較好地緩解數(shù)據(jù)集中因不同類別的數(shù)目差異較大造成的不同類別的F1值差異較大的問題.
(3) 與現(xiàn)有方法的對比實(shí)驗(yàn).目前在藥物相互作用關(guān)系抽取任務(wù)上,已有大量的研究人員設(shè)計出了多種關(guān)系抽取模型,并進(jìn)行了大量實(shí)驗(yàn).為了驗(yàn)證本文模型的有效性,將本文模型與現(xiàn)有模型在DDIExtraction2013數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果進(jìn)行對比.
本文對比了不同模型在DDIExtraction 2013數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果.其中Quan等[24]提出的MCCNN基于卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行自動特征提??;Wang等[25]的模型通過將基于依賴的技術(shù)引入Bi-LSTM,建模藥物之間的依賴關(guān)系;Yi等[26]的模型通過將一個循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)合多個注意力層從生物醫(yī)學(xué)中提取 DDI文本.實(shí)驗(yàn)結(jié)果如表5所示.
表5 不同模型在DDIExtraction2013數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果
由表5可以看出,本文模型的F1值比其他文獻(xiàn)中最佳模型高2.47%.實(shí)驗(yàn)結(jié)果表明,與現(xiàn)有模型相比[27-28],本文提出的模型能夠更好地自動抽取藥物之間的相互作用關(guān)系.更直觀的結(jié)果如圖6所示.
圖6 不同模型在DDIExtraction2013數(shù)據(jù)集上的F1值
本文充分利用了外部藥物數(shù)據(jù)庫中的相關(guān)信息,使用膠囊網(wǎng)絡(luò)的結(jié)構(gòu)進(jìn)行藥物關(guān)系抽取. 實(shí)驗(yàn)結(jié)果表明,本文模型不僅提升了抽取效果,還降低了不同類別抽取結(jié)果差異較大的問題. 在未來的工作中可以嘗試借助藥物的其他信息進(jìn)行輔助.此外,還可以考慮使用遠(yuǎn)程監(jiān)督的方法,用于解決數(shù)據(jù)集中樣本數(shù)目過少以及不同類型樣本數(shù)目差異較大的問題.