閆智超,李 茹,2,蘇雪峰,4,李欣杰,柴清華,韓孝奇,趙云肖
(1.山西大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,山西 太原 030006;2.山西大學(xué) 計(jì)算智能與中文信息處理教育部重點(diǎn)實(shí)驗(yàn)室,山西 太原 030006;3.山西大學(xué) 外國(guó)語(yǔ)學(xué)院,山西 太原 030006;4.山西工程科技職業(yè)大學(xué) 現(xiàn)代物流學(xué)院,山西 晉中 030609;5.中譯語(yǔ)通科技股份有限公司,北京 100043)
框架語(yǔ)義網(wǎng)[1](FrameNet,FN)是以美國(guó)著名語(yǔ)言學(xué)家Fillmore提出的格語(yǔ)法理論[2]及框架語(yǔ)義學(xué)[3]為基礎(chǔ)構(gòu)建的一個(gè)框架語(yǔ)義知識(shí)庫(kù),其中每個(gè)框架均代表特定語(yǔ)義場(chǎng)景,每個(gè)場(chǎng)景對(duì)應(yīng)相關(guān)語(yǔ)義角色(框架元素)。表1展示了框架Creating(創(chuàng)造)和Manufacturing(制造)的定義和核心框架元素。除英文FrameNet外,日本、德國(guó)、巴西等國(guó)科研工作者相繼創(chuàng)建了面向本國(guó)語(yǔ)言的FrameNet。山西大學(xué)于2006年開(kāi)始創(chuàng)建漢語(yǔ)框架語(yǔ)義知識(shí)庫(kù)(Chinese FrameNet,CFN)[4]?;诳蚣苷Z(yǔ)義的框架語(yǔ)義角色標(biāo)注(Frame Semantic Role Labeling,FSRL)能細(xì)粒度地表示特定詞(目標(biāo)詞(1)在給定的上下文中能夠激活框架的詞或者短語(yǔ)統(tǒng)稱(chēng)為目標(biāo)詞。)在句子中所能激活的語(yǔ)義場(chǎng)景(框架(2)框架語(yǔ)義學(xué)把詞義、句子意義和文本意義統(tǒng)一用框架進(jìn)行描述,框架是和一些激活性語(yǔ)境相一致的一個(gè)結(jié)構(gòu)化的范疇系統(tǒng)。)以及該場(chǎng)景對(duì)應(yīng)的語(yǔ)義角色。因此,FSRL被廣泛地應(yīng)用于機(jī)器閱讀理解[5]、文章摘要抽取[6]和關(guān)系抽取[7]等多種自然語(yǔ)言處理任務(wù)。如圖1(a)所示,目標(biāo)詞“produce”激活了“Creating”框架,“genes that”和“toxins against insect pets”分別是框架“Creating”的語(yǔ)義角色“Cause”和“Entity”。
圖1 目標(biāo)詞produce所激活的框架及框架語(yǔ)義角色、依存句法信息和PropBank角色信息
表1 Creating和Manufacturing框架及核心框架元素
框架識(shí)別(Frame Identification,FI)是進(jìn)行FSRL的前提,其目標(biāo)是為句子中給定的目標(biāo)詞尋找一個(gè)可以激活的框架,其形式化表示如式(1)所示。
(1)
其中,wt是目標(biāo)詞,fi是框架庫(kù)中的第i個(gè)框架,C是目標(biāo)詞的上下文集合,F是框架集合。不同于PropBank式的語(yǔ)義角色,FSRL中的語(yǔ)義角色是框架特定的,每一個(gè)框架都有其相應(yīng)的語(yǔ)義角色,所以在進(jìn)行FSRL之前首先要識(shí)別目標(biāo)詞所激活的框架。通過(guò)FI可以將FSRL任務(wù)中原本需要在上千個(gè)標(biāo)簽中進(jìn)行分類(lèi)的場(chǎng)景轉(zhuǎn)換到一個(gè)更小的語(yǔ)義角色集合中,壓縮搜索空間,提升標(biāo)簽識(shí)別的精度。
FI是一個(gè)具有挑戰(zhàn)性的工作,在基于特征工程的方法中,在手動(dòng)選擇文本特征后通過(guò)機(jī)器學(xué)習(xí)模型獲取目標(biāo)詞的上下文表示,特征選擇好壞是制約該方法的主要因素。隨著技術(shù)的發(fā)展,深度模型根據(jù)目標(biāo)詞的上下文自動(dòng)學(xué)習(xí)目標(biāo)詞的上下文特征,這樣雖能克服人工特征選擇所存在的些許問(wèn)題但仍具有以下兩個(gè)方面的不足: a)采用序列建模的方式對(duì)目標(biāo)詞及其上下文進(jìn)行建模,忽略了目標(biāo)詞及其上下文之間的結(jié)構(gòu)信息,如目標(biāo)詞與其周?chē)~之間的依存結(jié)構(gòu),動(dòng)詞目標(biāo)詞與其語(yǔ)義角色成分之間的結(jié)構(gòu)關(guān)系; b)采用統(tǒng)一的模型對(duì)目標(biāo)詞進(jìn)行表示(在框架語(yǔ)義中,目標(biāo)詞的詞性可以是動(dòng)詞、名詞、形容詞等),忽略了不同詞性目標(biāo)詞在句法和語(yǔ)義結(jié)構(gòu)上的差異。
針對(duì)問(wèn)題a),本文提出了同時(shí)融合目標(biāo)詞上下文序列信息和結(jié)構(gòu)信息(如句子級(jí)的PropBank語(yǔ)義角色標(biāo)注和依存分析信息)的深度神經(jīng)網(wǎng)絡(luò)模型,克服現(xiàn)有方法在結(jié)構(gòu)信息建模方面的不足。例如,圖1(b)描述了動(dòng)詞“produce”的PropBank語(yǔ)義角色信息;例句c中描述了動(dòng)詞“produce”的依存句法信息。利用這些結(jié)構(gòu)信息有助于模型判別句子中目標(biāo)詞“produce”所激發(fā)的框架。針對(duì)問(wèn)題b),考慮目標(biāo)詞的詞性,將不同詞性的依存特征分別建模,在此基礎(chǔ)上構(gòu)建集成學(xué)習(xí)模型。本文的貢獻(xiàn)主要包括:
(1) 提出一種融合依存句法和語(yǔ)義角色結(jié)構(gòu)信息的框架識(shí)別方法,該方法可同時(shí)捕捉序列與結(jié)構(gòu)的目標(biāo)詞上下文信息。
(2) 鑒于不同詞性的目標(biāo)詞具有不同的語(yǔ)義結(jié)構(gòu)特征,本文細(xì)粒度地分析了不同詞性目標(biāo)詞的結(jié)構(gòu)信息對(duì)框架識(shí)別的影響。在此基礎(chǔ)上,構(gòu)建了一種集成的框架識(shí)別學(xué)習(xí)模型。
(3) 本文設(shè)計(jì)了詳細(xì)的對(duì)比實(shí)驗(yàn),在中文數(shù)據(jù)集CFN和英文數(shù)據(jù)集FN1.7上取得了目前最好的框架識(shí)別性能。實(shí)驗(yàn)證明本文提出的融合目標(biāo)詞上下文序列與結(jié)構(gòu)信息的框架識(shí)別方法的有效性,以及基于細(xì)粒度結(jié)構(gòu)信息的集成學(xué)習(xí)方法的有效性。
2007年SemEval中Baker等[8]提出了針對(duì)FI的評(píng)測(cè)任務(wù)。早期研究人員主要采用傳統(tǒng)機(jī)器學(xué)習(xí)算法進(jìn)行框架識(shí)別。Johansson 和Nugues[9]通過(guò)特征工程提取文本特征后使用SVM來(lái)進(jìn)行FI任務(wù)。Das等[10]引入條件模型在所有目標(biāo)詞、框架和原型之間共享權(quán)重,將手動(dòng)設(shè)計(jì)的特征輸入到模型,將框架名稱(chēng)作為監(jiān)督信息來(lái)識(shí)別目標(biāo)詞的框架。
近些年來(lái),分布式特征的表示以及基于神經(jīng)網(wǎng)絡(luò)的模型被廣泛的應(yīng)用于FI?;诖?框架識(shí)別的方法有兩種。第一種是基于特征工程的方法,通過(guò)依存特征學(xué)習(xí)目標(biāo)詞的分布式表示。如Hermann等[11]提出了一種將可能的框架標(biāo)簽和目標(biāo)詞所在上下文的句法關(guān)系映射到相同特征空間的WSABIE算法。Hartmann等[12]提出了SimpleFrameId,將句子中所有詞向量的平均作為上下文的表示,同樣使用WSABIE算法進(jìn)行相同的操作。趙紅燕等[13]在CFN數(shù)據(jù)集上將依存關(guān)系對(duì)上下文進(jìn)行特征抽取后使用DNN學(xué)習(xí)更抽象的目標(biāo)詞表示。第二種是使用深度神經(jīng)網(wǎng)絡(luò)自動(dòng)學(xué)習(xí)目標(biāo)詞的上下文表示,和早期的工作類(lèi)似,都是將離散的框架標(biāo)簽作為監(jiān)督信息。Swayamdipta等[14]使用Bi-directional LSTM[15]構(gòu)建分類(lèi)器。Botschen等[16]使用圖片和文本融合的多模態(tài)算法模型來(lái)提升框架識(shí)別的性能。Peng等[17]采用了FI和FSRL聯(lián)合學(xué)習(xí)的模型,提出從多個(gè)數(shù)據(jù)集中學(xué)習(xí)語(yǔ)義解析的公式。Jiang等[18]將句子、詞元定義、框架定義拼接,豐富了目標(biāo)詞的上下文信息。郭哲銘[19]利用BERT[20]作為表示層,提出基于Bi-GRU[21]的融合全局和局部注意力機(jī)制方法在CFN數(shù)據(jù)集上取得了不錯(cuò)的效果。Su等[22]使用了框架關(guān)系、框架元素聯(lián)合建模,在FN數(shù)據(jù)集上取得了最好的效果。
圖卷積神經(jīng)網(wǎng)絡(luò)[23](Graph Convolutional Network,GCN)首次將卷積的操作引入圖中。Li等[24]在方面情感分析任務(wù)中,使用雙重GCN融合需要判定情感詞匯的依存信息,在多個(gè)數(shù)據(jù)集上取得不錯(cuò)的性能。Veyseh等[25]使用了基于門(mén)控機(jī)制的GCN融合了依存信息,在多個(gè)數(shù)據(jù)集上達(dá)到了最好的性能。Zhang等[26]采用了多任務(wù)的模型架構(gòu),使用GCN在細(xì)粒度觀點(diǎn)分析任務(wù)中取得了不錯(cuò)的效果。Tian等[27]使用了注意力GCN在關(guān)系抽取任務(wù)上達(dá)到了最好的性能。以上工作說(shuō)明,通過(guò)GCN學(xué)習(xí)依存特征不但可以增強(qiáng)目標(biāo)詞的表示能力,而且可以學(xué)習(xí)到一定的結(jié)構(gòu)信息。
早期的框架識(shí)別方法通過(guò)手動(dòng)設(shè)計(jì)與目標(biāo)詞關(guān)聯(lián)的依存結(jié)構(gòu)信息作為特征,學(xué)習(xí)目標(biāo)詞的表示。而在以深度模型為主的方法中,使用監(jiān)督信號(hào)自動(dòng)學(xué)習(xí)目標(biāo)詞的特征表示,融合了一定的語(yǔ)義和依存特征。以上框架識(shí)別方法雖然取得了不錯(cuò)的效果,但是還存在兩方面的問(wèn)題: (1)基于深度模型的方法在一定程度上過(guò)度融合上下文信息,為目標(biāo)詞的表示引入噪聲,且對(duì)結(jié)構(gòu)信息的學(xué)習(xí)較差。(2)沒(méi)有考慮到不同詞性的依存特征對(duì)框架識(shí)別的影響?;诖?本文針對(duì)上述問(wèn)題,采用深度模型學(xué)習(xí)目標(biāo)詞上下文表示,使用GCN學(xué)習(xí)角色或依存結(jié)構(gòu)特征。此外,進(jìn)一步考慮目標(biāo)詞的詞性,研究不同詞性的依存特征對(duì)框架識(shí)別的影響。
為了增強(qiáng)目標(biāo)詞的表示,本文結(jié)合多詞性的結(jié)構(gòu)信息,提出了一種融合序列與結(jié)構(gòu)信息的框架識(shí)別模型。模型結(jié)構(gòu)如圖2所示,該模型包含: 1)結(jié)構(gòu)信息提取層: 提取目標(biāo)詞所在序列的PropBank角色或依存結(jié)構(gòu)信息; 2)編碼層: 利用BERT對(duì)上下文序列進(jìn)行編碼; 3)語(yǔ)義結(jié)構(gòu)關(guān)系表示層: 根據(jù)結(jié)構(gòu)信息提取對(duì)應(yīng)的語(yǔ)義表示并使用GCN將目標(biāo)詞和該表示進(jìn)行建模; 4)標(biāo)簽預(yù)測(cè)層: 將GCN學(xué)習(xí)到的結(jié)構(gòu)信息和目標(biāo)詞的表示拼接后通過(guò)分類(lèi)器進(jìn)行分類(lèi)。另外,我們細(xì)粒度的考慮了不同詞性的結(jié)構(gòu)信息特征,采用了多模型的標(biāo)簽融合得到最后的預(yù)測(cè)結(jié)果。
目標(biāo)詞所在上下文的結(jié)構(gòu)信息可以指導(dǎo)語(yǔ)義結(jié)構(gòu)關(guān)系表示層對(duì)該信息進(jìn)行融合表示。因此,本文采用AllenNLP[28]對(duì)目標(biāo)詞所在上下文進(jìn)行結(jié)構(gòu)信息提取以增強(qiáng)目標(biāo)詞的表示。其中結(jié)構(gòu)信息分為PropBank角色信息和依存句法信息。所用依存分析和角色標(biāo)注模型為當(dāng)前公開(kāi)的最好模型,在公開(kāi)的英文數(shù)據(jù)集上分別獲得了95%和86%的性能表現(xiàn)。
2.1.1 結(jié)構(gòu)信息分析
本文中結(jié)構(gòu)信息主要包括依存結(jié)構(gòu)和語(yǔ)義角色信息兩類(lèi),與目標(biāo)詞相關(guān)的這兩類(lèi)信息對(duì)于判別目標(biāo)詞所能激活的框架具有重要的作用。如對(duì)句子“Iran received assistance to help it produce nuclear weapons”分別進(jìn)行PropBank角色標(biāo)注和依存分析和框架語(yǔ)義角色標(biāo)注后的結(jié)果如圖1(b)和圖1(c)所示,其中b的上方為框架語(yǔ)義角色信息,下方為PropBank語(yǔ)義角色信息,c的上方為依存句法信息。依存信息中“DEP”代表“依賴(lài)關(guān)系”,“DOBJ”代表“直接賓語(yǔ)”??蚣苷Z(yǔ)義角色信息中,“Producer”表示“生產(chǎn)者”,“Product”表示“產(chǎn)品”?!吧a(chǎn)者(it)”和“產(chǎn)品(nuclear weapon)”對(duì)于判別目標(biāo)詞所激發(fā)的框架為“Manufacturing”具有較強(qiáng)的指導(dǎo)作用。
2.1.2 PropBank角色與依存句法信息分析
在框架識(shí)別時(shí),框架語(yǔ)義角色是未知的,因而框架語(yǔ)義角色信息難以使用。然而對(duì)于動(dòng)詞目標(biāo)詞,其PropBank角色信息中“ARG0”代表“施事”,“ARG1”代表“受事”往往與框架語(yǔ)義角色信息重疊或?qū)?yīng),如圖1(b)中的下方所示,通過(guò)“ARG0”和“ARG1”正好可以找到“it”與“nuclear weapon”與框架語(yǔ)義角色“producer”和“product”對(duì)應(yīng)。因此,本文將PropBank角色信息作為結(jié)構(gòu)信息融合到目標(biāo)詞的表示中,從而豐富目標(biāo)詞的語(yǔ)義表示,有助于識(shí)別目標(biāo)詞在當(dāng)前上下文中所能激活的框架。
在圖1(c)所示的依存信息中,我們可以通過(guò)目標(biāo)詞的“DEP”與“DOBJ”兩個(gè)依存關(guān)系分別找到“it”和“weapon”兩個(gè)詞。這兩個(gè)詞與目標(biāo)詞“produce”的框架語(yǔ)義角色“producer”和“product”對(duì)應(yīng)成分存在部分重疊。所以將依存信息融合到目標(biāo)詞的表示中,有利于豐富目標(biāo)詞的語(yǔ)義表示,從而獲得更好的框架識(shí)別性能。
2.1.3 結(jié)構(gòu)圖的構(gòu)造
我們使用了與目標(biāo)詞直接關(guān)聯(lián)語(yǔ)義塊作為結(jié)構(gòu)信息,其鄰接矩陣表示為A=(aij)∈m×m,m為該目標(biāo)詞結(jié)構(gòu)信息中包含的語(yǔ)義塊數(shù)量s與目標(biāo)詞數(shù)量之和。aij的定義如式(2)所示,其中wi為句子中的第i個(gè)語(yǔ)義塊。此外,每個(gè)語(yǔ)義塊的起始和終止位置信息分別表示為pi和li,目標(biāo)詞所在上下文結(jié)構(gòu)信息的對(duì)應(yīng)位置信息表示為P={[p1,l1],…[pi,li],…,[ps,ls]},并傳遞給編碼層。
(2)
為獲取目標(biāo)詞所在上下文的向量表示,本文采用基于Transformer[29]的BERT作為編碼層將上下文的語(yǔ)義信息融入到目標(biāo)詞的表示中。
式中的Ws∈n×m,bs∈m是可學(xué)習(xí)參數(shù),其中Ht和由式(5)、式(6)所示。目標(biāo)詞和依存信息可由多個(gè)token組成,因而需要對(duì)多個(gè)token對(duì)應(yīng)的隱藏層Ht和進(jìn)行加權(quán)平均操作(avg),得到整個(gè)詞的表示。
其中,Pi[0]和Pi[1]分別表示第i個(gè)結(jié)構(gòu)信息中語(yǔ)義塊的起始位置和終止位置。
GCN將卷積運(yùn)算從傳統(tǒng)數(shù)據(jù)推廣到圖數(shù)據(jù)中,使其可在非歐式空間中提取特征。其核心思想是通過(guò)學(xué)習(xí)一個(gè)函數(shù)映射f(·),利用該映射,圖中的節(jié)點(diǎn)每個(gè)vi可以聚合其自身特征xi與鄰居特征xj,其中j∈N(vi)用于生成節(jié)點(diǎn)vi的新表示。
使用GCN作為語(yǔ)義結(jié)構(gòu)關(guān)系提取層可借助該模型強(qiáng)大的空間特征提取能力,進(jìn)一步將結(jié)構(gòu)信息和目標(biāo)詞的關(guān)系融合到目標(biāo)詞的表示中。本文構(gòu)建了兩層GCN網(wǎng)絡(luò),并且兩層網(wǎng)絡(luò)之間通過(guò)ReLu函數(shù)進(jìn)行連接,其提取層的網(wǎng)絡(luò)結(jié)構(gòu)如式(7)所示。
R1=GCN(ReLu(GCN(A,M)))[k]
(7)
將編碼層獲取的目標(biāo)詞表示rt和語(yǔ)義結(jié)構(gòu)關(guān)系表示層獲取的結(jié)構(gòu)信息表示R1拼接后進(jìn)行線性變換和非線性激活得到當(dāng)前表示所屬于每一個(gè)框架的概率pt,如式(8)所示,其中L代表線性變換層。最后取概率最大的位置作為當(dāng)前預(yù)測(cè)的結(jié)果類(lèi)別,如式(9)所示。
數(shù)據(jù)集的長(zhǎng)尾分布是一個(gè)普遍存在的現(xiàn)象,并且經(jīng)過(guò)我們的統(tǒng)計(jì)發(fā)現(xiàn),FN1.7數(shù)據(jù)集也是呈現(xiàn)長(zhǎng)尾分布,各類(lèi)樣本的分布數(shù)量如圖3所示,故損失函數(shù)選用FocalLoss[30](以下簡(jiǎn)稱(chēng)FL)代替?zhèn)鹘y(tǒng)的交叉熵?fù)p失函數(shù),FL針對(duì)數(shù)據(jù)中樣本類(lèi)別的不平衡問(wèn)題,為難以學(xué)習(xí)的樣本和容易學(xué)習(xí)的樣本添加一個(gè)權(quán)重,讓模型更加專(zhuān)注于難以學(xué)習(xí)的樣本,進(jìn)一步提升模型的魯棒性,如式(10)所示。
圖3 FN數(shù)據(jù)集各類(lèi)框架數(shù)量分布
FL=-(1-pt)γlog(pt)
(10)
其中γ為難度平衡系數(shù),pt是預(yù)測(cè)的概率,(1-pt)γ稱(chēng)為調(diào)制系數(shù),用來(lái)降低易分類(lèi)樣本的權(quán)重。
在FrameNet中,目標(biāo)詞的詞性是多種多樣的,可以是動(dòng)詞、名詞、形容詞等。由于不同詞性目標(biāo)詞的結(jié)構(gòu)信息不盡相同,所以有必要根據(jù)目標(biāo)詞詞性的不同細(xì)粒度選擇不同的結(jié)構(gòu)信息來(lái)豐富目標(biāo)詞的語(yǔ)義表示。如圖4所示,句子“Reality hit when he was unable to reconcile with his wife and end up on the street”中的詞元分別是“hit”,“when”,“unable”,“wife”,“end up”,“street”,激活的框架分別是“Impact(撞擊)”、“Temporal_ collocation(時(shí)間性共現(xiàn))”,“Capability(能力)”、“Personal_ relationship(人際關(guān)系)”、“Transition_to _state(過(guò)渡到一種狀態(tài))”,“Roadways(道路)”。不同詞性目標(biāo)詞的結(jié)構(gòu)信息往往包含了多個(gè)語(yǔ)義塊,每個(gè)語(yǔ)義塊對(duì)于當(dāng)前目標(biāo)詞的貢獻(xiàn)度往往是不同的,1)名詞: “AMOD”(形容詞)和“POBJ”(介詞賓語(yǔ))兩種關(guān)系通常是比較重要的; 2)動(dòng)詞: “ADVMOD”(狀語(yǔ)),“DEP”(依賴(lài)關(guān)系)和“DOBJ”(直接賓語(yǔ))兩種關(guān)系是比較重要的; 3)形容詞: 根據(jù)它所處的位置不同,和它依存的成分也是不同的,如果處于非核心的位置,它往往是和名詞有“AMOD”的關(guān)系,如果處于核心的位置,則“NBUBJ”(名詞主語(yǔ))、“DEP”、“AMOD”等的一些關(guān)系比較重要; 4)副詞: 它所直接修飾的成分較少,一般情況下,只修飾動(dòng)詞,只和動(dòng)詞會(huì)有“ADVMOD”的關(guān)系; 5)介詞: 它的“POBJ”(介詞賓語(yǔ))是比較重要的。因而,本文為不同詞性的目標(biāo)詞構(gòu)造不同的鄰接矩陣A,分別為每個(gè)詞性的結(jié)構(gòu)信息在整體的數(shù)據(jù)集上訓(xùn)練了一個(gè)模型,通過(guò)硬投票的方式進(jìn)行融合得到最后的框架識(shí)別模型。整個(gè)投票過(guò)程如式(11)所示。
圖4 各類(lèi)詞性在同一句子中的依存
(11)
本文所需實(shí)驗(yàn)數(shù)據(jù)來(lái)自FN1.7的標(biāo)注數(shù)據(jù)和CFN標(biāo)注數(shù)據(jù)。其中FN數(shù)據(jù)集一共816個(gè)框架。CFN數(shù)據(jù)集一共619個(gè)框架,訓(xùn)練集、驗(yàn)證集、測(cè)試集的劃分如表2所示。
表2 數(shù)據(jù)集劃分
我們同時(shí)統(tǒng)計(jì)了FN1.7中Train和Test的五類(lèi)詞性占比,如圖4所示。Train和Test中的分布基本是一致的,名詞、動(dòng)詞、形容詞、介詞、副詞是最多的。
3.2.1 評(píng)價(jià)指標(biāo)
本實(shí)驗(yàn)使用Accuracy作為評(píng)價(jià)指標(biāo),具體定義如式(12)所示。
(12)
3.2.2 實(shí)驗(yàn)環(huán)境
本文的實(shí)驗(yàn)環(huán)境為pytorch1.8.0+cu111,所用的GPU為一塊RTX3090,CPU為AMD Ryzen 9 3900X。
本文實(shí)驗(yàn)所設(shè)參數(shù)如表3所示。
表3 FN數(shù)據(jù)集實(shí)驗(yàn)參數(shù)
3.4.1 總體分析
為了驗(yàn)證提出的融合序列與結(jié)構(gòu)信息的框架識(shí)別方法的有效性,我們?cè)O(shè)置了如下框架識(shí)別模型進(jìn)行對(duì)比實(shí)驗(yàn): (1)使用BERT作為baseline;(2)SimpleFrameId、BERT-onehot和KGFI三個(gè)對(duì)比模型;(3)直接融合動(dòng)詞角色信息和非動(dòng)詞依存信息的BERT_Prop_Dep _GCN_Focal(BPDGF);(4)使用投票方式融合動(dòng)詞角色信息和非動(dòng)詞依存信息的BERT_Prop_Dep_GCN_Focal_Vote(BPDGF_ Vote)。實(shí)驗(yàn)結(jié)果如表4所示。
表4 FN1.7實(shí)驗(yàn)結(jié)果 (單位: %)
由實(shí)驗(yàn)結(jié)果可見(jiàn),直接將動(dòng)詞的角色信息和非動(dòng)詞的依存信息融合學(xué)習(xí)的模型BPDGF相對(duì)于baseline提升了0.61%,表明結(jié)構(gòu)信息對(duì)于框架識(shí)別有一定的促進(jìn)作用,但統(tǒng)一建模會(huì)影響模型性能。而我們?cè)诩?xì)粒度考慮不同詞性對(duì)于模型的影響后,構(gòu)建的模型BPDGF_ Vote相對(duì)于Baseline和KGFI提升了2.63%和0.93%(這里采用的是KGFI中沒(méi)有使用詞元過(guò)濾的實(shí)驗(yàn)結(jié)果)。證明了細(xì)粒度的結(jié)構(gòu)信息對(duì)于框架識(shí)別有著更高的作用。
3.4.2 依存信息及FL對(duì)性能的影響
為了確定不同詞性和FL對(duì)于FI任務(wù)的影響,我們針對(duì)不同詞性的目標(biāo)詞,分別添加依存信息,在BERT_Dep_GCN(BDG)、BERT_Dep_GCN_ Focal (BDGF)兩個(gè)模型上進(jìn)行實(shí)驗(yàn),其中BDG使用了傳統(tǒng)的交叉熵作為損失函數(shù),實(shí)驗(yàn)結(jié)果如表5所示。在使用FL代替交叉熵?fù)p失函數(shù)后,模型的表現(xiàn)都有了不同幅度的上升,并且在給形容詞性目標(biāo)詞添加依存信息并使用FL后達(dá)到了最好的86.47%的準(zhǔn)確率,相較于Baseline提升了2.36%。
表5 不同詞性依存信息實(shí)驗(yàn)結(jié)果 (單位: %)
進(jìn)一步分析,對(duì)某個(gè)詞性的目標(biāo)詞單獨(dú)添加的依存信息是否只提升了當(dāng)前詞性目標(biāo)詞的識(shí)別性能?為了確定這個(gè)問(wèn)題,我們分別統(tǒng)計(jì)了模型BDGF在五種詞性的目標(biāo)詞上分別加依存信息后在Test上每種詞性的正確率,即BDGF_n、BDGF_v、BDGF_adv、BDGF_adj、BDGF_prep五個(gè)模型在Test上不同詞性的正確率,統(tǒng)計(jì)結(jié)果如表6所示。在為不同詞性單獨(dú)添加依存后,模型在除它本身以外的其他詞性上的表現(xiàn)分別得到了不同程度的提升,說(shuō)明依存信息除了可以提升當(dāng)前詞性目標(biāo)詞的識(shí)別能力外,由于依存信息通常會(huì)關(guān)聯(lián)到其他目標(biāo)詞,故對(duì)于和它依存的其他目標(biāo)詞也有一定的提升作用。
表6 不同詞性添加依存后在Test上各類(lèi)詞性的正確率 (單位: %)
具體而言,對(duì)于模型BDGF_n,相較于模型BDGF_v來(lái)說(shuō),在動(dòng)詞上取得了更好的性能表現(xiàn),出現(xiàn)這樣的結(jié)果是因?yàn)榫渥又忻~的與動(dòng)詞會(huì)存在各種修飾關(guān)系,如圖5中的“agreement”和“construct”,它們之間存在了“INFMOD”的關(guān)系。在訓(xùn)練時(shí),該依存的動(dòng)詞獲得了進(jìn)一步的信息增強(qiáng),故而取得了更好的模型表現(xiàn)。而添加了動(dòng)詞依存和形容詞依存的模型BDGF_v和BDGF_adj分別在介詞和名詞取得了最好的效果是因?yàn)榻樵~通常修飾動(dòng)詞,形容詞通常修飾名詞,因此在這兩個(gè)詞性上可以獲得更好的效果。
圖5 名詞依存中的動(dòng)詞成分
3.4.3 不同結(jié)構(gòu)信息對(duì)性能的影響
為了探究在動(dòng)詞上的角色信息與依存信息對(duì)于框架識(shí)別的作用哪個(gè)更好,我們?cè)O(shè)計(jì)了單獨(dú)給動(dòng)詞分別添加角色和依存信息的模型BPGF和BDGF。實(shí)驗(yàn)結(jié)果如表7所示,BDGF的正確率達(dá)到了85.81%。將依存信息改變?yōu)榻巧畔⒑?BPGF正確率達(dá)到了85.95%,相較于Baseline提升了1.84%,比BDGF高出0.14%。說(shuō)明動(dòng)詞的角色信息對(duì)于FI任務(wù)是優(yōu)于動(dòng)詞的依存信息的。
表7 FN1.7實(shí)驗(yàn)結(jié)果 (單位: %)
例如,圖1(b)和圖1(c) 分別展示了例句的角色信息和依存信息,通過(guò)模型BPGF可以正確的識(shí)別為“Manufacturing”框架,而使用依存信息構(gòu)建的模型BDGF識(shí)別為“Causing”,從目標(biāo)詞的角色信息和依存信息的對(duì)比來(lái)看,角色信息的優(yōu)勢(shì)在于能夠獲取到更多的與框架語(yǔ)義角色重疊的信息,可以為目標(biāo)詞提供更加豐富的語(yǔ)義信息,有利于指導(dǎo)模型的學(xué)習(xí)。
同時(shí),為了驗(yàn)證模型的有效性和泛化能力,我們?cè)贑FN數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表8所示。由于CFN數(shù)據(jù)集中目標(biāo)詞都是動(dòng)詞,故使用了BDFG和BPFG模型,并以BERT作為baseline。兩個(gè)模型在CFN上分別提升了1.37%和1.76%,BPFG的性能比BDFG高0.39%,進(jìn)一步證明對(duì)于FI任務(wù),由于角色信息貼近框架語(yǔ)義角色信息,更有利于促進(jìn)FI。因此,角色信息是優(yōu)于依存信息的。
表8 CFN數(shù)據(jù)集實(shí)驗(yàn)結(jié)果 (單位: %)
3.4.4 不同融合方式添加的結(jié)構(gòu)信息對(duì)性能的影響
在進(jìn)行角色或依存信息提取后,我們考慮兩種給目標(biāo)詞添加特征的方式: (1)通過(guò)GCN融合到目標(biāo)詞的表示中,將得到的表示R1進(jìn)行分類(lèi)(direct);(2)進(jìn)行線性變換后,拼接到原始的目標(biāo)詞表示中(cat)進(jìn)行分類(lèi),如式(12)所示。
實(shí)驗(yàn)結(jié)果如表9所示。實(shí)驗(yàn)證明,不管是通過(guò)融合方式還是拼接方式,都對(duì)FI任務(wù)有一定的提升作用,但是使用拼接方式的效果好于融合方式。因?yàn)椴捎肎CN進(jìn)行特征提取時(shí)會(huì)引入一部分隨機(jī)初始化的權(quán)重信息,這一部分權(quán)重會(huì)影響分類(lèi)的結(jié)果而使用拼接的方式將這部分權(quán)重的比例減少,從而降低了這部分特征對(duì)于整體特征的影響。
表9 使用拼接和直接進(jìn)行分類(lèi)實(shí)驗(yàn)結(jié)果 (單位: %)
由于只有動(dòng)詞才有語(yǔ)義角色,故在分析過(guò)程中只選取動(dòng)詞所能激活的框架進(jìn)行分析。例如,在句子(1)“Because turning welfare recipients into tax payers just makes sense.”中,目標(biāo)詞是“turning”,在該上下文中所激活的框架是“Cause_change”,但是“turning”在句子(2)“But Jamaica is not simply turning blindly into a small version of its brother bigger.”中所激活的框架是“Under- go_change”,這種一詞多義現(xiàn)象也是框架識(shí)別的挑戰(zhàn)。在我們的baseline模型中,句子(1)中的“turning”被識(shí)別為“Undergo_ change”,即沒(méi)有正確的識(shí)別。我們的模型BERT_Prop_GCN_Focal(BPGF)可以正確識(shí)別為“Cause_ change”框架,“turning”所在的句子(1)和句子(2)的依存特征如圖6所示。通過(guò)對(duì)比我們發(fā)現(xiàn),只通過(guò)BERT對(duì)序列進(jìn)行建模后,無(wú)法明顯的區(qū)分“turning”在兩個(gè)句子中的特征,而兩句話中和目標(biāo)詞關(guān)聯(lián)的成份有明顯的不同,因此通過(guò)GCN建模后能夠?qū)W習(xí)到同一個(gè)目標(biāo)詞在兩個(gè)不同的場(chǎng)景中的區(qū)別,故能夠正確的識(shí)別“turning”所在上下文的能夠激活的框架。
圖6 同一目標(biāo)詞在不同句子中的角色信息
3.5.2 融合形容詞依存信息的框架識(shí)別案例
名詞框架是FN1.7數(shù)據(jù)集中數(shù)量最多的框架,名詞中的多義詞可以通過(guò)修飾名詞的形容詞來(lái)進(jìn)行限定,通過(guò)這一方法縮小了多義詞的范圍,提升了模型的學(xué)習(xí)能力。對(duì)于例句“A popular optional excursion is an hour's detour to Guangzhou Zoo”,目標(biāo)詞“popular”的依存信息如圖7所示。對(duì)于形容詞“popular”在baseline模型中識(shí)別為“Hit_or_miss”框架,對(duì)于名詞“excursion”,識(shí)別為“Arriving”框架,兩個(gè)目標(biāo)詞所能激活的真實(shí)框架分別是“Desirability”和“Travel”。
圖7 目標(biāo)詞popular的依存信息
“excursion”的含義有“旅行、涉獵、移動(dòng)等”,“popular”的含義有“受大眾喜愛(ài)的、普通的等”,對(duì)二者通過(guò)依存信息鏈接后,出現(xiàn)的語(yǔ)義組合有“受大眾喜愛(ài)的涉獵、受大眾喜愛(ài)的移動(dòng)等”都不符合常識(shí),只有“受大眾喜愛(ài)的旅行”是符合常識(shí)和人類(lèi)的語(yǔ)言習(xí)慣。因此,通過(guò)依存信息鏈接的多個(gè)詞可以互相關(guān)聯(lián),進(jìn)一步豐富目標(biāo)詞的語(yǔ)義表示,有助于提升框架識(shí)別的性能。
本文提出了一種融合上下文結(jié)構(gòu)信息的框架識(shí)別模型,在模型中我們通過(guò)BERT對(duì)文本序列建模,使用GCN捕獲目標(biāo)詞的上下文結(jié)構(gòu)信息特征。在結(jié)構(gòu)信息的選取上,我們考慮不同詞性目標(biāo)詞的結(jié)構(gòu)信息對(duì)于框架識(shí)別的影響,采用標(biāo)簽融合的方式,將使用了不同詞性結(jié)構(gòu)信息得到的模型融合,獲得了不錯(cuò)的性能提升,并在詞性為動(dòng)詞的目標(biāo)詞上證明了角色信息對(duì)于框架識(shí)別的提升作用優(yōu)于依存信息。對(duì)于多詞性結(jié)構(gòu)信息的融合問(wèn)題,我們采用了直接硬投票的集成方法,探討更優(yōu)雅的集成方法是我們之后工作的一個(gè)重點(diǎn)。