馬瑛超,張曉濱
(西安工程大學計算機科學學院,陜西 西安 710048)
隨著互聯(lián)網(wǎng)的不斷發(fā)展,海量信息蜂擁而至,如何通過信息檢索來獲取有用信息逐漸成為人們關(guān)注的重點。但是,在信息檢索的過程中,由于同一實體經(jīng)常會有多層含義(即在不同語境中同一實體表達的含義可能會不同),因此常常會得到很多同名但并非相關(guān)的實體內(nèi)容。實體消歧(Named Entity Disambiguation)技術(shù)的出現(xiàn)為解決這一問題提供了有效途徑。近年來中文知識圖譜的構(gòu)建為人工智能的發(fā)展帶來了新的機遇,作為命名實體識別的后續(xù)任務(wù),實體鏈接和消歧任務(wù)也是知識圖譜構(gòu)建和補全的重要一環(huán)。知識圖譜技術(shù)的發(fā)展對實體消歧工作也提出了更高的要求。
實體消歧是指將文檔中識別出的實體指稱鏈向特定知識庫中某個目標實體的過程,其對應(yīng)著自然語言中的一詞多義[1],即實體消歧要解決的是同名實體存在的一詞多義問題。例如“巨人希曼:希曼要去水晶山,一路速度飛快,這速度太驚人了”一句中的“巨人希曼”,消歧系統(tǒng)希望該實體指稱映射到的目標實體應(yīng)該是動畫片《宇宙的巨人希曼》的主角,而不是一個作品或者其他的實體對象。但有些時候,即使是人類也可能因為缺乏知識或存在誤解而無法消除某些實體對象的歧義[2]。實體消歧作為自然語言處理的一項基礎(chǔ)任務(wù),能有效根據(jù)上下文信息消除一詞多義,在該領(lǐng)域起著重要的作用,已經(jīng)成為知識庫構(gòu)建、信息檢索、機器翻譯以及話題發(fā)現(xiàn)與追蹤等方向的重要支撐技術(shù)[3]。
針對短文本的實體消歧工作,本文提出了一種基于實體主題關(guān)系的中文短文本圖模型消歧方法。該方法使用以BERT(Bidirectional Encoder Representation from Transformers)[4]為基礎(chǔ)的語義匹配模型進行匹配度判斷,并將知識庫主題關(guān)聯(lián)信息作為節(jié)點關(guān)系構(gòu)建圖模型;然后對圖進行搜索并按照搜索的結(jié)果確定鏈接結(jié)果;此外,還采用TextRank算法對知識庫實體描述信息進行信息增強,提高了主題模型相似度的準確率,增加了方法的可靠性。
實體消歧工作旨在確定知識庫與待消歧實體之間的鏈接關(guān)系,需要借助知識庫中的實體描述信息。按照建模所依賴的特征信息,實體消歧工作可分為基于實體描述文本的消歧方法、基于實體類別的消歧方法和基于實體關(guān)系的消歧方法。
隨著深度學習和預訓練模型[5,6]的發(fā)展,基于實體描述文本的消歧方法取得了優(yōu)秀的成績。He等人[7]提出了一種基于深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks)的方法來進行實體消歧,通過深度神經(jīng)網(wǎng)絡(luò)自主學習實體和上下文的特征表示,端到端地進行實體消歧,避免了人工設(shè)計特征,在公開實體鏈接數(shù)據(jù)集上取得了優(yōu)異的消歧結(jié)果。Francis-Landau等人[8]提出使用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks)進行消歧,通過捕獲實體指稱上下文和目標實體上下文的語義信息,并利用多個粒度的卷積來比較兩者之間的語義相似度。Phong等人[9]提出將實體消歧問題轉(zhuǎn)化為文本語義匹配問題,將待消歧文本和所有候選實體一一配對,通過計算匹配程度確定消歧結(jié)果。該方法在諸多預訓練模型的幫助下在實體消歧工作中取得了優(yōu)異的成績,但利用描述文本的語義特征進行消歧的模型僅考慮了待消歧實體與候選實體之間的匹配程度,而忽略了同一文本中多個待消歧實體間的一致性關(guān)系。上述方法都是基于實體描述文本進行的消歧工作。
Raiman等人[10]提出了針對實體類別進行建模的方法DeepType,該方法將實體消歧任務(wù)看做對同名實體類型的判定,其最大的難點在于如何構(gòu)建類別系統(tǒng),在待消歧實體的候選實體之間類別差距不大的情況下,如何能夠給出有區(qū)分度的類別判定。
基于實體關(guān)系的消歧方法實質(zhì)上是考慮多實體之間的全局最優(yōu),通常有基于搜索算法的消歧模型[11](如基于隨機游走算法的消歧模型)和基于圖理論的消歧模型(如基于密度子圖的方法)[12,13]。由于多實體消歧基于知識庫中實體與實體之間的關(guān)系,因此需要知識庫的信息包含完整的三元組信息,即實體-關(guān)系-實體的信息表述。但是,在實際的消歧環(huán)境中知識庫往往并不包含實體關(guān)系的描述或?qū)嶓w關(guān)系的描述不完整。針對這一問題,王瑞等人[14]提出了基于主題詞向量和主題模型的多實體消歧模型,該模型通過構(gòu)建主題詞關(guān)系對待消歧文本和實體描述、實體與實體之間進行主題建模,并利用主題相似度得到最終的消歧結(jié)果,這在一定程度上解決了在知識庫缺乏關(guān)系信息的情況下進行多實體消歧的問題。但在短文本的環(huán)境中,將待消歧文本和實體描述的主題關(guān)系作為消歧的判定依據(jù)很難得到理想的效果。
隨著微博、評論等短文本信息的不斷增多,知識提取工作的重心在一定程度上轉(zhuǎn)移到了短文本上。而短文本由于包含信息較少、語言不規(guī)范等原因為自然語言處理帶來了新的挑戰(zhàn)。在實體消歧過程中,單實體消歧模型在短文本中的效果并不是很理想。同時,由于網(wǎng)絡(luò)實體的更新速度快,網(wǎng)絡(luò)用語多等原因,短文本環(huán)境中很難構(gòu)建出包含完整鏈接關(guān)系的知識庫,使用實體關(guān)系的消歧方法也很難取得很好的效果。
針對中文短文本上下文特征不足以及知識庫中很難直接建立實體間關(guān)系的問題,本文提出了一種基于主題關(guān)系的中文短文本圖模型實體消歧方法。該方法首先使用由TextRank算法[15]提取出的關(guān)鍵詞作為語料庫進行主題推斷,然后使用主題推斷的結(jié)果與語義匹配模型給出的評分相結(jié)合構(gòu)建消歧網(wǎng)絡(luò)圖,最終通過搜索排序確定最終的消歧結(jié)果。短文本實體消歧方法的模型結(jié)構(gòu)如圖1所示,語義匹配模塊用于計算待消歧文本與候選實體的匹配分數(shù),主題推斷模塊用于得到同一文本下的多個實體間的主題相關(guān)度。以匹配分數(shù)與主題相關(guān)度作為圖節(jié)點與邊的權(quán)值構(gòu)建圖模型,通過融合消歧得到最優(yōu)的消歧組合。
Figure 1 Structure of entity disambiguation usingChinese short text graph model based on topic relations圖1 基于主題關(guān)系的中文短文本圖模型實體消歧模型結(jié)構(gòu)圖
本文將潛在狄利克雷分布LDA(Latent Dirichlet Allocation)主題模型[16]與TextRank關(guān)鍵詞提取算法相結(jié)合對候選實體的描述文本進行主題推斷,并根據(jù)主題推斷的結(jié)果進行主題相關(guān)度計算。LDA屬于機器學習中的生成模型,其根據(jù)詞的特征分布生成文章的主題分布,本質(zhì)上是多層級的貝葉斯概率圖模型[17]。但在實體消歧中,由于多數(shù)同名實體都具有相似的實體描述,因此直接使用實體描述文本作為語料進行主題推斷的效果并不理想。為突出同名實體描述信息之間的差異性,在構(gòu)建語料庫時,本文選擇了TextRank關(guān)鍵詞提取算法對實體的描述信息進行信息增強,使用增強后的關(guān)鍵詞作為語料庫進行主題推斷。
TextRank算法是以PageRank算法為藍本,針對自然語言處理任務(wù)的特點進行修改而形成的一種基于圖模型的排序算法[18]。為考慮相鄰詞之間的語義關(guān)系,TextRank算法將關(guān)鍵詞提取轉(zhuǎn)化到圖模型中進行處理。該算法將文本視作句子的集合T={S1,S2,…,Sn},每個句子又視為單詞的集合Si={N1,N2,…,Nm},構(gòu)建圖G=(V,E),其中V為單詞集合,E為詞之間重要性關(guān)系集合,邊權(quán)值具體表現(xiàn)為重要性評分。重要性評分計算如式(1)所示:
score(Ni)=(1-d)+
(1)
其中,In(Ni)是指向節(jié)點Ni的節(jié)點集合;Out(Nj)是節(jié)點Nj指向的節(jié)點組成的集合;d為阻尼系數(shù),根據(jù)實際情況對阻尼系數(shù)進行賦值,通常取0.85。
根據(jù)重要性評分設(shè)定閾值H。選擇重要性評分排序后前H項為最終結(jié)果。在實體消歧中進行關(guān)鍵詞提取時重點保留了定語性質(zhì)的名詞和其他實體的指稱。
為準確計算候選實體與待消歧實體之間的語義相似度評分,本文將待消歧文本中的所有候選實體與待消歧文本一一拼接,構(gòu)建了一個二分類模型。采用的模型設(shè)計結(jié)構(gòu)是參考經(jīng)典的match架構(gòu)改進而來的。以BERT作為模型的輸入,取CLS位置的向量以表示待消歧文本與知識庫描述信息的全局差異。為保留針對待消歧實體的局部信息,本文通過記錄實體出現(xiàn)的開始位置begin和結(jié)束位置end,將編碼后對應(yīng)位置向量的拼接結(jié)果作為實體的局部特征Entity。將得到的CLS位置的向量與實體位置的向量進行拼接,通過Sigmoid為激活函數(shù)的全連接層進行分類。其中增加Dropout層的目的是為了防止模型過擬合,Dropout層的參數(shù)設(shè)置為0.15?;贐ERT的語義匹配模型結(jié)構(gòu)如圖2所示,其中N表示句子中的字符長度。
Figure 2 Structure of semantic matching model based on BERT圖2 基于BERT的語義匹配模型結(jié)構(gòu)圖
如圖2所示,對于“甄嬛傳:安陵容懷孕時,雍正經(jīng)常摸她的肚子”這一輸入文本,首先將實體“甄嬛傳”與知識庫中所匹配的描述信息一一配對,模型訓練中正樣本為待消歧文本與其正確鏈接對象的描述文本的拼接,負樣本為與非正確鏈接對象的拼接。正樣本與負樣本的比例為1∶3。最終通過訓練好的模型預測待消歧文本與其所有候選實體的描述文本的匹配程度,得到待消歧實體與其候選實體的匹配分數(shù)。
本文針對短文本的待消歧實體集合構(gòu)建圖,以待消歧實體為節(jié)點,以語義匹配模型給出的評分作為節(jié)點的值,以實體與實體的主題相關(guān)度作為邊的權(quán)值。主題相關(guān)度topicRela的計算方法如式(2)所示:
(2)
其中,Ta和Tb分別為候選實體a和b的主題推斷結(jié)果。
消歧結(jié)果由語義匹配評分matchi與最大權(quán)值和maxWeight(i)構(gòu)成,計算方法如式(3)所示:
(3)
其中,α為語義匹配評分在消歧結(jié)果中的線性權(quán)重,i表示第i個候選實體,e為待處理文本中待消歧實體的個數(shù),最大權(quán)和maxWeight(i)是以節(jié)點i為起點的所有全連接子圖的節(jié)點和邊權(quán)值和的最大值。
為降低時間復雜度,本文僅選取語義匹配評分排序前3的節(jié)點加入圖中。構(gòu)造的結(jié)果如圖3所示,其中加粗的子圖為最優(yōu)的消歧組合。
Figure 3 Relationship diagram of candidate entity 圖3 候選實體關(guān)系圖
計算節(jié)點與邊權(quán)值最大的節(jié)點組合需要對圖進行遍歷計算。本文將所有候選實體按待消歧實體構(gòu)成節(jié)點集合作為融合消歧的輸入,并計算所有全連接子圖的節(jié)點和邊的權(quán)重和。算法偽代碼如算法1所示:
算法1實體關(guān)系圖權(quán)值和計算
Input:NodeByGroup,n。/*NodeByGroup:An entity to be detected is a set of nodes in a group;e:number of entities to be detected in a text*/
Output:Weights。/*A path-weight table that contains all of the subgraphs:*/
1.Weights←null;/*To hold the sum of nodes andweights*/
2.First←NodeByGroup[0];/*Visit the first set of nodes*/
3.Weights←First;
4.fori=1 toedo
TempWeiths←null;/*Save the weight of the node after adding the new node*/
5.foreachnode∈NodeByGroup[i]do
6.forweight∈Weightsdo
TempWeights←ComputeWeight(node,weight);
7.endfor
8.endfor
9.Weights=TempVisited;
10.endfor
returnWeights;
對所有節(jié)點進行遍歷計算可以得到包含候選實體的全部全連接子圖與權(quán)值和。對包含某候選實體的全連接子圖按權(quán)值和進行排序,即可得到包含該實體的最大權(quán)值和與其對應(yīng)的全連接子圖。
根據(jù)得到的最大權(quán)值和單消歧實體的評分計算所有候選實體的link值,并將待消歧實體的所有候選實體的link值進行排序,選取結(jié)果最大的作為消歧結(jié)果。當link值小于0.5時,則判定為NIL實體,即知識庫中沒有與待消歧實體相匹配的結(jié)果。
本節(jié)將通過實驗驗證基于主題關(guān)系的中文短文本圖模型實體消歧方法的可行性。
本文實驗采用 CCKS2020(2020全國知識圖譜與語義計算大會)短文本實體鏈接任務(wù)所提供的語料集和知識庫。語料集中每條數(shù)據(jù)包含一條文本和該文本中包含的實體指稱,以及各個實體指稱在給定知識庫中對應(yīng)的目標實體。知識庫中包含每個實體的別名、實體類別和實體描述信息。
語料集由訓練集和驗證集組成,其中訓練集包括7萬條短文本標注數(shù)據(jù),驗證集包括 1萬條短文本標注數(shù)據(jù)。數(shù)據(jù)集主要來自于真實的互聯(lián)網(wǎng)網(wǎng)頁標題數(shù)據(jù),短文本平均長度為21.73個中文字符,覆蓋了不同領(lǐng)域的實體,包括人物、電影、電視、小說、軟件、組織機構(gòu)和事件等。本次研究只針對語料集中的非NIL實體進行處理。
本文實驗所用的系統(tǒng)環(huán)境配置為:CPU使用英特爾Core i7-10750H @ 2.60 GHz六核,GPU使用NVIDIA GeForce RTX 2060,操作系統(tǒng)為Windows10。
本文實驗使用的語義匹配模型為BERTBASE,學習率前3輪為1e-6,第4輪為1e-7,最大序列長度為512,訓練batch_size設(shè)置為4。
本文實體消歧模型的評價指標選用精確率P、召回率R及F1值(F1-score)。給定輸入文本集Q,對于Q中的每條輸入文本q,假設(shè)q中有E個實體指稱,即Mq={m1,m2,m3,…,mE}。則實體消歧模型的評價指標定義如式(4)所示:
(4)
其中,每個實體指稱鏈接到知識庫的實體編號為Eq={e1,e2,e3,…},實體消歧模型輸出的鏈接結(jié)果為E′q={e′1,e′2,e′3,…}。
4.4.1 主題數(shù)實驗
由于主題數(shù)的設(shè)置直接影響主題推斷的結(jié)果,進而影響消歧的結(jié)果,因此本文根據(jù)知識庫所構(gòu)造的主題模型,分別選擇K=1,10,20,30,40,50,60,70,80作為主題數(shù)進行困惑度實驗。根據(jù)困惑度指標所選取的主題數(shù)能夠很好地對主題模型進行檢測。在以F1值為實驗結(jié)果評價指標的實驗中,主題數(shù)設(shè)置為70時效果最優(yōu),但考慮到主題推測的實際意義,最終選取困惑度作為衡量主題數(shù)的標準。困惑度可以理解為對于一篇文章,所訓練出來的模型對文章屬于哪個主題有多不確定,這個不確定程度就是困惑度。困惑度越低,說明聚類的效果越好。一個主題模型的困惑度的計算方法如式(5)所示:
(5)
Figure 4 Experiment of number of topics-perplexity圖4 主題數(shù)-困惑度實驗
由圖4可知,在K值為60時主題模型的困惑度最低,說明此時主題模型的推斷效果最優(yōu)。
4.4.2 關(guān)鍵詞個數(shù)實驗
TextRank算法構(gòu)建了用于計算實體間主題相關(guān)度的語料庫,為驗證其中主題詞個數(shù)H的選取對于消歧結(jié)果的影響,本文分別選取主題詞個數(shù)為[1,15]進行實驗,評測標準為F1值。實驗結(jié)果如圖5所示。
Figure 5 Experiment of number of keywords-F1 圖5 關(guān)鍵詞個數(shù)-F1實驗
根據(jù)實驗結(jié)果,本文以關(guān)鍵詞個數(shù)為12作為最終的TextRank算法關(guān)鍵詞抽取算法的閾值H的值。
4.4.3α取值實驗
本節(jié)對式(3)語義匹配評分中線性權(quán)重α的取值進行實驗。使用F1值作為判別標準,α取值分別為0,0.1,0.2,0.3,0.4和0.5時的實驗結(jié)果如圖6所示。
Figure 6 Experiment of different values of α圖6 α取值實驗
根據(jù)實驗結(jié)果,本文選擇0.2作為α的取值。即通過搜索算法得出的權(quán)值和maxMatch與語義匹配評分以2∶8的方式得出最終的鏈接評分。
4.5.1 模型對比實驗
為了驗證本文所提模型的有效性,本文同時使用TextRNN[19]、TextRCNN[20]及基于BERT的DeepMatch模型在同一數(shù)據(jù)集上進行實體消歧,實驗結(jié)果如表1所示。
Table 1 Comparison of experimental results
由表1可以看出,使用經(jīng)典的句子語義建模方法TextRNN和TextRCNN進行實體消歧的效果相對于引入預訓練模型的方法,無論是準確率、召回率還是F1值都有所不足。由于引入了BERT預訓練模型,模型能夠充分地提取實體上下文特征,其結(jié)果優(yōu)于傳統(tǒng)方法的。本文在以BERT為基礎(chǔ)的語義匹配方法上,結(jié)合主題模型對待消歧實體的主題一致性進行判斷,彌補了短文本中上下文特征不足的缺陷。實驗結(jié)果表明,本文方法在準確率、召回率和F1值上相較于傳統(tǒng)方法與DeepMatch方法的都有所提升,由此可見以主題相關(guān)度為關(guān)系構(gòu)建消歧網(wǎng)絡(luò)的多實體消歧方法是有效的。
4.5.2 消融實驗
為驗證模型中匹配分數(shù)和主題關(guān)系對消岐任務(wù)的貢獻,本節(jié)對模型的匹配部分和主題關(guān)系分別進行實驗,模型分別命名為Match和Topic,在Match模型中本文將實體間的主題相關(guān)度全部設(shè)定為1。在Topic模型中將候選實體與待消岐文本的匹配分數(shù)全設(shè)為1。實驗結(jié)果如表2所示。
Table 2 Results of ablation experiments
由表2可以看出,在短文本環(huán)境中僅使用匹配模型進行消岐的效果并沒有達到最優(yōu),但匹配分數(shù)相對于主題相關(guān)度依舊能為消岐任務(wù)帶來更多的幫助。主題相關(guān)度能夠幫助模型在全局范圍內(nèi)進行主題一致性計算,能夠幫助模型在多實體間進行全局最優(yōu)的選擇,但在整體的消岐結(jié)構(gòu)中依據(jù)上下文計算出的匹配分數(shù)顯然具有更重要的地位。
本文也嘗試了使用主題相似度在待消歧文本與候選實體之間建立關(guān)系,但在如“一分鐘了解唐多令·蘆葉滿汀洲”的文本中,待消歧實體僅有“唐多令·蘆葉滿汀洲”,在進行主題推斷后,待消歧文本與知識庫中的實體對象描述信息僅具有相同的實體名,而無其他對主題推斷有幫助的詞匯出現(xiàn),因此在對多個實體進行判斷時,主題一致性很難作為鏈接的判別依據(jù)。而在短文本環(huán)境中這樣的情況很多,因此僅使用主題關(guān)系作為構(gòu)建消歧模型的依據(jù)在短文本環(huán)境中是不夠的。
4.5.3 NIL實體消岐分析
本節(jié)針對NIL類別實體的消岐效果進行了實驗。為了驗證加入NIL實體對本文所提方法的影響,設(shè)置了2組實驗,其中一組全部使用非NIL數(shù)據(jù),另一組使用包括NIL實體的全部數(shù)據(jù)。最終每個類別的F1評分如表3所示。
Table 3 Results of disambiguation experiments of adding NIL entities and no NIL entities
由表3可以看出,在加入NIL實體數(shù)據(jù)后模型效果有細微的提升,原因在于在候選實體生成階段,一部分的NIL實體按照非NIL實體的消岐流程進行計算,最終評分小于0.5的情況被判定為NIL實體;另一部分NIL實體在知識庫中無法匹配到候選實體,被直接判定為NIL實體,這一部分實體在全部NIL實體中占有近58%的比例。在不繼續(xù)對該類實體進行類別判定的情況下,這類實體在一定程度上會使得最終的評分更高。
4.5.4 錯誤分析與總結(jié)
為分析本文方法的不足,對數(shù)據(jù)中16個類別的實體進行單獨實驗,實驗結(jié)果如表4所示。
Table 4 Disambiguation results of different types of entities
由表4可以看出,本文所提出的基于主題關(guān)系的中文短文本圖模型實體消歧方法對大多數(shù)類別的實體消岐都是有效的,但部分類別的實體(如Work類實體)消岐效果稍差。為找到其中原因,對Work類別中的樣本進行具體分析。如圖7所示,文本中出現(xiàn)的實體《我心飛翔》所對應(yīng)的候選實體中出現(xiàn)了多個同類型的實體。本文所提出的方法無論從主題關(guān)系還是上下文特征都無法對這類樣本進行很好的區(qū)分。但實際情況下,《我心飛翔》在沒有明確指代的情況下,廣為周知的是孫悅演唱的版本。但是,若要對這類實體進行有效的消岐,除語義特征外還需要考慮實體流行度等特征,因此本文方法難以對這類實體進行有效消岐。
Figure 7 Entity instance of Work class 圖7 Work類實體實例
根據(jù)實驗結(jié)果可以看出,本文方法雖然對部分類別的實體消岐效果不理想,但該方法相對于傳統(tǒng)方法在短文本環(huán)境中仍具有優(yōu)秀的表現(xiàn)。本文方法適用于知識庫信息不完善的短文本實體消岐,通過主題關(guān)系與匹配評分相結(jié)合構(gòu)建圖模型進行消岐的方法,在知識庫無法給出實體關(guān)系的情況下,能夠?qū)Χ涛谋局械膶嶓w進行主題一致性計算,從而減少短文本上下文信息不足所帶來的誤判。
本文提出了基于實體主題關(guān)系的中文短文本圖模型消歧方法,其優(yōu)點在于使用主題模型對知識庫的實體信息進行主題推斷時,通過考慮同文本中其他實體與待消歧實體的主題一致性,避免了短文本消歧中上下文特征不足所帶來的誤判;同時使用TextRank關(guān)鍵詞提取算法對知識庫信息進行增強,降低了同名實體中非主題詞所帶來的影響;結(jié)合基于BERT的語義匹配模型所得出的結(jié)果構(gòu)建候選實體的關(guān)系圖;通過搜索排序?qū)ふ页鲎顑?yōu)的實體組合。實驗結(jié)果表明,本文方法是有效的,通過考慮候選實體間的主題一致性可以有效地解決短文本環(huán)境中上下文特征不足的問題。在下一步工作中,嘗試將更多同一語料的消歧實體的共同特征引入方法,以提升短文本實體消歧的效果。