论文浅尝 | 采用成对编码的图卷积网络用于知识图谱补全
筆記整理:姚禎,浙江大學在讀碩士,研究方向為知識圖譜表示學習,圖神經網絡。
論文引用:Liu S, Grau B, Horrocks I, et al. INDIGO: GNN-based inductive knowledge graph completion using pair-wise encoding[J]. Advances in Neural Information Processing Systems, 2021, 34.
Motivation
基于嵌入的方法通常是在向量空間中表示KG,然后對于結果向量應用預先定義的評分函數來進行知識圖譜補全。但是這種方法的弊端就是對于訓練過程中存在的實體,可以有很好的訓練效果,但是對于在訓練過程中沒有出現的實體,這種方法的效果就會變得很差。
而在實際應用中,KG通常是在變化的,因此很容易出現在訓練過程中并未見過的實體,會使得效果很差。例如在圖中,實線部分是訓練集,虛線部分是測試集。對于(Plato, lives, Greece)這一三元組,因為Plato,lives,Greece這三個向量都在訓練過程中進行了反向傳播得到了合理的向量表示,因此在鏈路預測的過程中很容易預測成功。但是對于(Aristotle, student, Plato), (R.Feynman, student, J.Wheeler),(J.Wheeler, lives, USA)這三個三元組,因為在訓練過程中并未出現,因此它們的向量僅僅是隨機初始化的向量表示,此時采用基于嵌入的方法,幾乎不可能找到正確的預測結果。因此文中將這種基于嵌入的方法稱為transductive mothed。例如TransE,RotatE。
基于圖神經網絡的方法可以捕獲模型的結構特征,GCN本身基于圖像的對稱性,即有相同鄰居的節點會有相同的值。在相同的結構下是不變的,可以捕獲結構的一般形式。因此文中將這種基于圖神經網絡的方法成為inductive mothed。例如RGCN。但是這種基于卷積的方法仍然沒有拜托對向量定義打分函數的方式來進行評估,作者提出了一種新的方法,通過將KG以透明的方式(transparent)編碼到GCN中,并在GCN的最后一層直接解碼得到向量表示而不需要額外的評分函數。
Mothed
?Encoding
作者首先定義了節點表示圖,節點表示圖是由KG編碼而來,KG中的節點表示實體,邊表示關系。而在節點表示圖中,每個節點表示一個實體對,在原圖中,如果存在一個節點或者兩個節點之間存在一條邊,那么在節點表示圖中會有一個節點,如(Plato,lives,Greece)會有三個節點,并且每個節點會生成一個向量表示,向量的維度為關系數量的2倍。用來表示兩個節點之間存在何種關系,同樣以(Plato,lives,Greece)為例,編碼在圖中的節點為(G,S),(G,G),(S,S)。作者規定節點對的編碼是以兩個單詞的字典序作為前后順序,也就是說一個節點對僅存在唯一的節點表示。對于(G,S)節點來說,其向量表示為(0,1,0,0)。因為圖中有兩個關系lives和student,因此表示向量的維度為4。第一個零表示不存在(Greece,lives,Plato)這樣的關系,因此編碼為0;同理存在(Plato,lives,Greece)這樣的關系,因此編碼為1。后面兩個依次表示不存在(Greece,student,Plato),(Plato,student,Greece)這樣的關系。
定義完節點,作者對圖中的邊進行了定義,對于每一個節點中出現的實體,如果在另一個節點中出現,那么這兩個節點之間就會存在一條邊。同樣以(G,S)為例,因為出現了G節點,因此首先和存在G實體的所有節點相連,之后再和存在S實體所有節點相連。這樣就完成了作者提出的節點表示圖。在這種方式下編碼的特征向量和KG之間的三元組建立了一對一的對應關系。并且使得GCN可以更加容易地學習到圖中的結構模式。例如,這樣的結構模式更容易捕獲到具有師生關系的三個人大概率生活在同一個國家這樣的邏輯。實質上作者是用一種比較巧妙的方式,更好地聚合了一個知識圖譜中實體的多條鄰居信息。對于節點表示圖的復雜性,作者進行了理論分析,INDIGO編碼圖的邊的數量是隨著KG中實體數量呈冪級增長,不過考慮到現實中的知識圖譜大都是稀疏圖,因此可以將節點的最大出度視為一個常數,此時INDIGO編碼圖的邊的數量是隨著實體數量線性增長的。
?GCN
模型的GCN模塊采用了最為簡單的圖卷積神經網絡的形式,用于聚合相鄰節點的embedding更新自身的節點表示。損失函數也采用了最常見的交叉熵損失函數,進行反向傳播。
其中??為節點的度矩陣,??為加入自環的鄰接矩陣,??為第l層的特征矩陣,??參數矩陣。
?Decoding 解碼過程可以看作編碼過程的鏡像,作者提到在GNN的最后一層中會輸出每個節點的向量表示,由于最后是經過了Sigmod函數輸出的,因此向量的范圍在(0,1)之間被定義為預測的可信度。所以在解碼過程中,作者規定了一個判別值,即當值大于0.5時為1,值小于0.5時為0。
Experiment
數據集、基線、評估指標
?數據集
GraIL-BM共有12個數據集,分別由FB15K-237,NELL-995和WN18RR隨機采樣一些實體作為種子,然后取周圍的k-hop鄰域的并集得來。
Hamaguchi-BM共有9個數據集,由WN11數據集中隨機采樣1k,3k,5k個三元組的頭實體、尾實體或頭尾實體對作為不可見實體集劃分而來。
INDIGO-BM作為該論文提出的數據集是由FB15K-237數據集而來,首先通過Freebase語義網對FB15K237進行擴充,隨后采樣得到1000個三元組將其所包含的所有實體設置為不可見實體集。將不存在不可見實體集的三元組集合按9:1的比例分成訓練集和驗證集。剩下的部分作為測試集,整體的步驟和Ham-BenchMark數據集生成方法類似。
?Baseline
作者選用R-GCN作為最基礎的Baseline,Grail和Ham同樣是針對inductive推理提出的模型,它們對于不可見實體在預測過程也具有推理能力,同樣作為實驗的baseline。
?評價指標
評估指標包含:precision,recall,ACC,AUC,e-Hits和r-Hits。定義如下:
AUC表示精度找回曲線積分,定義精度召回圖以精準率precision為y軸,以召回率recall為x軸,對于給定閾值θ,都會有坐標軸上的點(r(θ),p(θ)),其中r(θ)為召回率,p(θ)為準確率。
e-Hits@3表示實體預測中正樣本置信度排名前三的比例。
r-Hits@3表示關系預測中正樣本置信度排名前三的比例。
?實驗結果
GraiL模型提出了12個benchmark,Ham模型提出了9個benchmark。再加上作者提出的一個benchmark,一共有22個數據集。可以看到在ACC上模型在19個數據集上達到了SOTA,在AUC上模型在18個數據集上達到了SOTA,對于實體命中率,模型效果比較差,僅5個數據集上達到了SOTA。關系命中率模型效果很好在所有的數據集上都達到了SOTA。作者認為傳統的的GCN模型在負采樣的過程中隨機替換了實體,這會被認為是對于正確實體的“偏見”。INDIGO的抽樣策略中不存在這種“偏見”,因此導致了訓練性能的降低。
Summery
本文提出了一種新的圖編碼方式,可以將KG中的實體對和關系編碼到圖卷積網絡中,可以用于鏈接預測任務,并且不依賴打分函數評估預測的準確性。大量實驗證明這種方法是有價值的,通過inductive推理可以對于訓練集中沒有見過的實體保持一定的準確率。
OpenKG
OpenKG(中文開放知識圖譜)旨在推動以中文為核心的知識圖譜數據的開放、互聯及眾包,并促進知識圖譜算法、工具及平臺的開源開放。
點擊閱讀原文,進入 OpenKG 網站。
總結
以上是生活随笔為你收集整理的论文浅尝 | 采用成对编码的图卷积网络用于知识图谱补全的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文浅尝 | Tree-to-seque
- 下一篇: 论文浅尝 | KG Embedding