?

基于森林的實體關系聯合抽取模型

2023-09-27 06:31王炫力靳小龍侯中妮廖華明
計算機應用 2023年9期
關鍵詞:三元組嵌套跨度

王炫力,靳小龍*,侯中妮,廖華明,張 瑾

(1.中國科學院網絡數據科學與技術重點實驗室(中國科學院計算技術研究所),北京 100190;2.中國科學院大學,北京 100049)

0 引言

從非結構化文本中抽取實體、關系信息是自動化構建知識圖譜的必要步驟。傳統流水線方法采用分離的兩個模型提取實體,然后對候選實體對的關系類型進行分類;但這類模型忽略了兩個任務間的交互信息,容易發生級聯誤差。近年來,研究者們開始探索建立實體關系聯合抽取模型。實體關系聯合抽取模型可以有效利用實體、關系間的交互信息來預測出文本存在的三元組,從而取得更好的表現;但是,嵌套實體識別仍是實體關系聯合抽取的一個重要問題。

嵌套實體是實體內部存在其他實體的場景。而在三元組中,則存在兩種情況:嵌套實體間三元組和嵌套實體內三元組,具體如表1 所示。

表1 嵌套實體Tab.1 Nested entities

早期的實體關系聯合抽取方法采用序列標注方法[1],但該類方法無法識別嵌套實體。而現在的實體關系聯合抽取模型常使用基于序列標注的方法[2]和基于跨度的方法[3-5]處理嵌套實體?;谛蛄袠俗⒌姆椒ǎ?]對原始的序列標注方法[1]進行改進,通過對序列到序列的矩陣進行多次序列標注判斷對應的兩個詞間是否組成實體、是否存在某種關系?;诳缍鹊姆椒ǎ?-5]通過枚舉所有可能的跨度并對其分類,得到實體,再枚舉所有可能的實體對并進行關系分類,獲得關系三元組。前者以更高的復雜度為代價識別嵌套實體,而后者則通過枚舉所有可能的跨度識別嵌套實體,需要通過大量的負采樣學習識別嵌套實體的能力,兩者均無法在不增加時間或空間復雜度的前提下識別嵌套實體。此外,這兩類方法均未考慮嵌套實體對三元組預測的干擾。

針對上述問題,本文提出了基于森林的實體關系聯合抽取模型——EF2LTF(Entity Forest to Layering Triple Forest)。采用兩階段單步的聯合訓練框架,分別處理實體抽取和三元組生成。在實體抽取部分,EF2LTF 先識別實體頭部,即實體森林中每棵實體樹的根節點;再從每個根節點出發依次判斷之后的詞是否會分支出新的嵌套實體,該樹是否依然繼續,直至該實體樹中所有實體均已抵達實體尾部,形成實體樹。多棵實體樹組成實體森林。在預測時,EF2LTF 可從實體森林中解析出句中所有實體。在三元組生成部分,EF2LTF 則通過實體樹交互獲得多個實體樹的信息,再由該信息分層地生成三元組森林。依次選擇包含頭實體的實體樹,再在實體樹內部選擇頭實體,由頭實體判斷其所參與的關系類別,依據頭實體和對應的關系,再分層地選擇尾實體。一方面,這種森林的方式可以高效地識別嵌套實體,無需進行過多的負采樣,也沒有額外增加時間、空間復雜度;另一方面,EF2LTF在實體抽取和三元組生成部分均采用分層預測的方式,即在嵌套實體內部區分嵌套實體,這增強了對嵌套實體的識別能力,也使得模型免于嵌套實體對三元組預測的干擾。

本文還在四個公開數據集:網絡自然語言生成(Web Natural Language Generation,WebNLG)數據集[6]、紐約時報(New York Times,NYT)數據集[7]、科技類實體關系共指簇(Scientific Entities,their Relations,and Coreference clusters,SciERC)數據集[8]和2005 自動內容提?。?005 Automatic Content Extraction,ACE2005)數據集[9]上評估了EF2LTF。實驗結果表明,EF2LTF 優于對比工作,并且在標準數據集上取得了較好的效果。進一步的分析表明,EF2LTF 能夠更好地在實體關系聯合抽取中識別嵌套實體。

1 相關研究

傳統流水線處理實體關系抽取的方法將實體抽取和關系抽取兩個相關的任務完全分離,未考慮實體、關系間的交互信息[10]。為此,研究者們提出了實體關系聯合抽取的方法[1],它的效果顯著優于多數流水線的工作,但卻完全忽略了嵌套實體?;诳缍阮A測的方法,如基于集合預測網絡的SPN(Set Prediction Network)[11]模型,在預測實體關系三元組時,分別預測實體頭部所在位置、實體尾部所在位置,在結構上可以無障礙地預測嵌套實體,但在三元組預測時處理嵌套實體的能力尚有待探討。

多數數據集中普遍存在嵌套實體。NYT[7]、WebNLG[6]、SciERC[8]和ACE2005[9]數據集的所有實體中存在嵌套實體比率如表2 所示,因此嵌套實體是實體關系聯合抽取任務中需要考慮的重要問題。而多數嵌套實體關系聯合抽取的方法來自于嵌套實體抽取。因此,本文首先對嵌套實體抽取和嵌套實體關系聯合抽取兩個任務進行介紹。

表2 數據集統計信息Tab.2 Statistics of datasets

1.1 嵌套實體抽取

嵌套實體抽取是能夠處理嵌套實體的實體抽取方法。主要分為修改序列標注框架和探索新的框架兩種解決方案。

修改標注方式的方法包括擴充標簽[12]和拼接標簽[13]兩類。擴充標簽的方法[12]將序列標注的標簽為BIO(Begin,Inside,Outside)的標簽體系新增BH(Begin Head)、BI(Begin Inside)等標簽,以求標注嵌套實體;但這種標注體系的擴充嚴重依賴于數據集,不僅泛化性較低,而且還存在歧義。拼接標簽的方法[13]則將原有的標簽拼接組合成新的標簽,從而達成在同一位置標注嵌套實體的目的;但該方法導致標簽數成指數增加,單個標簽標注稀疏,難以訓練。

分層序列標注[14]從嵌套實體最內層實體到最外層實體依次使用不同的序列標注預測,利用了嵌套實體內的信息傳遞。嵌套實體抽取模型NNE(Nested Named Entity recognition)[15]先序列標注嵌套實體的外層實體,再標注內層,解碼時通過維特比算法,同時考慮最優解碼路線與次優路線上的實體,從而避免最大實體數量或長度的限制;但次優路線并不一定能夠解碼出下一層實體,它與最優路線重疊度較高,仍受到影響。LogSumExpDecoder[16]在每一層的序列標注中使用不同的勢函數,以此屏蔽其他層的最優路線的影響。分層序列標注的模型預測的實體會受到錯誤信息傳遞的影響;并且,不同數據集中嵌套實體的層數不同,也會限制模型的泛化性能。

序列標注框架天然無法處理嵌套實體,需要以犧牲時間、空間復雜度為代價解決嵌套實體問題;因此學者們開始探索新的框架,主要包括基于跨度的框架和生成式的框架。

基于跨度的框架包括枚舉跨度的模型和跨度預測的模型。枚舉跨度的模型[17]枚舉所有可能的跨度,進行實體類別預測:預測若為無實體則過濾,預測若為實體類別則輸出該實體。這類模型通常需要進行大量的負采樣以支撐訓練??缍阮A測的模型是對每種實體類型單獨標記出實體的首尾位置信息,即跨度。閱讀理解式嵌套實體抽取模型MRC4NNE(Machine Reading Comprehension for Nested Named Entity recognition)[18]以閱讀理解的形式對實體類型提問,回答對應的實體跨度。使用頭尾連接器的嵌套實體識別模 型HTLinker(Head-to-Tail Linker for nested named entity recognition)[19]先預測出實體頭部,再依據實體頭部和實體類型分別預測實體尾部,從而獲得嵌套實體。

生成式的框架主要包括序列生成實體序列、序列生成實體集合和超圖的模型。序列生成實體序列的模型[20]通過拷貝機制依次生成實體1 的頭部、實體1 的尾部、實體2 的頭部等。該模型認為實體之間存在次序,先預測的實體可以輔助后預測的實體的生成,但也因此造成了嚴重的誤差傳遞。序列生成實體集合的模型[21]和SPN[11]一樣,通過去除位置編碼和引入二部圖匹配的方式,生成實體集合,但仍受限于固定的生成實體數。超圖的模型[22]則將前述分層序列標注的多層序列標注中相同的標簽合并,形成一張超圖,并通過循環神經網絡(Recurrent Neural Network,RNN)的狀態轉移從輸入文本序列起始位置依次預測各詞的實體類別標簽,如果預測結果有多個則分支,遇到無實體(O)標簽則合并,最終預測得到所有嵌套實體。該模型不受生成序列長度、嵌套層數的限制,但在實體前后均存在標記為O 的節點與嚴重的傳遞誤差。

這些嵌套實體模型通常需要以時間、空間復雜度為代價或需要大量負采樣的支撐來處理嵌套實體。超圖的模型[22]相比而言負例少、時間空間復雜度低,但存在嚴重的傳遞誤差。EF2LTF 基于超圖的模型[22],將超圖拆解為實體森林,進一步削弱傳遞誤差,高效地識別嵌套實體,輔助實體關系聯合抽取。

1.2 嵌套實體關系聯合抽取

目前考慮嵌套實體的實體關系聯合抽取的模型較少,主要通過引入嵌套實體抽取模型處理聯合抽取中的嵌套實體。主要引入的嵌套實體抽取模型包括序列標注的模型和基于跨度的模型。

序列標注的模型主要是分層序列標注和修改標注方式。雙向長短期記憶網絡結合條件隨機場的實體關系聯合抽取模 型2-Bi-LSTM-CRF(Bidirection Long Short-Term Memory with Conditional Random Field)[23]采用多任務框架,先序列標注最外層實體,然后通過引入實體類型的子概念的信息,再次進行序列標注,標記其內層實體。而在關系預測方面,2-Bi-LSTM-CRF[23]使用支持向量機(Support Vector Machine,SVM)預測。使用令牌對鏈接的一階段實體關系聯合抽?。╯ingle-stage joint extraction of entities and relations through Token Pair Linking,TPLinker)模型[2]進一步擴充序列標注,使用矩陣標注。該矩陣為文本到文本的詞間關系矩陣。若矩陣中第i行第j列為1,則代表句中第i個詞到第j個詞存在鏈接。通過這種方式,標記實體頭部到實體尾部的鏈接和頭實體到尾實體的鏈接,但該標記方式不僅空間復雜度高,而且標注稀疏、負例過多,難以訓練。

基于跨度的模型主要是枚舉跨度的模型?;诳缍鹊膶嶓w關系聯合抽取模型SpERT(Span-based Entity and Relation Transformer)[5]先枚舉所有可能的跨度,在對它們進行實體分類的同時過濾非實體跨度,再枚舉所有可能實體對,并預測候選實體對間的關系?;谡Z法樹的模型[24]則在此基礎上進一步融合了語法樹信息。動態圖信息抽?。―ynamic Graph Information Extraction,DyGIE)[3]介紹了一個多任務的通用框架,以動態構造的跨度圖共享跨度表示,進而預測實體、關系信息。動態圖增強信息抽?。―ynamic Graph Information Extraction ++,DyGIE++)[4]在此基礎上構建了一個統一的多任務框架用于三個信息抽取任務:命名實體識別、關系抽取和事件抽取。它通過枚舉、提煉和對文本跨度評分來獲取句內局部上下文和句間全局上下文信息,從而解決每個任務。在實體關系聯合抽取中,這些模型需要更多的負采樣以同時支撐對嵌套實體和關系三元組的處理。

EF2LTF 在基于跨度預測的模型(SPN[11])基礎上通過引入實體森林增強對嵌套實體的識別能力。與序列標注的模型相比,EF2LTF 無需多次序列標注,僅以一次樹的生成即可獲得嵌套的實體和包含嵌套實體的三元組。而與基于枚舉跨度的模型相比,EF2LTF 無需枚舉所有可能的跨度和實體對,而是自動生成實體,組合成實體對。因此,EF2LTF 能在不增加時間、空間復雜度和產生大量負例的前提下識別嵌套實體;此外,EF2LTF 能在相互嵌套的實體中區分嵌套實體,從相似的嵌套實體中選擇實體對生成三元組,具有更強的嵌套實體識別能力和構建三元組時對嵌套實體的分辨能力。

2 基于森林的實體關系聯合抽取

為處理嵌套實體,本文提出了EF2LTF。EF2LTF 結構如圖1 所示,由編碼器、實體森林、實體樹交互和分層三元組森林四個部分組成。采用多階段單步的聯合訓練框架,原始文本由編碼器編碼成分布式上下文表示,經由實體森林預測嵌套實體,再由實體樹交互部分獲得交互信息,最后通過分層三元組森林在識別的嵌套實體中選擇頭實體、尾實體,預測關系,生成分層的三元組森林。

圖1 EF2LTF的結構Fig.1 Structure of EF2LTF

2.1 編碼器

鑒于Transformer 相關預訓練模型的有效性,EF2LTF 模型采用預訓練的BERT(Bidirectional Encoder Representation from Transformers)[25]作為編碼器,獲得輸入文本的分布式上下文表示。如式(1)所示:

其中:Tw、Tp、Ts為輸入文本的獨熱碼向量、位置索引、分段標志;Wt是詞嵌入矩陣;Wp是位置嵌入矩陣;Ws是分段嵌入矩陣;BERT(x)代表BERT模型;輸出He為輸入文本的上下文表示矩陣,行向量代表句中第i個詞的包含上下文信息的向量表示。

2.2 實體森林

為輔助聯合抽取高效識別嵌套實體,本文提出實體森林。實體森林存在數據結構與模型結構兩個概念。它的數據結構如圖2 所示,將嵌套實體前綴相同的實體合并成嵌套實體樹的集合。實體森林的模型結構則如圖2 實體森林部分所示,分為序列標注模塊和多棵嵌套實體樹模塊。編碼器所得輸入文本的分布式表示He,首先經過一個序列標注模塊,標注嵌套實體樹的根節點,再從每一個根節點出發形成嵌套實體樹,預測嵌套實體。這種分層地嵌套實體樹內部識別嵌套實體的方式,能增強模型對嵌套實體的識別能力。

圖2 實體森林的數據結構Fig.2 Data structure of entity forest

實體森林下半部分標注出對應文本的實體頭部(Begin,B)、無實體(Other,O)標簽,即標注出嵌套實體樹的根節點(每個嵌套實體的頭部)。具體如式(2)所示。

其中:輸入文本的上下文表示He經過dropout 和線性層獲得文本中每個詞屬于B、O 標簽的概率;Wner、bner是線性層的權重和偏置,概率P∈Rl×c2

通過交叉熵損失函數訓練,如式(3)所示。

其中:c2=2 是類別數;l為輸入文本長度;yic是真實標簽,代表第i個詞是否存在第c個標簽;Pic為P中對應位置的概率。

預測時如式(4)所示,概率最大的標簽即所預測的標簽yB*。如當前詞標簽預測為B,則為預測所得嵌套實體樹的根節點,記作

實體森林的上半部分每一棵嵌套實體樹從根節點出發,使用長短期記憶(Long Short-Term Memory,LSTM)網絡依次判斷根節點之后的詞是否是某個嵌套實體的尾部(構成實體),是否繼續分支(該樹是否還有其他嵌套實體),從而形成一棵嵌套實體樹。具體實現步驟如下:

2.3 實體樹交互

實體樹交互模塊由去除Position Encoding 的Transformer的Decoder 部分組成,利用注意力機制(Attention Mechanism)獲得無序的實體樹間交互和實體樹與輸入文本的交互。該部分計算如式(9)所示,輸入為輸入文本的分布式表示He和實體樹表示HS,輸出為融合實體樹信息和輸入文本信息的隱層

2.4 分層三元組森林

使用如圖3 所示的樹形循環神經網絡(Tree Recurrent Neural Network,Tree-RNN),對每一個實體樹生成一棵三元組樹。第1 個時間步輸入對應實體樹的根節點,依據隱層信息,選擇可以作為頭實體的實體樹分支(實體的尾部),然后輸入頭實體,預測關系,輸入關系,選擇尾實體所在實體樹,再在實體樹內部選擇實體。每一步的預測中如果存在多個結果,則分別輸入LSTM 單元,分別計算,形成分支,從而形成三元組樹。其中,三元組樹的每一個分支對應一個三元組。

圖3 Tree-RNN模型的結構Fig.3 Structure of Tree-RNN model

如果預測實體,則需要融合輸入文本信息后,再通過線性層計算選擇實體樹或實體的概率,計算如式(12)所示。

其中:thresholdes、thresholdee為分類閾值;下標es和ee代表單個實體的頭部和尾部,是gold label,真實存在的實體。

為進一步降低嵌套實體的識別難度,通過root_mask 和leaf_mask 將非可選項置零。此外,為削弱傳遞誤差,引入糾錯機制。糾錯機制在訓練時考慮了預測上一步預測錯誤的情況,從而使得預測階段和訓練階段一致,以此降低傳遞誤差,提升聯合抽取的性能。具體表現為,在訓練時,可選項包括真實的實體樹根節點或實體尾部(實體樹的葉子)和依據相應概率負采樣所得負例。負采樣考慮了預測時出錯的情況,并在推斷時通過預測為無標簽(Not Available,NA)糾正。在預測時,則依據實體森林部分預測的實體遮掩不可選選項。具體如式(13)所示,預測所得實體樹為,實體尾部為

最后,將各階段的損失函數加權組合,聯合訓練,如式(15)所示。

其中,wB、wEF和wLTF分別代表序列標注損失、實體森林損失和分層三元組森林損失的權重。

3 實驗與結果分析

本文通過實驗評估上述模型在嵌套實體關系聯合抽取中的有效性。首先介紹數據集和實驗設置;隨后介紹實驗中的對比模型,并闡述實驗結果的分析;最后進行消融實驗。

3.1 實驗數據集

為驗證模型有效性,本文選擇近年來嵌套實體關系聯合抽取模型所用的通用數據集,包括WebNLG[6]、NYT[7]、SciERC[8]和ACE2005[9]數據集。WebNLG 和NYT 采取標注出完整實體的實際標注版本(Exact)[26];SciERC 數據集使用官方版本;ACE2005[9]保留了和之前工作[2,6,27]相同的劃分,但在處理時,為體現EF2LTF 對嵌套實體的有效性,保留全部嵌套實體。這與嵌套實體抽取的模型一致[28]。具體統計數據如表2 所示。

3.2 實驗超參數設置

遵循之前的工作[4],本文在SciERC 數據集的實驗中采用SciBERT(uncased)[8],在其他數據集中采用BERT。學習率初始化BERT 和SciBERT 為10-5,而Transformer Decoder 為2 × 10-5。實體樹交互部分使用3 層Transformer Decoder。dropout 用于BERT 輸出部分和LSTM 輸出部分,比率設為0.1。優化器為AdamW[29]。訓練時,各損失權重比例wB∶wEF∶wLTF=1∶1∶10。本文所有的實驗均使用NVIDIA TESLA V100。這些參數的設置大多與SPN[11]一致。

3.3 對比實驗結果

實驗結果如表3 所示,主要采用精確率(Precision,Prec)、召回率(Recall,Rec)和F1 值(Function 1,F1)評估。

表3 不同數據集上的實驗結果 單位:%Tab.3 Experimental results on different datasets unit:%

與基于跨度預測的SPN[11]相比,包括EF2LTF 在內大多嵌套實體關系聯合抽取模型F1 值均高于SPN[11],且主要優勢體現在召回率上。從1.0%嵌套實體的NYT 數據集到36.4%的ACE2005 數據集,隨著包含嵌套實體的句子在所有句子中占比的提升,SPN 模型從略優于TPLinker 到和嵌套實體關系聯合抽取模型差距越來越大,與EF2LTF 的F1 值差距也從0.8 到5.0 再到11.5 個百分點,主要體現在召回率的差距上。由此可見,基于跨度預測的模型雖然理論上可以預測嵌套實體,但對嵌套實體的識別能力比嵌套實體關系抽取的模型差。

與嵌套實體關系聯合抽取模型相比,在各個數據集上,EF2LTF 的F1 也取得了最好的效果。從NYT、WebNLG 到ACE2005 數據集,隨著嵌套實體數量的增加,EF2LTF 和TPLinker(BERT)的F1 值差距越來越大,從1.1、2.1 到11.3個百分點,主要體現在召回率上。這一方面因為TPLinker 的標注模式過于稀疏,存在大量負例難以訓練;另一方面則是與其他多階段的嵌套實體關系聯合抽取模型相比,一階段的TPLinker 難以處理嵌套實體更多情況更復雜的ACE2005 數據集,因此效果較差。與SpERT、DyGIE 和DyGIE++相比,TPLinker 沒有通過負采樣學習嵌套實體與普通實體的區別,效果較差,而EF2LTF 僅需采樣少數負例即可訓練過分層預測在嵌套實體內部識別嵌套實體,具有更好的識別能力,且通過負采樣、分層預測和森林的結構考慮了嵌套實體對三元組預測過程的影響,因此效果更好,F1 值取得了最優值。

綜上所述,EF2LTF 的分層預測、基于負采樣的糾錯機制和森林有效,且隨著嵌套實體占比的增加,與其他模型的差距逐漸增大,因此,EF2LTF 更適合嵌套實體關系聯合抽取。

3.4 消融實驗

為了測試EF2LTF 中的有效模塊,本文在ACE2005 數據集上進行消融實驗。實驗中,參數不變,逐個刪除實體樹交互(Entity Tree Interaction,ETI)模塊、分層三元組森林(Layering Triple Forest,LTF)模塊和實體森林(Entity Forest,EF)模塊,實驗結果如表4 所示。

表4 消融實驗結果 單位:%Tab.4 Ablation experimental results unit:%

首先刪除ETI 模塊,該模塊主要用于為下一步的分層三元組森林提供信息支撐,將Transformer Decoder 的輸入改為隨機初始化的可訓練向量,F1 值下降0.57 個百分點。

其次刪除LTF 模塊。將分層三元組森林中Tree RNN 刪除,同時預測頭實體、關系、尾實體,這與SPN[11]中的生成三元組方式一致??梢钥吹?,F1 值下降了9.86 個百分點,下降最為明顯。因此該模塊起主要作用。這驗證了本文中三元組森林和分層預測的有效性。

最后刪除EF 模塊。在刪除LTF 后,實體森林不再參與到模型預測,此時該模型僅通過共享編碼為三元組生成提供嵌套實體信息,并依賴生成三元組模塊預測實體、關系,F1值下降了1.07 個百分點。驗證了嵌套實體信息的交互能夠提升嵌套實體關系聯合抽取性能。

綜上所述,起主要作用的是LTF 模塊,主要為模型提供三元組生成時對嵌套實體的分辨能力;其次是EF 模塊,提供嵌套實體的識別能力,并為三元組生成提供嵌套實體信息;最后是ETI 模塊,主要為模型提供實體樹之間、實體樹和文本之間的關聯信息。

4 結語

本文提出了基于森林的實體關系聯合抽取模型——EF2LTF。該模型一方面將嵌套的實體聚集成樹,進而組成森林,借助樹的結構在嵌套的實體中識別嵌套實體,具有更強更高效的識別能力;另一方面則在三元組生成時,將三元組森林和分層預測結合,在生成三元組時在嵌套實體中區分嵌套實體,具有更強的分辨能力,使得模型免于嵌套實體對三元組預測過程的干擾,最終取得了更好的實體關系聯合抽取性能。

但在ACE2005 中存在大量未參與到三元組中的實體,這是目前實體關系聯合抽取難以處理的問題之一,阻礙了其性能的提升。因此,下一步考慮將分層預測和森林的模型用于未參與到三元組中的實體上,以求進一步提升實體關系聯合抽取性能。

猜你喜歡
三元組嵌套跨度
基于帶噪聲數據集的強魯棒性隱含三元組質檢算法*
緩粘結預應力技術在大跨度梁中的應用
基于嵌套Logit模型的競爭性選址問題研究
特征標三元組的本原誘導子
大跨度連續剛構橋線形控制分析
關于余撓三元組的periodic-模
組合鋁合金立柱在超大跨度玻璃幕墻中的應用
三元組輻射場的建模與仿真
一種基于區分服務的嵌套隊列調度算法
探討大跨度門式起重機運行偏斜的問題
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合