謝 騰,楊俊安,劉 輝
(國防科技大學 電子對抗學院,合肥 230031)
隨著互聯(lián)網(wǎng)的快速發(fā)展以及網(wǎng)絡(luò)的廣泛應(yīng)用,產(chǎn)生的信息呈爆炸式地增長,讓人們無法在海量數(shù)據(jù)中快速有效地找到準確的知識.如何從海量信息中準確高效地找到用戶所需要的信息成為目前的研究熱點,因此,信息抽取技術(shù)受到學術(shù)界與工業(yè)界的廣泛關(guān)注.信息抽取技術(shù)作為自然語言處理的研究重點與熱點.它的研究熱點主要包括實體抽取、關(guān)系抽取和事件抽取.其中的關(guān)系抽取則是作為其核心任務(wù).關(guān)系抽取主要解決的問題是從非結(jié)構(gòu)化的文本語句中自動抽取實體間的語義關(guān)系,并形成統(tǒng)一格式的結(jié)構(gòu)化信息.具體而言,就是預先給定語句和候選實體,關(guān)系抽取模型則需要依靠自身的特征提取能力來預測實體之間存在可能的語義關(guān)系.關(guān)系抽取處理海量數(shù)據(jù)有很強的優(yōu)勢,因此其在機器翻譯、知識圖譜的構(gòu)建、問答系統(tǒng)以及智能搜索等應(yīng)用中具有很大的研究價值.
實體關(guān)系抽取是自然語言處理的重要課題之一.隨著知識圖譜的發(fā)展,實體關(guān)系抽取已經(jīng)逐漸深入到其中,并發(fā)揮相當重要的作用.就目前而言,實體關(guān)系抽取算法主要分為3 類:一是基于模板特征匹配的關(guān)系抽取算法;二是基于特征的關(guān)系抽取算法;三是基于神經(jīng)網(wǎng)絡(luò)的關(guān)系抽取算法.基于模式的關(guān)系抽取是通過預先設(shè)定規(guī)則和語法或語義模式,將其與文本進行匹配,從而實現(xiàn)關(guān)系實例的抽取.該算法在小規(guī)模數(shù)據(jù)集上容易實現(xiàn)同時構(gòu)建較簡單,并且能夠達到較高的準確率,但是它所耗費的人工成本相當高,可移植性相當差,而且這種算法很難定義文本中所有的關(guān)系模板,因此也進而導致相對較低的召回率.
基于特征的關(guān)系抽取,它主要依賴于上下文的各種詞匯、句法以及語義信息等.具體而言,給出相應(yīng)的訓練樣本,然后通過詞匯、句法和語義分析等對訓練語料進行特征提取,再將提取的特征結(jié)果輸入到分類器當中進行關(guān)系分類,從而完成關(guān)系抽取.該算法的實質(zhì)是將關(guān)系抽取看成是一個多分類問題,通過構(gòu)建一個分類器類進行實體關(guān)系抽取.該算法同樣是嚴重依賴人工選擇的特征,如果這些特征能夠為關(guān)系抽取提供有用的信息,那么算法性能就會有很大的提升;但是若這些特征無法給出相應(yīng)的有用信息,它們就會嚴重影響關(guān)系抽取的性能,尤其當訓練樣本的增多時,這些特征反而會帶來嚴重的噪聲影響,從而使得關(guān)系抽取的性能變得極其之差
傳統(tǒng)的關(guān)系抽取算法需要消耗大量的人力去設(shè)計特征,對于大規(guī)模的抽取任務(wù)而言,人工設(shè)計的特征作用并不大,最重要的是語句中的一些隱性特征很難進行定義,因而傳統(tǒng)算法難以勝任大規(guī)模的關(guān)系抽取任務(wù).而基于神經(jīng)網(wǎng)絡(luò)的關(guān)系抽取算法,它不再依賴于手工設(shè)計的特征,而是能夠自動學習出有效的特征.這種方法可以在不使用自然語言處理工具的情況下,在多種自然語言處理任務(wù)能夠取得更優(yōu)良的性能.近幾年來,神經(jīng)網(wǎng)絡(luò)模型已經(jīng)成為了關(guān)系抽取任務(wù)中的重要方法.
Socher 等[1]采用遞歸神經(jīng)網(wǎng)絡(luò)模型,使用矩陣向量表征分析樹的各個節(jié)點,從而提取句子中重要的語義信息,但是同時因為借助了自然語言處理工具,容易引起錯誤傳播問題.為了更加準確地捕捉句子的語義,Zhang和Wang[2]在2015年采用雙向循環(huán)網(wǎng)絡(luò)(BRNN)來對句子進行建模,學習其中的語義信息.雙向的RNN可以從前向和后向獲取句子的信息,但是由于RNN 存在梯度消失和梯度爆炸問題,胡新辰等[3]采用雙向長短期記憶網(wǎng)絡(luò)(BiLSTM)來實現(xiàn)對句子特征的提取,同時又借助傳統(tǒng)的詞匯與句子特征來進行關(guān)系抽取.羅計根等[4]提出一種融合梯度提升樹的BiLSTM 模型,在中醫(yī)領(lǐng)域上實現(xiàn)了關(guān)系抽取,并取得相當不錯的效果.近期注意力機制[5]在各大領(lǐng)域上有了比較成功的應(yīng)用.Zhou 等[6]在2016年就在雙向長短期記憶網(wǎng)絡(luò)(BiLSTM)的基礎(chǔ)上加入注意力機制,并且在關(guān)系抽取任務(wù)上取得了更優(yōu)良的性能.周文燁等[7]則是融合了多層注意力機制與雙向長短期記憶網(wǎng)絡(luò)進行語義關(guān)系抽取,取得一定的效果.李衛(wèi)疆等[8]在ATT-BiLSTM模型基礎(chǔ)上引入多種外部特征來進行關(guān)系分類.朱姍姍和唐慧豐[9]則是把ATT-BiLSTM 模型應(yīng)用到軍事領(lǐng)域上,同時結(jié)合詞性特征,在軍事類實體關(guān)系上取得較好的F1值.
卷積神經(jīng)網(wǎng)絡(luò)在關(guān)系抽取上也有長足的應(yīng)用.Zeng[10]采用卷積神經(jīng)網(wǎng)絡(luò)模型,再結(jié)合詞向量以及位置特征,此算法無需提取復雜的特征就取得超越傳統(tǒng)方法的性能.隨后,Zeng 等[11]又基于實體位置信息,提出了分段池化的思想,根據(jù)實體位置將池化的向量分為3 段,然后各取這3 段的最大值進行拼接.dos Santos 等[12]提出分段排序結(jié)構(gòu)來取代Softmax 分類層器,它有效地提高了不同實體類型的區(qū)分度,并且取得了相當好的效果.Mou 等[13]和劉偉等[14]則利用樹形結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)進行關(guān)系抽并且取得很好的效果.Lin 等[15]改進卷積神經(jīng)網(wǎng)絡(luò)模型,在此基礎(chǔ)上加入了注意力機制,解決了實體相對應(yīng)的句子噪音問題,該模型可以使用有效的句子學習,因而使得關(guān)系抽取性能進一步提高.Bing 等[16]通過深度卷積神經(jīng)網(wǎng)絡(luò)模型提取句子的低級和高級特征,在NYT 數(shù)據(jù)集上取得較高的F1 值.Liu 等[17]利用循環(huán)神經(jīng)網(wǎng)絡(luò)對依存句法樹進行建模,然后又利用卷積網(wǎng)絡(luò)對語句的最短依存路徑進行建模,統(tǒng)一將兩者的語法分析結(jié)果添加到深度學習框架中.張曉斌等[18]則是利用卷積網(wǎng)絡(luò)和循環(huán)網(wǎng)絡(luò)兩者各自的優(yōu)點,彌補相應(yīng)的不足,在此基礎(chǔ)上提出了一種結(jié)合CNN和LSTM的實體關(guān)系抽取算法,該算法取得了一定的效果.李孟穎等[19]利用CNN-BiLSTM 聯(lián)合模型在微生物生長環(huán)境領(lǐng)域上進行關(guān)系抽取,并取得了相當不錯的效果.Li 等[20]提出一種預訓練CNN 模型來探索語義關(guān)系抽取并實現(xiàn)了較高的性能.
綜上所述,前兩者方法嚴重依賴人工特征,而構(gòu)建這些特征耗時耗力;對于現(xiàn)有的神經(jīng)網(wǎng)絡(luò)模型而言,根據(jù)Tang 等[21]的研究表明,相較于Transformer,神經(jīng)網(wǎng)絡(luò)的綜合特征提取能力有限以及語義表征能力較差,因而導致整個網(wǎng)絡(luò)模型無法獲取豐富的語義信息特征,因此在實體關(guān)系抽取上已經(jīng)很難再有所突破性進展.而近期的BERT (Bidirectional Encoder Representations from Transformers)[22]模型在NLP 領(lǐng)域取得重大突破,憑借其獨特的網(wǎng)絡(luò)結(jié)構(gòu)在多個研究方向得到成功應(yīng)用,同時在關(guān)系抽取上也存在相應(yīng)的應(yīng)用.Wu 等[23]和Giorgio 等[24]利用BERT 模型實現(xiàn)過英文關(guān)系抽取,并取得相當不錯的效果,甚至優(yōu)于當前的深度學習網(wǎng)絡(luò)模型.因此本文就引入BERT 模型來進行中文實體關(guān)系抽取.本文的主要貢獻如下:
(1)在中文實體關(guān)系抽取任務(wù)上,大多數(shù)算法主要集中在循環(huán)神經(jīng)網(wǎng)絡(luò)模型和卷積神經(jīng)網(wǎng)絡(luò)模型等.而本文所采用的模型不同于之前的神經(jīng)網(wǎng)絡(luò)模型,本文則是使用了BERT 預訓練模型來實現(xiàn)中文關(guān)系抽取任務(wù);
(2)在進行中文實體關(guān)系抽取時添加了多種外部特征:關(guān)鍵詞、實體類型和實體對信息.這些特征能夠在詞匯和句法上體現(xiàn)出整個語句一定的語義信息,從而利用這種優(yōu)勢進一步來加強BERT 模型的語義特征提取能力,因此可以進一步提高中文實體關(guān)系抽取性能.
本文是基于BERT 預訓練模型來實現(xiàn)中文關(guān)系抽取任務(wù)的.其整個訓練過程如圖1所示,主要工作如下:
① 語料預處理,構(gòu)造語料特征(本文采用的外部特征有關(guān)鍵詞、實體類型和實體對信息);
② 建立相關(guān)的網(wǎng)絡(luò)模型(本文采用的是BERT 模型),其輸入是①中所處理的數(shù)據(jù),并獲取其相關(guān)的分布式詞向量特征;
③ 將得到的各種外部特征向量進行拼接融合,通過全連接層得到最終的向量表征;
④ 采用Softmax 分類器,對最后的實驗結(jié)果進行關(guān)系分類.
本文的模型最大優(yōu)勢就在于不需要提前進行額外的字向量或是詞向量訓練,只要把語句直接輸入到BERT 預訓練模型中即可,該模型會自動將訓練出帶有較豐富語義的特征向量,然后直接利用該特征向量進行關(guān)系抽取.
圖1 基于BERT 模型的中文實體關(guān)系抽取流程
2.1.1 數(shù)據(jù)預處理
數(shù)據(jù)預處理的主要目的是獲取高質(zhì)量的訓練數(shù)據(jù),其過程主要包括兩個方面:數(shù)據(jù)的整理標注以及外部特征的提取融合.數(shù)據(jù)的整理標注主要是處理成模型訓練所需要的語料格式,而外部特征的提取融合則是整個數(shù)據(jù)預處理的重點所在,下面依次對外部特征的提取和融合進行細致分析.
2.1.2 外部特征的提取
在中文實體關(guān)系抽取當中,不同于英文實體關(guān)系抽取,中文實體關(guān)系抽取具有不同的語法結(jié)構(gòu),尤其是在特定的領(lǐng)域中,中文更是具有獨特的語法結(jié)構(gòu),因此為進一步改善中文實體關(guān)系抽取的性能,本文將選取關(guān)鍵詞、實體類型和實體對信息作為外部特征.
(1)關(guān)鍵詞
在進行關(guān)系抽取這個分類任務(wù)時,引入關(guān)鍵詞對提高抽取性能具有一定輔助作用.提取出來的關(guān)鍵詞大都是有很高的區(qū)分度,甚至可以增強語義信息,因此關(guān)鍵詞特征與抽取的關(guān)系相關(guān)性越高,那么對關(guān)系抽取的性能提高就越大.關(guān)鍵詞作為一個顯式特征,它可以從另一個方面能夠彌補BERT 模型訓練得到的特征的不足之處.例如,“天安門是北京市的一處旅游景點”,通過提取關(guān)鍵詞可以得到“旅游景點”,由此可以預測出關(guān)系可能是“地理位置關(guān)系”.因此提取一些類別關(guān)鍵詞更有利于關(guān)系抽取.對于任一個語句X而言,提取其中的關(guān)鍵詞后輸入到BERT 模型中進行向量表征.如果ki表示為第i個關(guān)鍵詞的特征向量,那么所有關(guān)鍵詞的特征向量則為K=[k1,···,kn].
(2)實體類型
實體類型是作為一種淺層的語義特征,它主要為實體標注一些特定的語義角色.實體類型通常在于淺層語義的理解,而對于語句的深層語義特征不進行分析.在實際應(yīng)用過程中,淺層語義特征往往也顯得非常重要,甚至能學習到更多的語義信息.對于關(guān)系兩邊的實體類型,經(jīng)常是實體對的約束條件.例如,指定一個關(guān)系“出生地”,則可以知道主體的實體類型屬于“人物”,而客體的實體類型是“地點”.在此模型中,本文把語料中的候選實體替換為相應(yīng)的實體類型,然后再將整個語句輸入到BERT 模型中進行學習,從而提取語義特征.
(3)實體對信息
對于限定關(guān)系抽取而言,實體對是作為一種約束信息.例如給定“馬云”和“淘寶”,通過模型訓練后,可以大概率將“出生地”或是“所在城市”等一些與之相關(guān)性不高的關(guān)系排除掉.因此它在一定程度上是可以得到相應(yīng)的語義信息,從而能夠幫助判斷實體關(guān)系類型.將實體對信息輸入到模型訓練中,可以得到其特征向量:T=[t1,t2],其中t表示實體向量.
2.1.3 特征融合
在實現(xiàn)對外部特征的提取后,需要將所提取的特征進一步地拼接融合,使得外部特征能夠顯示地表達出來,從而利用其所表現(xiàn)出來的語義特征來強化模型訓練,使模型輸出特征向量能夠盡可能地表達出更多的語義信息,進而提升中文實體關(guān)系抽取效果.具體特征融合過程如圖2所示.
對于任意語句X=[x1,x2,···,xv],在數(shù)據(jù)處理階段時將其中的候選實體用相應(yīng)的實體類型進行替換后,得到一個新的語句表示:
在X′當中,其可以理解為把實體類型添加到語句當中,通過替換實則是將不同實體之間的關(guān)系轉(zhuǎn)為兩種實體類型之間的關(guān)系,同時實體類型本身就帶有一定的語義信息,這兩者的共同作用降低了噪聲的干擾.隨后將X′輸入至模型訓練,提取語句的語義特征,經(jīng)過訓練后其語句的向量表征形式如下公式:
其次通過自然語言處理工具對整個語句X的關(guān)鍵詞進行提取.關(guān)鍵詞是對語句內(nèi)容的一個整體性概括,關(guān)鍵詞排序越靠前的對語句的影響力就越大.關(guān)鍵詞最主要的作用就是提取語句中語義較豐富的特征詞,進而降低無關(guān)的信息對關(guān)系抽取的影響,因此把提取出來的關(guān)鍵詞按序進行排列.關(guān)鍵詞排序靠前的優(yōu)先作為外部特征的輸入.同時為了盡可能地豐富句子的語義,本文選取排序前20%的關(guān)鍵詞,而后續(xù)的關(guān)鍵詞已經(jīng)很難體現(xiàn)句子的語義信息,甚至可能會帶來額外的噪聲影響,從而使得關(guān)系抽取性能變差.在此用gi表示提取的第i個關(guān)鍵詞,經(jīng)過訓練后的關(guān)鍵詞的向量表征形式如下:
圖2 特征融合
對于實體對信息而言,實體對是作為一種對關(guān)系的約束信息,同時能夠間接反映出實體所在的位置信息,對提高關(guān)系抽取性能很有幫助.而對于關(guān)系抽取而言,能夠利用各種信息加強對語義的理解都是可以作為一種有效的外部特征進行輸入.在數(shù)據(jù)的處理過程中,實體對分為頭實體和尾實體,在此分別用s和o來表示,那么訓練后的實體特征向量表示為如下:
三者訓練過后得到了相應(yīng)的特征向量,緊接著就是將三者的特征融合在一起.特征融合主要有兩種方式:特征拼接和加權(quán)求和.兩種融合方式具體如圖3所示.
圖3 特征融合方式對比
從圖3可以看出,兩種特征融合方式都是可行的,但兩種方式各有所長.對于加權(quán)求和的特征融合方式,其優(yōu)點在將三者向量的一些關(guān)鍵信息融入到一起,降低了向量的維度,便于計算,但是其缺點是在加權(quán)的過程中容易造成某些關(guān)鍵的語義信息的缺失.而對于特征拼接而言,它把所有的向量都拼接在同一個向量中,雖然使得向量維度提高了,但它保留了最原始的語義信息特征,尤其對于關(guān)系抽取任務(wù)而言,它更加注重對整個語句的理解程度,因此從理論上來說,盡可能地保留更多的語義信息是有助于提高關(guān)系抽取的性能.因此本文就采用特征拼接的融合方式,而非所有特征加權(quán)求和,所以外部特征融合的向量表示如下:
圖2中的右邊展示的是無任何外部特征的加入,其訓練出來的語句向量表示為如下:
從上述可以看出特征向量H主要包括兩種類型的向量:語句向量E1′和外部特征向量,前者又含有實體類型特征,后者則是包含關(guān)鍵詞和實體對信息的特征向量K、T.整體而言,本文將所選外部特征融合到一個向量表征中.而圖中右邊表示的是把原始語料輸入到模型之中進行訓練,得到只是一個單純的語句向量E1.因此兩者對比分析可以得到,本文輸出向量融合了外部特征向量,彌補了自動學習特征的不足,因而能夠表征出更多的語義信息.
在處理自然語言過程中,詞向量是一種相當重要的表征形式.目前而言,先進的詞向量是一種分布式的表征形式,它是通過用一個低維的實數(shù)向量來表征一個詞語.這樣的詞向量包含豐富的句法和語義信息特征.詞向量是通過對大量的無標注文檔訓練而得到的.在本文中,采用BERT 模型來訓練詞向量,不同于以往的靜態(tài)詞向量,前者能夠在不同的語境下表征不同的語義,因此這樣的詞向量更加體現(xiàn)出強大的語義表征能力.其訓練過程主要分兩步進行的:一是對輸入語句的預處理,二是通過基于雙向Transformer的網(wǎng)絡(luò)結(jié)構(gòu)進行訓練.
本文詞向量的具體訓練工作如下:
給定一個句子X=[x1,x2,···,xv],則可以表示為一個向量矩陣E=RV×dm,其中V是句子中詞語的個數(shù),dm是詞向量維度.
該句子X經(jīng)過數(shù)據(jù)預處理,將所得到的特征聯(lián)合拼接得到語句X',X就作為BERT 模型的輸入進行預訓練,其中句向量和外部特征向量的表征過程如圖4所示.
圖4 向量表征
從圖4來看,BERT 模型的整體框架是由12 層Transformer 搭建而成,但是在具體的訓練過程需要按照實際的需求來確定Transformer 層數(shù),以此來達到最佳的訓練效果.從理論上分析,數(shù)據(jù)量較大時,Transformer層數(shù)可以選取較大的值,因此在訓練過程中可以獲取更加深層次的語義信息;數(shù)據(jù)量較小時,Transformer 層數(shù)可以選取較小的值,因為數(shù)據(jù)量小,即使設(shè)置選取較大的值也很難獲取其中深層次的語義信息,反而容易導致“過學習”的狀態(tài),使得訓練無法收斂,從而導致關(guān)系抽取的性能下降.從本文所選取的數(shù)據(jù)以及后期的實驗結(jié)果來看,Transformer 層數(shù)應(yīng)該設(shè)置2 或3是最為合適的.
在經(jīng)過BERT 模型的預訓練后,得到句子向量E'、關(guān)鍵詞向量K以及實體對向量T,隨后通過激活函數(shù),其具體表示如下:
緊接著通過全連接層將所有的向量拼接在一起,其表示如下:
最后經(jīng)由激活函數(shù)激活得到最終的輸出向量:
其中,W是權(quán)重矩陣,b是偏置向量.實驗過程中融合了多種外部特征,使得訓練出來的語句表征向量含有實體類型特征、關(guān)鍵詞特征以及實體對信息特征,而這些外部特征能夠更加便于整個模型理解句子的語義,從而更有利于解決關(guān)系抽取問題.
在得到BERT 預訓練模型輸出的組合特征向量后,將其輸入到全連接層,獲得一個含有豐富語義的向量H,隨后開始進行關(guān)系分類.本文采取的是Softmax 分類器.該分類器的主要作用是對最后的結(jié)果進行歸一化處理,從而可以得到一組概率值,通過判斷概率的大小來進行關(guān)系分類.向量H通過Softmax 分類器第i種關(guān)系的條件概率如下:
在訓練過程中目標函數(shù)采用的是交叉熵損失函數(shù).交叉熵是用來衡量多種分布之間的相似性,因此也可以判斷網(wǎng)絡(luò)結(jié)構(gòu)實際的輸出與期望的輸出的接近程度.其目標函數(shù)loss計算如下:
其中,y,y′分別表示為真實值和預測值,M為樣本,n為樣本數(shù)量.模型優(yōu)化過程中采用隨機梯度下降法,模型參數(shù)的更新則采用反向傳播的方法進行調(diào)整,計算過程如下:
其中,λ表示學習速率.
本文主要采用人工標注的中文數(shù)據(jù)集進行了相應(yīng)的實驗,實驗過程主要分為以下兩組:
(1)在BERT 模型上依次添加外部特征,驗證外部特征是否能夠有效地強化BERT 模型的學習能力;
(2)對比基于ATT-BiLSTM和CNN 模型的經(jīng)典方法,驗證BERT 模型是否能夠達到預期效果.
本文采用的數(shù)據(jù)集是來源浙大知識引擎實驗室人工標注的中文數(shù)據(jù)集.該數(shù)據(jù)集主要分為訓練集和測試集,其中訓練數(shù)據(jù)集總共包含4000 條語句實例,測試集總共包含1000 條語句實例.該數(shù)據(jù)集的關(guān)系類型主要限定于以下10 種,具體如表1所示,部分語料樣本如圖5所示.
表1 候選實體關(guān)系類型
圖5 部分語料展示
對于實驗結(jié)果評測,本文采用官方數(shù)據(jù)集中的macroaveragedF1 進行評價模型性能.macro-averagedF1的計算具體過程如下所示:
因此得到macro-averagedF1 值的公式如下所示:
實驗超參數(shù)設(shè)置主要是為了使模型達到最佳性能.實驗過程中為防止模型出現(xiàn)過擬合現(xiàn)象,訓練過程中引入了dropout 策略.此外,模型采用Adam 優(yōu)化器進行優(yōu)化.本文實驗在參數(shù)設(shè)置過程中發(fā)現(xiàn)Learn_rate與Num_hidden_layers 這兩個參數(shù)對實驗影響是最大的.為取得實驗最佳效果,多次對這兩個參數(shù)進行微調(diào),最終確定以下結(jié)果.具體超參數(shù)設(shè)置如表2所示.
表2 超參數(shù)設(shè)置
本文為驗證所選特征的有效性以及對比經(jīng)典神經(jīng)網(wǎng)絡(luò)模型方法,主要做了以下兩組實驗,其中KW、EI、ET 分別代表關(guān)鍵詞、實體對信息和實體類型.衡量指標采用macro-averageF1 進行評價(以下的F1 均表示為macro-averageF1 值).
(1)實驗一.驗證特征的有效性
本文模型為提取更多的語義特征,引入了關(guān)鍵詞(KW)、實體對信息(EI)和實體類型(ET)三種特征.本文在中文數(shù)據(jù)集上做了相應(yīng)的實驗來驗證這3 種特征的有效性.實驗結(jié)果如圖6和表3所示.
圖6 關(guān)鍵詞個數(shù)的影響
圖6展示了關(guān)鍵詞個數(shù)對模型性能的影響.從圖中可以看出,關(guān)鍵詞個數(shù)是對模型性能有影響的.起初,關(guān)鍵詞個數(shù)遞增,F1 也隨之上升,但是到達一定程度后,伴隨著關(guān)鍵詞個數(shù)的增加,F1 反而逐漸下降.在整個實驗過程中,當關(guān)鍵詞個數(shù)為2 至4 個,實驗效果表現(xiàn)最佳.從這可以看出,選取適量的關(guān)鍵詞,尤其是能夠體現(xiàn)出句子語義信息的關(guān)鍵詞,對模型性能是有提升的;但是當選取的關(guān)鍵詞增多時,由于其中開始出現(xiàn)一些不相關(guān)的詞匯,而它們將會給關(guān)系抽取任務(wù)帶來額外的噪聲影響,從而使得模型性能下降.
表3 特征對BERT 模型的影響(%)
本文選取無任何外部特征加入的BERT 模型作為基準模型.然后在該模型基礎(chǔ)上依次加入外部特征.從上述表3數(shù)據(jù)結(jié)果可以明顯地看出,所選取的這三種外部特征是能夠幫助關(guān)系分類的.其中,加入關(guān)鍵詞后,F1 提升了0.82%;再加入實體對信息,由于實體對信息對所屬關(guān)系具有一定的約束性,同時其能夠間接體現(xiàn)出實體的位置特征,因而使得模型性能提高了5.35%;最后加入實體類型,其是屬于淺層語法信息,能夠提取較為豐富的語義信息,因此模型性能得到了4.28%的提升.從上述分析可以得到,所選的外部特征能夠強化BERT 模型的學習能力.實體對信息和實體類型特征對性能提升效果明顯,而關(guān)鍵詞相較次之.
(2)實驗二.與其他模型的對比實驗
為了對比不同方法在關(guān)系抽取任務(wù)上的實驗效果,而ATT-BiLSTM和CNN 模型常用于在關(guān)系抽取中,詞向量特征(WV)與位置特征(PF)是作為神經(jīng)網(wǎng)絡(luò)模型的固定特征.因此本文主要利用了這兩種經(jīng)典的神經(jīng)網(wǎng)絡(luò)模型和本文模型在同一數(shù)據(jù)上進行測試比較.測試結(jié)果如表4和圖7所示.
表4 不同模型的實驗對比(%)
通過表4可分析:
(1)ATT-BiLSTM 模型是一種最經(jīng)典的關(guān)系抽取模型,其優(yōu)勢主要在于其雙向結(jié)構(gòu),能夠獲取上下文信息,獲取整個語句的全局序列信息,因此在處理長距離依賴問題具有其他神經(jīng)網(wǎng)絡(luò)無可比擬的優(yōu)勢,同時結(jié)合注意力機制,又融合詞向量與位置特征,在該數(shù)據(jù)集上取得84.83%的F1 值.然而該模型對于局部特征的重點語義信息很難捕捉到,且提取特征能力相對較差(相較于BERT的Transformer 結(jié)構(gòu)),因此在中文關(guān)系抽取上該模型性能并不占優(yōu).
(2)CNN 模型相較于ATT-BiLSTM 模型,它更善于提取句子的局部語義特征,同時結(jié)合詞向量與位置特征在本文中文數(shù)據(jù)集上達到了92.13%的F1 值,實驗結(jié)果表明,相對于ATT-BiLSTM 模型而言,CNN 模型在關(guān)系抽取任務(wù)效果更好.但是CNN 過于注重局部信息而忽視了整體全局特征信息的重要性,因此CNN模型在全局特征的應(yīng)用和表征是有所欠缺的.
(3)BERT 預訓練模型不同于BiLSTM和CNN 神經(jīng)網(wǎng)絡(luò),BERT 模型采用一種全新的Transformer 結(jié)構(gòu),它是基于注意力機制構(gòu)建的網(wǎng)絡(luò),該網(wǎng)絡(luò)把關(guān)注的重點放在每個句子中任意兩個詞之間的關(guān)聯(lián)程度,這樣的處理既可以獲取整個全局信息,同時又重點考慮了局部特征,可以說該模型在很大程度上綜合這兩種神經(jīng)網(wǎng)絡(luò)模型的優(yōu)勢.為了對比這3 種模型的性能,在不加任何外部特征的情況下對比其實驗效果.正如表4所示,BERT 模型取得87.05%的F1 值,遠高于ATTBiLSTM 模型和CNN 模型.因此也證實了BERT 模型在特征提取能力強于這兩者經(jīng)典神經(jīng)網(wǎng)絡(luò)模型.
對于關(guān)系抽取而言,該問題的解決在很大程度上在于模型對整個文本的理解程度.因此為了使得模型更好地學習到數(shù)據(jù)的語義特征,本文在BERT 模型的基礎(chǔ)上融合了多種外部特征,減少了一些關(guān)鍵信息特征的丟失,從而讓模型更利于關(guān)系抽取.從實驗結(jié)果來看,加入外部特征是有效可行的,這也表明了融合外部特征是可以進一步加強BERT 模型的語義學習能力.與其他模型相比較,本文提出的模型具有相當明顯的優(yōu)勢.
圖7展示的是上述模型在前20 輪訓練的F1 更新狀況.從圖中可以看出,在訓練初期時,兩種神經(jīng)網(wǎng)絡(luò)就處于一個比較低的水平,只有在多次迭代訓練后,性能才不斷往上升;而對于BERT 模型,一開始就保持相當高的水平,并且能夠穩(wěn)定保持,同時也能看到本文模型的F1 值始終處于BiLSTM和CNN 神經(jīng)網(wǎng)絡(luò)模型之上,這也就意味著BERT 模型的性能穩(wěn)定性優(yōu)于ATT-BiLSTM 模型和CNN 模型.
圖7 F1的更新情況
本文主要探討了BERT 預訓練模型在中文實體關(guān)系抽取的應(yīng)用.BERT 模型通過它特有的結(jié)構(gòu)能夠更好地學習到有效的語義特征,并在此基礎(chǔ)上融合了關(guān)鍵詞、實體信息以及實體類型三大外部特征,彌補了自動提取特征的不足,又最大限度地降低了關(guān)鍵信息的損失,因此使模型學習到更多額外的語義特征,從而提升了關(guān)系抽取的性能.本文對數(shù)據(jù)稀疏和不均衡問題沒有做過多的研究和分析,因此下一步需研究數(shù)據(jù)稀疏和不均衡問題對該模型的影響.