葛學(xué)偉,范貴生,2,虞慧群,2
(1.華東理工大學(xué)計算機(jī)科學(xué)與工程系, 上海 200237;2.上海市計算機(jī)軟件測評重點實驗室, 上海 201112)
知識圖(Knowledge Graphs, KGs)作為描述現(xiàn)實世界的方法之一,是許多語義應(yīng)用程序的核心技術(shù),其廣泛應(yīng)用于問題回答[1]、搜索和自然語言處理。知識圖不僅有表達(dá)知識結(jié)構(gòu)的能力,還能夠幫助關(guān)系推理。近年來,知識圖領(lǐng)域發(fā)生了許多理論創(chuàng)新,使得許多下游應(yīng)用也得到了蓬勃發(fā)展。
然而,現(xiàn)實世界的知識圖通常是不完整的,有必要進(jìn)行知識圖補全或鏈接預(yù)測。學(xué)習(xí)知識圖中實體和關(guān)系的低維表示已經(jīng)被證明是完成這一任務(wù)的一個很好的方法[2]。
在知識圖中,數(shù)據(jù)可以表示為三元組(Triplets)的集合,將每個三元組 (h,r,t) 表示為一個首實體h和尾實體t之間的關(guān)系r。所有首實體h和尾實體t構(gòu)成了實體集ε,所有關(guān)系的集合為關(guān)系集 R。知名的現(xiàn)有數(shù)據(jù)集有Freebase[3],Yago[4],WordNet[5]等。到目前為止,根據(jù)知識圖中已有的信息來預(yù)測缺失關(guān)系已有相關(guān)模型,比如TransE、ComplEx,但許多基于TransE 的模型會將對稱關(guān)系學(xué)習(xí)為 0 向量,因此,無法做到有效區(qū)分[6],而以ComplEx 為代表的模型則大大增加了復(fù)雜度。
本文提出基于鏡像空間的平移嵌入模型MTransE,它不僅學(xué)習(xí)了對稱和反對稱關(guān)系的表示,對模型內(nèi)的對稱關(guān)系進(jìn)行了有效區(qū)分,而且該方法適用于所有基于平移的嵌入模型;同時它與復(fù)數(shù)表示相比,減少了參數(shù)的規(guī)模。實驗表明,該方法在4 個完備的知識補全數(shù)據(jù)集上都具有良好的性能。
知識圖的向量嵌入(Embedding)工作在近年來受到普遍關(guān)注。嵌入方法主要分為基于三元組的嵌入模型和基于路徑的語義模型。
基于三元組的嵌入模型TransE[2]被廣泛應(yīng)用于知識圖的嵌入,它將關(guān)系解釋為向量空間內(nèi)的平移,即h+r≈t,后續(xù)提出的許多模型都在此模型上進(jìn)行了改進(jìn)和完善。為了改善TransE 模型在一對多、多對一、多對多模型上的局限性,TransH 模型將首尾節(jié)點根據(jù)不同關(guān)系進(jìn)行拆分,利用節(jié)點在關(guān)系向量方向的投影,使得同一個實體在不同的關(guān)系下有了不同的表示[7]。TransR 模型認(rèn)為對于不同關(guān)系,實體應(yīng)該具有不同的語義空間,應(yīng)將首節(jié)點和尾節(jié)點投影到關(guān)系對應(yīng)的空間內(nèi)進(jìn)行運算[8]。TransD 模型則認(rèn)為,雖然TransR 對首尾節(jié)點進(jìn)行了空間變換,但由于首尾節(jié)點本身所處的空間屬性并不完全相同,因此該模型使用兩個矩陣對首尾節(jié)點分別進(jìn)行了空間變換[9]。
基于路徑的語義模型包括雙線性模型如DistMult[10]、HolE[11]、ComplEx[12]和其他基于神經(jīng)網(wǎng)絡(luò)的模型。這些方法通過匹配實體和關(guān)系的潛在語義對知識圖建模。RESCAL 模型用方陣表示關(guān)系[13],而DistMult 用對角陣降低復(fù)雜性。SimplE 模型也是一種簡單而有效的知識圖嵌入雙線性方法[14]。HolE模型研究全息的簡化表示,并利用循環(huán)相關(guān)性來捕捉實體之間復(fù)雜的相互作用。在ComplEx 模型中,將實體和關(guān)系嵌入到復(fù)空間中,并用厄米積對反對稱模式進(jìn)行建模,在學(xué)習(xí)KGs 表示方面取得了很好的效果。許多基于神經(jīng)網(wǎng)絡(luò)的方法也被應(yīng)用到實驗中,例如ER-MLP和神經(jīng)張量網(wǎng)絡(luò)[15]。一些其他類型的神經(jīng)網(wǎng)絡(luò),如卷積神經(jīng)網(wǎng)絡(luò)、圖卷積網(wǎng)絡(luò)和深度記憶網(wǎng)絡(luò)[16]在此任務(wù)中也表現(xiàn)出了良好的性能。
本文提出的MTransE 模型通過將鏡像空間的概念運用于平移的嵌入模型中,補充了對知識圖中廣泛存在的3 種關(guān)系模式進(jìn)行模擬的能力。該概念亦可應(yīng)用于其他基于平移的嵌入模型。
本文MTransE 模型介紹了知識圖中鏈接預(yù)測的3 種重要的關(guān)系模式,并提出了模型在鏡像空間中的距離計算方法;同時說明MTransE 簡單有效,能夠推斷3 種關(guān)系模式,并且該方法也可用于其他基于平移的模型。
MTransE 采用經(jīng)典的嵌入模型結(jié)構(gòu)作為基本框架:首先,數(shù)據(jù)集提供成批的三元組作為原始輸入,通過不同的嵌入度量,得到不同的嵌入向量,這里首實體和尾實體的嵌入矩陣相同,皆為實體嵌入矩陣,而關(guān)系嵌入單獨設(shè)置嵌入矩陣;其次,將嵌入后的向量輸入評分計算層,其內(nèi)部的評分函數(shù)是嵌入模型的核心,它決定了嵌入向量在向量空間中的分布。表1 所示為各個嵌入算法的打分函數(shù)和復(fù)雜度,其中,k為嵌入空間的維度,Rk為k維的實數(shù)空間,Ck為k維的復(fù)數(shù)空間,b為鏡像空間的大小,Re(·)為實部運算,mod 為聯(lián)模運算,Otime為時間復(fù)雜度。得到評分后通過自適應(yīng)負(fù)采樣計算得到平衡后的損失,最后按照學(xué)習(xí)率進(jìn)行損失的反向傳播。
表1 算法打分函數(shù)及其復(fù)雜度Table 1 Scoring functions of algorithms and their complexities
如文獻(xiàn)[6]中所指出,知識圖中鏈接預(yù)測的關(guān)鍵是推斷出鏈接模式,具有模式建模能力的模型效果更好。在知識圖中廣泛存在3 種重要的關(guān)系模式:對稱和反對稱、相反以及組合。通常,它們的定義如下:
若一個關(guān)系r是對稱(反對稱),則 ?x,y∈ε :
若一個關(guān)系r1和關(guān)系r2相反,則 ?x,y∈ε :
若關(guān)系r3是關(guān)系r1和關(guān)系r2的組合,則 ?x,y,z∈ε :
基于計算機(jī)表達(dá)的有限性,如64 位浮點數(shù)的表示范圍為 ?21024~21024,實際應(yīng)用的模型并不能真正地將數(shù)據(jù)嵌入到無限的向量空間中,實際的向量嵌入總是在有限的向量空間內(nèi)。因此,可以指定變量表達(dá)范圍內(nèi)的某一子空間為原始空間,定義原始空間為:
其中B=[0,b),b∈R ,n為空間維度。
在本文模型中,實體和關(guān)系被映射為鏡像空間中的向量,這個鏡像空間是原始空間和自身的鏡像的組合。定義原始空間的鏡像為其本身進(jìn)行尺寸整數(shù)倍平移所形成的空間,即:
鏡像中的點yi=(y1,y2,···,yn) 與原始空間中的點xi=(x1,x2,···,xn)滿足:
其中,ki∈Z ,Z 為整數(shù)集;b為原始空間的尺寸。
此外,定義所有由同一個原始空間中的點經(jīng)過上述平移得到的點互為鏡像點。如果點v和點v′互為鏡像點,則:
其中,| ?| 為按元素取絕對值。
給定一個三元組 (h,r,t) 的集合S,其中h,t∈ε(實體集),r∈R (關(guān)系集),本文模型將同時學(xué)習(xí)實體和關(guān)系的嵌入向量。與TransE 類似,本文將實體表示為空間內(nèi)的一點,將關(guān)系表示為空間中的一個平移向量。與此同時,當(dāng) (h,r,t) 為真時,h+r與t的最近鏡像點盡可能近;當(dāng) (h,r,t) 為假時,h+r與t的最近鏡像點盡可能遠(yuǎn)。因此,距離函數(shù)定義為:
其中,t?為最近的鏡像點。作為TransE 的變種,MTransE 不僅可以模擬和推測知識圖中的相反和組合關(guān)系,而且通過鏡像空間,MTransE 也獲得了推測對稱關(guān)系的能力。
負(fù)采樣在學(xué)習(xí)知識圖嵌入和單詞嵌入中被證明非常有效。負(fù)樣本由破壞數(shù)據(jù)集的首節(jié)點或尾節(jié)點而來,其不存在于原有數(shù)據(jù)集中。利用自對抗性負(fù)抽樣技術(shù)和計算的分值,對每個三元組進(jìn)行權(quán)重分配,分?jǐn)?shù)越高,權(quán)重越大。對負(fù)樣本三元組的權(quán)重分布安排如下:
其中,上標(biāo)“'”表示不在原數(shù)據(jù)集。下標(biāo)i,j分別為所有負(fù)樣本和某一個負(fù)樣本。fr(·,·) 是打分函數(shù),{(hi,ri,ti)}是所有三元組的集合,α是訓(xùn)練溫度(給定值)。因此得到了如下形式的負(fù)采樣損失:
其中,γ 是一個固定邊距,α(·) 為函數(shù)。
基于鏡像空間的嵌入模型MTransE 算法如下:
本算法通過破壞對象的主體來生成測試集的負(fù)樣本,并且確保這些負(fù)樣本沒有出現(xiàn)在數(shù)據(jù)集的混合集。
對稱關(guān)系在二維平面上的嵌入示意圖見圖1。從圖1 可以看到,實體h通過對稱關(guān)系r的2 次轉(zhuǎn)換,被投射到了它的鏡像點h′;而在TransE 模型中,由于不存在鏡像點,為了保證兩次對稱變換可以回到等效原點,關(guān)系r將被建模為0。因此MTransE 解決了TransE 中無法區(qū)分對稱關(guān)系的問題。
圖1 對稱關(guān)系在二維平面上的嵌入示意圖Fig.1 Embedding diagram of symmetric relations in a twodimensional space
FB15K、WN18、WN18RR、FB15K-237 等是被廣泛使用的數(shù)據(jù)集,本文采用這幾個知識圖進(jìn)行實驗,表2 示出了數(shù)據(jù)集的規(guī)模和劃分情況。其中WN18是從WordNet3(WordNet3 是一個英語詞匯數(shù)據(jù)庫,單詞通過概念語義和詞匯關(guān)系相互連接)中提取的數(shù)據(jù)集;WN18RR 是從WN18 中去掉了逆關(guān)系的子集;FB15K 是從Freebase(一個大型元組數(shù)據(jù)庫,具有結(jié)構(gòu)化的一般人類知識)中抽取的關(guān)系三元組數(shù)據(jù)集;FB15K-237[17]則是在FB15K 上去除了相反關(guān)系的數(shù)據(jù)子集。
表2 實驗數(shù)據(jù)集Table 2 Experiment datasets
本文評估了TransE、Ho1E、DistMult 和MTransE這4 個數(shù)據(jù)集,并對其平均排序 (MR)、平均倒數(shù)(MRR)、第N次命中率 (Hit@N)等性能進(jìn)行測試。
由于MTransE 是TransE 的直接變種,本文使用TransE 作為比較基線,而RotatE 模型[6]是將關(guān)系建模作為復(fù)數(shù)空間中的旋轉(zhuǎn)使其具有學(xué)習(xí)對稱與反對稱模式的能力,因此本文也與RotatE 模型進(jìn)行了比較。在語義匹配方面,采用了DistMult 和HolE 作為比較模型。
本文在文獻(xiàn)[6]的源代碼的基礎(chǔ)上進(jìn)行修正,并在單個GPU (Nvidia GeForce RTX 2080)進(jìn)行測試,同時使用Adam 作為優(yōu)化器,在驗證數(shù)據(jù)集中嘗試了多個超參數(shù)配置,進(jìn)行網(wǎng)格搜索的超參數(shù)的選擇范圍為:嵌入維數(shù)k∈{500, 800,1 000} ,批次大小b′∈{256,512},自對抗性采α樣 ∈{溫0.5,1度.0},固定邊界γ ∈{18,24,30}。實體嵌入向量歸一初始化于整個向量空間,而關(guān)系的嵌入向量歸一初始化于原始空間,采用早停止的策略來防止過擬合。
本文得到了MTransE 的實驗數(shù)據(jù),其他的報告數(shù)據(jù)則來自文獻(xiàn)[6,18]。
表3 和表4 分別示出了各個模型在數(shù)據(jù)集FB15K 和WN18 上的實驗結(jié)果。由表可得,MTransE獲得了優(yōu)于其他基線模型的實驗性能,主要原因是FB15K 和WN18 中的主要關(guān)系模式是對稱和反對稱以及相反,相比于TransE 將對稱關(guān)系嵌入為 0 ,MTransE能有效地分辨這些關(guān)系。
表3 數(shù)據(jù)集FB15K 上的實驗結(jié)果Table 3 Results on dataset FB15K
表4 數(shù)據(jù)集WN18 上的實驗結(jié)果Table 4 Results on dataset WN18
表5 和表6 分別示出了各個模型在FB15K-237和WN18RR 上的表現(xiàn)。由表可知,MTransE 的表現(xiàn)依然優(yōu)于大多數(shù)基線模型,但優(yōu)勢不明顯。原因是這兩個數(shù)據(jù)集主要包含組合關(guān)系和其他未知關(guān)系,這些未知的關(guān)系在本文模型中沒有得到目的性的解決。然而,與本文模型的基礎(chǔ)模型TransE 相比,MTransE在這些數(shù)據(jù)集上的表現(xiàn)仍然更好。這是因為像同義詞這樣的對稱關(guān)系通過組合等其他關(guān)系依然隱藏在于數(shù)據(jù)集中,這使得MTransE 獲得了更好的預(yù)測性能。
表5 數(shù)據(jù)集FB15K-237 上的實驗結(jié)果Table 5 Results on dataset FB15K-237
表6 數(shù)據(jù)集WN18RR 上的實驗結(jié)果Table 6 Results on dataset WN18 RR
MTransE 源自于TransE,并加強(qiáng)了它推斷對稱關(guān)系的能力,且與RotatE 非常相似,并且在實驗上達(dá)到了相同的性能水平。相比于RotatE,MTransE 鏡像空間的概念可用于所有基于TransE 的嵌入模型。
相比于TransE,MTransE 可以模擬和推斷對稱關(guān)系,而TransE 不能。如果TransE 中的關(guān)系r是對稱關(guān)系,則有:
即所有對稱關(guān)系的嵌入為向量 0。而在本文的模型中,如果一個關(guān)系r是對稱關(guān)系,則有:
式中,r可以為 (k1b,k2b,···,knb) ,ki∈Z ,任何滿足于該條件但不線性相關(guān)的向量都代表了不同的對稱關(guān)系。
3.4.1 MTransE 和RotatE 的相似性 RotatE 模型中的關(guān)系被模擬為復(fù)數(shù)空間中的旋轉(zhuǎn),并且在RotatE的源代碼中,關(guān)系向量實際上表示為相位(其模長固定為1),而實體向量由實部和虛部兩部分表示。模型一旦優(yōu)化完成,h?r≈t(? 為復(fù)數(shù)乘法)的關(guān)系幾乎在所有地方都成立,又由于r的模長固定為1,因此 |h| 和 |t| 幾乎相等。也就是說,如果一個知識圖是完全連接的,模型得到的所有嵌入向量模長相同。這也是文獻(xiàn)[6]中RotatE 的變體(若將實體模量限制為常數(shù)的pRotatE 模型)能達(dá)到幾乎與原模型相同效果的原因。
不考慮所有常數(shù),則pRotatE 的距離函數(shù)可表示為:
式中,θh為首實體的相位,θr為關(guān)系的相位,θt為尾實體的相位。
設(shè) ?θ=θh+θr?θt,則有
本文MTransE 模型將關(guān)系建模為鏡像空間中的平移,其距離函數(shù)為:
其中t?為t最近的鏡像點,即t?=kb+t,k∈Z。
設(shè) ?x=h+r?t,則有
可以看到,dr(h,t) 是一個周期函數(shù),其中一個周期 ?x∈[0,b) 有如下情形:
即dr(h,t)=min(b??x,?x) ,其中,?x∈[0,b)。
令 ?z=|h+r?t|modb,則
圖2 所示為RotatE 和 MTransE 距離函數(shù)的對比圖像,其中RotatE 的距離函數(shù)為MTransE 的距離函數(shù)為dr(h,t)=π?|π?(|?x|mod 2π)|。從圖2 可以看出,當(dāng)恰當(dāng)設(shè)置參數(shù)時,MTransE 和RotatE 的距離函數(shù)表現(xiàn)出一致的周期性和單調(diào)性。表7 和表8 也分別示出了這兩個模型具有相似的性能表現(xiàn)。本文比較了這兩個模型的一維距離函數(shù)(打分函數(shù)),同時可以推測其他具有相同周期性和單調(diào)性的距離函數(shù)具有相似的性能。
圖2 [?8π,8π]中的距離函數(shù)圖像Fig.2 Distance functions in [?8π,8π]
表7 RotatE 和MTransE 在FB15K 上的實驗結(jié)果Table 7 Results of RotatE and MTransE on FB15K
表8 RotatE 和MTransE 在WN18 上的實驗結(jié)果Table 8 Results of RotatE and MTransE on WN18
3.4.2MTransE 的優(yōu)勢 與TransE 相比,本文模型克服了TransE 不能對對稱關(guān)系進(jìn)行建模的不足,而對稱關(guān)系在許多知識圖中是非常重要的。與RotatE 相比,本文模型使用線性函數(shù)來建模距離,這意味著可以在所有基于平移的嵌入模型中使用鏡像空間的核心概念,如TransD、TransH 等模型。而在模型大小方面,MTransE 只采用了RotatE 一半的參數(shù)就可以達(dá)到類似性能。
本文設(shè)計了一種新的知識圖嵌入模型,該模型將關(guān)系模擬為鏡像空間中的平移操作,直觀且易于可視化。對比于TransE,本文模型具有對對稱關(guān)系模式建模的能力。在4 個廣泛使用的數(shù)據(jù)集上的實驗結(jié)果表明,MTransE 具有良好的性能,在參數(shù)設(shè)置較少的情況下,依然優(yōu)于多個近期有較強(qiáng)性能的比較基線。本文提出的核心概念?鏡像空間,也可用于許多其他基于TransE 的模型。