1. 程式人生 > 其它 >雙線性模型(四)(HolE、ComplEx、NAM)

雙線性模型(四)(HolE、ComplEx、NAM)

目錄

本文簡要介紹雙線性模型 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是等價的。

迴圈關聯操作的直觀展示:

與迴圈卷積的區別:

迴圈卷積為:

  1. 卷積是對稱的,滿足交換律,而 correlation 不是,

這樣可以建模非對稱關係。

  1. 單個 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 兩種形式。

萬丈高樓平地起,守好一畝三分田。