李艷娟,臧明哲,劉曉燕,劉 揚(yáng),郭茂祖
1.東北林業(yè)大學(xué)信息與計(jì)算機(jī)工程學(xué)院,哈爾濱 150000
2.哈爾濱工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,哈爾濱 150001
3.北京建筑大學(xué)電氣與信息工程學(xué)院,北京 100044
伴隨著互聯(lián)網(wǎng)的發(fā)展,非結(jié)構(gòu)化的文本呈指數(shù)級(jí)增長(zhǎng),關(guān)系抽取是從非結(jié)構(gòu)化的文本中抽取兩個(gè)實(shí)體之間的關(guān)聯(lián)關(guān)系。關(guān)系抽取對(duì)知識(shí)圖譜構(gòu)建具有重要意義,可有效地降低學(xué)者閱讀文獻(xiàn)的時(shí)間成本,因此一直以來都是專家學(xué)者研究的熱點(diǎn)。
傳統(tǒng)關(guān)系抽取包括基于模式匹配的方法和基于監(jiān)督學(xué)習(xí)的方法。其中,基于模式匹配的方法通過提取動(dòng)詞和特定領(lǐng)域術(shù)語的文本集合,計(jì)算該集合與已知關(guān)系間的聯(lián)系得到關(guān)系模板,再從文本中抽取關(guān)系[1-3]。隨著關(guān)系種類的增加,數(shù)據(jù)源從標(biāo)準(zhǔn)數(shù)據(jù)集擴(kuò)展到網(wǎng)絡(luò)中多源復(fù)雜冗余的文本,基于模式匹配的方法無法完全適應(yīng)關(guān)系的多種表現(xiàn)形式?;诒O(jiān)督學(xué)習(xí)的方法在帶標(biāo)記的文本語料庫上進(jìn)行訓(xùn)練,再對(duì)測(cè)試語料進(jìn)行關(guān)系預(yù)測(cè)。監(jiān)督學(xué)習(xí)的方法主要基于兩大方法體系,特征向量[4]和核函數(shù)[5],精準(zhǔn)率較高,但對(duì)上下文的信息利用不足,且需要大量人工標(biāo)注數(shù)據(jù)。基于遠(yuǎn)程監(jiān)督的關(guān)系抽取方法不需要大量人工標(biāo)注數(shù)據(jù),且能夠適應(yīng)關(guān)系表達(dá)形式的多樣性,因此成為目前研究熱點(diǎn)。
遠(yuǎn)程監(jiān)督由Craven等人[6]提出,基本思想是獲取包含已知知識(shí)庫中實(shí)體對(duì)的文本,對(duì)其運(yùn)用統(tǒng)計(jì)文本分類的方法,找出文本當(dāng)中蛋白質(zhì)與其他醫(yī)學(xué)概念之間的關(guān)系。Mintz等人[7]提出“如果一個(gè)句子中含有一組關(guān)系涉及到的實(shí)體對(duì),那么這個(gè)句子就是在描述這個(gè)關(guān)系”,基于此假設(shè),用已知知識(shí)庫中的關(guān)系實(shí)例對(duì)齊純文本,從而獲得大量訓(xùn)練實(shí)例,大幅減少了人工標(biāo)注的工作。Pan等人[8]利用遠(yuǎn)程監(jiān)督的思想,在中文在線資源中采用基于SVM(support vector machine)和LP(label propagation)算法進(jìn)行了任務(wù)關(guān)系的抽取。Xue等人[9]將模式匹配和遠(yuǎn)程監(jiān)督思想結(jié)合,提取了人物實(shí)體之間的關(guān)系。然而,根據(jù)該假設(shè)獲取的標(biāo)注數(shù)據(jù)包含大量錯(cuò)誤標(biāo)簽,這些噪聲影響了模型學(xué)習(xí)的準(zhǔn)確性。為了降低噪聲對(duì)模型的影響,提高關(guān)系抽取的準(zhǔn)確性,大量學(xué)者進(jìn)行了研究。Socher等人[10]提出了基于RNN(recurrent neural network)的模型,該方法在處理單元之間既有內(nèi)部反饋鏈接又有前饋鏈接,抽取關(guān)系時(shí)不受句子長(zhǎng)度的制約,解決了單詞向量空間模型無法提取長(zhǎng)短語特征的問題。但是RNN在訓(xùn)練時(shí)容易出現(xiàn)梯度消失或梯度爆炸的問題,且訓(xùn)練時(shí)間較長(zhǎng)。因此Zeng等人[11-12]使用了結(jié)構(gòu)較簡(jiǎn)單的卷積神經(jīng)網(wǎng)絡(luò)對(duì)句子建模提取特征,然后進(jìn)行分類,但這種方法在每個(gè)數(shù)據(jù)包中只選取一條概率最大的語句信息,無法利用數(shù)據(jù)袋中全部句子的監(jiān)督信息。Lin等人[13-14]在卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上引入了注意力機(jī)制,按照實(shí)體對(duì)分為不同訓(xùn)練集,再對(duì)每個(gè)訓(xùn)練集中的實(shí)例權(quán)重進(jìn)行動(dòng)態(tài)調(diào)整。為了加強(qiáng)對(duì)目標(biāo)關(guān)系的注意力,Ji等人[15]在注意力機(jī)制中加入了每一句中的實(shí)體對(duì)描述信息,車金立等人[16]又將字符級(jí)注意力機(jī)制與實(shí)例級(jí)注意力機(jī)制結(jié)合,進(jìn)一步優(yōu)化了模型。
上述基于遠(yuǎn)程監(jiān)督的關(guān)系抽取方法,主要借助Mintz的假設(shè),對(duì)海量網(wǎng)絡(luò)文本進(jìn)行數(shù)據(jù)標(biāo)注,獲取大量的訓(xùn)練語料,再使用各種方法對(duì)其去除噪聲。對(duì)于一些特定領(lǐng)域的關(guān)系抽取存在如下問題:(1)對(duì)于一個(gè)含有多級(jí)復(fù)雜層級(jí)結(jié)構(gòu)實(shí)體的領(lǐng)域,知識(shí)庫中提出的關(guān)系實(shí)例較少且多數(shù)基于上層實(shí)體,十分抽象,用這些關(guān)系做出的遠(yuǎn)程監(jiān)督的假設(shè)會(huì)引入更多的噪聲數(shù)據(jù)。(2)對(duì)于一個(gè)間隔較近實(shí)體所在句子,使用已有模型對(duì)關(guān)系描述詞的特征提取不足,無法準(zhǔn)確地判斷該句是否為噪聲。
因此,本文在現(xiàn)有模型的基礎(chǔ)上,引入了領(lǐng)域本體,針對(duì)以上問題進(jìn)行了改進(jìn)。在構(gòu)造訓(xùn)練數(shù)據(jù)時(shí)先使用已有的模式匹配的方法在小部分文獻(xiàn)中提取關(guān)系,這增大了對(duì)底層實(shí)體關(guān)系的覆蓋量,增加了訓(xùn)練數(shù)據(jù)的多樣性,減少了遠(yuǎn)程監(jiān)督假設(shè)的噪音。對(duì)于描述關(guān)系單詞較少的句子實(shí)例,本文將這些單詞的特征向量引入到注意力機(jī)制中,提高了注意力機(jī)制的效果。對(duì)于抽取出的關(guān)系,加入了本體的實(shí)體層級(jí)約束,使提出的關(guān)系嚴(yán)格符合領(lǐng)域常識(shí)。最后本文使用訓(xùn)練好的模型在多個(gè)數(shù)據(jù)集上進(jìn)行了關(guān)系抽取,在測(cè)試集SemMed數(shù)據(jù)庫中的F1值為86.08%,在驗(yàn)證集GoldStandard數(shù)據(jù)集中的F1值為61.06%,抽取結(jié)果均比已有模型效果好。
Fig.1 Workflow of relation extraction圖1 關(guān)系抽取工作流程
基于注意力機(jī)制和本體的遠(yuǎn)程監(jiān)督關(guān)系抽取工作總流程如圖1所示。首先在已知的關(guān)系中篩選出關(guān)系實(shí)例作為訓(xùn)練語料,再找到與已知本體相關(guān)領(lǐng)域的語料庫,通過預(yù)處理得到詞向量,并篩選出用于測(cè)試的語料,對(duì)測(cè)試語料進(jìn)行命名實(shí)體抽取得到實(shí)體對(duì)。然后使用訓(xùn)練語料和詞向量訓(xùn)練關(guān)系抽取模型,使用本體中的知識(shí)約束過濾,最后用訓(xùn)練好的關(guān)系抽取模型對(duì)驗(yàn)證語料加以驗(yàn)證。
由于遠(yuǎn)程監(jiān)督思想的假設(shè)比較寬泛,從訓(xùn)練文本中獲取的本體關(guān)系實(shí)例存在很大的噪聲,影響了關(guān)系抽取的效果。因此本文在句子級(jí)注意力模型APCNNs(attention piecewise convolutional neural networks)[15]的基礎(chǔ)上加入了本體的關(guān)系約束,提出了關(guān)系抽取模型APCNNs(s)+OR(attention piecewise convolutional neural networks with ontology restriction)模型。該模型由三個(gè)模塊組成:特征工程提取模塊、分類器模塊、本體關(guān)系約束模塊。如圖2所示。特征工程提取模塊包括詞向量表示層、卷積層和分片最大池化層;分類器模塊包括注意力層、Softmax分類器。本章將詳細(xì)介紹這部分內(nèi)容。
2.1.1 詞向量
本文使用詞嵌入和位置嵌入[17]構(gòu)建詞向量。詞嵌入是將文本中提到的每個(gè)詞映射到低維向量的表示方法。本文通過pubmed檢索接口獲取了截至2019年6月的所有文獻(xiàn)的摘要作為訓(xùn)練樣本,采用了Mikolov等人[18]提出的word2vec中的skip-gram模型訓(xùn)練單詞的語義向量。
關(guān)系抽取最后得到的結(jié)果通常形式化描述為三元組<頭實(shí)體,關(guān)系,尾實(shí)體>,且頭尾實(shí)體通常不同,因此本文只考慮句子中兩個(gè)或多個(gè)實(shí)體的情況,忽略沒有實(shí)體或只有一個(gè)實(shí)體的情況。
Fig.2 APCNNs+OR model圖2 APCNNs+OR模型
當(dāng)一個(gè)句子含兩個(gè)實(shí)體時(shí),令s作為一個(gè)輸入句子,可以把句子分為5個(gè)部分s=(ql,e1,qm,e2,qr),其中e1代表頭實(shí)體,e2代表尾實(shí)體,ql代表e1左邊的子句,qm代表e1、e2中間的子句,qr代表e2右邊的子句,本文主要針對(duì)(e1,qm,e2)中的單詞進(jìn)行位置嵌入。當(dāng)一個(gè)句子含3個(gè)實(shí)體時(shí),可以把句子分為7個(gè)部分s=(q1,e1,q2,e2,q3,e3,q4),本文將實(shí)體兩兩組合成實(shí)體對(duì),進(jìn)行關(guān)系抽取。本例中先將e1和e3作為頭尾實(shí)體,則(q2,e2,q3)為qm,使用其他實(shí)體對(duì)時(shí)同理。實(shí)體對(duì)為4個(gè)或以上時(shí)以此類推。
位置特征指的是從當(dāng)前單詞到實(shí)體e1和實(shí)體e2的相對(duì)距離的組合,每個(gè)單詞都有兩個(gè)相對(duì)距離,圖3展示了相對(duì)距離的示例,從“regulated”到頭實(shí)體和尾實(shí)體的相對(duì)距離分別是3和-2。先隨機(jī)化初始兩個(gè)位置矩陣PFi(i=1,2),分別代表每個(gè)單詞相對(duì)于e1和e2的距離,再把相對(duì)距離轉(zhuǎn)換為向量放入矩陣中。
Fig.3 Position embedding example圖3 位置嵌入示例
本文將語義向量和位置向量串接起來作為網(wǎng)絡(luò)的輸入。假設(shè)詞嵌入向量的大小是kw,位置向量的大小是kd,則最終的單詞向量k的大小是k=kw+2kd。
2.1.2 卷積層
本文將輸入句子設(shè)為S={s1,s2,…,sn},sn為該句中第n個(gè)單詞的詞向量,文本句子矩陣S∈Rn×k作為卷積神經(jīng)網(wǎng)絡(luò)的輸入,其中k是詞向量維數(shù)大小。使用si:j代表句子中第i個(gè)單詞到第j個(gè)單詞的序列。這樣的輸入無需復(fù)雜的預(yù)訓(xùn)練處理,降低了預(yù)處理可能導(dǎo)致的錯(cuò)誤。
將矩陣S進(jìn)行卷積操作,提取文本的局部特征,其中卷積核矩陣為W∈Rw×k,利用該卷積核滑動(dòng)窗口在句子S上提取局部特征,得到另一個(gè)向量c∈Rn-w+1,為了得到更多種類的局部特征,實(shí)驗(yàn)使用了多通道的過濾器,最終得到結(jié)果向量C=[c1,c2,…,cn-w+1]T。
2.1.3 分片最大池化層
在神經(jīng)網(wǎng)絡(luò)訓(xùn)練中,通常使用最大池化的運(yùn)算來提取特征矩陣中最明顯的值。但是這種方法提取到的關(guān)系抽取特征粒度過大,并且無法有效地獲得頭尾實(shí)體及中間關(guān)系詞的結(jié)構(gòu)信息,因此本文采用了分片最大池化的方法。
分片最大池化就是將一個(gè)句子示例根據(jù)頭尾實(shí)體的位置分成三個(gè)部分ci={ci,1,ci,2,ci,3},對(duì)每一個(gè)卷積核得到的向量進(jìn)行最大池化得到pi={pi,1,pi,2,pi,3},再將所有的向量串接得到輸出向量p。
2.2.1 注意力機(jī)制改進(jìn)
關(guān)系抽取任務(wù)是一個(gè)多實(shí)例學(xué)習(xí)任務(wù),含有標(biāo)注實(shí)體對(duì)的句子可能不是在描述訓(xùn)練標(biāo)簽中的關(guān)系,這是遠(yuǎn)程監(jiān)督假設(shè)帶來的噪聲,因此在含有相同實(shí)體對(duì)的句子中要做好區(qū)分,在實(shí)際描述標(biāo)注關(guān)系的句子中進(jìn)行學(xué)習(xí)。
注意力機(jī)制是為了在學(xué)習(xí)中給予合理的關(guān)系實(shí)例較大的權(quán)重,可以減少噪聲數(shù)據(jù)對(duì)模型的影響。首先將包含相同實(shí)體對(duì)的句子分為一個(gè)數(shù)據(jù)袋B,每個(gè)數(shù)據(jù)袋中包含q個(gè)句子。Liu等人[19]提出在基于數(shù)據(jù)特征融合的模型中,如果特征向量的維數(shù)相同,則可以將這些特征直接拼接。本文引入了Luong-Attention注意力機(jī)制公式[20]計(jì)算權(quán)重:
其中,[x1:x2]代表x1和x2的串接,p是分片池化后得到的特征向量,vrelation是注意力機(jī)制中當(dāng)前句子的隱藏狀態(tài),也是該句的關(guān)系向量,1 ≤i≤q,va是中間矩陣,α=[α1,α2,…,αq]是一個(gè)數(shù)據(jù)袋中所有實(shí)例句子的權(quán)重,整個(gè)數(shù)據(jù)袋的特征可以用如下公式計(jì)算:
現(xiàn)有方法計(jì)算vrelation借鑒了詞向量的運(yùn)算思想,如v("king")-v("queen")=v("man")-v("woman")。選擇句子中頭尾實(shí)體的向量差vrelation=v(e1)-v(e2)(APCNNs)。該算法在實(shí)體間隔較長(zhǎng)的句子中效果較好,但在一些間隔較短的句子中,詞向量運(yùn)算產(chǎn)生的誤差會(huì)比使用描述關(guān)系部分的向量運(yùn)算大。
為了更好地使用關(guān)系詞來描述實(shí)體間隔較短句子的vrelation隱藏狀態(tài),本文提出一種新的計(jì)算方法——關(guān)系詞向量加和(attention piecewise convolutional neural networks sum,APCNNs(s)),vrelation=∑v(qm),其中qm為e1、e2之間的單詞。該計(jì)算方法認(rèn)為句子中關(guān)系總是出現(xiàn)在兩實(shí)體之間,因此使用了實(shí)體間詞語向量的加和獲得vrelation的向量,在詞語較少的句子中可以更好地使用每一個(gè)關(guān)系相關(guān)單詞的特征,如“IS_A”關(guān)系在句子通常表達(dá)為“is a”或“is the”,而v(is)+v(a)和v(is)+v(the)的向量相似度較高,因此可以使這樣的特征獲得更高的權(quán)重值,從而更準(zhǔn)確地區(qū)分一個(gè)數(shù)據(jù)袋中真正描述關(guān)系的語句。
2.2.2 softmax層
本文加入softmax分類器計(jì)算每個(gè)合理關(guān)系的信任值:
式中,o是輸出,W是偏移值,令θ=(E,PF1,PF2,Wα,Ws)代表上述所有的參數(shù),B代表一個(gè)數(shù)據(jù)袋,則該袋實(shí)體對(duì)是第i個(gè)本體關(guān)系的條件概率為:
本文利用了Dropout[21]的方法,在每次計(jì)算中隨機(jī)忽略隱藏層中一定比例的神經(jīng)元,這樣可以避免隱藏層中各個(gè)神經(jīng)元之間的相互作用,降低過擬合現(xiàn)象,提高模型的泛化能力。
本體提供了豐富的領(lǐng)域知識(shí),包括實(shí)體的分層,以及最頂層實(shí)體間存在的關(guān)系。而現(xiàn)有模型沒有利用這一部分信息,造成了抽取到的一些關(guān)系不符合常識(shí)。因此為提高模型最終抽取關(guān)系的精準(zhǔn)率,使最終抽取的關(guān)系均符合該領(lǐng)域的基本知識(shí),本文提出了本體約束層。
本文利用了本體提供的層級(jí)及各層級(jí)之間的關(guān)系,將其視為一個(gè)約束R:令T=(E1,E2,…,En),T為本體中的概念樹,En為概念集合,如式(6)所示:
如果被抽取語句中的實(shí)體e1、e2滿足e1∈E1,e2∈E2,代表實(shí)體集E1、E2的關(guān)系集合,若,則在softmax層后保留該關(guān)系,否則將其信任度置0。
下面通過一個(gè)具體實(shí)例說明本體在遠(yuǎn)程監(jiān)督關(guān)系抽取模型中的作用。以GoldStandard數(shù)據(jù)集為例,當(dāng)識(shí)別句子“CONCLUSIONS:Human EPCs express functional PAR-1.”時(shí),頭尾實(shí)體為“Stem cells#Receptor,PAR-1(干細(xì)胞#受體PAR-1)”,關(guān)系抽取模型得到的候選關(guān)系中,“PRODUCES”和“CAUSES”分?jǐn)?shù)較高,二者含義也較為相近,但本體給出了實(shí)體層級(jí)“[stem cells]IS_A [Cell]”“[Receptor]”“[Receptor,PAR-1]IS_A[Receptor]”,在實(shí)體對(duì)“Cell#Receptor”中存在關(guān)系“PRODUCES”而不存在“CAUSES”,因此模型在最后預(yù)測(cè)時(shí)應(yīng)當(dāng)排除候選項(xiàng)“CAUSES”。
APCNNs(s)+OR模型采用交叉熵函數(shù)作為損失函數(shù),假設(shè)每個(gè)實(shí)體對(duì)標(biāo)注的關(guān)系為ri,模型抽取得到的關(guān)系為Bi,實(shí)體對(duì)總數(shù)為N,損失函數(shù)如式(7)所示:
其中,θ為模型參數(shù)。訓(xùn)練階段采用隨機(jī)梯度下降的方法,每次迭代隨機(jī)選擇一小批數(shù)據(jù)集進(jìn)行訓(xùn)練,選擇Adam優(yōu)化算法最小化損失函數(shù)。
關(guān)系抽取的訓(xùn)練語料應(yīng)包含文本原句,頭實(shí)體和尾實(shí)體的類型及在文中出現(xiàn)的位置,句中包含的關(guān)系名,本文選擇了SemMed[22]中的數(shù)據(jù)作為訓(xùn)練語料庫。SemMed數(shù)據(jù)庫是從所有pubmed文獻(xiàn)中提取的語義關(guān)系數(shù)據(jù)庫,該數(shù)據(jù)庫以“主語-謂語-賓語”的三元組形式存儲(chǔ)數(shù)據(jù),符合訓(xùn)練集的要求。本文選用的數(shù)據(jù)庫版本為semmedVER31_R(文獻(xiàn)收錄截止到2019年6月30日),為保證方法的時(shí)效性,選擇了數(shù)據(jù)庫最后122 167個(gè)實(shí)例作為訓(xùn)練語料,68 011個(gè)實(shí)例作為測(cè)試語料。其中關(guān)系來源于UMLS關(guān)系語義網(wǎng)絡(luò),包含54種關(guān)系頭尾實(shí)體,其來源于UMLS Metathesaurus[23]。
為了測(cè)試模型對(duì)句子中最主要關(guān)系的抽取結(jié)果,本文還選取了SemRep GoldStandard[24]數(shù)據(jù)集作為測(cè)試語料,該數(shù)據(jù)集的構(gòu)建目的是為了驗(yàn)證SemRep方法抽取實(shí)體和關(guān)系的準(zhǔn)確性。GoldStandard是一個(gè)金標(biāo)準(zhǔn)的注釋研究,它包含從MEDLINE摘要中隨機(jī)選擇的500個(gè)句子,并從中人工提取了1 371個(gè)主要的關(guān)系預(yù)測(cè),其實(shí)體和關(guān)系也遵循UMLs的索引。
本文采用精準(zhǔn)率(precision,P)、召回率(recall,R)、F值來評(píng)價(jià)模型性能,三者的計(jì)算公式為:
本文檢索了PubMed中截至2019年6月的全部生物醫(yī)學(xué)文獻(xiàn)的摘要,使用python中g(shù)ensim庫的word2vec包訓(xùn)練詞向量,后進(jìn)行歸一化,設(shè)置訓(xùn)練參數(shù)如表1所示,其余數(shù)值為默認(rèn)。
Table 1 Word embedding vector training parameters表1 詞嵌入向量訓(xùn)練參數(shù)
訓(xùn)練APCNNs模型的超參數(shù)如表2所示,其中詞嵌入向量維數(shù)為50,位置嵌入向量維數(shù)為5,詞向量總位數(shù)k=kw+2kd=60。
Table 2 APCNNs parameters表2 APCNNs參數(shù)
3.3.1 比較系統(tǒng)
本文提出的模型如下:
(1)APCNNs(s):使用卷積神經(jīng)網(wǎng)絡(luò)和分片最大池化提取特征向量,加入本文改進(jìn)的注意力機(jī)制,使用關(guān)系詞加和作為注意力機(jī)制隱藏層。
(2)APCNNs+OR(attention piecewise convolutional neural networks with ontology restriction):使用卷積神經(jīng)網(wǎng)絡(luò)和分片最大池化提取特征向量,加入句子級(jí)注意力機(jī)制,加入了實(shí)體信息,最后加入本文提出的本體約束層。
(3)APCNNs(s)+OR:使用卷積神經(jīng)網(wǎng)絡(luò)和分片最大池化提取特征向量,加入本文改進(jìn)的注意力機(jī)制和本文提出的本體約束層。
為了驗(yàn)證本文提出的關(guān)系抽取模型APCNNs(s)+OR的性能,與以下現(xiàn)有關(guān)系抽取模型進(jìn)行比較:
(1)PCNN(piecewise convolutional neural network)[12]:分片最大池化的卷積神經(jīng)網(wǎng)絡(luò),引入了多示例學(xué)習(xí),但會(huì)浪費(fèi)數(shù)據(jù)袋中的句子信息。
(2)APCNNs[13]:在PCNN基礎(chǔ)上引入句子級(jí)注意力機(jī)制的方法,加入了實(shí)體的信息,但注意力機(jī)制中關(guān)系隱藏狀態(tài)向量計(jì)算不準(zhǔn)確。
(3)RNN+Attention[10]:循環(huán)神經(jīng)網(wǎng)絡(luò)引入注意力機(jī)制的方法,該方法有效地利用了順序信息,但沒有考慮句子中后面單詞對(duì)前面單詞的影響。
(4)biRNN+Attention[10],即雙向循環(huán)神經(jīng)網(wǎng)絡(luò)引入注意力機(jī)制的方法,利用了句子雙向的順序信息,但易出現(xiàn)梯度消失和梯度爆炸的問題。
3.3.2 SemMed數(shù)據(jù)庫實(shí)驗(yàn)
將本文方法和現(xiàn)有方法在SemMed數(shù)據(jù)庫進(jìn)行實(shí)驗(yàn),繪制出的PR曲線如圖4所示。可以看出:
(1)在P為0.80的前提下,本文提出的APCNNs(s)+OR的R可達(dá)0.85,高于APCNNs的0.81,證明本文方法可以增強(qiáng)實(shí)體關(guān)系抽取的覆蓋率。
(2)在R相同的情況下,本文方法APCNNs(s)、APCNNs+OR、APCNNs(s)+OR獲得的P也均高于現(xiàn)有的方法APCNNs、PCNN、RNN+Attention、biRNN+Attention,說明本文方法提高了關(guān)系抽取的準(zhǔn)確性。
(3)由APCNNs和其他引入注意力機(jī)制的模型RNN+Attention、biRNN+Attention對(duì)比可知,分片最大池化卷積神經(jīng)網(wǎng)絡(luò)在該任務(wù)上具有更好的特征提取效果。
(4)由APCNNs(s)和APCNNs實(shí)驗(yàn)對(duì)比可知,使用關(guān)系詞向量加和作為注意力隱藏層的方法可以獲得數(shù)據(jù)袋中每個(gè)句子中更多的監(jiān)督信息。
(5)由APCNNs+OR和沒有加入本體約束層模型APCNNs的對(duì)比實(shí)驗(yàn)可知,本體約束層可以有效約束抽取出關(guān)系的類型,提高模型抽取的準(zhǔn)確性。
(6)將關(guān)系詞向量加和作為注意力隱藏層,和本體約束層同時(shí)引入,構(gòu)成的模型APCNNs(s)+OR具有最好的抽取效果。
圖4各條曲線的最大F值點(diǎn)對(duì)應(yīng)的P和R值如表3所示。從表3中可以看出,APCNNs(s)+OR具有最高的F值86.08%,高于APCNNs的82.23%,同時(shí)在最高F值的情況下,R值達(dá)到84.20%,P值達(dá)到88.06%,均高于其他模型。綜上所述,APCNNs(s)+OR在SemMed數(shù)據(jù)庫抽取關(guān)系實(shí)驗(yàn)中具有最好的抽取效果。
Fig.4 PR curves of each model on SemMed dataset圖4 各模型在SemMed數(shù)據(jù)集的PR曲線
Table 3 Results of each model on SemMed dataset表3 各模型在SemMed數(shù)據(jù)集的結(jié)果 %
3.3.3 GoldStandard數(shù)據(jù)集實(shí)驗(yàn)
GoldStandard數(shù)據(jù)集中出現(xiàn)的關(guān)系如下所示:在句子“The effect of mitomycin C was also evident in the normal size alleles in two cell lines with alleles of 13/13 and 12/69 repeats,where treated cultures showed new longer alleles.”中,人工標(biāo)注的實(shí)體對(duì)為“mitomycin#alleles”,關(guān)系為“affect”,該關(guān)系即為句子的主要關(guān)系;而提出的實(shí)體對(duì)“alleles#cell”,關(guān)系“l(fā)ocation_of”即為次要關(guān)系。
在實(shí)驗(yàn)中,本文首先使用了SemRep工具進(jìn)行了命名實(shí)體識(shí)別,標(biāo)注了句子中出現(xiàn)的所有實(shí)體。接著對(duì)這些實(shí)體抽取了關(guān)系,最后把結(jié)果與GoldStandard中人工標(biāo)注的數(shù)據(jù)進(jìn)行比對(duì),PR曲線如圖5所示。
Fig.5 PR curve of each model on GoldStandard dataset圖5 各模型在GoldStandard數(shù)據(jù)集的PR曲線
由實(shí)驗(yàn)可知:
(1)本文方法獲得的R高于現(xiàn)有方法,在P為0.60的前提下,APCNN(s)+OR的R可達(dá)0.63,高于APCNNs的0.57。這說明APCNN(s)+OR可以覆蓋到句子中更多的主要關(guān)系。
(2)在R相同的情況下,本文方法APCNNs(s)、APCNNs+OR、APCNNs(s)+OR獲得的P也均高于現(xiàn)有的方法APCNNs、PCNN、RNN+Attention、biRNN+Attention,說明本文方法提高了句子主要關(guān)系抽取的準(zhǔn)確性。
(3)由APCNNs+OR和APCNNs模型的對(duì)比中可以看出,因?yàn)槿斯?biāo)注的實(shí)體關(guān)系嚴(yán)格符合本體中的關(guān)系約束,所以加入了本體約束層可以有效提高模型的準(zhǔn)確率。
(4)由APCNNs和其他引入注意力機(jī)制的模型RNN+Attention、biRNN+Attention對(duì)比可知,分片最大池化卷積神經(jīng)網(wǎng)絡(luò)在抽取句子主要關(guān)系的任務(wù)上也具有更好的特征提取效果。
(5)由APCNNs(s)和包含注意力機(jī)制的模型APCNNs對(duì)比可知,使用關(guān)系詞向量加和的注意力機(jī)制可以抽取更多的主要關(guān)系,這是因?yàn)樵摲椒ǐ@得了更多句子中主要關(guān)系的監(jiān)督信息,從而有效增加模型的準(zhǔn)確率和召回率。
(6)將關(guān)系詞向量加和注意力隱藏層和本體約束層同時(shí)引入模型APCNNs(s)+OR,可以加強(qiáng)對(duì)句子中主要關(guān)系的抽取效果。
圖5的各條曲線的最大F值點(diǎn)對(duì)應(yīng)的P和R值如表4所示。從表4中可以看出,APCNNs(s)+OR具有最高的F值62.07%,高于APCNNs的59.02%。綜上所述,APCNNs(s)+OR在GoldStandard數(shù)據(jù)庫抽取句子主要關(guān)系的實(shí)驗(yàn)中具有最好的抽取效果。
Table 4 Results of each model on GoldStandard dataset表4 各模型在GoldStandard數(shù)據(jù)集的結(jié)果 %
本文針對(duì)本體關(guān)系抽取現(xiàn)階段存在的問題,提出了基于注意力機(jī)制的遠(yuǎn)程監(jiān)督本體關(guān)系抽取模型APCNNs(s)+OR,該模型加強(qiáng)了對(duì)句子中實(shí)體間關(guān)系詞的學(xué)習(xí),并充分利用了本體對(duì)關(guān)系實(shí)體間關(guān)系約束的信息,有效地降低了遠(yuǎn)程監(jiān)督假設(shè)引入的噪聲干擾,提升了模型性能。為了驗(yàn)證模型性能,本文基于UMLS醫(yī)學(xué)本體構(gòu)建了實(shí)驗(yàn)數(shù)據(jù),使用GoldStandard數(shù)據(jù)作為驗(yàn)證數(shù)據(jù)。實(shí)驗(yàn)結(jié)果表明,相較于其他方法,該方法可以有效降低遠(yuǎn)程監(jiān)督假設(shè)引入的噪聲干擾,以及句子中兩實(shí)體間的詞語信息干擾,抽取關(guān)系的性能更好。