本文簡要介紹雙線性模型 HolE、ComplEx、NAM。
HolE
【paper】 Holographic Embeddings of Knowledge Graphs
【簡介】 本文是麻省理工的研究人員發表在 AAAI 2016 上的文章,提出了 HolE(Holographic Embedding),是一個基於向量循環關聯操作的組合向量空間模型。
組合表示
不同論文里對同一類方法的表述不同,這里說的組合表示就是指的雙線性這一類模型。模型對於三元組打分函數的定義如下:
其中,\(\circ\) 代表組合操作,即對頭尾實體根據它們的 embedding 創建一個組合向量。
常用的損失函數有兩種:
一種是 logistic loss:
另一種是常見的 rank loss:
組合操作 \(\circ\) 具體可以有如下幾種形式:
Tensor Product
張量積,即 Hardamard 積:
拼接,投影,非線性
\(\bigoplus\) 代表拼接操作,\(\psi\)代表非線性函數 \(tanh\),投影就是指的線性變換。
非組合方法
指的非雙線性的 Tran 系列模型:
Holographic Embedding
本文提出的 HolE 定義的組合操作為循環關聯(circular correlation)操作:
因此三元組的概率得分為:
循環關聯操作可以被視為張量積的壓縮,這樣可以在保證較少的計算量的前提下捕捉更多的交互,即保留更多的模型表現力。
HolE 與 RESCAL 的對比:
HolE 的時間復雜度關於維度 d 成擬線性(log線性),並可以通過快速傅里葉變換來計算:
這里用到了復共軛,SEEK 那篇文章提到 HolE 和 ComplEx是等價的。
循環關聯操作的直觀展示:
與循環卷積的區別:
循環卷積為:
- 卷積是對稱的,滿足交換律,而 correlation 不是,
這樣可以建模非對稱關系。
- 單個 component 的計算類似點積,
這種特性可以捕捉實體間的相似性。
實驗
感覺 HolE 的效果比 TransE 提升了很多。
HolE 代碼:https://github.com/mnick/holographic-embeddings
【小結】 本文提出了使用循環關聯操作進行實體向量交互的全息 embedding 方法 HolE,可以在較少的計算量下捕捉到實體間盡可能多的交互。
ComplEx
【paper】 Complex Embeddings for Simple Link Prediction
【簡介】 本文是法國和英國的研究學者發表在 ICML 2016 上的工作,提出了 ComplEx(Complex Embedding),主要思想是引入了復值向量,通過復值點積(Hermitian dot product)計算三元組得分,復值向量的實部是對稱的,虛部是非對稱的,取復值點積的實部作為三元組得分。
關系作為低秩正規矩陣的實部
正規矩陣(normal matrix):與自己的共軛轉置矩陣對應的復系數方塊矩陣。
建模關系
對於某個關系,可以用一個鄰接矩陣表示實體間是否存在這種關系:
對矩陣 \(X\) 做特征值分解:
本文在復空間(complex space)進行特征值分解:
embedding \(x\) 由兩部分組成:實向量成分 \(Re(x)\) 和 虛向量成分 \(Im(x)\)。
復向量的點積(Hermitian dot product)定義為:
在復空間 X 矩陣(正規矩陣)的分解為:
\(W\) 是特征值的對角矩陣,\(E\) 是特征向量的 unitary 矩陣。
X 取分解的實部:
一個實體的頭實體表示是其尾實體表示的復共軛。
應用於二元多關系數據
三元組打分函數的計算:
在復空間中,\(<e_o,e_s> = \overline{<e_s,e_o>}\),因此實部 \(Re(<e_o,e_s>)\) 是對稱的,而虛部 \(Re(<e_o,e_s>)\) 是非對稱的,因此可以建模對稱和非對稱關系。
實驗
自建數據集
構建了一個包含兩個關系和 30 個實體的數據集,兩個關系一個是對稱的,另一個是非對稱的。
采用 negative 的 log-likelihood 作為 loss:
交叉驗證的平均精度(cross-validated Average Precision, AUC):
通用數據集
實驗部分提到,進行了預實驗,表明 log-likelihood 的效果比 ranking-loss 效果更好。
負采樣的影響
ComplEx 代碼:https://github.com/ttrouill/complex
【小結】 引入復值向量,在復空間進行矩陣分解,通過復值點積(Hermitian 點積)計算三元組得分。
NAM
【paper】 Probabilistic Reasoning via Deep Learning: Neural Association Models
【簡介】 本文是中科大和科大訊飛聯合發表在 IJCAI 2016 上的工作,本文提出了 NAM(Neural Association Model)用於概率推理,並具體化為 DNN(Deep Neural Network)和 RMNN(Relation Modulated Neural Network)兩種形式。
模型
本文提出用神經網絡建模兩個 event 之間的關聯:將一個 event 作為神經網絡的輸入,計算另一個 event 的條件概率。NAM 的 RMNN 形式可以進行高效的知識遷移學習。本文不屬於雙線性模型,應該歸類為神經網絡模型。
NAM overview
如果事件 \(E_2\) 是二值的(True or False),NAM 用 sigmoid 函數計算 \(Pr(E_2|E_1)\);如果 \(E_2\) 是多值的,則 NAM 使用 softmax 計算 \(Pr(E_2|E_1)\),輸出多值向量。
可以表示為計算兩個 event 關聯概率形式的推理任務都可以套用 NAM 模型:
對於三元組分類任務,給定三元組 \((e_i,r_k,e_j)\),\(E_1\) 由 頭實體 \(e_i\) 和關系 \(r_k\) 組成,\(E_2\) 是一個二元事件,用於指示尾實體 \(e_j\) 是真或假。
NAM 的 loss 采用 log-likelihood 函數:
DNN
就是一個普通的前饋網絡:
這里使用 sigmoid 函數輸出三元組 \(x_n=(e_i,r_k,e_j)\) 成立的概率。
RMNN(Relation-modulated Neural Network)
每一層使用上層的頭實體經過變換后的輸出和關系向量的原始表示作為輸入:
三元組最終得分:
實驗
文本蘊含
三元組分類
常識推理
在 CN14 數據集上,RMNN 的效果都比 NTN 好一丟丟:
知識遷移學習
訓練好 RMNN 后,如果想遷移到其他關系,只需要固定訓練好的模型參數,為新關系學習新的 relation code(不知道是什么)即可。
如果不固定模型參數,在學習新關系時新舊關系的正確率變化如下,新關系的正確率上升,舊關系正確率稍有下降:
【總結】 本文提出用於概率推理(計算三元組得分)的神經網絡框架 NAM,並具體化為 DNN 和 RMNN 兩種形式。
