楊陽(yáng)蕊,朱亞萍,劉雪梅,2,陳思思,李慧敏
(1.華北水利水電大學(xué) 信息工程學(xué)院,河南 鄭州 450000;2.黃河流域水資源高效利用省部共建協(xié)同創(chuàng)新中心,河南 鄭州 450000;3.華北水利水電大學(xué) 水利學(xué)院,河南 鄭州 450000)
水利工程搶險(xiǎn)措施是防汛應(yīng)急預(yù)案的重要組成部分[1]。關(guān)于險(xiǎn)情搶護(hù)的一系列知識(shí)散亂分布在各種無結(jié)構(gòu)的水利工程文本中,這些知識(shí)包括險(xiǎn)情部位、連帶險(xiǎn)情、搶護(hù)方法、所需材料等[2],本文稱這些為水利工程搶險(xiǎn)實(shí)體。這些實(shí)體之間的關(guān)系也同時(shí)包含在文本描述中。例如:“橫向裂縫處理采用橫墻隔斷法”,這個(gè)關(guān)系表達(dá)了出現(xiàn)“橫向裂縫”要采取“橫墻隔斷法”進(jìn)行處理?!爱?dāng)無法在臨河堵漏時(shí)采取背水坡導(dǎo)滲排水”這個(gè)關(guān)系表達(dá)了“臨河堵漏”和“背水坡導(dǎo)滲排水”的功能是相似的。這些實(shí)體和關(guān)系一旦被提取出來,就可以組織成三元組和知識(shí)圖譜的結(jié)構(gòu)化形式[3],進(jìn)而為應(yīng)急預(yù)案智能生成、數(shù)字孿生[4]等任務(wù)提供結(jié)構(gòu)化知識(shí)支撐。
有關(guān)研究已經(jīng)開發(fā)了工程文檔智能管理方法以實(shí)現(xiàn)工程文本維護(hù)[5-6]。關(guān)于對(duì)文本內(nèi)容智能提取的研究,例如將Attention融入CBOW模型提取水利水電工程專業(yè)詞[7],采用BILSTM+CRF識(shí)別水網(wǎng)實(shí)體[3],將Word2vec與TFIDF相結(jié)合進(jìn)行水利工程質(zhì)量監(jiān)督文本特征提取[8],這些研究主要集中在單一實(shí)體的提取,但只有實(shí)體無法表達(dá)出實(shí)體與實(shí)體之間的語(yǔ)義關(guān)系[9]。從非結(jié)構(gòu)化文本中提取關(guān)系三元組的現(xiàn)有方法主要有兩種,一是基于規(guī)則或模式匹配的方法[10-12],此方法需要人工觀察所有語(yǔ)句的描述模式并制定適應(yīng)所有語(yǔ)句的匹配規(guī)則,水利工程文本中語(yǔ)句表達(dá)的多樣性,使得人工總結(jié)出適應(yīng)所有句型的規(guī)則變得困難;二是基于序列標(biāo)注的方法[13-15],該方法使用傳統(tǒng)深度學(xué)習(xí)模型進(jìn)行實(shí)體抽取和關(guān)系抽取,需要大規(guī)模標(biāo)注樣本完成模型從無到有的訓(xùn)練[16],而各個(gè)專業(yè)領(lǐng)域的信息抽取研究普遍存在標(biāo)注樣本稀缺問題,傳統(tǒng)深度學(xué)習(xí)模型不具備先驗(yàn)知識(shí),訓(xùn)練樣本類型的局限性導(dǎo)致模型所能處理的問題類型有限。手工為大量語(yǔ)句標(biāo)注實(shí)體和關(guān)系存在著巨大的人力成本,且遠(yuǎn)程監(jiān)督獲取標(biāo)注數(shù)據(jù)的方法[17]需要現(xiàn)存知識(shí)庫(kù)這一前提,在水利工程搶險(xiǎn)任務(wù)上并不滿足。2017年Transformer[18]的提出帶來了ERNIE[19]、T5[20]等大型預(yù)訓(xùn)練語(yǔ)言模型,預(yù)訓(xùn)練+小樣本微調(diào)的遷移學(xué)習(xí)思想在垂直領(lǐng)域的關(guān)系抽取任務(wù)上得到了廣泛關(guān)注[21]。
為了減輕傳統(tǒng)方法帶來的人力成本,本文將水利工程搶險(xiǎn)實(shí)體和關(guān)系抽取視為從序列到序列的生成任務(wù),提出了一種使用大型預(yù)訓(xùn)練語(yǔ)言模型(T5-v.1.1-large)聯(lián)合提取水利工程搶險(xiǎn)實(shí)體和關(guān)系的方法。與傳統(tǒng)深度學(xué)習(xí)模型不同,T5是Google利用其搜索引擎上浩如煙海的開放域語(yǔ)料完成預(yù)訓(xùn)練并開源的語(yǔ)言模型[20],存儲(chǔ)了大量先驗(yàn)知識(shí),可以作為現(xiàn)實(shí)世界實(shí)體和關(guān)系的神經(jīng)知識(shí)庫(kù)[22]。此外,T5可以提供更好的模型初始化和強(qiáng)大的學(xué)習(xí)能力[23]。通過使用一小組任務(wù)相關(guān)的訓(xùn)練數(shù)據(jù)對(duì)T5進(jìn)行微調(diào),通用語(yǔ)義信息結(jié)合水利工程搶險(xiǎn)領(lǐng)域語(yǔ)義信息,也即是預(yù)訓(xùn)練(通用信息)+微調(diào)(領(lǐng)域信息)的最新范式,可以使T5具有識(shí)別出當(dāng)前語(yǔ)句中存在的水利工程搶險(xiǎn)實(shí)體和關(guān)系的能力。例如:“每隔10分鐘巡視一次,同時(shí),對(duì)滑坡處24小時(shí)看護(hù)”,句子中通用時(shí)間信息(10分鐘、24小時(shí))與水利工程搶險(xiǎn)領(lǐng)域知識(shí)(巡視、滑坡處)結(jié)合,可提取出“隔10分鐘巡視”與“滑坡處24小時(shí)看護(hù)”的完整實(shí)體,并通過語(yǔ)義分析出二者之間的“協(xié)作”關(guān)系,從而得到意思表達(dá)完整的〈隔10分鐘巡視,協(xié)作,滑坡處24小時(shí)看護(hù)〉三元組結(jié)構(gòu)化知識(shí)。此外,當(dāng)使用一小組任務(wù)相關(guān)數(shù)據(jù)激活大模型對(duì)水利工程搶險(xiǎn)知識(shí)的認(rèn)知后,T5具有先驗(yàn)知識(shí)的優(yōu)勢(shì)在提取非連續(xù)實(shí)體時(shí)表現(xiàn)尤為明顯。例如:“庫(kù)區(qū)出現(xiàn)漂船、漂木等難以通過泄洪道的漂移物體”,句子中并列語(yǔ)義結(jié)合“庫(kù)區(qū)、漂移物體”等領(lǐng)域信息,可提取出“庫(kù)區(qū)漂船、庫(kù)區(qū)漂木”這些在傳統(tǒng)方法中難以提取的非連續(xù)險(xiǎn)情實(shí)體。在近期通用信息抽取(UIE)[24]工作的啟發(fā)下,本文采用了將實(shí)體和關(guān)系進(jìn)行聯(lián)合抽取的統(tǒng)一框架。然而,UIE中的T5面對(duì)復(fù)雜句子,尤其是包含多種實(shí)體類型和關(guān)系的冗長(zhǎng)且模棱兩可的句子時(shí)會(huì)出現(xiàn)錯(cuò)誤,因?yàn)樗皇褂冒嘘P(guān)系類型的靜態(tài)提示序列來指導(dǎo)T5識(shí)別出輸入語(yǔ)句中的目標(biāo)實(shí)體和關(guān)系。當(dāng)面對(duì)復(fù)雜句子時(shí),需要識(shí)別的關(guān)系類型越多,它所遭受的噪音就越多。針對(duì)靜態(tài)提示的噪聲問題,本文受提示調(diào)整方法[25]啟發(fā)設(shè)計(jì)了動(dòng)態(tài)提示生成器,它根據(jù)實(shí)際輸入語(yǔ)句中潛在的少量關(guān)系為當(dāng)前輸入語(yǔ)句生成動(dòng)態(tài)提示,而不是對(duì)所有句子都使用相同的靜態(tài)提示。由于動(dòng)態(tài)提示縮小了提示范圍,過濾掉了造成干擾的關(guān)系類型,降低了噪聲,因此可以提高水利工程搶險(xiǎn)實(shí)體和關(guān)系的提取精度。融合“聯(lián)合抽取”和“動(dòng)態(tài)提示”思想,設(shè)計(jì)了水利工程搶險(xiǎn)實(shí)體和關(guān)系聯(lián)合抽取框架——WRERJE,它由動(dòng)態(tài)提示生成器和實(shí)體關(guān)系聯(lián)合抽取器兩部分組成。動(dòng)態(tài)提示生成器的內(nèi)核是基于預(yù)訓(xùn)練掩碼語(yǔ)言模型(BERT)[26]的文本分類器,用于對(duì)輸入語(yǔ)句進(jìn)行預(yù)分類,每一個(gè)類別代表水利工程搶險(xiǎn)實(shí)體之間的一類關(guān)系。動(dòng)態(tài)提示生成器根據(jù)當(dāng)前語(yǔ)句中潛在的前N個(gè)關(guān)系生成動(dòng)態(tài)提示序列,將此序列輸入到由T5實(shí)現(xiàn)的實(shí)體關(guān)系聯(lián)合抽取器中。針對(duì)水利工程搶險(xiǎn)領(lǐng)域標(biāo)注樣本稀少問題,本文采取基于依賴動(dòng)詞替換和基于隨機(jī)插入的方法進(jìn)行領(lǐng)域數(shù)據(jù)增強(qiáng)[27-28],以獲得相對(duì)多的標(biāo)注樣本來提升模型魯棒性[29]。最后以水庫(kù)防洪任務(wù)中的堤防和大壩等水利工程文本為主要實(shí)驗(yàn)數(shù)據(jù),通過實(shí)驗(yàn)對(duì)WRERJE性能進(jìn)行測(cè)試,同時(shí)評(píng)估了兩種文本數(shù)據(jù)增強(qiáng)策略的有效性。
2.1 初始語(yǔ)料收集本文以堤防防汛搶險(xiǎn)手冊(cè)、水利工程施工技術(shù)要點(diǎn)、近20個(gè)水庫(kù)的防洪預(yù)案文本作為初始數(shù)據(jù)源。所需的目標(biāo)語(yǔ)句為水利工程搶險(xiǎn)領(lǐng)域的非結(jié)構(gòu)化文本描述,首先對(duì)文本中存在的冗余描述進(jìn)行段落級(jí)篩選,利用PyLTP對(duì)篩選后得到的目標(biāo)段落以句號(hào)為分隔符進(jìn)行分句處理。為了確保所得句子的有效性,對(duì)其進(jìn)行句子級(jí)別的二次處理,處理指對(duì)于以句號(hào)分隔后仍然過長(zhǎng)的句子,以句子中的逗號(hào)為分隔符做二次分句,并過濾掉與水利工程搶險(xiǎn)知識(shí)無關(guān)的描述。處理后的目標(biāo)語(yǔ)句都是長(zhǎng)度適中,且與水利工程搶險(xiǎn)知識(shí)相關(guān)的描述。
2.2 數(shù)據(jù)模式定義垂直領(lǐng)域數(shù)據(jù)模式(Schema)的定義需要依賴領(lǐng)域?qū)I(yè)知識(shí)[30]。水利工程搶險(xiǎn)任務(wù)涉及到的實(shí)體類型定義為“部位、險(xiǎn)情、方法、物料”,觀察目標(biāo)語(yǔ)句中的語(yǔ)義描述,定義出這些實(shí)體類型之間潛在的6種關(guān)系類型。
“現(xiàn)象”關(guān)系類型,即某一工程部位出現(xiàn)了某種險(xiǎn)情,則將部位類型與險(xiǎn)情類型之間定義為“現(xiàn)象”關(guān)系。
“連帶”關(guān)系類型,即某一工程險(xiǎn)情的出現(xiàn)可能會(huì)導(dǎo)致另一種工程險(xiǎn)情的發(fā)生,則將此類險(xiǎn)情之間定義為連帶關(guān)系。
“采取”關(guān)系類型,即出現(xiàn)某一工程險(xiǎn)情時(shí)需采取某種方法來進(jìn)行搶護(hù),則將險(xiǎn)情類型與方法類型之間定義為采取的關(guān)系。
“功能相似”關(guān)系類型,即兩種方法的功能是相似的,當(dāng)實(shí)施第一種方法比較困難時(shí),可用另一種方法替代去實(shí)現(xiàn)相同的功能,則將此類方法之間定義為功能相似的關(guān)系。
“功能協(xié)作”關(guān)系類型,即需要同時(shí)實(shí)施兩種方法協(xié)作去完成一個(gè)任務(wù),則將這類實(shí)體之間定義為功能協(xié)作關(guān)系。
“使用”關(guān)系類型,即在險(xiǎn)情搶護(hù)過程中實(shí)施某種方法時(shí)需要使用某種物料,則將方法類型與物料類型之間定義為使用關(guān)系。
以上關(guān)系類型的語(yǔ)句實(shí)例如表1所示。
表1 各關(guān)系類型實(shí)例
根據(jù)信息抽取任務(wù)端到端結(jié)構(gòu)生成思想,將異構(gòu)的水利工程搶險(xiǎn)實(shí)體抽取和關(guān)系抽取任務(wù)統(tǒng)一建模為序列到序列生成任務(wù)[31],并提出了一種使用動(dòng)態(tài)提示的水利工程搶險(xiǎn)實(shí)體和關(guān)系聯(lián)合抽取框架——WRERJE。該框架使用“編碼-解碼(E-D)”思路進(jìn)行工作,包含兩部分核心組件組成,分別是動(dòng)態(tài)提示生成器和實(shí)體關(guān)系聯(lián)合抽取器,如圖1所示。動(dòng)態(tài)提示生成器結(jié)合預(yù)先定義的schema為當(dāng)前輸入語(yǔ)句生成動(dòng)態(tài)提示序列,動(dòng)態(tài)提示序列引導(dǎo)實(shí)體關(guān)系聯(lián)合抽取器從當(dāng)前輸入語(yǔ)句中同時(shí)抽取出水利工程搶險(xiǎn)實(shí)體和關(guān)系。
注:圖中E1,E2,E3,…,E24與D1,D2,D3,…,D24分別為24層編碼與24層解碼。圖1 WRERJE總體框架
3.1 動(dòng)態(tài)提示生成器
3.1.1 動(dòng)態(tài)提示序列組成 動(dòng)態(tài)提示序列由實(shí)體類型和關(guān)系類型結(jié)合當(dāng)前輸入語(yǔ)句共同構(gòu)成,實(shí)體類型、關(guān)系類型與輸入語(yǔ)句的標(biāo)識(shí)分別定義為[spot]、[asso]與[text],三類組成部分分別由相應(yīng)標(biāo)識(shí)進(jìn)行標(biāo)注。例如,“[spot]部位[spot]險(xiǎn)情[spot]方法[asso]現(xiàn)象[asso]采取[text]壩頂若有漫溢危險(xiǎn)時(shí),應(yīng)及時(shí)搶筑子埝”,其中由[spot]標(biāo)注的“部位、險(xiǎn)情、方法”指實(shí)體類型,[asso]標(biāo)注的“現(xiàn)象、采取”指發(fā)生部位與險(xiǎn)情之間的現(xiàn)象關(guān)系,以及險(xiǎn)情與所用方法之間的采取關(guān)系。一個(gè)輸入語(yǔ)句中有可能包含多種關(guān)系,動(dòng)態(tài)提示序列能夠指導(dǎo)抽取器同時(shí)抽取句子中存在的多個(gè)關(guān)系三元組。注意,例子中只展示了Schema中定義的部分實(shí)體類型與關(guān)系類型。在實(shí)驗(yàn)部分第一個(gè)基準(zhǔn)模型WRERJEw/oDP的實(shí)際輸入中,提示序列應(yīng)包含2.2節(jié)定義的Schema中全部關(guān)系類型。
3.1.2 動(dòng)態(tài)提示序列生成 通常情況下,一個(gè)輸入語(yǔ)句中不會(huì)同時(shí)包含全部的關(guān)系類型。靜態(tài)的提示序列包含Schema中定義的所有關(guān)系類型,關(guān)系類型越多,實(shí)體關(guān)系聯(lián)合抽取器接收到的噪聲就越多。這對(duì)確定輸入語(yǔ)句中包含的水利工程搶險(xiǎn)實(shí)體屬于哪類關(guān)系造成了干擾,在面對(duì)較長(zhǎng)且表達(dá)模糊的句子時(shí)干擾更為嚴(yán)重。因此,通過動(dòng)態(tài)提示去縮小提示范圍,更具有指導(dǎo)意義。如圖1(Ⅱ)所示,動(dòng)態(tài)提示序列只包含當(dāng)前輸入語(yǔ)句中最可能存在的前N個(gè)關(guān)系類型,前N個(gè)關(guān)系類型通過動(dòng)態(tài)提示生成器確定。
動(dòng)態(tài)提示生成器的內(nèi)核是基于Bert的文本分類器[32],因?yàn)锽ert中CLS標(biāo)記的隱藏向量可以更好的表示句子特征,將該向量輸入線性分類層,得到所有關(guān)系類別的概率P,選取前N個(gè)關(guān)系類型為當(dāng)前輸入語(yǔ)句生成候選關(guān)系列表?;贐ert實(shí)現(xiàn)的動(dòng)態(tài)提示生成器如圖2。動(dòng)態(tài)提示序列生成過程可表示為:
圖2 動(dòng)態(tài)提示生成器
DG([x1,x2,…,xx])=[I1,I2,…,II]
(1)
式中:DG為動(dòng)態(tài)提示生成器(函數(shù));X=[x1,x2,…,xx]為當(dāng)前輸入語(yǔ)句;[I1,I2,…,II]為生成的動(dòng)態(tài)提示序列,其具體形式可表示為:
(2)
式中:entitytype為實(shí)體類型;relationtype為關(guān)系類型。
動(dòng)態(tài)提示生成器旨在縮小指導(dǎo)范圍并提供有可能的候選關(guān)系列表,而不做最終關(guān)系類型的確定。若當(dāng)前語(yǔ)句中包含的水利工程搶險(xiǎn)實(shí)體之間不存在關(guān)系,抽取器并不會(huì)從不正確的候選關(guān)系類型中盲目選擇,并強(qiáng)制附加到實(shí)體。例如圖1(I)2語(yǔ)句,即使動(dòng)態(tài)提示生成器為該語(yǔ)句生成了“現(xiàn)象、連帶、使用”的候選關(guān)系列表,但該語(yǔ)句中包含的險(xiǎn)情“漏洞”和部位“附近堤坡”之間并不存在實(shí)際關(guān)系,抽取器不會(huì)為之強(qiáng)制附加關(guān)系。過多的候選關(guān)系依舊會(huì)造成干擾,過少的候選關(guān)系則很可能過濾掉正確的關(guān)系類型,因此選取合適的N是動(dòng)態(tài)提示生成器的關(guān)鍵。
3.2 實(shí)體關(guān)系聯(lián)合抽取器
3.2.1 結(jié)構(gòu)化抽取語(yǔ)言 異構(gòu)任務(wù)編碼成統(tǒng)一表示形式是將實(shí)體和關(guān)系進(jìn)行聯(lián)合抽取需要解決的問題之一。采用一種結(jié)構(gòu)化抽取語(yǔ)言(Structured Extraction Language,SEL)[24],將實(shí)體抽取任務(wù)和關(guān)系抽取任務(wù)的結(jié)構(gòu)編碼成統(tǒng)一表示形式,從而可以在序列到序列的生成框架中統(tǒng)一建模異構(gòu)的水利工程搶險(xiǎn)實(shí)體抽取和關(guān)系抽取任務(wù)。輸入序列指動(dòng)態(tài)提示序列,生成序列指SEL。SEL序列是由“Spot Name、Asso Name、Info Span”三種元素組成的層次結(jié)構(gòu),來對(duì)不同信息抽取任務(wù)的結(jié)構(gòu)進(jìn)行編碼。其中“Spot Name”表示實(shí)體類型,“Asso Name”表示關(guān)系類型,“Info Span”表示特定類型下的實(shí)例對(duì)象。實(shí)例如圖3。
圖3 結(jié)構(gòu)化抽取語(yǔ)言圖示
3.2.2 SEL序列生成 水利工程搶險(xiǎn)實(shí)體和關(guān)系聯(lián)合抽取器是一個(gè)序列到序列的生成框架,生成過程可表示為:
ERJE([I1,I2,…,II])=[y1,y2,…,yy]
(3)
式中:ERJE指實(shí)體關(guān)系聯(lián)合抽取器,由基于Transformer的T5實(shí)現(xiàn);I=[I1,I2,…,II]為輸入的動(dòng)態(tài)提示序列;Y=[y1,y2,…,yy]為生成序列,即包含水利工程搶險(xiǎn)實(shí)體和關(guān)系的SEL序列。在WRERJE框架中,將動(dòng)態(tài)提示生成器所生成的序列I輸入到T5中,由T5生成Y序列,從而獲得水利工程搶險(xiǎn)實(shí)體和關(guān)系的三元組知識(shí)。
總的來說,WRERJE使用“編碼-解碼”思路進(jìn)行工作。具體為將動(dòng)態(tài)提示序列I輸送到T5,由T5計(jì)算I=[I1,I2,…,II]的隱向量H,計(jì)算過程可表示為:
H=Encoder(I1,I2,…,II)
(4)
(5)
式中Dncoder即解碼器,是Transformer架構(gòu)中的Dncoder模塊,用于預(yù)測(cè)yi的條件概率P,概率P的具體表達(dá)式為:
P=P(yi|y1,y2,…,y(i-1),I)
(6)
式中:y1,y2,…,y(i-1)為前i-1個(gè)輸出;I為輸入到T5的動(dòng)態(tài)提示序列。
3.3 主干模型訓(xùn)練
3.3.1 數(shù)據(jù)預(yù)處理 根據(jù)2.2節(jié)中定義的Schema對(duì)收集到的目標(biāo)語(yǔ)句進(jìn)行標(biāo)注,標(biāo)注的同時(shí)進(jìn)一步驗(yàn)證句子是否準(zhǔn)確包含水利工程搶險(xiǎn)實(shí)體以及實(shí)體間語(yǔ)義關(guān)系。標(biāo)注時(shí)不要求每個(gè)句子中實(shí)體之間都必須包含關(guān)系,只要該句子包含水利工程搶險(xiǎn)相關(guān)實(shí)體,即認(rèn)為該句子可用。標(biāo)注員明確具有水利工程搶險(xiǎn)領(lǐng)域的專業(yè)知識(shí),可以對(duì)語(yǔ)句中是否含有水利工程搶險(xiǎn)相關(guān)實(shí)體及語(yǔ)義關(guān)系進(jìn)行驗(yàn)證并識(shí)別。為保證數(shù)據(jù)標(biāo)注的一致性,將6名標(biāo)注員分為3組,每組內(nèi)2名標(biāo)注員標(biāo)注相同的句子。在標(biāo)注完成之后由2名作者來處理標(biāo)注結(jié)果的沖突,使用kappa系數(shù)來衡量結(jié)果一致性,計(jì)算kappa系數(shù)值為0.837,即認(rèn)為標(biāo)注結(jié)果幾乎一致[33]。最終得到1652條有效標(biāo)注樣本,其中247條只包含實(shí)體,實(shí)體間不存在語(yǔ)義關(guān)聯(lián),1405條包含實(shí)體同時(shí)實(shí)體間具有語(yǔ)義關(guān)系。
3.3.2 數(shù)據(jù)增強(qiáng) 規(guī)范的標(biāo)注數(shù)據(jù)集讓W(xué)RERJE學(xué)習(xí)到普通情況下水利工程搶險(xiǎn)實(shí)體與其語(yǔ)義關(guān)系特征。由于漢字的多義性和文字輸入的隨機(jī)性,非正式的水利工程搶險(xiǎn)文本難免存在隨機(jī)錯(cuò)別字或描述模糊等噪聲現(xiàn)象。為了提高WRERJE從噪聲數(shù)據(jù)中識(shí)別目標(biāo)實(shí)體及其語(yǔ)義關(guān)系的能力,設(shè)計(jì)了兩種文本數(shù)據(jù)增強(qiáng)策略以增加訓(xùn)練數(shù)據(jù)中的噪聲數(shù)據(jù),提升模型的魯棒性。
(1)依賴動(dòng)詞替換。使用PyLTP來定位語(yǔ)句中的動(dòng)詞,然后用同義詞替換這些動(dòng)詞。例如在“可用棉被順坡鋪蓋”中,將“鋪蓋”替換為“覆蓋”,在“上面再壓土袋”中將“壓”替換為“堆”。這些替換并不會(huì)改變句子語(yǔ)義,因此可以基于此方式獲得同一關(guān)系類型的更多不同的描述,使WRERJE學(xué)習(xí)到更多樣的特征。
(2)隨機(jī)插入。基于隨機(jī)插入的數(shù)據(jù)增強(qiáng)方式本質(zhì)是在規(guī)整的數(shù)據(jù)集中加入一定的噪聲。首先定位語(yǔ)句中的一個(gè)詞,然后將這個(gè)詞的同義詞插入到語(yǔ)句中的隨機(jī)位置。此方法可獲取更多描述模糊但實(shí)體和關(guān)系均正確標(biāo)注的語(yǔ)句,學(xué)習(xí)此類語(yǔ)句可使WRERJE擁有從模棱兩可的句子中準(zhǔn)確識(shí)別出水利工程搶險(xiǎn)實(shí)體和關(guān)系的能力。
將1652條有效標(biāo)注樣本,以7∶3的比例劃分,得到1159條語(yǔ)句作為初始訓(xùn)練集,493條語(yǔ)句作為初始測(cè)試集。將以上文本數(shù)據(jù)增強(qiáng)策略分別應(yīng)用于初始訓(xùn)練集和初始測(cè)試集,兩種數(shù)據(jù)集分別進(jìn)行增強(qiáng)以確保突變前后的語(yǔ)句在同一類數(shù)據(jù)集中,防止發(fā)生數(shù)據(jù)泄露[34]。經(jīng)過增強(qiáng)策略后得到包含3471條語(yǔ)句的最終訓(xùn)練集和包含1485條語(yǔ)句的最終測(cè)試集。最終訓(xùn)練集用于微調(diào)T5,最終測(cè)試集用于測(cè)試微調(diào)后T5的性能。此外,從最終訓(xùn)練集中選擇包含實(shí)體且實(shí)體間具有語(yǔ)義關(guān)系的2953條語(yǔ)句作為分類器訓(xùn)練集,從最終測(cè)試集中選擇包含實(shí)體且實(shí)體間具有語(yǔ)義關(guān)系的1265條語(yǔ)句作為分類器測(cè)試集。
3.3.3 基于Bert的分類器訓(xùn)練 將Schema中定義的6種關(guān)系建為語(yǔ)句上的6個(gè)離散標(biāo)簽,基于Bert的分類器進(jìn)行句子級(jí)預(yù)分類,得到每個(gè)輸入語(yǔ)句最可能的N種關(guān)系類型,動(dòng)態(tài)提示生成器根據(jù)N種關(guān)系類型生成相應(yīng)的動(dòng)態(tài)提示序列。
分類器由Bert結(jié)合線形層組成。存在6種關(guān)系類型,線性層的輸出維度設(shè)置為6。使用分類器訓(xùn)練集對(duì)分類器進(jìn)行訓(xùn)練。將語(yǔ)句作為Bert的輸入,從CLS字段中獲得隱藏向量VL,從CLS中獲取的隱藏向量VL相比其他位置能更好的表征句子特征,從而獲得更好的分類性能。然后將VL輸送到線性層中,該線性層生成6維向量,每個(gè)維度各對(duì)應(yīng)一個(gè)關(guān)系類型。在反向傳播中,使用交叉熵?fù)p失調(diào)整Bert與線性層參數(shù)。損失函數(shù)為:
(7)
式中μ=(μ0,μ1,…,μr-1)表示線性層的輸出結(jié)果,r為句子的真實(shí)標(biāo)簽。
3.3.4 基于T5的聯(lián)合抽取器微調(diào) WRERJE框架的設(shè)計(jì)思想是將抽取任務(wù)視為序列到序列的生成任務(wù),生成式語(yǔ)言模型T5被證實(shí)具有捕獲豐富語(yǔ)義信息的能力[35],并且在各種下游NLP任務(wù)中表現(xiàn)出了良好的性能。本文的抽取器基于大型預(yù)訓(xùn)練語(yǔ)言模型T5(T5-v1.1-large)實(shí)現(xiàn)。
為了微調(diào)T5,將最終訓(xùn)練集中的每個(gè)句子轉(zhuǎn)換為SEL序列,將其輸入動(dòng)態(tài)提示生成器以獲取動(dòng)態(tài)提示序列I,最后構(gòu)建帶標(biāo)簽的語(yǔ)料庫(kù):De={(I,y)},在帶標(biāo)簽的語(yǔ)料庫(kù)上,使用學(xué)習(xí)率為10-4的Adam優(yōu)化器和教師強(qiáng)制(teacher-forcing)交叉熵?fù)p失,損失函數(shù)為:
(8)
式中θe、θd分別為編碼器和解碼器參數(shù)。
4.1 數(shù)據(jù)集數(shù)據(jù)集共有3組,第1組為由標(biāo)注員標(biāo)注出水利工程搶險(xiǎn)實(shí)體和相關(guān)語(yǔ)義關(guān)系的初始數(shù)據(jù)集,其中247條只包含實(shí)體,1405條同時(shí)包含實(shí)體和關(guān)系。第2組為應(yīng)用了兩種文本數(shù)據(jù)增強(qiáng)策略之后的最終數(shù)據(jù)集,其中741條只包含實(shí)體,4218條同時(shí)包含實(shí)體和關(guān)系。第3組為從最終數(shù)據(jù)集中選擇的同時(shí)包含實(shí)體和關(guān)系的4218條分類器數(shù)據(jù)集。3組數(shù)據(jù)集的訓(xùn)練集和測(cè)試集比例為7∶3,具體如表2。
表2 數(shù)據(jù)集設(shè)置
4.2 動(dòng)態(tài)提示關(guān)系類型最佳數(shù)目N的選擇如3.1.2節(jié)所述,給定輸入句子,動(dòng)態(tài)提示生成器使用基于Bert的分類器對(duì)當(dāng)前輸入句子進(jìn)行預(yù)分類,以生成一組候選關(guān)系列表,然后將其封裝進(jìn)動(dòng)態(tài)提示序列中以引導(dǎo)隨后的實(shí)體關(guān)系聯(lián)合抽取器。此實(shí)驗(yàn)的目的是確定動(dòng)態(tài)提示中應(yīng)包含的關(guān)系類型的最佳數(shù)目N,即多少種候選關(guān)系類型可以為實(shí)體關(guān)系聯(lián)合抽取器提供最有效的提示。
4.3 數(shù)據(jù)增強(qiáng)策略的有效性檢驗(yàn)為了減少人工標(biāo)記工作并改善模型訓(xùn)練,設(shè)計(jì)了如3.3.2節(jié)中所述的兩種數(shù)據(jù)增強(qiáng)策略。通過實(shí)驗(yàn)檢驗(yàn),經(jīng)兩種數(shù)據(jù)增強(qiáng)策略獲得的描述模糊但標(biāo)注正確的語(yǔ)句是否可以提高WRERJE對(duì)水利工程搶險(xiǎn)實(shí)體和關(guān)系的抽取能力,以驗(yàn)證兩種數(shù)據(jù)增強(qiáng)策略的有效性。
4.4 基準(zhǔn)模型對(duì)比實(shí)驗(yàn)設(shè)置
4.4.1 動(dòng)態(tài)提示有效性檢驗(yàn) WRERJE框架的設(shè)計(jì)使用了“動(dòng)態(tài)提示”方法。因此,將動(dòng)態(tài)提示方法與靜態(tài)提示方法進(jìn)行對(duì)比,以檢驗(yàn)WRERJE工作的有效性。有效的動(dòng)態(tài)提示由最合適的N種關(guān)系類型組成,將其與包含全部關(guān)系類型的靜態(tài)提示進(jìn)行實(shí)驗(yàn)對(duì)比。為此,實(shí)現(xiàn)了一個(gè)使用靜態(tài)提示的基準(zhǔn)模型WRERJEw/oDP。
4.4.2 聯(lián)合抽取的有效性檢驗(yàn) 單任務(wù)抽取指分別進(jìn)行水利工程搶險(xiǎn)領(lǐng)域的實(shí)體抽取任務(wù)與關(guān)系抽取任務(wù)。WRERJE是將實(shí)體抽取任務(wù)和關(guān)系抽取任務(wù)統(tǒng)一建模的多任務(wù)框架,為驗(yàn)證聯(lián)合抽取的有效性,實(shí)現(xiàn)了第二個(gè)基準(zhǔn)模型WRERJEsingle,它將水利工程搶險(xiǎn)實(shí)體抽取和關(guān)系抽取分離為兩個(gè)獨(dú)立的任務(wù),定義特定于獨(dú)立任務(wù)的Schema,僅針對(duì)單一任務(wù)對(duì)模型進(jìn)行微調(diào)。對(duì)于水利工程搶險(xiǎn)實(shí)體抽取任務(wù),Schema中只含“部位、險(xiǎn)情、方法、材料”4種實(shí)體類型。對(duì)于水利工程搶險(xiǎn)關(guān)系抽取任務(wù),Schema中只含“現(xiàn)象、連帶、采取、功能相似、功能協(xié)作、使用”6種關(guān)系類型。WRERJEsingle進(jìn)行關(guān)系抽取任務(wù)時(shí),依然采取動(dòng)態(tài)提示,即選擇Schema中最佳的N種關(guān)系類型作為提示。最后將實(shí)體識(shí)別的結(jié)果與關(guān)系抽取的結(jié)果合并作為最終結(jié)果。例如,從“輸水洞洞身存在未處理的裂縫”語(yǔ)句中識(shí)別出的實(shí)體有“輸水洞洞身”和“裂縫”,從中抽取出的語(yǔ)義關(guān)系“現(xiàn)象”,將其合并為(輸水洞洞身,現(xiàn)象,裂縫)作為最終三元組。
4.4.3 大型預(yù)訓(xùn)練語(yǔ)言模型先驗(yàn)知識(shí)的有效性檢驗(yàn) WRERJE框架中聯(lián)合抽取器的主干模型為T5-v.1.1-large,為驗(yàn)證大型預(yù)訓(xùn)練模型所具備先驗(yàn)知識(shí)的有效性,設(shè)計(jì)了第三個(gè)基準(zhǔn)模型WRERJEbase,它用輕量級(jí)T5-v.1.1-base模型作為聯(lián)合抽取器,依然使用動(dòng)態(tài)提示。將WRERJE與WRERJEbase同在第二組數(shù)據(jù)集上進(jìn)行訓(xùn)練與測(cè)試,以驗(yàn)證大型預(yù)訓(xùn)練語(yǔ)言模型的先驗(yàn)知識(shí)對(duì)抽取性能的影響。
5.1 動(dòng)態(tài)提示關(guān)系類型最佳數(shù)目N的選擇結(jié)果依次選取1到5中的每個(gè)數(shù)字作為動(dòng)態(tài)提示生成器中候選關(guān)系類型的數(shù)目進(jìn)行實(shí)驗(yàn),每次實(shí)驗(yàn)均使用第2組數(shù)據(jù)集對(duì)WRERJE進(jìn)行微調(diào),且在同一測(cè)試集下進(jìn)行測(cè)試。不對(duì)N=6進(jìn)行檢驗(yàn),因?yàn)镹=6本質(zhì)上等同于將所有關(guān)系類型都封裝進(jìn)提示序列的靜態(tài)提示。不同N值的實(shí)驗(yàn)結(jié)果如表3。
表3 不同N值的實(shí)驗(yàn)結(jié)果
表中P為精確率(識(shí)別正確實(shí)體關(guān)系數(shù)量與識(shí)別實(shí)體關(guān)系總數(shù)量之比)、R為召回率(識(shí)別正確實(shí)體關(guān)系數(shù)量與總實(shí)體關(guān)系數(shù)量之比),F(xiàn)1為二者的調(diào)和平均值,以F1為主要評(píng)價(jià)指標(biāo);實(shí)驗(yàn)結(jié)果表明更改N值對(duì)模型進(jìn)行實(shí)體識(shí)別影響較小,因?yàn)镹表示動(dòng)態(tài)提示中關(guān)系類型的數(shù)量,它不直接影響實(shí)體的識(shí)別。在N=3時(shí),WRERJE達(dá)到水利工程搶險(xiǎn)實(shí)體識(shí)別的最佳性能,此時(shí)F1值為78.10。對(duì)于關(guān)系抽取,更改N值對(duì)P和R都有較明顯的影響。從N=1開始,隨著N值增加,關(guān)系抽取的P和R都會(huì)提高,直到N=3。當(dāng)N=3時(shí),WRERJE的P、R和F1值均達(dá)到最高值。為了更直觀展示更改N值對(duì)WRERJE進(jìn)行關(guān)系抽取性能的影響,圖4以折線圖的形式展示了不同N值下實(shí)體和關(guān)系抽取任務(wù)中F1值的變化趨勢(shì)。
圖4 不同N值下F1指標(biāo)的變化趨勢(shì)
實(shí)驗(yàn)結(jié)果表明動(dòng)態(tài)提示序列中關(guān)系類型最佳數(shù)目為3。正如3.1.2節(jié)中所述,動(dòng)態(tài)提示生成器不做最終關(guān)系類型的確定,只為聯(lián)合抽取器提供一個(gè)候選關(guān)系列表。當(dāng)N小于3時(shí),WRERJE在關(guān)系提取任務(wù)上的F1值偏低,是因?yàn)榉秶^小的提示可能會(huì)遺漏正確的關(guān)系類型。例如“非正常滲漏導(dǎo)致壩體、壩基發(fā)生管涌、流土或脫坡”語(yǔ)句,分類器預(yù)測(cè)的前3個(gè)候選關(guān)系列表為“現(xiàn)象、功能相似、連帶”。當(dāng)N=2時(shí),處于列表中第三個(gè)位置的“連帶”關(guān)系會(huì)被分類器忽略。導(dǎo)致抽取器不能正確抽取出“非正常滲漏”與“管涌、流土、脫坡”之間的連帶關(guān)系。
反之,當(dāng)N大于3時(shí),由于候選關(guān)系列表范圍太大,包含過多不正確的關(guān)系類型,噪聲數(shù)據(jù)給聯(lián)合抽取器造成誤導(dǎo),使其在關(guān)系抽取上的F1值偏低。綜上,動(dòng)態(tài)提示關(guān)系類型最佳數(shù)目為N=3。
5.2 數(shù)據(jù)增強(qiáng)策略的有效性檢驗(yàn)結(jié)果設(shè)計(jì)WRERJEwda和WRERJEw/oda兩種場(chǎng)景以進(jìn)行數(shù)據(jù)增強(qiáng)策略的有效性檢驗(yàn),WRERJEw/oda在第1組未經(jīng)增強(qiáng)的訓(xùn)練集上接受訓(xùn)練,WRERJEwda在經(jīng)過數(shù)據(jù)增強(qiáng)后的第2組訓(xùn)練集上進(jìn)行訓(xùn)練。WRERJEwda和WRERJEw/oda最終都在第2組測(cè)試集上進(jìn)行測(cè)試。實(shí)驗(yàn)結(jié)果如表4所示。
表4 數(shù)據(jù)增強(qiáng)策略對(duì)WRERJE性能的影響
實(shí)驗(yàn)結(jié)果顯示,在水利工程搶險(xiǎn)實(shí)體抽取上,WRERJEwda的精確率、召回率和F1值分別為79.41、77.46和78.42,經(jīng)過數(shù)據(jù)增強(qiáng)策略后的訓(xùn)練集在實(shí)體抽取上的F1值比WRERJEw/oda模型提高了約2.96。在水利工程搶險(xiǎn)關(guān)系抽取上,WRERJEwda的精確率、召回率和F1值分別為77.0、79.47和78.22,各項(xiàng)指標(biāo)均顯著高于WRERJEw/oda。WRERJEw/oda采用了未經(jīng)增強(qiáng)的第一組訓(xùn)練集進(jìn)行訓(xùn)練,模型只學(xué)習(xí)到了普通情況下的數(shù)據(jù)特征,因此模型魯棒性不如WRERJEwda。以上結(jié)果證實(shí)了使用一些描述模糊但標(biāo)注正確的句子對(duì)模型進(jìn)行微調(diào)有利于提升WRERJE對(duì)正確和非正確實(shí)體與關(guān)系的區(qū)分能力,驗(yàn)證了數(shù)據(jù)增強(qiáng)策略的有效性。
5.3 基準(zhǔn)模型對(duì)比實(shí)驗(yàn)結(jié)果將WRERJE與三種基準(zhǔn)模型WRERJEsingle、WRERJEw/oDP和WRERJEbase進(jìn)行對(duì)比,以檢驗(yàn)動(dòng)態(tài)提示、聯(lián)合抽取與大型預(yù)訓(xùn)練模型先驗(yàn)知識(shí)的有效性?;鶞?zhǔn)模型有關(guān)配置如4.4節(jié)所述,所有模型均在第2組數(shù)據(jù)集上進(jìn)行訓(xùn)練和測(cè)試。各模型性能對(duì)比實(shí)驗(yàn)結(jié)果如表5。
表5 基準(zhǔn)模型性能對(duì)比實(shí)驗(yàn)結(jié)果
從表5中可以看出WRERJE對(duì)于實(shí)體抽取的各項(xiàng)指標(biāo)均高于基于靜態(tài)提示的WRERJEw/oDP模型和基于輕量級(jí)T5-v.1.1-base的WRERJEbase模型,WRERJE對(duì)于實(shí)體抽取的F1值僅比最佳模型WRERJEsingle略低0.27,但WRERJE對(duì)于關(guān)系抽取的F1值比WRERJEsingle高出6.88。實(shí)驗(yàn)結(jié)果表明,大型預(yù)訓(xùn)練語(yǔ)言模型(T5-v.1.1-large)具備的通用語(yǔ)義信息結(jié)合了水利工程搶險(xiǎn)領(lǐng)域語(yǔ)義信息后,能夠使WRERJE在該領(lǐng)域?qū)嶓w和關(guān)系聯(lián)合抽取上表現(xiàn)出較WRERJEbase更優(yōu)的性能。動(dòng)態(tài)提示對(duì)水利工程搶險(xiǎn)實(shí)體抽取影響不大,但是可以顯著提高對(duì)搶險(xiǎn)關(guān)系抽取的能力。將實(shí)體抽取和關(guān)系抽取任務(wù)聯(lián)合對(duì)預(yù)訓(xùn)練語(yǔ)言模型進(jìn)行微調(diào)比僅針對(duì)單一任務(wù)進(jìn)行微調(diào)更有效。聯(lián)合抽取和動(dòng)態(tài)提示使得WRERJE可以取得較之其他基準(zhǔn)模型更優(yōu)的表現(xiàn)。
以某省20個(gè)水庫(kù)防洪預(yù)案文本為抽取對(duì)象,將WRERJE最終生成的SEL序列轉(zhuǎn)化為三元組,各關(guān)系類型部分三元組實(shí)例如表6。
表6 部分三元組實(shí)例展示
本文將異構(gòu)的水利工程搶險(xiǎn)實(shí)體抽取和關(guān)系抽取任務(wù)制定為序列到序列的生成任務(wù),使用水利工程搶險(xiǎn)領(lǐng)域數(shù)據(jù)微調(diào)預(yù)訓(xùn)練語(yǔ)言模型T5來進(jìn)行領(lǐng)域內(nèi)實(shí)體和關(guān)系的聯(lián)合抽?。惶岢鰟?dòng)態(tài)提示方法,設(shè)計(jì)了動(dòng)態(tài)提示生成器?;诖颂岢隽耸褂脛?dòng)態(tài)提示引導(dǎo)T5以進(jìn)行目標(biāo)領(lǐng)域內(nèi)實(shí)體和關(guān)系聯(lián)合抽取的WRERJE框架,用來從水利工程搶險(xiǎn)領(lǐng)域的非結(jié)構(gòu)化文本描述中同時(shí)抽取實(shí)體和關(guān)系。通過將WRERJE與三個(gè)基準(zhǔn)模型進(jìn)行實(shí)驗(yàn)對(duì)比。結(jié)果表明,WRERJE通過微調(diào)之后在水利工程搶險(xiǎn)實(shí)體和關(guān)系聯(lián)合抽取任務(wù)上具有較高的抽取精度,驗(yàn)證了“聯(lián)合抽取”和“動(dòng)態(tài)提示”的有效性。
本文以從無結(jié)構(gòu)水利工程文本中同時(shí)提取出搶險(xiǎn)實(shí)體和關(guān)系,并將其組織成三元組結(jié)構(gòu)化形式,以支撐應(yīng)急預(yù)案智能生成任務(wù)為出發(fā)點(diǎn)。目前工作基本實(shí)現(xiàn)了實(shí)體和關(guān)系的智能抽取,但還存在兩點(diǎn)主要問題需進(jìn)一步研究與改進(jìn)。一是實(shí)驗(yàn)數(shù)據(jù)中水利工程類型覆蓋不充分;二是數(shù)據(jù)模態(tài)單一。主要以堤防和大壩為主要實(shí)驗(yàn)對(duì)象(考慮其在防洪搶險(xiǎn)任務(wù)中的基礎(chǔ)性與重要性),在使用描述堤防和大壩等工程搶險(xiǎn)措施的文本激活T5對(duì)領(lǐng)域知識(shí)的認(rèn)知后,其可以在一定程度上處理其他工程類型中具有相似描述的文本。下一步工作將通過實(shí)驗(yàn)測(cè)試WRERJE在其他工程類型的文本中抽取目標(biāo)實(shí)體和關(guān)系的準(zhǔn)確率;同時(shí)豐富數(shù)據(jù)形態(tài),利用“圖生文”技術(shù)將水利工程搶險(xiǎn)領(lǐng)域的視頻、圖像等轉(zhuǎn)化為自然語(yǔ)言描述,結(jié)合圖像理解技術(shù)開展多模態(tài)的搶險(xiǎn)知識(shí)抽取研究。未來可將其應(yīng)用到任何需要進(jìn)行水利工程搶險(xiǎn)實(shí)體關(guān)系抽取的工作中,構(gòu)造以水利工程搶險(xiǎn)為主題的多模態(tài)的知識(shí)庫(kù)與知識(shí)引擎,推進(jìn)水利工程險(xiǎn)情搶護(hù)的高效化與智能化。