郭世偉,馬 博,馬玉鵬,楊雅婷
(1. 中國(guó)科學(xué)院 新疆理化技術(shù)研究所, 新疆 烏魯木齊 830011;2. 中國(guó)科學(xué)院大學(xué), 北京 100049;3. 新疆理化技術(shù)研究所 新疆民族語(yǔ)音語(yǔ)言信息處理實(shí)驗(yàn)室, 新疆 烏魯木齊 830011)
將文本中出現(xiàn)的指稱(mention)自動(dòng)地鏈接到知識(shí)庫(kù)(knowledge base,KB)中相應(yīng)的實(shí)體(entity)上,該過(guò)程一般被稱為實(shí)體鏈接(entity link)。實(shí)體鏈接是許多文本理解任務(wù)的關(guān)鍵技術(shù)之一,如自動(dòng)化構(gòu)建知識(shí)庫(kù)(automatic KB construction)、問(wèn)答系統(tǒng)(question-answering)、文本摘要(text summarization)以及關(guān)系抽取(relation extraction)。由于指稱具有歧義性和語(yǔ)義等價(jià)性,導(dǎo)致實(shí)體鏈接過(guò)程存在諸多困難,僅通過(guò)規(guī)則設(shè)計(jì)很難達(dá)到預(yù)期目標(biāo)。當(dāng)前實(shí)體鏈接研究主要在兩種文本上進(jìn)行: 長(zhǎng)文本和短文本。前者的語(yǔ)料多來(lái)自Wikipedia文章、領(lǐng)域?qū)I(yè)文獻(xiàn)、新聞等,后者則主要來(lái)源于微博、論壇等。由于短文本缺乏足夠的主題信息,而長(zhǎng)文本往往包含主題信息,因此短文本實(shí)體鏈接與長(zhǎng)文本實(shí)體鏈接在方法上存在一定的差異性。本文主要關(guān)注于中文短文本實(shí)體鏈接。
實(shí)體鏈接面臨主要的挑戰(zhàn)是指稱的歧義性,即指稱和知識(shí)庫(kù)中多個(gè)實(shí)體的鏈接概率不為零。如表1所示,知識(shí)庫(kù)中的“吳京(演員)”和“吳京(教授)”為指稱“吳京”的候選實(shí)體,根據(jù)短文本描述,“吳京(演員)”是最佳候選實(shí)體(真候選實(shí)體),“吳京(教授)”應(yīng)該是被消歧的假候選實(shí)體?;陂L(zhǎng)文本的實(shí)體鏈接方法利用主題信息計(jì)算實(shí)體或指稱間的共現(xiàn)概率,完成實(shí)體鏈接或提高鏈接的精度,如Cucerzan[1]等、Globerson[2]等和Heinzerling[3]等提出的方法。相對(duì)而言,如表1所示,短文本如微博,通常過(guò)于簡(jiǎn)短,缺乏實(shí)體共現(xiàn)信息和主題信息,如何充分利用短文本和實(shí)體間的語(yǔ)義相關(guān)性,成為短文本實(shí)體鏈接的關(guān)鍵。受益于BERT[4]、GPT[5]等語(yǔ)言預(yù)訓(xùn)練模型在諸多語(yǔ)言任務(wù)上的優(yōu)異表現(xiàn),本文使用預(yù)訓(xùn)練模型提取短文本和實(shí)體間的語(yǔ)義相關(guān)性特征。但BERT[4]在提取語(yǔ)義相關(guān)性特征時(shí)并不能顯式地利用短文本和實(shí)體間的文本交互模式,如BERT[4]并不能顯式地約束實(shí)體是對(duì)短文本中指稱的附加描述或解釋性說(shuō)明。
表1 短文本中的指稱與相關(guān)候選實(shí)體
為了添加交互模式信息,本文提出短文本交互圖(Short Text Interaction Graph,STIG)的概念,STIG可以有效地描述短文本中的字詞和實(shí)體描述中的字詞之間的交互關(guān)系。通過(guò)在STIG上使用圖卷積網(wǎng)絡(luò)[6](Graph Convolutional Networks, GCN)機(jī)制為短文本-實(shí)體語(yǔ)義相關(guān)性特征添加字詞上的交互信息。此外,我們發(fā)現(xiàn)對(duì)于STIG,若在GCN[6]處理后的各節(jié)點(diǎn)向量上作均值池化操作會(huì)使GCN[6]發(fā)生退化問(wèn)題,為了有效提取STIG的特征并緩解GCN[6]的退化,本文提出了一個(gè)同時(shí)保留STIG中節(jié)點(diǎn)和邊信息的方法。
在中文短文本實(shí)體鏈接數(shù)據(jù)集CCKS2020上的實(shí)驗(yàn)表明,本文方法較多個(gè)基線模型可以實(shí)現(xiàn)更高的鏈接精度,同時(shí)消融實(shí)驗(yàn)表明,所提出的雙步訓(xùn)練策略可以有效地提高模型的性能。
現(xiàn)有的實(shí)體鏈接方法大致分為兩種類別。早期的工作聚焦于利用文本的局部信息啟發(fā)式地設(shè)計(jì)一些特征實(shí)現(xiàn)實(shí)體消歧,進(jìn)而達(dá)到實(shí)體鏈接的目的。如Zhang[7]等根據(jù)詞法、實(shí)體類型等設(shè)計(jì)特征,結(jié)合二分類方法,利用SVM(Support Vector Machine,支持向量機(jī))完成候選實(shí)體的排序。最近得益于深度學(xué)習(xí)的發(fā)展,基于深度神經(jīng)網(wǎng)絡(luò)的方法相繼出現(xiàn),Raiman[8]等提出實(shí)體類型坐標(biāo)系的概念,每種實(shí)體類型被視為坐標(biāo)系的一個(gè)軸,并使用神經(jīng)網(wǎng)絡(luò)擬合實(shí)體類型坐標(biāo)系,根據(jù)局部文本在實(shí)體類型坐標(biāo)系上的坐標(biāo)實(shí)現(xiàn)候選實(shí)體的消歧及指稱的鏈接。最近的工作多關(guān)注于利用文檔主題和實(shí)體共現(xiàn)頻率結(jié)合局部語(yǔ)義信息實(shí)現(xiàn)全局實(shí)體鏈接,Ganea和Hofmann[9]等通過(guò)預(yù)先訓(xùn)練實(shí)體嵌入,計(jì)算局部文本和實(shí)體嵌入的注意力系數(shù),得到局部語(yǔ)義相關(guān)性信息,同時(shí)使用多層神經(jīng)網(wǎng)絡(luò)及LBP(loopy belief propagation)算法模擬CRF(conditional random fields)模型,據(jù)此計(jì)算出文檔中候選實(shí)體的極大后驗(yàn)概率(Maximum A Posteriori,MAP),進(jìn)而實(shí)現(xiàn)全局實(shí)體消歧。李明揚(yáng)[10]等則在Ganea和Hofmann[9]等工作基礎(chǔ)上結(jié)合高速網(wǎng)絡(luò)、自注意力機(jī)制以及更新的知識(shí)庫(kù)進(jìn)一步提高鏈接的性能。
同時(shí)使用局部語(yǔ)義信息和實(shí)體共現(xiàn)頻率能顯著提升模型的性能,但對(duì)于短文本,由于缺乏主題信息以及文本中的實(shí)體較少,難以實(shí)現(xiàn)全局實(shí)體鏈接。周鵬程[11]等使用N-gram結(jié)合詞性和多個(gè)指稱-實(shí)體字典獲得候選實(shí)體,通過(guò)多知識(shí)庫(kù)(Wikipedia和Freebase)和實(shí)體類別計(jì)算實(shí)體序列的相關(guān)度,選擇相關(guān)度最大的實(shí)體作為鏈接結(jié)果。Nie[12]等提出使用兩個(gè)不同的網(wǎng)絡(luò)分別計(jì)算短文本和實(shí)體在字詞級(jí)和文本級(jí)的相關(guān)性,并使用TrueSkill[13]算法量化多個(gè)相關(guān)性特征的重要程度,進(jìn)而提高短文本的鏈接性能。
最近隨著BERT[4]、GPT[5]等語(yǔ)言預(yù)訓(xùn)練模型的發(fā)展,Logeswaran[14]等基于BERT模型將文本視為閱讀文檔,將候選實(shí)體作為答案選項(xiàng),從而把實(shí)體鏈接問(wèn)題等價(jià)為機(jī)器閱讀理解,該方法具有較強(qiáng)的泛化能力,在零樣本實(shí)體鏈接中有較高的精度。Chen[15]等通過(guò)BERT和指稱所在上下文計(jì)算實(shí)體隱類型,并將隱類型加入實(shí)體鏈接模型,提高鏈接性能。
本文提出的實(shí)體鏈接模型重點(diǎn)關(guān)注短文本和實(shí)體在文本上的交互信息以及短文本-實(shí)體相關(guān)性特征表示。整體網(wǎng)絡(luò)架構(gòu)如圖1所示,主要由基于BERT 的相關(guān)性特征提取模塊和定義在STIG上的圖卷積模塊構(gòu)成。根據(jù)短文本中指稱出現(xiàn)的位置構(gòu)建STIG并使用鄰接矩陣表示STIG邊的信息,節(jié)點(diǎn)的信息由BERT模型計(jì)算獲得。為了使BERT模型更好地學(xué)習(xí)到短文本-實(shí)體相關(guān)性特征,本文采用一個(gè)雙步訓(xùn)練策略精調(diào)BERT模型,在第一步訓(xùn)練中STIG不參與訓(xùn)練,精調(diào)后的BERT稱為先驗(yàn)知識(shí)模型(Prior-Bert),第二步訓(xùn)練使用Prior-Bert作為預(yù)訓(xùn)練模型的初始化參數(shù),并且STIG以圖卷積的方式參與訓(xùn)練,精調(diào)后的模型稱為后驗(yàn)知識(shí)模型(Posterior-Bert)。同時(shí)本文使用一個(gè)線性變換將GCN后的STIG中的節(jié)點(diǎn)信息和邊信息變換成一個(gè)稠密向量。
圖1 模型整體架構(gòu)
BERT[4](Bidirectional Encoder Representations from Transformers)是一個(gè)多層Transformer[16]架構(gòu)的堆疊,并利用自監(jiān)督的學(xué)習(xí)方式在大語(yǔ)料上進(jìn)行預(yù)訓(xùn)練。自監(jiān)督學(xué)習(xí)主要通過(guò)兩個(gè)自監(jiān)督任務(wù)實(shí)現(xiàn): 單詞MASK和下鄰句預(yù)測(cè)(Next Sentence Predict)。單詞MASK機(jī)制學(xué)習(xí)單詞或字在雙向語(yǔ)境中的表示,具體地,BERT在訓(xùn)練過(guò)程中以一定的概率隨機(jī)替換輸入的單詞或字符為特殊標(biāo)記[MASK],預(yù)測(cè)[MASK]原本對(duì)應(yīng)的單詞或字;下鄰句預(yù)測(cè)機(jī)制學(xué)習(xí)句子級(jí)的相關(guān)性,具體地,BERT在訓(xùn)練過(guò)程中,可以一次性輸入兩個(gè)句子,形成一個(gè)句子對(duì),使用可學(xué)習(xí)的token類型嵌入對(duì)句子加以區(qū)分,并在兩個(gè)句子間添加一個(gè)[SEP]特殊分割標(biāo)記符分割句子,同時(shí)分別在輸入的起始位置和結(jié)束位置添加特殊標(biāo)記[CLS]和[SEP],[CLS]主要用來(lái)表示句子級(jí)的信息,表示輸入的句子對(duì)是否具有連貫性。
本文使用預(yù)訓(xùn)練語(yǔ)言模型BERT[4]計(jì)算短文本和實(shí)體之間的相關(guān)性,并獲得相應(yīng)的特征向量。首先將CCKS2020知識(shí)庫(kù)中每個(gè)實(shí)體的三元組集合拼接形成一個(gè)字符串(簡(jiǎn)稱實(shí)體描述文本),單個(gè)三元組元素拼接得到的字符串稱為三元組文本。本文假設(shè)實(shí)體和實(shí)體描述文本在語(yǔ)義上是等價(jià)的,考慮到每個(gè)三元組文本的長(zhǎng)度不一樣,而BERT[4]最多只允許輸入512個(gè)符號(hào),因此對(duì)于過(guò)長(zhǎng)的實(shí)體描述文本進(jìn)行截?cái)嗖僮?,即只保留其?12個(gè)字詞,超出部分直接丟棄。由于截?cái)嗖僮鲿?huì)造成部分實(shí)體信息的丟失,所以本文假設(shè)每個(gè)三元組文本的長(zhǎng)度與所包含的信息成正比,對(duì)每個(gè)三元組文本按照長(zhǎng)度進(jìn)行降序排序,降序排序可以盡可能地保證由于截?cái)啾粊G棄的字詞屬于包含信息較少的三元組(三元組文本較短),保證截?cái)嗪蟮膶?shí)體描述文本包含盡可能多的信息。由于中文BERT[17]以單字符為最細(xì)粒度進(jìn)行預(yù)訓(xùn)練,且中文分詞存在歧義性,故本文提出的方法不對(duì)短文本以及實(shí)體描述文本進(jìn)行分詞預(yù)處理。本文定義指稱在知識(shí)庫(kù)中所對(duì)應(yīng)的真實(shí)實(shí)體項(xiàng)為最佳候選實(shí)體(真候選實(shí)體)。
如圖1中所示的輸入,在第一步訓(xùn)練中,我們沿BERT[4]模型Next sentence 自監(jiān)督任務(wù)的輸入與輸出,以短文本-實(shí)體描述文本句子對(duì)作為BERT[4]的輸入,同時(shí)在句子對(duì)起始位置添加[CLS]特殊標(biāo)記符,以[SEP]特殊標(biāo)記符分割句子對(duì),并在句子對(duì)的結(jié)束位置添加[SEP]特殊標(biāo)記符,以BERT最后一層輸出中的[CLS]標(biāo)志位向量表示短文本和實(shí)體間的相關(guān)性特征。由于句子對(duì)輸入實(shí)質(zhì)上是對(duì)兩個(gè)不同句子的拼接,為使BERT[4]模型區(qū)分輸入句子對(duì)中不同的句子,按照BERT[4]的處理方式,需要為每一個(gè)輸入符號(hào)添加一個(gè)Token類型信息,以指明每個(gè)字符所屬句子。
在實(shí)體鏈接過(guò)程中即模型推理階段,若依靠模型的二分類結(jié)果實(shí)現(xiàn)實(shí)體鏈接,其性能對(duì)候選實(shí)體集的大小較為敏感。例如,對(duì)于包含n個(gè)實(shí)體的候選集C={e1,e2,…,en},ei表示第i個(gè)候選實(shí)體,其正確鏈接的概率如式(1)所示。
(1)
其中,Acc表示二分類器的分類準(zhǔn)確率。從式(1)可以看出,模型在單個(gè)樣本上的正確鏈接概率與候選實(shí)體集的大小成反比,當(dāng)n取比較大的值時(shí),對(duì)正確鏈接概率R的影響較大。為了緩解候選實(shí)體集合大小對(duì)正確鏈接概率的影響,本文將實(shí)體鏈接問(wèn)題歸類為在候選實(shí)體集上建立相關(guān)性大小的概率分布問(wèn)題,使用BERT擬合該分布,如圖2所示。
圖2 在候選實(shí)體集上的概率分布
首先假定候選實(shí)體集合的大小為固定值n,若候選實(shí)體的個(gè)數(shù)大于n,則將其分為多個(gè)大小為n的候選實(shí)體集合,對(duì)于不足n個(gè)元素的候選實(shí)體集合,則通過(guò)采樣候選實(shí)體的方式將其補(bǔ)充至n個(gè)元素。候選集合中包含n-1個(gè)假候選實(shí)體,以及1個(gè)真候選實(shí)體。概率分布的具體計(jì)算方法如式(2)所示。
(2)
其中,si∈Rm表示第i個(gè)候選實(shí)體描述文本與短文本的相關(guān)性特征,ti∈Rm表示可學(xué)習(xí)參數(shù),m為向量的維度,d表示短文本。實(shí)體鏈接的目的在于使模型能夠從候選實(shí)體集中識(shí)別出正確的實(shí)體,在本文的方法中等價(jià)描述為最佳候選實(shí)體(真候選實(shí)體)所對(duì)應(yīng)的概率大于其他候選實(shí)體對(duì)應(yīng)的概率,即:
p(s*|t,d)=max(p(si|t,d)),i=1,…,n
(3)
其中,s*表示最佳候選實(shí)體和短文本間的相關(guān)性特征。為了使模型擬合符合式(2)和式(3)的概率分布,本文使用以下目標(biāo)函數(shù)作為訓(xùn)練時(shí)的損失函數(shù)。
object=-argmint(log (p(s*|t,d))
(4)
由于短文本和候選實(shí)體間的相關(guān)性特征僅由最后一層BERT輸出的[CLS]標(biāo)志位向量表示,并未利用句子對(duì)中其他詞向量,本文認(rèn)為該相關(guān)性特征只包含句子級(jí)的信息,即粗粒度相關(guān)性特征,這些特征會(huì)作為細(xì)粒度相關(guān)性特征的先驗(yàn)知識(shí),故將第一步訓(xùn)練得到的模型稱為先驗(yàn)知識(shí)模型(Prior-Bert)。
盡管僅通過(guò)粗粒度相關(guān)性特征就可完成實(shí)體的消歧,但在某些特殊情形下粗粒度的信息并不能表達(dá)兩個(gè)實(shí)體間的細(xì)微差異。例如,若兩個(gè)實(shí)體只在個(gè)別名詞上有差異,則需要依靠個(gè)別詞匯區(qū)分兩個(gè)實(shí)體。本節(jié)引入短文本交互圖(STIG)的概念,并在STIG上使用GCN機(jī)制計(jì)算字詞級(jí)別細(xì)粒度相關(guān)性特征。由于本節(jié)的模型使用Prior-Bert模型的參數(shù)進(jìn)行初始化,故稱為后驗(yàn)知識(shí)模型(Posterior-Bert)。
2.3.1 短文本交互圖
短文本交互圖(STIG)是一個(gè)無(wú)向圖,其節(jié)點(diǎn)由短文本或?qū)嶓w描述中的字詞構(gòu)成,并由2.2小節(jié)中的Prior-Bert模型計(jì)算節(jié)點(diǎn)的表示向量,如圖3所示。STIG描述了構(gòu)成短文本、指稱和實(shí)體間的字詞在詞序上的關(guān)系,STIG可視為由兩個(gè)子圖構(gòu)成: 短文本子圖(Short Text Sub-Graph,STSG)和實(shí)體描述子圖(Entity Description Sub-Graph,EDSG)。對(duì)于STSG,其節(jié)點(diǎn)由短文本中的字詞組成,邊用于刻畫兩個(gè)字詞在詞序上的關(guān)系,若兩個(gè)詞在文本序列上是相鄰的,則對(duì)應(yīng)的STSG上的節(jié)點(diǎn)之間就有一條相連的邊。EDSG中的節(jié)點(diǎn)由實(shí)體描述文本中的字詞構(gòu)成,與STSG類似,EDSG的邊也刻畫兩個(gè)字詞在詞序上的關(guān)系,不同之處在于EDSG同時(shí)刻畫短文本中的指稱和實(shí)體間的關(guān)系,每一個(gè)指稱中的字詞和每一個(gè)實(shí)體描述中的字詞之間均有一條邊,顯式地標(biāo)出指稱在短文本中的位置,以及指稱中的字詞和實(shí)體描述中的字詞之間的關(guān)系,STIG由STSG和EDSG取并集而得。如圖3所示,圓形節(jié)點(diǎn)表示短文本中的字詞,方形節(jié)點(diǎn)表示指稱中的字詞,三角形節(jié)點(diǎn)表示實(shí)體描述文本中的字詞。
圖3 短文本交互圖的構(gòu)造
假設(shè)短文本-實(shí)體描述文本句子對(duì)共有n個(gè)字詞,{w1,w2,…,wj,…,wj+m,…,wn},定義STSG為Gst={Vst,Est},其中,Vst={w1,w2,…,wl}為STSG的節(jié)點(diǎn)集合,wi為短文本中的一個(gè)字詞,Est={(1,2),(2,3),…,(l-1,l)}為STSG的邊集合,同理可定義EDSG為Ged={Ved,Eed},其中,Ved={wl+1,wl+2,…,wn}為子圖的節(jié)點(diǎn)集合,Eed={(l+1,l+2),(l+2,l+3),…,(n-1,n)}為子圖的邊集合,則STIG可定義為G=Gst∪Ged。本文使用鄰接矩陣A表示STIG,矩陣每個(gè)元素的定義如式(5)~式(7)所示。
顯然鄰接矩陣僅描述了節(jié)點(diǎn)間邊上的信息,節(jié)點(diǎn)本身的信息由Prior-Bert模型計(jì)算獲得。
2.3.2 圖卷積計(jì)算模塊
STIG描述了短文本和實(shí)體間字詞與字詞的關(guān)系,為了在實(shí)體鏈接中能利用這些信息,本文在STIG上使用一層圖卷積網(wǎng)絡(luò)[6](GCN)計(jì)算細(xì)粒度相關(guān)性特征。圖卷積網(wǎng)絡(luò)是卷積神經(jīng)網(wǎng)絡(luò)[18]的變種,用于實(shí)現(xiàn)圖上的卷積操作,由于圖結(jié)構(gòu)并非標(biāo)準(zhǔn)的歐氏空間,因此GCN[6]將圖從空域轉(zhuǎn)移到頻域上,利用卷積定理把空域上的卷積操作等價(jià)轉(zhuǎn)化為頻域上的乘法。
考慮一層的GCN有如下的計(jì)算公式:
(8)
(9)
矩陣Θ相當(dāng)于卷積核的參數(shù),是一個(gè)可學(xué)習(xí)的參數(shù),X∈RN×D表示STIG的輸入節(jié)點(diǎn)矩陣,即Prior-Bert模型的輸出,其中N表示節(jié)點(diǎn)個(gè)數(shù),D表示節(jié)點(diǎn)的特征維數(shù)。經(jīng)過(guò)一層GCN后短文本和實(shí)體之間根據(jù)STIG重新計(jì)算每個(gè)字詞之間的相關(guān)性特征。特別的,由于短文本中的指稱字詞在STIG中有更多的邊與實(shí)體相連,因此指稱節(jié)點(diǎn)的特征包含了更多的相關(guān)性信息,這正是實(shí)體鏈接所需要的。
在獲得卷積后的節(jié)點(diǎn)特征向量后,將特征向量按行堆疊為一個(gè)矩陣H∈RN×S。為了計(jì)算損失,需要將矩陣H變換成一個(gè)向量。一個(gè)比較直觀的方法是平均矩陣的每一行,即執(zhí)行一個(gè)大小為N的均值池化操作,將池化得到的向量作為最終表示向量。然而均值池化操作會(huì)使圖卷積退化,我們不妨假設(shè):
(10)
(11)
對(duì)于STIG的L矩陣,可以寫成分塊矩陣的形式:
(14)
由式(14)發(fā)現(xiàn),若對(duì)GCN后的特征向量執(zhí)行均值池化操作,會(huì)使圖卷積退化(L矩陣蘊(yùn)含的鄰接信息被丟棄)。為了緩解該問(wèn)題,本文使用兩個(gè)簡(jiǎn)單的線性變換將節(jié)點(diǎn)特征H和L映射到兩個(gè)向量中。
h,l=Hb,Lz
(15)
其中,b,z為可學(xué)習(xí)的參數(shù)。最終的相關(guān)性特征由[CLS]的標(biāo)志位向量、h向量和l向量拼接獲得。
與2.2節(jié)的Prior-Bert模型相對(duì),后驗(yàn)知識(shí)模型(Posterior-Bert)學(xué)習(xí)細(xì)粒度相關(guān)性特征。Posterior-Bert同樣將實(shí)體鏈接問(wèn)題視為在候選實(shí)體集上建立相關(guān)性大小的概率分布問(wèn)題,使用式(4)作為訓(xùn)練時(shí)的目標(biāo)函數(shù)。
本節(jié)使用中文短文本實(shí)體鏈接數(shù)據(jù)集CCKS2020[19]驗(yàn)證所提方法的有效性,與多個(gè)基線模型的對(duì)照均表明所提方法在該數(shù)據(jù)集上有更好的性能,并對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行了分析。
本文使用CCKS2020中文短文本實(shí)體鏈接數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù),由于該數(shù)據(jù)集的測(cè)試數(shù)據(jù)集并未公開,我們使用驗(yàn)證集CCKS2020-dev作為測(cè)試數(shù)據(jù)集,并將訓(xùn)練數(shù)據(jù)集CCKS2020-train劃分成訓(xùn)練集和驗(yàn)證集,具體劃分方法為隨機(jī)采樣相應(yīng)數(shù)量的樣本,分別作為訓(xùn)練數(shù)據(jù)和驗(yàn)證數(shù)據(jù)。表2列舉了實(shí)驗(yàn)所用相應(yīng)數(shù)據(jù)樣本的具體數(shù)量。
表2 數(shù)據(jù)集樣本數(shù)量統(tǒng)計(jì)
CCKS2020數(shù)據(jù)集包含兩種不同類型的數(shù)據(jù),一種是指稱在知識(shí)庫(kù)中有對(duì)應(yīng)的實(shí)體,記為KBID,另一種是指稱在知識(shí)庫(kù)中沒有對(duì)應(yīng)的實(shí)體,記為NIL,兩種數(shù)據(jù)的樣本數(shù)量如表3所示。
表3 數(shù)據(jù)類型及數(shù)量
該數(shù)據(jù)集的知識(shí)庫(kù)中每個(gè)實(shí)體均有一個(gè)別名表,用于保存實(shí)體的一些常見別名。我們統(tǒng)計(jì)了別名表對(duì)訓(xùn)練集和測(cè)試集中指稱的覆蓋率,覆蓋率指文本中指稱的字符和別名表中的別名字符可以精確地匹配。如表4所示,表項(xiàng)“覆蓋率(KBID)”表示只統(tǒng)計(jì)在知識(shí)庫(kù)中有對(duì)應(yīng)實(shí)體的指稱,由于別名表對(duì)指稱的覆蓋率相當(dāng)高,因此實(shí)驗(yàn)直接使用別名表構(gòu)造的字典生成候選實(shí)體。
表4 別名表對(duì)指稱的覆蓋率
由于候選實(shí)體的個(gè)數(shù)對(duì)實(shí)體鏈接的性能有一定的影響,本文也統(tǒng)計(jì)了在測(cè)試集上短文本中不同指稱根據(jù)別名表所生成的候選實(shí)體個(gè)數(shù),表5給出了相應(yīng)的統(tǒng)計(jì)結(jié)果。
表5 測(cè)試集中候選實(shí)體數(shù)目統(tǒng)計(jì)結(jié)果
本文中的實(shí)驗(yàn)使用Pytorch 1.2.0框架,并使用一塊NVIDIA Tesla K80 GPU進(jìn)行加速計(jì)算。首先按照2.2節(jié)中的方法對(duì)候選實(shí)體三元組進(jìn)行拼接,得到一個(gè)實(shí)體描述文本,然后將包含指稱的短文本和實(shí)體描述文本以[SEP]特殊標(biāo)記為分隔符拼接成一個(gè)句子對(duì),在首尾分別添加[CLS]和[SEP]特殊標(biāo)記符,并對(duì)大于512個(gè)字符的文本對(duì)進(jìn)行截?cái)?。?采樣了幾條最終輸入到模型的樣本。
表6 輸入樣例
本文采用兩組不同的實(shí)驗(yàn)配置驗(yàn)證所提方法的有效性。實(shí)驗(yàn)配置一使用一個(gè)三層的BERT[4],該實(shí)驗(yàn)配置采用2.2節(jié)中提出的建立候選實(shí)體概率分布的方法進(jìn)行訓(xùn)練。建立候選實(shí)體的概率分布,需要一個(gè)完備的候選實(shí)體集。由于數(shù)據(jù)樣本中包含NIL指稱,為了構(gòu)建出完備的候選實(shí)體集,實(shí)驗(yàn)配置一為每一個(gè)指稱的候選實(shí)體集添加一個(gè)NIL候選實(shí)體,以保證每個(gè)候選實(shí)體集中都有一個(gè)正確的候選實(shí)體。NIL候選實(shí)體描述文本在實(shí)驗(yàn)中被設(shè)置為: “所有的候選實(shí)體均是假的,該說(shuō)明用于收集閾值信息?!?/p>
實(shí)驗(yàn)配置二使用一個(gè)標(biāo)準(zhǔn)的12層BERT[4],為了加速模型的訓(xùn)練,本文使用二分類的方法近似估計(jì)候選實(shí)體的概率分布,具體的方法如下:
(1) 從訓(xùn)練數(shù)據(jù)集中按1∶1的比例采樣負(fù)樣本,即將一個(gè)指稱的真實(shí)的候選實(shí)體作為正樣本,隨機(jī)地從候選實(shí)體集中采樣一個(gè)假候選實(shí)體作為負(fù)樣本。
(2) 使用二分類交叉熵?fù)p失作為目標(biāo)函數(shù)訓(xùn)練Prior-Bert和Posterior-Bert。
(3) 在推理階段,使用訓(xùn)練后的Posterior-Bert計(jì)算候選實(shí)體集中所有候選實(shí)體為正樣本的概率,取概率最大的候選實(shí)體,若該候選實(shí)體的概率大于預(yù)設(shè)的閾值,則判定為最佳候選實(shí)體;反之,對(duì)應(yīng)的最佳候選實(shí)體為NIL。
實(shí)驗(yàn)配置一的具體參數(shù): 候選實(shí)體集的大小取16,若候選實(shí)體的數(shù)目超過(guò)16則將其劃分成多個(gè)候選實(shí)體集合,每個(gè)候選實(shí)體集合大小為16,大小不足16的候選實(shí)體集合則通過(guò)負(fù)采樣的方法將其補(bǔ)充至16,并確保每個(gè)候選實(shí)體集均含有NIL候選實(shí)體。優(yōu)化方法使用AdamW[20],一個(gè)Adam[21]優(yōu)化算法的變種,Bert層的學(xué)習(xí)率lr設(shè)置為1e-5,GCN層的學(xué)習(xí)率lr設(shè)置為1e-3,batch大小設(shè)置為64,并且使用線性學(xué)習(xí)率衰減策略,其預(yù)熱步設(shè)置為4 000,dropout設(shè)置為0.1。
實(shí)驗(yàn)配置二的具體參數(shù): batch大小設(shè)置為32,采用AdamW[20]作為優(yōu)化算法,Bert層的學(xué)習(xí)率lr設(shè)置為1e-5,GCN層的學(xué)習(xí)率lr設(shè)置為1e-4,預(yù)設(shè)閾值為0.35,預(yù)熱步設(shè)置為4 000,dropout設(shè)置為0.1。
實(shí)驗(yàn)以Xue[22]等提出的方法、Bi-LSTM、Yin[23]等提出的方法、二分類BERT[4](Bin-Bert)及GCN[6]作為基線模型,同時(shí)我們也對(duì)照基于對(duì)抗學(xué)習(xí)Fast Gradient Method(FGM)[24]的方法。對(duì)于Xue[22]所提出的方法,由于數(shù)據(jù)是短文本,我們只能對(duì)照其局部模型并移除其他輔助特征。同樣地,移除Yin[23]所提方法中用到的先驗(yàn)特征,因?yàn)檫@些特征在短文本中很難被計(jì)算。GCN[6]基線模型則在STIG上以隨機(jī)初始化的詞嵌入向量作為節(jié)點(diǎn)特征做圖卷積操作,Bi-LSTM基線模型由兩個(gè)雙向的LSTM構(gòu)成,其中一個(gè)計(jì)算短文本特征,另一個(gè)計(jì)算實(shí)體描述文本特征,并使用余弦相似度衡量?jī)蓚€(gè)特征的相關(guān)性。
實(shí)驗(yàn)配置一中的實(shí)驗(yàn)均使用準(zhǔn)確率P作為實(shí)驗(yàn)的評(píng)價(jià)指標(biāo)。
表7給出了本文所提方法與其他基線方法的實(shí)驗(yàn)結(jié)果,表7中的實(shí)驗(yàn)均采用實(shí)驗(yàn)配置一。由于訓(xùn)練數(shù)據(jù)集中KBID類型的樣本數(shù)量要遠(yuǎn)遠(yuǎn)大于NIL的數(shù)量,因此我們分開報(bào)告兩種類型數(shù)據(jù)的準(zhǔn)確率。從實(shí)驗(yàn)結(jié)果看,本文所提方法較基線模型有更好的準(zhǔn)確率,由于GCN在NIL類型的數(shù)據(jù)上準(zhǔn)確率過(guò)低,不具有一般的參考價(jià)值,因此表中并未報(bào)告其具體結(jié)果。Yin[23]和Bin-Bert[4]的方法都是基于二分類BERT的實(shí)體鏈接方法,如2.2節(jié)所述,二分類方法對(duì)候選實(shí)體集的大小較為敏感,進(jìn)而影響到準(zhǔn)確率。
表7 實(shí)驗(yàn)結(jié)果
圖4 鏈接錯(cuò)誤樣本中的候選實(shí)體數(shù)目分布情況
圖4給出了基于二分類的方法(Bin-Bert)和基于概率分布的方法(Posterior-Bert)在錯(cuò)誤鏈接樣本中不同候選實(shí)體數(shù)目所占比例。
相對(duì)地,候選實(shí)體集合的大小對(duì)本文提出的方法影響較小,因此有更高的準(zhǔn)確率。同時(shí)發(fā)現(xiàn),盡管Posterior-Bert在KBID類型的數(shù)據(jù)上具有較好的性能,但在NIL類型的數(shù)據(jù)上表現(xiàn)卻不如Prior-Bert,我們推測(cè)其原因可能在于引入的NIL候選實(shí)體由于不是從真正的數(shù)據(jù)集中采樣而得的實(shí)體,而Posterior-Bert更注重字詞上的細(xì)粒度相關(guān)信息,對(duì)于構(gòu)成NIL實(shí)體描述文本的字詞,與短文本中的字詞并無(wú)詞上的相關(guān)信息,因此模型不能較好地識(shí)別出短文本中NIL類型的指稱。
相反,對(duì)于Prior-Bert,只需要將短文本-NIL候選實(shí)體的相關(guān)性概率值設(shè)為一個(gè)大于假候選實(shí)體概率而小于真候選實(shí)體概率的值即可。換句話說(shuō),NIL候選實(shí)體的作用是使模型學(xué)習(xí)到一個(gè)區(qū)分真候選實(shí)體和假候選實(shí)體的閾值。
為了驗(yàn)證Posterior-Bert是否真的可以利用Prior-Bert的參數(shù)作為先驗(yàn)知識(shí),我們繪制了}Posterior-Bert和Prior-Bert在KBID數(shù)據(jù)上的準(zhǔn)確率隨訓(xùn)練步的變化曲線,如圖5所示??梢钥闯觯琍osterior-Bert的準(zhǔn)確率曲線基本在Prior-Bert之上,特別在訓(xùn)練的前期尤為明顯,這說(shuō)明Posterior-Bert確實(shí)利用到了Prior-Bert的參數(shù)作為先驗(yàn)知識(shí)。同時(shí),本文也訓(xùn)練一個(gè)Bert+GCN模型,對(duì)照在沒有先驗(yàn)知識(shí)的情形下,引入定義STIG上的GCN是否可以提升模型的準(zhǔn)確率,表8給出了對(duì)照結(jié)果,并在圖5中給出了Bert+GCN模型的準(zhǔn)確率隨訓(xùn)練步的變化曲線。由表8和圖5知,在沒有先驗(yàn)知識(shí)的情況下,Bert+GCN并未達(dá)到Posterior-Bert的性能,驗(yàn)證了先驗(yàn)知識(shí)有助于模型學(xué)習(xí)細(xì)粒度相關(guān)性特征。
圖5 KBID數(shù)據(jù)上準(zhǔn)確率隨訓(xùn)練步數(shù)的變化曲線
表8 Bert-GCN與Prior-Bert的對(duì)照結(jié)果
在2.3.2節(jié)中,我們發(fā)現(xiàn)若對(duì)GCN后的特征向量執(zhí)行均值池化操作會(huì)發(fā)生退化現(xiàn)象,表9的實(shí)驗(yàn)結(jié)果驗(yàn)證了退化問(wèn)題,其中,Mean-Poling表示均值池化GCN的特征,Linear-Mean表示均值池化線性映射后的特征,不做圖卷積運(yùn)算。表9的結(jié)果表明,在STIG上使用均值池化處理的GCN特征,可以近似為直接平均線性映射后的特征。
表9 GCN與線性映射在均值池化上的等價(jià)性驗(yàn)證結(jié)果
為了驗(yàn)證GCN層數(shù)對(duì)Posterior-Bert模型精度的影響,本文在實(shí)驗(yàn)配置一下驗(yàn)證了GCN層數(shù)對(duì)模型精度的影響,圖6繪制了在KBID數(shù)據(jù)上精度隨GCN層數(shù)增加的變化曲線。從圖6可以看出,GCN層數(shù)的加深,會(huì)導(dǎo)致精度略微下降,我們推測(cè)原因在于過(guò)深的GCN會(huì)導(dǎo)致字詞特征被過(guò)度平滑,導(dǎo)致模型不能捕獲字詞級(jí)的相關(guān)性特征,使模型退化成Prior-Bert。
圖6 精度隨GCN層數(shù)增加的變化曲線
同時(shí),本文使用實(shí)驗(yàn)配置二對(duì)照了基于對(duì)抗學(xué)習(xí)FGM[24]的方法,使用F1值作為評(píng)價(jià)指標(biāo)。表10給出了實(shí)驗(yàn)結(jié)果,除了Posterior-Bert外,表中其余結(jié)果均來(lái)自于呂[27]等,表10中Bert-base-adv、Bert-wwm-ext-adv、UER-base-adv均是添加對(duì)抗學(xué)習(xí)的方法。其中,參數(shù)layers表示BERT[4]的層數(shù),參數(shù)lr表示學(xué)習(xí)率。從表8的實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),本文提出的Posterior-Bert模型比一些添加對(duì)抗學(xué)習(xí)的模型取得了較好的性能。
表10 與對(duì)抗學(xué)習(xí)方法的對(duì)比實(shí)驗(yàn)
本文提出了一個(gè)擬合候選實(shí)體集上相關(guān)性概率分布的實(shí)體鏈接方法,同時(shí)提出短文本交互圖(STIG)的概念。采用一個(gè)雙步的訓(xùn)練策略,在第一步訓(xùn)練中模型學(xué)習(xí)先驗(yàn)的粗粒度相關(guān)性信息(Prior-Bert),在第二步訓(xùn)練中模型使用Prior-Bert的參數(shù)作為先驗(yàn)知識(shí),結(jié)合在STIG上的GCN學(xué)習(xí)后驗(yàn)的細(xì)粒度相關(guān)性信息(Posterior-Bert)。同時(shí)提出使用線性變換計(jì)算STIG中節(jié)點(diǎn)和邊的特征,以緩解均值池化造成的GCN退化問(wèn)題。
未來(lái)考慮對(duì)多個(gè)不同的預(yù)訓(xùn)練模型實(shí)施模型融合,同時(shí)使用更適合動(dòng)態(tài)圖的圖神經(jīng)網(wǎng)絡(luò)去學(xué)習(xí)相關(guān)性信息的表示,尋找更好地融合先驗(yàn)知識(shí)模型和后驗(yàn)知識(shí)模型的方法也是未來(lái)工作方向。