论文浅尝 | 可建模语义分层的知识图谱补全方法
本文轉(zhuǎn)載自公眾號:PaperWeekly。
論文作者:蔡健宇,中國科學(xué)技術(shù)大學(xué),研究方向:知識圖譜
近些年,知識圖譜(Knowledge Graph)在自然語言處理、問答系統(tǒng)、推薦系統(tǒng)等諸多領(lǐng)域取得了廣泛且成功的應(yīng)用。然而,現(xiàn)有知識圖譜普遍存在鏈接缺失問題。為解決該問題,知識圖譜補(bǔ)全任務(wù)應(yīng)運(yùn)而生。目前的知識圖譜補(bǔ)全模型可分為多個流派,而基于距離的模型是其中重要一派。這類模型可以建模對稱、互逆與復(fù)合等不同的抽象關(guān)系模式(Relation Pattern),卻難以對知識圖譜中普遍存在的語義分層(Semantic Hierarchies)現(xiàn)象進(jìn)行有效建模。
本文接下來所介紹的工作 HAKE 使用極坐標(biāo)系對語義分層現(xiàn)象進(jìn)行建模,并在主流數(shù)據(jù)集上超越了這一流派中現(xiàn)有性能最好的方法。
論文的標(biāo)題為 Learning Hierarchy-Aware Knowledge Graph Embeddings for Link Prediction,發(fā)表于 AAAI 2020。論文代碼已開源至 Github。
論文鏈接:https://arxiv.org/abs/1911.09419
開源代碼:https://github.com/MIRALab-USTC/KGE-HAKE
知識圖譜與補(bǔ)全任務(wù)
知識圖譜是一種以圖 (Graph) 的形式存儲人類知識的大規(guī)模語義網(wǎng)絡(luò)。知識圖譜中的節(jié)點(diǎn) (Node) 表示實體 (Entity),邊 (Edge) 表示關(guān)系 (Relation)。在知識圖譜中,事實 (Fact) 一般以三元組?(Triple) 的形式進(jìn)行表示。三元組一般記為 < 頭實體,關(guān)系,尾實體 > (< head entity, relation, tail entity >)。例如, 下圖中的 < 達(dá)芬奇 (Da Vinci),繪制 (painted),蒙娜麗莎 (Mona Lisa) > 就是一個三元組。
然而,知識圖譜卻普遍存在著三元組缺失(即鏈接缺失)問題。因缺失三元組的規(guī)模通常較大,人工尋找這些三元組代價高昂。因此,研究者們設(shè)計了知識圖譜補(bǔ)全任務(wù) (Knowledge Graph Completion),旨在通過機(jī)器學(xué)習(xí)模型自動補(bǔ)全缺失三元組。由于該任務(wù)并不會新增實體與關(guān)系,只是補(bǔ)全已有實體間的鏈接 (Link),因此也被稱為鏈接預(yù)測 (Link Prediction) 任務(wù)。
相關(guān)工作
現(xiàn)有知識圖譜補(bǔ)全模型首先將實體與關(guān)系映射為低維嵌入(knowledge graph embeddings,可為向量/矩陣/張量),然后通過一個以低維嵌入為輸入的打分模型為給定三元組進(jìn)行打分,從而確定任意三元組真實存在的概率。
現(xiàn)有的模型主要分為以下三類:
基于距離的模型 (Distance-based Models)
雙線性模型 (Bilinear Models)
神經(jīng)網(wǎng)絡(luò)模型 (Neural Network Models)
本文所介紹的 HAKE 模型屬于“基于距離的模型”這一流派。
基于距離的模型將關(guān)系視為從頭實體到尾實體的映射,并通過計算映射后的頭實體與尾實體之間的距離來得到三元組的得分,代表性模型包括 TransE 與 RotatE 等。該流派之前的模型能夠?qū)σ恍┏橄蟮年P(guān)系模式進(jìn)行建模,包括對稱關(guān)系 (Symmetry),互逆關(guān)系 (Inversion) 和復(fù)合 (Composition) 關(guān)系等。
TransE 將一個真實三元組 (h, r, t) 建模為??, 其中?,k 表示向量維度,它可以建模互逆關(guān)系與復(fù)合關(guān)系,卻難以建模對稱關(guān)系。
RotatE 將一個真實三元組 (h, r, t) 建模為?, 其中?,?表示向量間的 Hadamard 積,即?,它能夠建模上述三種關(guān)系。
然而,這些模型難以建模在知識圖譜中普遍存在的語義分層現(xiàn)象。
模型介紹
1. 語義分層現(xiàn)象
語義分層 (Semantic Hierarchies) 現(xiàn)象在知識圖譜中普遍存在。以下面兩個三元組為例:
< 棕櫚樹 (palm),上位詞 (_hypernym),樹 (tree) >
< 蘭開斯特 (Lancaster),位于 (located_in),英格蘭 (England) >
實體 <樹> 與 <英格蘭> 更加抽象,屬于更高的范疇,因而在語義分層中屬于高層級的實體;實體 <棕櫚樹> 與 <蘭開斯特> 更加具體,因而在語義分層中屬于低層級的實體。
進(jìn)一步,我們發(fā)現(xiàn)知識圖譜中的語義分層現(xiàn)象可以抽象為樹型 (Tree) 結(jié)構(gòu)。其中:
處于最高語義層級的實體對應(yīng)著樹的根節(jié)點(diǎn)
擁有更高的語義層級的實體更加接近根節(jié)點(diǎn)
語義層級更低的實體更加接近葉子節(jié)點(diǎn)
處于相同語義層級的實體到根節(jié)點(diǎn)的距離相同
也就是說,樹中一個節(jié)點(diǎn)的深度 (Depth) 反映了其對應(yīng)實體的語義層級。基于以上觀察, 我們將知識圖譜中的不同實體分為兩類:
分屬不同語義層級的實體,例如 <哺乳動物 (mammal)> 與 <狗 (dog)>;<奔跑 (run)> 與<移動 (move)>。
屬于相同語義層級的實體,例如 <玫瑰 (rose)> 與 <牡丹 (peony)>;<卡車 (truck)> 與 <貨車 (lorry)>。
若要建模知識圖譜的語義層級,一個模型必須能夠建模上述兩類實體。
2. HAKE 模型
HAKE (Hierarchy-Aware Knowledge Graph Embedding) 模型使用極坐標(biāo)系建模上述表示語義層級的樹型結(jié)構(gòu)。
極坐標(biāo)系 (Polar Coordinate System) 是一個二維坐標(biāo)系統(tǒng),包括半徑坐標(biāo)和角度坐標(biāo)兩部分。該坐標(biāo)系統(tǒng)中任意位置可由一個半徑??和一個角度??來表示。該模型將不同實體的嵌入向量的相同維都映射到同一個極坐標(biāo)系中,包括模長和角度兩部分。其中:
模長部分用于建模分屬不同層級的實體
角度部分用于建模屬于同一層級的實體
下面對這兩部分進(jìn)行詳細(xì)介紹。
2.1 模長部分
受到前文所述樹型結(jié)構(gòu)的啟發(fā),我們使用極坐標(biāo)系中的模長來表示樹中節(jié)點(diǎn)的深度。即,在語義層級中,我們使用模長部分來區(qū)分那些分屬不同層級的實體。
對于一個三元組?,?與??分別為頭實體、尾實體與關(guān)系向量,我們的建模如下:
對應(yīng)的距離函數(shù) (Distance Function) 為:
2.2 角度部分
位于同一個圓上的點(diǎn)(模長相同)可以有不同的夾角。受其啟發(fā),我們使用極坐標(biāo)系中的角度來區(qū)分樹中處于同一深度的不同節(jié)點(diǎn)。即,在語義層級中,我們使用角度部分來區(qū)分那些屬于同一層級的不同實體。
對于一個三元組??,?分別為頭實體、關(guān)系與尾實體向量,我們的建模如下:
對應(yīng)的距離函數(shù) (Distance Function) 為:
2.3 模長 + 角度
綜合模長部分與角度部分,我們得到
而??、??與??分別表示綜合后的頭實體、關(guān)系與為實體向量。
綜合后的距離函數(shù)為:
得分函數(shù) (Score Function) 為:
2.4 基準(zhǔn)模型 ModE
為了更加公平地進(jìn)行對比實驗,我們僅利用模長信息設(shè)計一個新的模型—ModE,它將作為基準(zhǔn)模型之一與 HAKE 進(jìn)行對比。
3. 實驗與分析
3.1 數(shù)據(jù)集
在本次實驗中,我們選擇在 WN18RR、FB15k-237 與 YAGO3-10 這三個數(shù)據(jù)集上進(jìn)行實驗。其中:
WN18RR,主要包含兩種類型的關(guān)系:(a) 對稱關(guān)系,如 _similar_to,該關(guān)系類型連接的頭尾實體屬于同一語義層級;(b) 非對稱關(guān)系,如 _hypernym,該關(guān)系連接的頭尾實體屬于不同語義層級。
FB15k-237,包含的關(guān)系數(shù)量最多,關(guān)系類型最復(fù)雜,僅有部分關(guān)系表示語義層級。
YAGO3-10,該數(shù)據(jù)集和 FB15k-237 類似,包含許多具有高入度 (Indegree) 的關(guān)系,即在同一個關(guān)系下,一個頭/尾實體可能對應(yīng)著大量的尾/頭實體。例如,(?,hasGender,male)(?,hasGender,male) 擁有超過 1,000 個正確的頭實體,但這些頭實體的含義卻可能相差懸殊,因此建模難度更高。
3.2 實驗結(jié)果
HAKE 與基準(zhǔn)模型 ModE 在 WN18RR、FB15k-237 與 YAGO3-10 上的實驗對比結(jié)果如下圖所示。
我們可以看到:
ModE 模型的參數(shù)量和 TransE 相同,且模型同樣簡單,但在各個數(shù)據(jù)集上的性能都遠(yuǎn)高于它;
HAKE 模型在各個數(shù)據(jù)集上的表現(xiàn)都顯著優(yōu)于現(xiàn)有的最佳模型。
3.3 可視化分析
3.3.1 關(guān)系的可視化分析
(i) 關(guān)系的模長部分
基于上文中關(guān)于樹型結(jié)構(gòu)的論述,我們對于實體的嵌入向量的表現(xiàn)有如下的期望:
位于更高語義層級的實體更加靠近樹的根節(jié)點(diǎn),故模長更小
位于更低語義層級的實體更加靠近樹的葉節(jié)點(diǎn),故模長更大
由于關(guān)系連接著頭尾實體,我們對于關(guān)系的嵌入向量的表現(xiàn)有如下期望:
如果頭實體的語義層級更高,而尾實體的語義層級更低,那么我們期望?
如果頭實體的語義層級更低,而尾實體的語義層級更高,那么我們期望?
如果頭尾實體位于相同的語義層級,那么我們期望?
為了驗證上述猜想,我們進(jìn)行了如下實驗分析。首先,我們從三個數(shù)據(jù)集中選取了一些代表性的關(guān)系。接著,對于這些關(guān)系在 ModE 與 HAKE 模型中的模長部分向量,我們繪制了每一維度的取值的分布直方圖,如下圖所示:
對于圖中的六個關(guān)系,我們將其分為三組。圖 (a) (b) 中的關(guān)系所連接的頭實體的語義層級低于尾實體;圖 (c)?(d) 中的關(guān)系所連接的頭尾實體的語義層級相同;圖 (e) (f) 中的關(guān)系所連接的頭實體的語義層級高于尾實體。
從圖中可以分析得出,當(dāng)頭實體語義層級更高時,關(guān)系的模長總體大于1;當(dāng)尾實體語義層級更高時,關(guān)系的模長總體小于1;當(dāng)頭尾實體的語義層級相同時,關(guān)系的模長總體接近1。
這樣的實驗結(jié)果與上述猜想完全一致。我們還發(fā)現(xiàn),與 ModE 相比,HAKE 的模長嵌入向量的取值分布更為集中,方差更小,這表明 HAKE 能夠更加清晰準(zhǔn)確地對語義層級進(jìn)行建模。
(ii) 關(guān)系的角度部分
在上述圖 (c) (d) 中,關(guān)系的模長都接近于 1,因此利用模長部分難以對該關(guān)系連接的實體進(jìn)行區(qū)分。對于這種情況,我們求助于 HAKE 的角度部分。我們從 WN18RR 和 FB15k-237 中各選取了一種關(guān)系,并繪制了它們角度部分每一維度的取值的的分布直方圖,如下圖所示。
從圖中可以看到,它們每一維度的取值主要集中于三個值附近:0、π 與 2π,并且取值接近 π 的維度占比為 40%-50%。也就是說,這些頭尾實體中接近一半的維度取值都相差 π。因此位于同一語義層級的實體可以被角度部分區(qū)分。
3.3.2 實體可視化分析
我們接下來對實體進(jìn)行可視化分析。在這部分的實驗中,為了更加清晰的展示出通過 HAKE 建模得到的分層效果,我們將 HAKE 與 RotatE 進(jìn)行對比,將兩種模型得到的實體向量的不同維度都繪制成同一個二維平面上的點(diǎn)。我們從 WN18RR 中選取了三個不同類型的三元組,得到如下的散點(diǎn)圖。
圖 (a) 中的三元組中,頭實體位于更低的語義層級;圖 (b) 中,頭尾實體的語義層級相同;圖 (c) 中,頭實體位于更高的語義層級。需要注意的是,為了更加直觀地顯示出分層效果,我們繪制散點(diǎn)圖時對于每一個點(diǎn)的模長使用了對數(shù)縮放操作。因此,圖中更大的半徑實際上表示更小的模長。
從圖中可以看到,在頭尾實體分屬不同語義層級的場景下(圖 (a) 與 (c)),HAKE 的散點(diǎn)圖表現(xiàn)出了更加明顯的分層效果,而在 RotatE 的散點(diǎn)圖中,頭尾實體則難以依靠半徑進(jìn)行區(qū)分。對于頭尾實體屬于相同語義層級的場景下,表示頭尾實體的點(diǎn)應(yīng)該具有大致相同的半徑。在此場景下,HAKE 依然表現(xiàn)的更好,因為 HAKE 中的實體模長分布的方差更小。
總結(jié)
本文介紹了一個可建模語義分層的知識圖譜補(bǔ)全模型:HAKE。該模型使用極坐標(biāo)系對語義分層進(jìn)行建模。其中,模長部分用于建模分屬不同語義層級的實體;角度部分用于建模屬于相同語義層級的實體。實驗結(jié)果表明 HAKE 的性能優(yōu)于現(xiàn)有的性能最好的方法。進(jìn)一步分析結(jié)果顯示,訓(xùn)練得到的模型中模長與角度的表現(xiàn)與預(yù)期相符,能夠很好地對語義層級進(jìn)行建模。
OpenKG
開放知識圖譜(簡稱 OpenKG)旨在促進(jìn)中文知識圖譜數(shù)據(jù)的開放與互聯(lián),促進(jìn)知識圖譜和語義技術(shù)的普及和廣泛應(yīng)用。
點(diǎn)擊閱讀原文,進(jìn)入 OpenKG 博客。
總結(jié)
以上是生活随笔為你收集整理的论文浅尝 | 可建模语义分层的知识图谱补全方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 会议交流 | 2021年全国知识图谱与语
- 下一篇: 论文浅尝 | SMBOP: Semi-a