馬瑛超,張曉濱
(西安工程大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,西安 710048)
關(guān)系抽取[1,2]任務(wù)是指對(duì)實(shí)體間的相互關(guān)系進(jìn)行抽取,其目標(biāo)是在給定實(shí)體對(duì)的情況下識(shí)別并判斷目標(biāo)實(shí)體對(duì)之間的特定語義關(guān)聯(lián).作為信息抽取[3]的核心技術(shù)之一,關(guān)系抽取能夠幫助計(jì)算機(jī)從自然文本中識(shí)別出實(shí)體之間蘊(yùn)含的語義關(guān)系.知識(shí)圖譜[4]作為第三代人工智能的基石,當(dāng)下正處于高度發(fā)展的階段,其構(gòu)建和應(yīng)用的過程中都離不開關(guān)系抽取的幫助,并且抽取任務(wù)完成的精確度會(huì)在一定程度上影響到知識(shí)圖譜構(gòu)建的質(zhì)量及其上層應(yīng)用的效果優(yōu)劣.隨著自然語言處理技術(shù)的不斷發(fā)展,關(guān)系抽取的效果也獲得了一定的提升,但面對(duì)海量的網(wǎng)絡(luò)文本,尤其是豐富多變的語言環(huán)境時(shí),目前關(guān)系抽取的效果依舊不能滿足當(dāng)前發(fā)展的需求.
目前,可通過以下兩類方法來實(shí)現(xiàn)關(guān)系抽取,1)基于機(jī)器學(xué)習(xí)的方法[5-7];2) 基于深度學(xué)習(xí)的方法.前者主要指通過由文本能夠容易得到的淺層特征,如詞性、句法等特征信息,從而完成關(guān)系抽取的工作;后者則是利用深度神經(jīng)網(wǎng)絡(luò)將文本的淺層特征轉(zhuǎn)換為更高級(jí)的語義特征.相較于第1 類方法,第2 類方法能有效地解決人工特征選擇、特征提取誤差傳播兩大主要問題.
第2 類方法在早期由卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)和循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural networks,RNN)為代表.其中Zeng 等人[8]首次借助了CNN,用于抽取文本中所包含的詞或者句子級(jí)別的特征,最終通過Softmax層進(jìn)行關(guān)系分類,從而得到了較好的層級(jí).Xu 等人[9]將句法特征融入到CNN中,并在數(shù)據(jù)集SemEval-2010 Task8 進(jìn)行實(shí)驗(yàn).準(zhǔn)確率相較于僅使用CNN 進(jìn)行抽取的模型提高了4.1%,驗(yàn)證了該方法在關(guān)系抽取任務(wù)上的有效性.除使用CNN作為特征提取網(wǎng)絡(luò)外,Socher 等人[10]采用RNN 用于關(guān)系抽取,實(shí)驗(yàn)結(jié)果表明RNN 在該類任務(wù)中具有良好的表現(xiàn).RNN 雖然能很好地學(xué)習(xí)到文本序列的深層知識(shí),但相應(yīng)地也會(huì)存在梯度爆炸等弊端.
針對(duì)上述弊端,研究者們通過不斷的改進(jìn)和完善,提出了RNN的變體:長短期記憶網(wǎng)絡(luò)(long short-term memory,LSTM).其通過“門”機(jī)制控制信息的傳遞,在RNN的基礎(chǔ)上解決了長距離依賴以及梯度爆炸問題.Xu 等人[11]將文本的淺層特征進(jìn)行融合,應(yīng)用LSTM完成關(guān)系抽取,實(shí)驗(yàn)證明該方法優(yōu)于傳統(tǒng)的CNN 方法.Zhang 等人[12]進(jìn)一步使用LSTM的變體雙向長短期記憶網(wǎng)絡(luò)(Bi-LSTM)模型進(jìn)行抽取,其最佳的實(shí)驗(yàn)結(jié)果相較于傳統(tǒng)方法準(zhǔn)確率提高了14.6%,可見Bi-LSTM模型在關(guān)系抽取中能獲得更為優(yōu)異的結(jié)果.
隨著深度學(xué)習(xí)的發(fā)展,研究者們試圖尋找一種新的結(jié)構(gòu)以幫助模型在學(xué)習(xí)的過程中對(duì)部分特征進(jìn)行強(qiáng)化學(xué)習(xí),此時(shí)注意力機(jī)制(attention)[13]逐漸步入人們的視野.它是由Treisman 等人[14]提出的選擇算法,該算法通過注意力機(jī)制對(duì)特征的關(guān)鍵部分進(jìn)行重點(diǎn)學(xué)習(xí),對(duì)于深度學(xué)習(xí)網(wǎng)絡(luò)的學(xué)習(xí)過程有積極意義.王紅等人[15]將attention 引入到Bi-LSTM 中完成關(guān)系抽取,在實(shí)驗(yàn)過程中取得了優(yōu)秀的成績.但基于注意力機(jī)制的模型僅通過對(duì)輸入特征的控制進(jìn)行計(jì)算,未考慮模型神經(jīng)元之間特征的相關(guān)性.并且在復(fù)雜的語意環(huán)境下,這類模型也容易受到文本中非目標(biāo)實(shí)體對(duì)關(guān)系語義的干擾,從而影響方法的性能.
鑒于上述不足,本文提出了控制輸入長短期記憶網(wǎng)絡(luò)CI-LSTM (control input long short-term memory),該網(wǎng)絡(luò)在傳統(tǒng)LSTM的基礎(chǔ)上增加了由注意力機(jī)制和控制門閥單元組成的輸入控制單元,控制門閥單元可依據(jù)控制向量進(jìn)行關(guān)鍵位置上的重點(diǎn)學(xué)習(xí),注意力機(jī)制對(duì)單個(gè)LSTM的輸入的不同特征與目標(biāo)實(shí)體對(duì)信息進(jìn)行計(jì)算,從而對(duì)特征的關(guān)鍵部分進(jìn)行可控制的選擇學(xué)習(xí),有效提升了關(guān)系抽取的性能.
為使網(wǎng)絡(luò)能夠有選擇進(jìn)行學(xué)習(xí),本文受門控機(jī)制的啟發(fā)設(shè)計(jì)出輸入控制單元,輸入控制單元結(jié)構(gòu)如圖1.
圖1 輸入控制單元結(jié)構(gòu)
由圖1可以看出,輸入控制單元包含兩部分.
第一部分為依靠控制向量和門控機(jī)制的門閥控制單元,該單元能夠根據(jù)控制向量對(duì)當(dāng)前時(shí)刻的輸入進(jìn)行有選擇地進(jìn)行控制.首先門閥控制單元依據(jù)當(dāng)前時(shí)刻的輸入和前一時(shí)刻的細(xì)胞狀態(tài)計(jì)算控制門權(quán)重,然后根據(jù)控制向量和控制門權(quán)重對(duì)輸入進(jìn)行計(jì)算.
其中,ct為輸入控制門的控制信息,x't為更新后的輸入信息,x_ct為控制向量,Wc和bc為記憶門的權(quán)重及偏置值.
第二部分進(jìn)行特征級(jí)別的注意力機(jī)制的計(jì)算,本文選擇聚焦式注意力機(jī)制將經(jīng)過門閥控制單元計(jì)算出的輸入與實(shí)體信息進(jìn)行注意力機(jī)制的計(jì)算,公式如下:
其中,ai為第i個(gè)特征的注意力權(quán)重,s為注意力打分函數(shù),xi為t時(shí)刻第i個(gè)輸入特征,q為作為key的實(shí)體特征.
在特征級(jí)別的注意力計(jì)算中,輸入為t時(shí)刻輸入特征的值,q為實(shí)體信息的表示,文本在選擇注意力打分函數(shù)時(shí)使用雙線性模型,公式如下:
其中,W為可訓(xùn)練參數(shù),維度與q相同.
其中,x't為注意力模塊的輸入,a則代表注意力的權(quán)重矩陣.
在LSTM 中,最為關(guān)鍵的部分是由細(xì)胞狀態(tài)C以及3 個(gè)門(即記憶門i、遺忘門f與輸出門o)組成,在時(shí)間t流入模型的信息由LSTM 控制單元加以處理,有選擇地留下或舍棄C的部分信息,并經(jīng)由計(jì)算后傳遞給下一控制單元.為使得網(wǎng)絡(luò)能夠在學(xué)習(xí)上下文特征時(shí)能夠?qū)斎脒M(jìn)行有選擇地學(xué)習(xí),本文在原有LSTM結(jié)構(gòu)中引入輸入控制單元.輸入控制LSTM 控制單元結(jié)構(gòu)如圖2所示.
圖2 CI-LSTM 細(xì)胞結(jié)構(gòu)
其中,遺忘門將計(jì)算對(duì)前一時(shí)刻傳入的細(xì)胞狀態(tài)進(jìn)行遺忘的數(shù)值,這一部分的計(jì)算過程如式(6)所示:
其中,ft為遺忘門的控制信息,用于減少t-1 時(shí)C中的信息,Wf和bf則分別為遺忘門的權(quán)重及偏置值.
記憶門將決定輸入的特征有多少能進(jìn)入新的細(xì)胞狀態(tài),記憶門的計(jì)算過程如式(7)所示:
其中,it為記憶門的控制信息,Wi和bi為記憶門的權(quán)重及偏置值.
輸入控制單元依據(jù)輸入信息和控制向量來實(shí)現(xiàn)對(duì)輸入信息的管理,即對(duì)輸入的信息有選擇地遺忘.輸入控制門與記憶門的控制機(jī)制不同之處在于輸入控制門的控制機(jī)制僅作用于輸入信息,這種控制方式能夠更為直接的作用于輸入信息本身,從而在不影響記憶門對(duì)細(xì)胞狀態(tài)控制的同時(shí),對(duì)輸入特征進(jìn)行有選擇地學(xué)習(xí).
進(jìn)一步地,根據(jù)遺忘門和記憶門的控制信息對(duì)細(xì)胞狀態(tài)進(jìn)行更新,更新過程如下:
其中,Ct為新的細(xì)胞狀態(tài),Ct-1為前一時(shí)刻的細(xì)胞狀態(tài),Wc、bc分別反映計(jì)算臨時(shí)細(xì)胞狀態(tài)的權(quán)重及偏置值.
輸出門將計(jì)算哪些信息將被輸出,這一過程如下所示:
其中,ot為該門的控制信息,Wo、bo則分別反映該門的權(quán)重及偏置值.
本文將關(guān)系抽取分為4 層,分別為預(yù)處理層、編碼層、學(xué)習(xí)層以及輸出層.
預(yù)處理層主要作用在于生成控制向量,并依據(jù)BERT的需要進(jìn)行預(yù)編碼.其中控制向量的生成本文選擇依靠句法依存樹輔助完成,句法依存樹[16]是文本中句法關(guān)系和語法關(guān)系的一種表現(xiàn)形式,通過句法依存樹能夠很清晰地將詞與詞之間的依存關(guān)系表現(xiàn)出來.并且通過句法依存樹能夠?qū)⒕渥又兄鞲刹糠诌M(jìn)行提煉,從而彌補(bǔ)語句中表達(dá)不清楚的問題.
本文選擇以句法依存樹所生成的最短依存路徑作為控制向量生成的方式.首先本文借助工具生成句子的句法依存樹,并以兩實(shí)體為兩端來尋找最短依存路徑,最后基于該路徑按原本句子中詞的位置生成控制向量.如圖3所示.
圖3 句法依存樹的關(guān)系表示
控制向量的生成計(jì)算如式(11)所示:
其中,x_ci為文本中i位置的控制向量,wordi為文本中i位置的單詞,D為最短依存路徑.
由于自然語言處理中神經(jīng)網(wǎng)絡(luò)不能直接輸入文本,需要將文本轉(zhuǎn)化為向量的數(shù)據(jù).因此編碼層使用BERT[17]作為模型的編碼層,BERT 模型自推出以來就備受自然語言處理界的青睞,該模型以其優(yōu)秀的性能已經(jīng)逐步取代Word2Vec、ELmo 成為語言模型中不可或缺的一部分.
學(xué)習(xí)層以雙向的控制輸入LSTM 結(jié)構(gòu)進(jìn)行學(xué)習(xí).其中實(shí)體信息表示本文通過記錄實(shí)體開始位置,并從編碼層截取實(shí)體出現(xiàn)位置的編碼向量作為實(shí)體信息的表示.同時(shí)將首實(shí)體與尾實(shí)體的拼接作為實(shí)體信息的表示輸入到控制輸入LSTM 中幫助輸入控制單元的注意力計(jì)算.
輸出層以一個(gè)全連接層和Dropout 層作為中間層,Dropout 層可以在一定程度上減少過擬合的現(xiàn)象,最后通過Softmax函數(shù)進(jìn)行判斷關(guān)系類別的判斷.CI-LSTM模型結(jié)構(gòu)如圖4所示.
圖4 基于CI-LSTM的關(guān)系抽取模型結(jié)構(gòu)圖
為驗(yàn)證所提模型的效果,本文采用SemEval2010-task8 數(shù)據(jù)集作為實(shí)驗(yàn)語料進(jìn)行測試.該數(shù)據(jù)集包含10 類關(guān)系,共10 717 條數(shù)據(jù).其中包括8 000 條訓(xùn)練數(shù)據(jù)和2 717 條測試樣本.樣本關(guān)系分布如表1所示.
表1 SemEval2010-task8 數(shù)據(jù)集樣本關(guān)系分布
除SemEval2010-task8 數(shù)據(jù)集外,本文同時(shí)選取150 條SemEval2010-task8 數(shù)據(jù)集測試數(shù)據(jù)中存在多種語義關(guān)系的樣本作為復(fù)雜語境下的實(shí)驗(yàn)樣本.
本文評(píng)價(jià)指標(biāo)采用準(zhǔn)確率P、召回率R以及F值,各指標(biāo)的具體定義為:
其中,TP表示模型對(duì)輸出類型判斷正確的數(shù)據(jù)條目;FP表示模型對(duì)輸出關(guān)系判斷錯(cuò)誤的數(shù)據(jù)條目;FN表示模型對(duì)輸出關(guān)系判斷錯(cuò)誤但實(shí)際正確的條目.
本文實(shí)驗(yàn)基于Keras 深度學(xué)習(xí)框架,采用Adam 優(yōu)化算法訓(xùn)練模型,并使用最小化交叉熵的方法進(jìn)行最優(yōu)參數(shù)的選取.為方便模型的對(duì)比,在后續(xù)試驗(yàn)中,模型的公共參數(shù)均按照最優(yōu)參數(shù)進(jìn)行實(shí)驗(yàn),并同樣使用BERT_BASE 作為編碼層,模型的最優(yōu)參數(shù)設(shè)置如表2.
表2 模型最優(yōu)參數(shù)設(shè)置
為驗(yàn)證以句法依存樹作為控制向量的生成標(biāo)準(zhǔn)的可靠性,本文以單詞相對(duì)于實(shí)體的位置作為控制向量的生成依據(jù)進(jìn)行了實(shí)驗(yàn).依據(jù)位置的控制向量生成即將文本以實(shí)體為界限分為三段式,在實(shí)體之間的信息視作關(guān)鍵信息,處于兩實(shí)體兩側(cè)的信息視作非關(guān)鍵信息.以實(shí)體位置進(jìn)行控制向量的生成如圖5所示.
圖5 基于實(shí)體位置生成控制向量
實(shí)驗(yàn)結(jié)果如表3所示.
表3 實(shí)驗(yàn)結(jié)果對(duì)比 (%)
實(shí)驗(yàn)結(jié)果表明依據(jù)句法依存樹的控制向量生成方式在關(guān)系抽取中與本文提出的基于輸入控制LSTM 結(jié)構(gòu)結(jié)合能夠更好地對(duì)關(guān)系特征進(jìn)行學(xué)習(xí).
為驗(yàn)證本文模型在關(guān)系抽取的效果,本文分別對(duì)本文模型和RNN、CNN、LSTM、Bi-LSTM、Attention-LSTM 模型進(jìn)行實(shí)驗(yàn)對(duì)比,實(shí)驗(yàn)結(jié)果如表4.
從表4中可以看出,相較于RNN、CNN,CI-LSTM的在F上分別提升了20.03%、12.32%,這是因?yàn)镃ILSTM 內(nèi)部采用以LSTM的結(jié)構(gòu)來學(xué)習(xí)語句的特征,而LSTM 相對(duì)于CNN和RNN 具有更為優(yōu)秀的結(jié)構(gòu).相比于LSTM 模型和Bi-LSTM,CI-LSTM的F值分別提升了3.7%和3.13%,這是因?yàn)镃I-LSTM 在傳統(tǒng)LSTM的基礎(chǔ)上增加了控制輸入單元,輸入控制單元的引入能夠使模型能夠?qū)﹃P(guān)鍵部分的特征進(jìn)行重點(diǎn)學(xué)習(xí),并且針對(duì)實(shí)體信息的特征級(jí)注意力的計(jì)算能夠幫助模型學(xué)習(xí)到專注于當(dāng)前實(shí)體對(duì)的語義關(guān)系信息.CILSTM 相較于Attention-LSTM 效果提升了1.26%.這是因?yàn)橄鄬?duì)于Attention 機(jī)制自動(dòng)的計(jì)算句子各個(gè)部分的權(quán)重,在訓(xùn)練過程中容易受到其他關(guān)系的干擾,而CI-LSTM 可以根據(jù)控制向量的值進(jìn)行選擇性的學(xué)習(xí),從而增加了復(fù)雜語境下的關(guān)系判斷精度.
為驗(yàn)證本文模型在復(fù)雜語境下的性能,本文使用SemEval2010-task8 中選取出的語句中包含多種關(guān)系的樣本進(jìn)行單獨(dú)的測試.復(fù)雜語境實(shí)驗(yàn)結(jié)果如表5所示.
這一結(jié)果表明本文提出的CI-LSTM 相較于傳統(tǒng)的方法能夠在復(fù)雜語境下進(jìn)行更好的關(guān)系抽取任務(wù).
本文針對(duì)當(dāng)前傳統(tǒng)深度學(xué)習(xí)關(guān)系抽取方法在復(fù)雜語境下所存在的文本中其他關(guān)系對(duì)目標(biāo)關(guān)系抽取產(chǎn)生干擾的問題提出了CI-LSTM 網(wǎng)絡(luò).該網(wǎng)絡(luò)在傳統(tǒng)LSTM的基礎(chǔ)上增加了由注意力機(jī)制和控制門閥單元組成的輸入控制單元,其中控制門閥單元可依據(jù)控制向量進(jìn)行關(guān)鍵位置上的重點(diǎn)學(xué)習(xí),而注意力機(jī)制則對(duì)單個(gè)LSTM的輸入的不同特征與實(shí)體對(duì)信息進(jìn)行計(jì)算.本文通過句法依存關(guān)系進(jìn)行控制向量的生成,并以控制輸入LSTM 作為學(xué)習(xí)層,Softmax函數(shù)作為判斷關(guān)系的方式進(jìn)行關(guān)系抽取模型的構(gòu)建.在SemEval2010-task8 任務(wù)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),由實(shí)驗(yàn)結(jié)果可以看出CI-LSTM 優(yōu)于其他方法,能得到更好的關(guān)系抽取效果.另外,本文通過對(duì)SemEval2010-task8 中具有復(fù)雜語境的數(shù)據(jù)進(jìn)行了再次的驗(yàn)證,實(shí)驗(yàn)結(jié)果表明,相對(duì)于傳統(tǒng)深度學(xué)習(xí)方法,本文所提方法對(duì)復(fù)雜語境下的關(guān)系抽取更具有效性.在后續(xù)的研究中,可以考慮如何在減少參數(shù)量的同時(shí)根據(jù)控制向量進(jìn)行更好的選擇學(xué)習(xí),以及在控制向量生成的方法上進(jìn)行改進(jìn).