上期,我們簡單介紹了2020年知識圖譜最新權威綜述論文《A Survey on Knowledge Graphs: Representation, Acquisition and Applications》的開篇部分,本期我們將一起學習這篇論文的知識表示學習部分。
論文地址:
https://arxiv.org/pdf/2002.00388.pdf?arxiv.org
上期回顧:
知識圖譜最新權威綜述論文解讀:開篇部分
知識圖譜表示學習
知識圖譜表示學習對于知識獲取和下游應用具有很重要的作用。知識表示學習的表示空間包括:point-wise空間,流形空間,復數空間,高斯分布和離散空間。打分函數通常分為基于距離的打分和基于語義匹配的打分函數。編碼模型包括:線性/雙線性模型,張量分解和神經網絡。輔助信息考慮文本,視覺和類型信息。
1 表示空間
1.1 Point-wise空間
Point-wise的歐式空間是最常用的,將知識圖譜中的實體和關系嵌入為向量或者矩陣空間,也有的捕捉關系交互。Point-wise方法包括基于翻譯的方法TransE,需要滿足平移不變特性h + r = t、TransR、TransH,也有語義匹配的方法NTN、HolE、ANALOGY。
1.2 復數向量空間
從實數空間擴展到復數空間可以得到更多一維的實體和關系表示,具有更豐富的表示能力。ComplEx是第一個將知識圖譜表示學習擴展到復數空間的,其中,使用哈密頓乘積法組合多個關系,這種方法可以建模對稱和反對稱關系。RotatE利用哈密頓乘法將關系視為從頭實體到尾實體的旋轉操作。QuatE將復數空間擴展到了四元數空間,包含三個虛部和一個實部,通過四元數乘法例如哈密頓乘法組合頭實體和關系。
?1.3 高斯分布
由高斯詞嵌入方法得到的啟發,KG2E模型將實體和關系嵌入多維高斯分布,均值向量表示實體和關系的位置,方差矩陣建模了不確定性。TransG表示具有高斯分布的實體,同時給出了對于關系嵌入的混合高斯分布。?
1.4 流形和群
流形是一種拓撲空間,可以用集合論將其定義為具有鄰域的一組點,而該組是抽象代數中定義的代數結構。先前的point-wise建模是一個不適定的代數系統,而ManifoldE將point-wise嵌入擴展為基于流形的嵌入,并介紹了基于流形嵌入的兩種設置,即球面和超平面。?
基于球面的方法需要將實體和關系從原始空間映射到希爾伯特空間,形式如下公式所示:
?TorusE通過將實體和關系嵌入在一個緊湊的Lie群的n維環面空間中,并根據TransE的翻譯思想h + r = t來學習嵌入表示。
2 打分函數
打分函數用來衡量一個三元組成立的可靠程度,有時也被稱為能量函數,是基于能量的學習框架的基礎。基于能量學習的目標是保證正樣本的打分高于負樣本的打分(在TransE中,是負樣本打分高于正樣本打分,這個我認為主要看如何定義這個打分函數)。打分函數通常分為兩種情況:基于距離的打分函數和基于語義匹配的打分函數。
(1) 基于距離的打分函數通過衡量兩個實體之間的距離的可靠程度,這里是使用關系作為加性的平移操作,類似于TransE定義的h + r = t。
?(2) 基于語義匹配的打分函數通過頭實體向量和關系矩陣的乘性計算,使得頭實體與關系組合后轉移到尾實體附近h Mr = t?
2.1 基于距離的打分函數
SE模型使用兩個映射矩陣和L1范數來學習實體和關系的嵌入表示:?
在這之后,就進化為我們耳熟能詳的基于翻譯思想的TransE模型了:?
自此,TtransE模型的變種和擴展版本就被大量提出,比如將實體表示投影到關系空間的TransR模型:?
通過構建動態映射矩陣的TransD模型:
?為了實現自適應度量學習,用馬氏距離來代替歐式距離的TransA模型:
?除了前面完全基于加性算子的打分函數,TransF將完全基于平移的操作擴展到了點乘操作:
?此外,同樣基于翻譯的思想,KG2E采用高斯空間,并基于兩種方式來設計打分函數:
(1)非對稱的KL散度:?
(2)對稱的期望似然:?
采用流形空間的ManifoldE:
?2.2 語義匹配模型:
另一個設計打分函數的思路是計算語義相似度。SME對實體-關系對也就是(h,r)和(t,r)計算其之間的語義匹配程度:
?DisMult提出了一個簡化的雙線性模型:
HolE引入了嵌入表示的循環相關操作,可以將其解釋為壓縮的張量積,其打分函數定義為:??
ANALOGY建模關系數據的類比結構:?
這里,關系矩陣被約束為正規陣。
CrossE除了學習實體和關系的向量表示,同時還學習了一個交互矩陣 C,C 與關系相關,并且用于生成實體和關系經過交互之后的向量表示:
?3 編碼模型
通過特定的模型結構能夠對實體和關系之間的交互進行編碼,包括線性/雙線性模型、張量分解模型和神經網絡模型。
3.1 線性/雙線性模型
線性/雙線性模型使用線性操作來編碼實體和關系之間的交互:
?或者雙線性操作:
?這類模型包括SE、SME、DistMult、ComplEx和ANALOGY。有意思的是,對于采用L2范數的TransE模型,也可以擴展為線性轉換的形式:
為解決實體向量在規范化的Polyadia分解中的獨立嵌入問題,SimplE引入了關系的逆:
3.2 張量分解模型
張量分解模型的基本思想是將一個三階張量中每個切片的矩陣分解為在低維空間的兩個實體向量與關系矩陣的乘積。在RESCAL模型中,對于一個具有總共m個關系的知識圖譜,其第k個關系對應的表示這個關系的所有實體間關聯關系的切片可以分解為:?
LFM對RESCAL通過一個雙線性結構進行分解:
3.3 神經網絡模型
對于通過線性/雙線性編碼實體和關系之間交互的方式也可以利用神經網絡來實現,可以將實體和關系輸入深度神經網絡來輸出一個語義匹配的分值。MLP將實體和關系一起送入一個全連接層,并且在第二層使用sigmoid激活函數來對一個三元組打分:
??NTN模型將實體的嵌入表示和關系張量一同作為輸入,并輸出對于三元組的分值:
?3.4 卷積神經網絡
眾所周知,CNN在圖像中具有很強的特征提取的能力,為了能夠在知識圖譜表示學習中使用CNN,ConvE模型先使用2D卷積將頭實體和關系重塑為2維矩陣,然后就可以來建模實體和關系之間的交互
?這里, 表示卷積核,vec是一個向量化操作能夠將一個張量reshape為一個向量。?
ConvKB通過將頭尾實體和關系的嵌入表示直接進行拼接,然后再使用CNN:
?對比ConvE和ConvKB,ConvE捕捉到的是局部關系的特征,我理解的是卷積核只對頭實體和關系的嵌入矩陣就行操作,這里沒有考慮尾實體,而ConvKB通過拼接操作組合了三元組中的頭尾實體和關系,具有更強的特征學習能力,同時保持了一定的平移特性,取得了更好的實驗效果。
3.5 循環神經網絡
上面的基于MLP和基于CNN的方法都只對三元組進行了編碼,而沒有考慮長期關系依賴,例如對于知識圖譜中的關系路徑,就需要使用RNN來進行建模。RSN設計了一個循環跳躍機制,通過區分實體和關系來增強語義表示能力。對于一條通過在知識圖譜中隨機游走生成的關系路徑,利用RNN得到隱層狀態:?
所謂的跳躍操作為:
??3.6 Transformer
Transformer在NLP里尤其是以Bert為代表的自然語言預訓練中已經成為炙手可熱的一項技術,基于Transformer的表示學習可以集成知識圖譜中的上下文信息。CoKE使用Transformer來編碼邊和路徑序列。KG-BERT從預訓練語言模型中得到啟發,采用Transformer來編碼實體和關系。
3.7 圖神經網絡
GNN可以在一個encoder-decoder框架下學習連接結構信息。RGCN提出了關系特定的轉換,以建模知識圖譜的有向性。在第l+1層得到的聚合一個實體的鄰域信息的狀態為:
?這里,GCN是一個編碼器,針對不同任務可以選擇不同的編碼器集成到RGCN這個框架中。由于RGCN將每個實體的鄰域信息都等價對待,
?SACN設計了帶有權重的GCN,定義了相同關系類型下兩個鄰接的節點連接強度。解碼器模塊通常使用ConvE來作為語義匹配的度量,使用C個卷積核,可以得到實體和關系嵌入表示的卷積輸出為?
接著,打分函數設計為:
KBAT模型通過拼接實體和關系嵌入表示,然后采用圖注意力網絡和多頭注意力機制來編碼多跳鄰域信息。
4 結合輔助信息
為了進一步提高表示學習的性能,結合一些外部輔助信息可以實現多模態嵌入,包括文本描述,類型約束,關系路徑,視覺信息與,邏輯規則等和知識圖譜本身進行結合。
4.1 文本描述
知識圖譜中的實體描述信息可以補充語義信息。結合文本描述的知識表示學習的挑戰在于如何將結構化的知識圖譜和非結構化的文本描述嵌入在同一個表示空間中。一種方法是通過引入實體名稱和Wikipedia的集合,用對齊模型來對齊實體空間和詞空間。DKRL對TransE進行擴展,利用CNN學習實體描述的表示。SSP將三元組和文本描述映射到一個語義空間中,并用一個關于嵌入的loss和一個關于主題的loss組成整體loss。
4.2 類型信息
知識圖譜中的實體有時會帶有層次化的類別或類型信心。SSE模型結合實體類型來對屬于同一類型的實體進行嵌入。TKRL通過關于實體類型的映射矩陣來捕捉層次化類型信息。KR-EAR將關系類型分為屬性和關系,并建模了實體描述之間的關聯。
4.3 視覺信息
視覺信息例如實體的圖片也能夠用來增強知識表示學習。IKRL將圖像編碼到實體空間,確保基于三元組結構化的表示和基于圖像的表示處于同一表示空間中,并遵循平移不變原理學習實體和關系的嵌入表示。
5 總結
最流行的表示空間是基于歐氏空間,通過將實體嵌入向量空間并通過向量,矩陣或張量建模實體間的交互。其它表示空間包括復數向量空間,高斯分布以及流形空間和群。流形空間比點式歐式空間具有的優勢是可以放寬點式嵌入。高斯嵌入能夠表示實體和關系的不確定性以及多重關系的語義。嵌入復數向量空間可以有效地建模不同的關系連通性模式,尤其是對稱/反對稱模式。表示空間在編碼實體的語義信息和捕獲關系屬性方面起著重要作用。在設計表示學習模型時,應仔細選擇和設計適當的表示空間,以匹配編碼方法的性質,并平衡表示能力和計算復雜性。基于距離的度量的打分函數使用翻譯原理,而語義匹配打分函數使用合成運算符。編碼模型(尤其是神經網絡)在建模實體和關系的交互過程中起著至關重要的作用。雙線性模型也引起了很多關注,一些張量分解模型也可以視為該類方法。其他方法包含文本描述,關系/實體類型和實體圖像的輔助信息。
最近幾年最前沿的知識表示學習模型如下表所示:?
后期,我們還會對這篇綜述的知識獲取和知識應用部分進行解讀。
歡迎關注微信公眾號“人工智能遇上知識圖譜”,也歡迎關注同名知乎專欄“人工智能遇上知識圖譜“,讓我們一起學習并交流討論人工智能與知識圖譜技術。