本發(fā)明屬于人工智能領域,涉及一種基于鄰域復合注意力的小樣本知識圖譜補全方法。
背景技術:
1、知識圖譜表示學習作為知識圖譜補全任務的基礎,旨在通過學習一種表示模型,以自動捕獲知識圖譜中實體與關系間的語義和結構特征。知識圖譜以其存儲和表示結構化數(shù)據(jù)的能力為根本優(yōu)勢,使得其具有清晰的表述方式、靈活的數(shù)據(jù)連接方式和高效的查詢檢索效率等特點。這些優(yōu)勢使得知識圖譜在各個領域都展現(xiàn)了重要的應用潛力。
2、知識圖譜補全是指在已有的知識圖譜中通過深度學習等方法預測或補全缺失事實的過程,這里的事實包括實體、關系或屬性信息。知識圖譜補全任務主要包含兩個方面:實體補全以及關系補全。
3、小樣本知識圖譜補全方法用來處理樣本數(shù)量稀少、知識圖譜動態(tài)更新場景下的補全任務。按照學習策略劃分,可分為基于度量學習的方法、基于元學習的方法。度量學習側重于學習一個相似性函數(shù)來完成特定任務。具體而言,基于度量學習的小樣本知識圖譜補全方法通過計算支持集和查詢集之間的相似性來完成補全任務。如gmatching,通過平均聚合實體對的單跳鄰居信息,并學習一個可微度量來衡量支持集與查詢樣本間的相似性?;谠獙W習的方法利用元知識來快速推斷知識圖譜中新的小樣本關系。如metar,作為一種元關系框架,通過轉移特定關系的元知識,能夠在短時間內從支持集實體對中學習不可見的元關系表示。
4、然而,現(xiàn)有的小樣本知識圖譜補全模型未能充分探索同一實體不同鄰居之間的特征交互,同時也忽略了鄰域噪聲對小樣本關系學習階段的影響。此外,盡管以往的方法考慮了鄰居關系在特定關系任務場景下的動態(tài)表達,但未綜合考慮鄰居實體與動態(tài)表達之間的相互作用,從而導致對鄰居貢獻程度的判斷不夠準確。
技術實現(xiàn)思路
1、現(xiàn)有的小樣本知識圖譜補全方法對于實體鄰域信息的探索不夠充足,忽略了同一實體不同鄰居之間的特征交互,而鄰居間的交互作用能夠幫助模型更好地學習小樣本關系。此外,以往的模型在聚合中心實體的鄰域信息后,沒有較好地處理聚合鄰域信息可能帶來的噪聲影響,從而導致小樣本關系嵌入表達能力的下降。
2、針對現(xiàn)有方法存在的問題,本發(fā)明提出一種基于鄰域復合注意力的小樣本知識圖譜補全模型cona-fkgc,從獨立和協(xié)同兩個角度探索鄰域中有價值的信息,同時一定程度上減少鄰域噪聲對模型性能的影響,以學習高質量的小樣本關系嵌入。
3、本發(fā)明的技術方案為:
4、一種基于鄰域復合注意力的小樣本知識圖譜補全方法,包括如下步驟:
5、步驟100,鄰域編碼;
6、步驟101,計算獨立鄰域編碼器輸出;
7、通過注意力機制差異地對待不同鄰居,以點積的方式計算知識圖譜中的中心實體u與鄰居實體vi在其所相連的鄰居關系ri對應空間中的相關性系數(shù)計算過程如下:
8、e′u,r=wr·eu
9、
10、
11、其中,eu表示經(jīng)預訓練模型所事先獲得的中心實體u的初始嵌入,wr表示與鄰居關系r對應的投影矩陣,e′u,r表示中心實體u投影到鄰居關系r所在空間中的嵌入表示,·表示矩陣乘法。ri表示中心實體u所連接的第i個鄰居關系,(u,vi,ri)表示為一個鄰居三元組,表示鄰居實體vi與中心實體u的相關性系數(shù),代表中心實體u在所相連的第i個鄰居實體對應關系空間中的嵌入,代表中心實體u的第i個鄰居實體vi在其相連的關系空間中的嵌入,表示中心實體u所有鄰居的集合,(vk,rk)表示集合中第k個鄰居,vk表示第k個鄰居實體,rk表示中心實體u所連接的第k個鄰居關系。t表示矩陣的轉置。
12、采用交叉組合的計算方式來描述鄰居關系與實體間的交叉影響,并將交叉影響與注意力系數(shù)相乘累加以作為獨立鄰域編碼器的輸出nind,整體計算過程如下:其中,r表示鄰居關系的嵌入表示,ev表示鄰居實體v的嵌入,sv,r表示中心實體的鄰居實體v與其對應的關系的交叉組合特征,表示中心實體的第i個鄰居實體與其對應的關系的交叉組合特征。
13、步驟102,計算協(xié)同鄰域編碼器輸出;
14、引入多頭自注意力機制,關注輸入序列的不同方面或不同特征,聚合多頭注意力塊的輸出s′i以生成協(xié)同鄰域編碼器的輸出nco。計算過程如下:nco=σβis′i。其中,n表示中心實體u的鄰居數(shù)量,si′和s′k分別表示融合其他鄰居信息后的第i個和第k個鄰居實體的輸出結果。βi表示融合其它鄰居信息后的第i個鄰居實體與中心實體u的相關性系數(shù)。
15、步驟103,融合領域特征;
16、將兩部分鄰域編碼器的輸出nind和nco聚合得到融合后的領域特征nfinal,通過h=σ(w1eu+w2nfinal)更新中心實體表示。其中,h代表融合鄰域信息后的實體表示,σ表示激活函數(shù),w1代表中心實體u初始嵌入eu的線性變換矩陣,w2代表融合后的鄰域特征nfinal的線性變換矩陣,兩者均通過訓練獲得;
17、步驟200,小樣本關系學習;
18、通過步驟103獲得更新后的頭尾實體表示并進一步拼接以獲得實體對的嵌入表示,計算過程如下所示:mj=[hj||tj],接著使用bi-lstm網(wǎng)絡聚合k個實體對,整體計算過程如下所示:
19、
20、其中,hj與tj分別表示融合鄰域信息后的第j個頭尾實體的嵌入表示。mj表示第j個頭尾實體對的嵌入表示,pj表示第j個頭尾實體對在當前時間步經(jīng)過lstm網(wǎng)絡的輸出結果,→和←分別正向和反向。
21、然后通過求和的方式生成小樣本關系的泛化表示:rn=∑kgj,其中j=1,2,3,…,k,將頭尾實體的嵌入表示進一步拼接,m′j=[eh,j||et,j]。其中,eh,j與et,j分別代表支持集中第j個頭尾實體的原始嵌入,m′j表示第j個實體對的原始嵌入表示。再使用注意力機制聚合k個實體對的信息,計算過程如下所示:
22、
23、其中,σ表示激活函數(shù),ωx表示第x個樣本的注意力系數(shù),rp表示僅使用實體對原始信息生成的小樣本關系表示,u1表示通過訓練得到的權重矩陣。最終,方法聚合兩個小樣本關系表示,其中用超參數(shù)λ平衡比例,計算過程如下:rfinal=(1-λ)rn+λrp。其中,rfinal表示最終的小樣本關系表示。
24、步驟300,對步驟100和200形成的模型進行訓練;
25、步驟301,構建數(shù)據(jù)集;
26、對于步驟200生成的每一個小樣本關系任務,通過隨機采樣的方式為其構建支持集、查詢集和候選集。其中,支持集用于提供少量的訓練樣本,查詢集用于測試模型對新事實的預測能力,而候選集則是為查詢集中的每個查詢項提供可能的答案集合。
27、步驟302,計算匹配程度;
28、將查詢集中每個實體對的嵌入與小樣本關系進行拼接,循環(huán)輸入lstm網(wǎng)絡。匹配過程如下所示:
29、
30、其中,表示查詢集實體對的嵌入表示。pt與ct分別代表第t步lstm網(wǎng)絡的隱藏狀態(tài)和單元狀態(tài),pt-1與ct-1分別代表第t-1步lstm網(wǎng)絡的隱藏狀態(tài)和單元狀態(tài),p′t表示第t個時間步隱藏狀態(tài)的中間表示,p′t表示最后一個時間步隱藏狀態(tài)的中間表示,表示最終的小樣本關系與查詢實體對的匹配分數(shù)。
31、步驟303,訓練目標;
32、使用基于排序的損失函數(shù)訓練目標?;谂判虻膿p失函數(shù)定義為:
33、
34、其中,rfew表示當前的小樣本關系,表示查詢集,表示負查詢集,(hq,tq)表示實體對,表示查詢集的負樣本實體對,表示查詢實體對的匹配得分,表示負查詢實體對的匹配得分,ζ用來控制正負樣本分數(shù)之間的差距。
35、步驟304,更新模型參數(shù);
36、梯度下降更新模型參數(shù)eu、wr、w1、w2以及l(fā)stm網(wǎng)絡的權重參數(shù),完成訓練。
37、步驟400,知識圖譜補全;
38、利用步驟300訓練好的模型以及超參數(shù)λ和ξ對鏈接任務進行預測,并保存模型的預測結果。
39、本發(fā)明的有益效果:本發(fā)明通過引入注意力機制,將鄰域編碼劃分為獨立編碼和協(xié)同編碼兩個過程,以細粒度地聚合鄰域信息。同時利用降噪小樣本關系學習器減少鄰域噪聲對模型性能的影響。能夠在有限的訓練樣本下,學習高質量的小樣本關系嵌入,有效提升知識圖譜補全任務的性能。