于 韜,擁 措,高 興,尼瑪扎西
(1. 西藏大學(xué) 信息科學(xué)技術(shù)學(xué)院,西藏 拉薩 850000;2. 西藏自治區(qū)藏文信息技術(shù)人工智能重點實驗室,西藏 拉薩 850000;3. 藏文信息技術(shù)教育部工程研究中心,西藏 拉薩 850000)
隨著我國信息化進程的不斷發(fā)展,極大地推動了人工智能等先進技術(shù)的產(chǎn)業(yè)融合,例如,人工智能技術(shù)與醫(yī)療、經(jīng)濟等與民生密切相關(guān)領(lǐng)域的融合,為我國人民的生產(chǎn)與生活提供了極大的便利。其中,藏醫(yī)藥作為我國藏族人民的文化瑰寶,擁有2 000多年的歷史,是藏族人民通過長期豐富的生產(chǎn)和生活實踐,博采眾長,逐步形成的傳統(tǒng)醫(yī)學(xué)體系,其中必定蘊含十分寶貴的潛在價值,因此如何挖掘藏醫(yī)藥文本中的價值信息成為研究的關(guān)鍵。
實體關(guān)系聯(lián)合抽取是自然語言處理領(lǐng)域的重要研究任務(wù),同時也是信息抽取中的關(guān)鍵技術(shù),它可以識別藏醫(yī)藥文本中的命名實體并抽取實體間的語義關(guān)系,最后利用命名實體及語義關(guān)系構(gòu)建實體關(guān)系三元組。本文主要探究了基于序列標(biāo)注的聯(lián)合抽取方法,并以該方法的代表模型NovingTagging[1]進行分析,通過分析目前存在的問題,本文提出了以下改進方法:
(1) 通過分析NovingTagging模型的標(biāo)注策略,了解到其序列標(biāo)注方式的局限性在于無法對嵌套實體進行標(biāo)注,因此本文提出了嵌套實體標(biāo)注策略,在原有標(biāo)注方法的基礎(chǔ)上添加了一層嵌套實體標(biāo)簽,可以標(biāo)注長實體中嵌套的短實體,進而可以通過聯(lián)合抽取模型直接獲得三元組數(shù)據(jù)及嵌套實體。
(2) 通過分析NovingTagging模型的效果,了解到其具有特征單一、模型學(xué)習(xí)能力有限的問題,因此本文從特征增強、模型優(yōu)化方面入手,提出了基于多特征融合及獎懲機制的聯(lián)合抽取模型(雙元動態(tài)模型),主要通過類別特征靜態(tài)融合、獎懲機制及多特征動態(tài)融合方法進行改進,其中,類別特征靜態(tài)融合及多特征動態(tài)融合方法是特征增強方面的改進,構(gòu)建的靜態(tài)類別特征、動態(tài)分詞特征及動態(tài)位置特征提升了模型輸入特征的質(zhì)量,使得實體邊界有了更高質(zhì)量的特征表示,對于長度跨度較大的藏醫(yī)藥領(lǐng)域?qū)嶓w也可以進行較好的識別。
(3) 獎懲機制是模型優(yōu)化方面的改進,由條件隨機場(Conditional Random Fields,CRF)損失值入手,在計算損失值的過程中,對識別正確或錯誤的標(biāo)簽進行“獎勵”或“懲罰”,然后通過損失值的反向傳播不斷地優(yōu)化模型參數(shù)。同時,本文在雙元動態(tài)模型中添加了針對不同處理過程的損失值。
通過以上改進方式優(yōu)化模型,提升了聯(lián)合抽取模型的效果。
實體關(guān)系聯(lián)合抽取主要有兩大類研究方法: 流水線方法與聯(lián)合方法。流水線方法[2-5]將聯(lián)合抽取任務(wù)分解為實體識別與關(guān)系抽取,通過串聯(lián)的方式實現(xiàn)聯(lián)合抽取,但該方式存在缺乏交互、誤差累積等問題,影響了模型的效果。聯(lián)合方法相較于流水線方法更多地考慮了子任務(wù)間的交互性,且通過端到端模型可直接獲得三元組數(shù)據(jù),提升了模型的效果,并逐漸成為當(dāng)下研究的熱點方向。
聯(lián)合方法按照解碼器使用方式的不同可分為兩大類: 基于共享參數(shù)的聯(lián)合抽取模型與基于聯(lián)合解碼的聯(lián)合抽取模型,前者將聯(lián)合抽取任務(wù)分解為不同的子任務(wù),但與流水線方式不同的是,子任務(wù)間共享編碼層的信息,最后在不同子任務(wù)后使用不同的解碼器。Miwa等人[6]首次提出使用深度學(xué)習(xí)方法進行聯(lián)合抽取,使用雙向長短時記憶網(wǎng)絡(luò)(Bi-directional Long Short-Term Memory,BiLSTM)模型及兩層前饋神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)詞特征,然后輸入到依賴層獲得最終的命名實體及實體關(guān)系。Katiyar等人[7]首先通過序列標(biāo)注方法識別頭實體,然后使用指針網(wǎng)絡(luò)根據(jù)實體關(guān)系類型識別出尾實體。Zhou等人[8]首先使用BiLSTM模型與卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)模型進行關(guān)系抽取,然后使用長短時記憶網(wǎng)絡(luò)模型進行解碼,最后獲得關(guān)系對應(yīng)的頭實體及尾實體。上述基于共享參數(shù)的聯(lián)合抽取模型雖共享了編碼層的信息,但依然存在子任務(wù)間交互性不強的問題,因此,基于聯(lián)合解碼的聯(lián)合抽取模型應(yīng)運而生。
基于聯(lián)合解碼的聯(lián)合抽取模型在編碼層上疊加統(tǒng)一的解碼器,使得模型可以直接解碼獲得三元組信息,增強了子任務(wù)間的交互性。Zhang等人首次使用序列標(biāo)注方法實現(xiàn)聯(lián)合抽取(NovingTagging模型),該模型主要包括詞嵌入層、BiLSTM編碼層、線性分類層、CRF解碼層,首先使用BiLSTM對標(biāo)注信息進行編碼,然后使用相同的CRF解碼器進行解碼,即可獲得最終的三元組信息。在Zhang等人的研究基礎(chǔ)上,Dai等人[9]根據(jù)每個單詞的位置進行多次標(biāo)注,然后使用基于位置的注意力機制及CRF解碼器進行解碼,解碼后獲得多個標(biāo)注序列,極大地緩解了關(guān)系重疊的問題。Zeng等人[10]首次采用序列到序列的方法實現(xiàn)聯(lián)合抽取,并引入了復(fù)制機制,使用序列到序列方法中的編碼器、解碼器結(jié)構(gòu)獲得頭實體、關(guān)系及尾實體。隨后,Zeng等人[11]使用強化學(xué)習(xí)方法對三元組間的順序關(guān)系進行分析,提升了模型的抽取效果。針對NovingTagging無法復(fù)制多個詞組成的實體,Zeng等人[12]使用多任務(wù)學(xué)習(xí)方法解決上述問題,使用序列標(biāo)注模塊與復(fù)制機制獲得的兩個實體進行校對,提升了對實體的識別效果。Nayak等人[13]對三元組的表示進行了改進,提出了基于單詞的解碼器和基于指針網(wǎng)絡(luò)的解碼器,提升了三元組間的交互性。Sui等人[14]假設(shè)三元組是無序的,采用非自回歸解碼器后可通過模型直接生成三元組集合。田佳來等人[15]在序列標(biāo)注方法解決聯(lián)合抽取任務(wù)的基礎(chǔ)上,提出了分層序列標(biāo)注方法,并通過位置信息增強特征質(zhì)量,提升了對重疊三元組的識別效果。Lai等人[16]使用多頭注意力層獲得的句子及關(guān)系表征增強編碼后的特征質(zhì)量,然后通過序列標(biāo)注方法獲得實體對。朱秀寶等人[17]提出了增強序列標(biāo)注策略的單階段聯(lián)合抽取方法,為單詞標(biāo)注多個標(biāo)簽并將其轉(zhuǎn)化為多標(biāo)簽分類任務(wù),解決了嵌套實體、重疊關(guān)系等問題。
本文的主要貢獻是在基于序列標(biāo)注的聯(lián)合抽取方法NovingTagging上進行研究,分析模型存在的問題并提出改進方法。
NovingTagging模型首次提出了用于聯(lián)合抽取任務(wù)的序列標(biāo)注方法,該方法在實體起始標(biāo)志后添加了關(guān)系類型及實體順序索引。但該方法還具有一定的標(biāo)注弊端,只能對文獻[10]中提出的Normal類型的關(guān)系類型進行標(biāo)注及聯(lián)合抽取,而無法標(biāo)注SEO、EPO類型的三元組。因此,付瑞等人[18]提出了新的標(biāo)注方法,在領(lǐng)域數(shù)據(jù)中句子的描述主要圍繞該領(lǐng)域的實體展開,本質(zhì)上只需要抽取與領(lǐng)域?qū)嶓w存在關(guān)系的其他實體即可,因此將領(lǐng)域?qū)嶓w標(biāo)注為MAIN,其余實體的標(biāo)注方法與NovingTagging方法相同,提升了對SEO關(guān)系類型的聯(lián)合抽取效果。吳賽賽等人[19]在付瑞等的基礎(chǔ)上作了進一步改進,提出了面向領(lǐng)域?qū)嶓w關(guān)系聯(lián)合抽取的標(biāo)注模式,吳賽賽等人去除了實體順序索引,以領(lǐng)域?qū)嶓w作為頭實體,并標(biāo)注為ME,其余實體為尾實體,減少了實際標(biāo)簽的使用數(shù)量。
本文的藏醫(yī)藥領(lǐng)域數(shù)據(jù)適用于吳賽賽等人提出的標(biāo)注模式,但上述方法無法實現(xiàn)對嵌套實體的標(biāo)注,即長實體中的短實體,而藏醫(yī)藥領(lǐng)域嵌套實體較多,因此本文提出了面向領(lǐng)域數(shù)據(jù)的嵌套實體標(biāo)注策略。標(biāo)注方法以吳賽賽等人提出的標(biāo)注模式為基礎(chǔ),針對藏醫(yī)藥領(lǐng)域的三大類數(shù)據(jù),本文將領(lǐng)域?qū)嶓w分別標(biāo)注為YC、FJ、ZLFF,分別表示藏藥材、方劑、診療方法數(shù)據(jù)中的領(lǐng)域?qū)嶓w, 該種標(biāo)注方法與上述方法中的MAIN及ME不同,對領(lǐng)域?qū)嶓w分類標(biāo)注可為后續(xù)類別特征靜態(tài)融合方法提供幫助。
圖1 面向領(lǐng)域數(shù)據(jù)的嵌套實體標(biāo)注策略
受限于NovingTagging模型的特征學(xué)習(xí)能力,無法有效地學(xué)習(xí)特征中的重要信息及解碼藏醫(yī)藥領(lǐng)域?qū)嶓w標(biāo)簽,導(dǎo)致模型聯(lián)合抽取效果較差,因此本文提出了用于藏醫(yī)藥領(lǐng)域的聯(lián)合抽取模型,即雙元動態(tài)模型,通過類別特征靜態(tài)融合、獎懲機制及多特征動態(tài)融合方法對NovingTagging模型進行改進。其中,類別特征靜態(tài)融合及多特征動態(tài)融合方法用以提升模型輸入特征的質(zhì)量,增強藏醫(yī)藥實體邊界的表達;獎懲機制用以優(yōu)化模型,在計算損失值的過程中對模型提供幫助,然后通過損失值的反向傳播優(yōu)化模型。雙元動態(tài)模型框架如圖2所示,本節(jié)主要介紹模型中相較于NovingTagging模型改進的模塊,分別為類別特征靜態(tài)融合層、獎懲機制層、多特征動態(tài)融合層及標(biāo)簽輸出模塊。
圖2 雙元動態(tài)模型架構(gòu)
2.2.1 類別特征靜態(tài)融合層
類別特征靜態(tài)融合層是根據(jù)本文提出的類別特征靜態(tài)融合方法構(gòu)建的。由于NovingTagging方法將詞嵌入特征(Input Embedding)直接輸入到BiLSTM模型進行編碼學(xué)習(xí),輸入特征較少,導(dǎo)致BiLSTM模型無法學(xué)習(xí)到除Input Embedding外的其余有效信息。因此,結(jié)合以上因素及藏醫(yī)藥數(shù)據(jù)的特點,本文提出了類別特征靜態(tài)融合方法,并對模型進行了改進。其中,Input Embedding通過隨機初始化向量方法(Embedding)構(gòu)建,與傳統(tǒng)的詞向量模型Word2Vec[20], 基于Transformer的預(yù)訓(xùn)練語言模型如BERT[21]、ERNIE[22]、Albert[23]、CINO[24]相比,本文的藏醫(yī)藥數(shù)據(jù)量較小,通過Word2Vec工具獲得的靜態(tài)詞向量質(zhì)量不高;BERT等預(yù)訓(xùn)練語言模型是在大規(guī)模的通用領(lǐng)域數(shù)據(jù)上進行訓(xùn)練,針對藏醫(yī)藥領(lǐng)域無法獲得較好的詞向量,因此本文選用了Embedding方法。
類別特征靜態(tài)融合方法的提出,主要源于藏醫(yī)藥領(lǐng)域數(shù)據(jù)的類別特點,該數(shù)據(jù)主要分為三個類別,分別為藥材、方劑、診療方法。該方法的主要思路與預(yù)訓(xùn)練語言模型的詞嵌入方法相似,但基本原理及實現(xiàn)方法不同。類別特征向量,如圖2中的Class Embedding,在實現(xiàn)過程中以“0”表示藥材類別、“1”表示方劑類別、“2”表示診療方法類別,最后通過Embedding方法構(gòu)建類別特征向量。此時通過輸入(Input)已經(jīng)獲得了Input Embedding及Class Embedding,但由于兩者都是由原始Input輸入獲得,并未涉及其他額外的信息,因此Input Embedding及Class Embedding的融合方式為靜態(tài)融合,最終在詞向量維度對上述向量進行融合,擴充特征維度,使得當(dāng)前特征的信息更加豐富,為BiLSTM模型學(xué)習(xí)到更有效、更重要的信息提供幫助。
2.2.2 獎懲機制層
獎懲機制層(RAPS)是根據(jù)本文提出的獎懲機制進行構(gòu)建的,其本質(zhì)是在CRF模型尋找最優(yōu)路徑的過程中對其提供幫助,并通過損失值的不斷反向傳播優(yōu)化模型,獎懲機制的提出與通過CRF計算損失值密切相關(guān)。首先,CRF模型約束標(biāo)簽的輸出是通過構(gòu)建全局最優(yōu)路徑實現(xiàn)的,CRF首先計算每一條路徑的分?jǐn)?shù),然后選取分?jǐn)?shù)最高的一條路徑作為最終的標(biāo)簽輸出路徑,在這個過程中不同路徑的分?jǐn)?shù)由組成路徑各點的分?jǐn)?shù)獲得。
然后,通過計算可獲得每一條路徑的分?jǐn)?shù),其中包括了某一條正確路徑的分?jǐn)?shù),將每一條路徑的分?jǐn)?shù)匯總即可獲得每種路徑可能分?jǐn)?shù)的總和。通過正確路徑的分?jǐn)?shù)及每種路徑可能分?jǐn)?shù)的總和可獲得當(dāng)前的概率表示,如式(1)所示。
由于點是組成路徑的主要因素,因此獎懲機制主要用于調(diào)整不同點的分?jǐn)?shù),通過對比點的預(yù)測結(jié)果與真實結(jié)果,可以確定路徑中的節(jié)點是否預(yù)測正確,進而可以判斷當(dāng)前路徑是否預(yù)測正確。由式(2)可知,當(dāng)所有預(yù)測序列可能的得分和增大時,而正確路徑只有一條,其分?jǐn)?shù)不變,因此損失值增大,模型效果不佳;反之模型效果較好。因此,當(dāng)模型預(yù)測錯誤的路徑較多時,對其進行懲罰,模型Loss增大;反之對其進行獎勵,Loss減小。獎懲機制的加入使得模型可以根據(jù)Loss的反向傳播更好地進行修正與改進,同時通過不斷地訓(xùn)練可使得真實路徑所占的比值越來越大,提升模型的聯(lián)合抽取效果。
2.2.3 多特征動態(tài)融合層
雙元動態(tài)模型的多特征動態(tài)融合層是根據(jù)本文提出的多特征動態(tài)融合方法構(gòu)建的。與類別特征靜態(tài)融合方法相似,多特征動態(tài)融合方法的目的也是為BiLSTM編碼層提供更為豐富、質(zhì)量更高的輸入特征。多特征動態(tài)融合層以增強實體邊界為主要目標(biāo),通過預(yù)測的標(biāo)簽序列動態(tài)獲得分詞特征與位置特征,值得注意的是,分詞特征與位置特征主要針對的是命名實體,即構(gòu)建針對實體的分詞、位置特征,利用其增強標(biāo)注序列中的實體邊界,然后將其構(gòu)建為特征向量,并與類別特征靜態(tài)融合方法獲得的特征進行融合,以提升特征的質(zhì)量。
由上文分析可知,多特征動態(tài)融合層由兩部分構(gòu)成,分別為圖2中的Segment Embedding與Position Embedding的融合及Input Embedding與Class Embedding的融合,其中,Input Embedding與Class Embedding的融合已在類別特征靜態(tài)融合層中介紹,本節(jié)主要介紹動態(tài)分詞信息、位置信息的獲取方式及多特征融合方式,獲取方式如圖3所示。
圖3 動態(tài)分詞信息及位置信息的獲取方式
圖3中預(yù)測標(biāo)簽序列為CRF解碼層的輸出,首先將序列輸入到分詞信息提取器,其根據(jù)標(biāo)簽構(gòu)建針對實體的分詞信息,對于藏醫(yī)藥領(lǐng)域?qū)嶓w,將實體起始位置、結(jié)束位置、中間位置的分詞信息分別標(biāo)注為1、3、2;對于非實體,將其分詞信息標(biāo)注為0。
然后將標(biāo)簽序列輸入到位置信息提取器,其根據(jù)標(biāo)簽構(gòu)建針對實體的位置信息,圖3中共有10個標(biāo)簽,首先根據(jù)標(biāo)簽序列長度構(gòu)建句子的初始位置信息,然后針對句子中實體對應(yīng)的標(biāo)簽,將初始位置信息序列的相應(yīng)位置與數(shù)據(jù)集的句子最大長度求和。綜上,分詞信息與位置信息的添加是為了更好地表示實體的邊界,使得模型可以較好地識別標(biāo)簽。最后將2.2.1節(jié)獲得的靜態(tài)融合特征與本節(jié)獲得的動態(tài)融合特征進行融合,獲得總體融合特征,用于模型的后續(xù)學(xué)習(xí)。
2.2.4 標(biāo)簽輸出模塊
標(biāo)簽輸出模塊對應(yīng)圖2中模型架構(gòu)的右側(cè)結(jié)構(gòu),其是一個完整的結(jié)構(gòu),包含BiLSTM編碼層、線性分類層、獎懲機制層、CRF解碼層,該模塊主要是學(xué)習(xí)通過多特征動態(tài)融合層構(gòu)建的高質(zhì)量融合特征,并輸出最終的預(yù)測標(biāo)簽序列(Tag Output)。標(biāo)簽輸出模塊使用的BiLSTM編碼層為BiLSTM Model2,以多特征動態(tài)融合層構(gòu)建的特征作為輸入,其輸出將用于構(gòu)建最終的預(yù)測標(biāo)簽序列。此外,模型架構(gòu)左側(cè)還設(shè)置了BiLSTM Model1編碼層,以類別特征靜態(tài)融合層構(gòu)建的特征作為輸入,其輸出將作為多特征動態(tài)融合層的輸入。
綜上,雙元動態(tài)模型設(shè)置了兩個相對獨立的編碼模塊,通過其協(xié)同配合完成聯(lián)合抽取。
由于編碼模塊的輸入特征不同,可以將雙元動態(tài)模型理解為兩個結(jié)構(gòu),分別為靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)與動態(tài)特征學(xué)習(xí)結(jié)構(gòu),且前者是后者的研究基礎(chǔ)。靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)以類別特征靜態(tài)融合方法構(gòu)建的特征作為輸入特征,并通過BiLSTM Model1模型作為編碼器,編碼結(jié)果將為動態(tài)特征學(xué)習(xí)結(jié)構(gòu)提供研究基礎(chǔ);動態(tài)特征學(xué)習(xí)結(jié)構(gòu)以類別特征靜態(tài)融合方法及多特征動態(tài)融合方法構(gòu)建的特征作為輸入特征,并通過BiLSTM Model2模型作為編碼器,編碼結(jié)果將用于獲取最終的預(yù)測標(biāo)簽序列。同時,本文將兩個結(jié)構(gòu)中編碼器的參數(shù)相關(guān)聯(lián),并通過Adam優(yōu)化器優(yōu)化相關(guān)聯(lián)后的模型參數(shù),起到優(yōu)化全局的作用。
與此同時,由于雙元動態(tài)模型使用了兩個結(jié)構(gòu),本文在傳統(tǒng)損失值的基礎(chǔ)上增加了額外的方案。分別為: ①靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)的預(yù)測結(jié)果與真實標(biāo)簽間的損失值;②動態(tài)特征學(xué)習(xí)結(jié)構(gòu)的預(yù)測結(jié)果與真實標(biāo)簽間的損失值;③靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)的預(yù)測結(jié)果與動態(tài)特征學(xué)習(xí)結(jié)構(gòu)的預(yù)測結(jié)果間的損失值。
三個不同的損失值分別反向傳播,帶來的效果如下: ①及時修正靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)的模型效果,同時可增強根據(jù)該模型預(yù)測結(jié)果動態(tài)獲得的特征質(zhì)量,為后續(xù)動態(tài)特征學(xué)習(xí)結(jié)構(gòu)提供幫助;②修正動態(tài)特征學(xué)習(xí)結(jié)構(gòu)的模型效果,提升雙元動態(tài)模型的總體效果;③縮小靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)與動態(tài)特征學(xué)習(xí)結(jié)構(gòu)預(yù)測結(jié)果間的差距,在一定程度上增強了兩個結(jié)構(gòu)間配合的緊密程度。其中,方案①、②為傳統(tǒng)損失值的方案,本文根據(jù)模型結(jié)構(gòu)的特殊性增加了方案③,并結(jié)合優(yōu)化器使得靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)與動態(tài)特征學(xué)習(xí)結(jié)構(gòu)緊密聯(lián)合,最終輸出精度更高的預(yù)測標(biāo)簽序列。
表1 藏醫(yī)藥數(shù)據(jù)關(guān)系類型
為了證明本文模型在公開數(shù)據(jù)集上的有效性,文中還使用了開源的中英文數(shù)據(jù)集,分別選取了SKE數(shù)據(jù)集(2)http://lic2019.ccf.org.cn/中的影視領(lǐng)域數(shù)據(jù)及NYT數(shù)據(jù)集https://github.com/neukg/GRTE中的人物領(lǐng)域數(shù)據(jù)。其中,SKE數(shù)據(jù)集是2019年語言與智能技術(shù)競賽中的中文信息抽取數(shù)據(jù)集;NYT數(shù)據(jù)集是采用遠程監(jiān)督方法由紐約時報獲取的英文信息抽取數(shù)據(jù)集,且兩數(shù)據(jù)集在信息抽取領(lǐng)域應(yīng)用廣泛,本文針對以上領(lǐng)域數(shù)據(jù)進行數(shù)據(jù)標(biāo)注并設(shè)置聯(lián)合抽取對比實驗。以上介紹的藏醫(yī)藥數(shù)據(jù)、SKE數(shù)據(jù)及NYT數(shù)據(jù)的訓(xùn)練集、測試集、校驗集均按照8∶1∶1的比例劃分并實驗,各數(shù)據(jù)集劃分后的樣本數(shù)量如表2所示。
表2 各數(shù)據(jù)集劃分后的三元組樣本數(shù)量
考慮到宏平均F值(MacroF1)忽視了樣本不均衡的問題,而本文數(shù)據(jù)標(biāo)簽對應(yīng)的樣本數(shù)量不平衡,因此本文使用加權(quán)F值(WeightedF1)作為本文聯(lián)合抽取模型的評價指標(biāo),給予每類標(biāo)簽加權(quán)后的正確評價。WeightedF1是在對準(zhǔn)確率(Precision)和召回率(Recall)進行調(diào)和平均的基礎(chǔ)上進行加權(quán),其中,Precision表示預(yù)測正確的實體數(shù)在預(yù)測的實體總數(shù)中的占比,Recall表示預(yù)測正確的實體數(shù)在標(biāo)注的實體總數(shù)中的占比,計算過程如式(3)所示。其中,變量i(1≤i≤n)表示標(biāo)簽的類別數(shù);Wi表示權(quán)重,通過當(dāng)前類在總樣本中的比例獲得;Fi表示當(dāng)前標(biāo)簽類別的F1值。
本文實驗的環(huán)境為搭配RTX2080Ti的Ubuntu 16.04服務(wù)器,顯存11GB,采用Pytorch深度學(xué)習(xí)框架搭建實驗?zāi)P?版本為1.7.1+cu110,實驗的主要模型參數(shù)如表3所示,其中,設(shè)置Early stop參數(shù)可避免模型過擬合,當(dāng)模型在校驗集上的損失值超過10輪未降低時,模型自動停止訓(xùn)練。
表3 實驗參數(shù)
由于本文使用了獎懲機制,因此需探究最合適的獎懲度(α),通過2.2.2節(jié)了解到獎懲機制作用于構(gòu)成路徑的每個點,同時分析CRF的源碼可知,我們是針對字的預(yù)測結(jié)果添加獎勵或懲罰,且不同批次包含不同藏字?jǐn)?shù)量的句子,因此本文首先假設(shè)獎懲度的選擇與批次大小有關(guān)。首先需要確定獎懲度的量級,在此使用獎懲機制改進后的NovingTagging模型。實驗中分別探究了獎懲度的不同量級,分別為1e-1、1e-2、1e-3、1e-4、1e-5,最終發(fā)現(xiàn)獎懲度量級為1e-1、1e-2、1e-3、1e-4時損失值均不正常,其中,獎懲度量級為1e-1、1e-2及1e-3時損失值為“nan”;獎懲度量級為1e-4時損失值較大,同時F1值為0;獎懲度量級為1e-5時損失值及F1值均表現(xiàn)正常,因此本文將在1e-5量級上進行探究。
為驗證上文獎懲度選擇的假設(shè),本節(jié)分別選擇了三種不同的批次大小,分別為16(24)、32(25)、64(26),猜想獎懲度大小與2n有關(guān),關(guān)系為:α=ne-5。為驗證猜想,本節(jié)首先使用NovingTagging模型在不同批次大小上進行基礎(chǔ)實驗,實驗結(jié)果如表4所示。
表4 NovingTagging模型在不同批次大小上的實驗結(jié)果 (單位: %)
然后使用結(jié)合獎懲機制的NovingTagging改進模型在不同批次大小對應(yīng)的獎懲度上進行對比實驗,獎懲度分別為4e-5、5e-5、6e-5,實驗結(jié)果如表5所示。
表5 結(jié)合獎懲機制的NovingTagging改進模型在不同批次大小上的實驗結(jié)果 (單位: %)
通過上述實驗基本可以對本節(jié)假設(shè)進行驗證,但為了實驗的嚴(yán)謹(jǐn)性,最后設(shè)置了結(jié)合獎懲機制的NovingTagging改進模型在批次大小為16時采用上述不同獎懲度的實驗,實驗結(jié)果如表6所示。
表6 結(jié)合獎懲機制的NovingTagging改進模型在不同獎懲度上的實驗結(jié)果 (單位: %)
圖4為表4與表5實驗結(jié)果的對比圖,圖中展示了原始NovingTagging模型及結(jié)合獎懲機制的NovingTagging改進模型使用不同批次、不同獎懲度的實驗結(jié)果。由圖可知,當(dāng)獎懲度為α=ne-5時,不同批次大小上的實驗結(jié)果均有一定的提升,同時由表6可知當(dāng)批次大小為16、獎懲度為4e-5時效果最好,直接驗證了本文提出的獎懲度設(shè)置方法的有效性。根據(jù)此方法并結(jié)合2.2.2節(jié)介紹的CRF模型損失值公式,獎懲機制的設(shè)置方法如式(4)所示。當(dāng)模型“獎勵”時,其值為1-α;當(dāng)模型“懲罰”時,其值為1+α。
圖4 NovingTagging及其改進模型在不同批次大小上的實驗結(jié)果對比
本節(jié)主要對本文模型的實驗結(jié)果進行對比與分析,包括NovingTagging模型、改進的NovingTagging模型、單一動態(tài)模型及雙元動態(tài)模型,并單一動態(tài)模型與雙元動態(tài)模型使用的兩個學(xué)習(xí)結(jié)構(gòu)進行對比,二者使用同一個學(xué)習(xí)結(jié)構(gòu)進行聯(lián)合抽取,該結(jié)構(gòu)既用于學(xué)習(xí)靜態(tài)特征,也用于學(xué)習(xí)動態(tài)特征。圖5為各模型在藏醫(yī)藥數(shù)據(jù)集上的實驗結(jié)果,其中,改進的NovingTagging模型的m1方法表示使用傳統(tǒng)的NovingTagging方法,即基線模型;單一動態(tài)模型及雙元動態(tài)模型的m1方法表示使用多特征動態(tài)融合方法,m2、m3及m4方法表示在m1方法構(gòu)建的特征基礎(chǔ)上,分別使用類別特征靜態(tài)融合方法、獎懲機制,以及類別特征靜態(tài)融合方法及獎懲機制的融合。
圖5 各模型在藏醫(yī)藥數(shù)據(jù)集上的實驗結(jié)果
由圖5的結(jié)果曲線可知,改進的NovingTagging模型的結(jié)果曲線增長趨勢最慢;單一動態(tài)模型的結(jié)果曲線次之;雙元動態(tài)模型的結(jié)果曲線增長趨勢最快。最主要的原因是改進的NovingTagging模型以原始特征作為輸入,原始輸入特征中所含價值信息較少,雖然使用類別特征靜態(tài)融合方法及獎懲機制,但受限于原始輸入特征的質(zhì)量,模型提升的效果有限,導(dǎo)致改進的NovingTagging模型結(jié)果曲線增長趨勢最慢。單一動態(tài)模型及雙元動態(tài)模型使用了多特征動態(tài)融合方法構(gòu)建的分詞特征及位置特征增強了原始特征,使得原始輸入特征中攜帶了更多的有效信息,并通過獨特的分詞特征及位置特征增強了實體邊界,然后結(jié)合類別特征靜態(tài)融合方法及獎懲機制對特征進一步增強與優(yōu)化,因此單一動態(tài)模型及雙元動態(tài)模型的結(jié)果曲線趨勢較改進的 NovingTagging 模型增長更迅速。與單一動態(tài)模型相比,雙元動態(tài)模型分別采用了靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)與動態(tài)特征學(xué)習(xí)結(jié)構(gòu),靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)主要負責(zé)學(xué)習(xí)類別特征融合方法構(gòu)建的融合特征;動態(tài)特征學(xué)習(xí)結(jié)構(gòu)在靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)的基礎(chǔ)上,學(xué)習(xí)多特征動態(tài)融合方法構(gòu)建的融合特征,兩結(jié)構(gòu)緊密結(jié)合,較單一動態(tài)模型的同一結(jié)構(gòu)更有效,因此雙元動態(tài)模型的結(jié)果曲線趨勢較單一動態(tài)模型增長更迅速。
在改進的NovingTagging模型實驗中,使用傳統(tǒng)的NovingTagging模型進行聯(lián)合抽取時,模型效果為74.38%;將原始輸入特征與藏醫(yī)藥數(shù)據(jù)類別特征融合后,模型效果為74.69%,較原始NovingTagging模型效果提升了0.31%;使用獎懲機制優(yōu)化原始特征的學(xué)習(xí)結(jié)果后,模型效果為75.19%,較原始 NovingTagging 模型效果提升了0.81%;使用獎懲機制優(yōu)化通過編碼層學(xué)習(xí)的融合類別信息的原始特征,模型效果為75.91%,較原始NovingTagging模型效果提升了1.53%,可見使用類別特征靜態(tài)融合方法與獎懲機制后模型的效果得到了一定提升,其中,同時使用類別特征靜態(tài)融合方法與獎懲機制的模型效果最優(yōu)。
使用多特征動態(tài)融合方法的單一動態(tài)模型及雙元動態(tài)模型效果分別為75.76%、75.65%,較原始NovingTagging模型效果分別提升了1.38%、1.27%,主要原因是多特征動態(tài)融合方法構(gòu)建的分詞特征、位置特征增強了實體的邊界,并豐富了原始輸入特征中的有效信息,高質(zhì)量的輸入特征通過單一動態(tài)模型及雙元動態(tài)模型學(xué)習(xí)后,提升了聯(lián)合抽取效果,證明了本文提出的多特征動態(tài)融合方法的有效性。與此同時,在多特征動態(tài)融合方法的基礎(chǔ)上,使用m2方法時,單一動態(tài)模型及雙元動態(tài)模型效果為76.61%、76.63%,較改進的NovingTagging模型效果分別提升了1.92%、1.94%;使用m3方法時,兩模型效果分別為77.75%、78.20%,較改進的NovingTagging模型效果分別提升了2.56%、3.01%;使用m4方法時,兩模型效果分別為78.83%、79.23%,較改進的NovingTagging模型效果分別提升了2.92%、3.32%。綜上,多特征動態(tài)融合方法構(gòu)建的高質(zhì)量特征為后續(xù)實驗打下了堅實的基礎(chǔ),各實驗結(jié)果均較使用原始特征作為輸入時有所提升。同時,由單一動態(tài)模型及雙元動態(tài)模型的結(jié)果曲線可知,除m1方法外,雙元動態(tài)模型的效果均比單一動態(tài)模型效果更優(yōu),主要原因是雙元動態(tài)模型使用靜態(tài)特征學(xué)習(xí)結(jié)構(gòu)與動態(tài)特征學(xué)習(xí)結(jié)構(gòu)分別對靜態(tài)融合特征與動態(tài)融合特征進行學(xué)習(xí),可以更好地分工協(xié)同工作,因此使用m1方法時,采用同一結(jié)構(gòu)的單一動態(tài)模型效果較好;反之,雙元動態(tài)模型效果較好。最終,雙元動態(tài)模型的聯(lián)合抽取效果最優(yōu),在測試集上的F1值為79.23%,優(yōu)于改進的NovingTagging模型及單一動態(tài)模型。
圖6、圖7為各模型在SKE及NYT數(shù)據(jù)集上的實驗結(jié)果。由結(jié)果曲線可知,當(dāng)數(shù)據(jù)集為SKE時,雙元動態(tài)模型的效果全面優(yōu)于改進的NovingTagging模型及單一動態(tài)模型,且使用本文方法的不同模型的效果均有提升;當(dāng)數(shù)據(jù)集為NYT時,各模型效果較原始模型均有提升,單一動態(tài)模型使用m1、m2方法時效果優(yōu)于雙元動態(tài)模型,雙元動態(tài)模型使用m3、m4方法時效果優(yōu)于單一動態(tài)模型。對于SKE及NYT數(shù)據(jù)集,單一動態(tài)模型及雙元動態(tài)模型效果均優(yōu)于改進的NovingTagging模型。由圖中模型效果的提升情況可知,對于開源數(shù)據(jù)集SKE及NYT,本文提出的類別特征靜態(tài)融合方法、獎懲機制及多特征動態(tài)融合方法對模型效果的提升具有一定的幫助,證明了本文所提方法的有效性。同時,對于藏醫(yī)藥、SKE及NYT數(shù)據(jù)集,雙元動態(tài)模型均獲得了最佳的效果,證明了雙元動態(tài)模型結(jié)構(gòu)的有效性。
圖6 各模型在SKE數(shù)據(jù)集上的實驗結(jié)果
圖7 各模型在NYT數(shù)據(jù)集上的實驗結(jié)果
通過上文的實驗結(jié)果對比可以了解到不同方法對模型效果的貢獻情況,但對于多特征動態(tài)融合方法,由于其使用了分詞特征及位置特征,兩個特征對模型效果的貢獻不得而知,因此本文以藏醫(yī)藥數(shù)據(jù)作為實驗數(shù)據(jù)設(shè)置了消融實驗,探究分詞特征及位置特征對模型效果的貢獻情況,實驗結(jié)果對比如圖8所示。其中,“seg+pos”表示使用多特征動態(tài)融合方法構(gòu)建的動態(tài)特征,其F1值為75.65%;“seg”表示使用多特征動態(tài)融合方法中的分詞特征,其F1值為75.43%;“pos”表示使用多特征動態(tài)融合方法中的位置特征,其F1值為75.18%。由實驗結(jié)果可以看出,分詞特征較位置特征更為重要,對模型的貢獻更大。通過分析可知,分詞特征僅使用 0、1、2、3 進行詞嵌入,而位置特征使用數(shù)據(jù)集的句子最大長度進行詞嵌入,因此位置特征的詞嵌入空間更大,較分詞特征的詞嵌入空間更發(fā)散,使得融合分詞特征的原始輸入特征更好地增強了實體邊界,因此分詞特征優(yōu)于位置特征,且二者對模型的貢獻率均優(yōu)于原始輸入特征,證明了本文提出的多特征動態(tài)融合方法的有效性。
圖8 多特征動態(tài)融合方法消融實驗結(jié)果對比
本文主要基于聯(lián)合解碼方式構(gòu)建藏醫(yī)藥領(lǐng)域的聯(lián)合抽取端到端模型,針對藏醫(yī)藥領(lǐng)域聯(lián)合抽取任務(wù)存在實體嵌套、抽取效果差的問題,本文結(jié)合深度學(xué)習(xí)及藏醫(yī)藥數(shù)據(jù)特點,提出了四種改進方法: 嵌套實體標(biāo)注策略、類別特征靜態(tài)融合方法、多特征動態(tài)融合方法及獎懲機制。本文在藏醫(yī)藥數(shù)據(jù)上進行實驗的同時,對于開源數(shù)據(jù)集SKE及NYT也進行了實驗,以證明本文提出方法的有效性。
但本文研究還存在著一些不足,用于聯(lián)合抽取任務(wù)的藏醫(yī)藥數(shù)據(jù)集規(guī)模較小,且并未考慮藏文文法對模型效果的影響。在未來的研究中,應(yīng)以提升藏醫(yī)藥領(lǐng)域?qū)嶓w關(guān)系聯(lián)合抽取模型的效果為第一要義,可由藏文文法入手,如藏文依存句法分析,將詞性特征及句法特征用于聯(lián)合抽取,在一定程度上增強輸入特征的質(zhì)量,同時可以為下游任務(wù)的快速應(yīng)用提供高質(zhì)量的保障。