康世澤 吉立新 張建朋
(戰(zhàn)略支援部隊信息工程大學 鄭州 450001)
異質(zhì)信息網(wǎng)絡(luò)為具有多種類型(類型數(shù)量大于1)節(jié)點或邊的復雜網(wǎng)絡(luò)[1]。學術(shù)領(lǐng)域廣泛研究的異質(zhì)信息網(wǎng)絡(luò)有兩種:(1)具有簡單模式層的異質(zhì)信息網(wǎng)絡(luò);(2)具有復雜模式層(本體層[2])的知識圖譜。異質(zhì)信息網(wǎng)絡(luò)中不同類型的邊與節(jié)點使其蘊含豐富且復雜的語義信息,這為對其進行表示學習帶來了挑戰(zhàn)。
簡單模式層的異質(zhì)信息網(wǎng)絡(luò)與知識圖譜通常遵循不同的表示學習方法。之前主流的知識表示模型為TransE[3]及其相關(guān)變體。近年來又有基于卷積神經(jīng)網(wǎng)絡(luò)[4]或圖神經(jīng)網(wǎng)絡(luò)[5]的知識表示方法。而簡單模式層的異質(zhì)信息網(wǎng)絡(luò)大多基于元路徑捕獲網(wǎng)絡(luò)結(jié)構(gòu)信息以實現(xiàn)表示學習[6,7]。
上述表示學習方法的不同是由兩種網(wǎng)絡(luò)的差異造成的,具體表現(xiàn)在:(1)知識圖譜的關(guān)系信息更加復雜。常用的異質(zhì)信息網(wǎng)絡(luò)在兩個實體節(jié)點之間通常僅存在一種類型的邊,而知識圖譜中兩個實體節(jié)點之間可以存在多種類型的關(guān)系。(2)兩種網(wǎng)絡(luò)面向的任務(wù)不完全相同。知識圖譜面向的任務(wù)偏向推理,而簡單模式層的異質(zhì)信息網(wǎng)絡(luò)面向的任務(wù)偏向分類。
為了同時表征知識圖譜和簡單模式層的異質(zhì)信息網(wǎng)絡(luò),本文提出一種基于圖注意力網(wǎng)絡(luò)的異質(zhì)信息網(wǎng)絡(luò)表示學習框架。該框架可以分為3部分:基礎(chǔ)向量部分,傳播模型部分和任務(wù)模型部分。其中基礎(chǔ)向量用于訓練網(wǎng)絡(luò)的基礎(chǔ)向量,傳播模型用于學習網(wǎng)絡(luò)中的高階信息,而任務(wù)模型用于執(zhí)行不同的任務(wù)。本文的貢獻如下:
(1) 本文對簡單模式層的異質(zhì)信息網(wǎng)絡(luò)和知識圖譜進行了異同點的總結(jié),并提出了一種通用的異質(zhì)信息網(wǎng)絡(luò)表示學習框架,該框架既可以應(yīng)用于知識圖譜也可以應(yīng)用于簡單模式層的異質(zhì)信息網(wǎng)絡(luò)。
(2) 本文在多個數(shù)據(jù)集進行了廣泛的實驗。實驗結(jié)果表明,本文所提模型與基準模型相比可以取得相對不錯的效果。
定義1(3元組) 給定一個異質(zhì)信息網(wǎng)絡(luò)G =(V,E),本文將每組節(jié)點 v1, v2和它們之間直接相連的邊r定義為一個3元組( v1,r,v2)。 對于知識圖譜,v1是頭實體 ,v2是 尾實體,r 為兩個實體之間的關(guān)系。
本節(jié)詳述基于圖注意力網(wǎng)絡(luò)的異質(zhì)信息網(wǎng)絡(luò)表示學習框架(HINs Embedding framework via Graph Attention Network, HE-GAN),該框架包括基礎(chǔ)向量(b a s i c v e c t o r)部分,傳播模型(propagation model)部分,以及任務(wù)模型(prediction)部分。本文引入Conv-TransE對知識圖譜執(zhí)行鏈接預(yù)測任務(wù),構(gòu)成面向鏈接預(yù)測任務(wù)的表示學習模型(HE-GAN toward Link Prediction, HE-GANLP)。本文通過將任務(wù)模型設(shè)計成節(jié)點分類模型,構(gòu)建面向節(jié)點分類的表示學習模型(HE-GAN tow ard Node Classification, HE-GAN-NC)。
基礎(chǔ)向量用于保持網(wǎng)絡(luò)的基礎(chǔ)結(jié)構(gòu)信息。本文采用在知識圖譜領(lǐng)域廣泛使用的TransE模型學習知識圖譜的節(jié)點向量和邊向量。由于簡單模式層異質(zhì)信息網(wǎng)絡(luò)中直接相連的兩個節(jié)點間僅存在一種邊,本文認為這些邊沒有豐富的語義信息。因此本文沒有學習簡單模式層的異質(zhì)信息網(wǎng)絡(luò)的邊向量,而是采用歐氏距離作為度量保留網(wǎng)絡(luò)中的1階和2階相似度。
3.1.1 簡單模式層異質(zhì)信息網(wǎng)絡(luò)的基礎(chǔ)向量
對于圖G任一3元組( v1,r,v2),其對應(yīng)的向量為v1, v2(v1, v2∈Rn)。本文采用歐氏距離為該3元組建模
本文旨在最小化現(xiàn)有3元組對應(yīng)分數(shù)函數(shù)的距離,因此定義基于間隔的損失函數(shù)
3.1.2 知識圖譜的基礎(chǔ)向量
對于知識圖譜 G 中的任一3元組( v1,r,v2),其對應(yīng)的向量為v1, v2和 r。本文采用TransE為該3元組定義的分數(shù)函數(shù)為
對于知識圖譜中的所有3元組,本文定義基于間隔的損失函數(shù)
其中, Dr是 關(guān)系r對應(yīng)的正3元組集合,是其對應(yīng) 的負3元組集合。
文獻[5,9]中的結(jié)果證明通過圖神經(jīng)網(wǎng)絡(luò)融合高階的鄰居信息可以提高知識圖譜鏈接預(yù)測任務(wù)的性能;文獻[7]也通過使用圖注意力網(wǎng)絡(luò)融合高階鄰居信息提升了異質(zhì)信息網(wǎng)絡(luò)的分類性能。本文借鑒這些方法[5,7,9]提出了一種既可以融合知識圖譜高階鄰居信息,也可以融合簡單模式層高階鄰居信息的圖神經(jīng)網(wǎng)絡(luò)作為傳播模型。
本文所提傳播模型的示意圖如圖1所示,該圖展示了為節(jié)點“中國”生成向量的過程。該圖中向量下方的數(shù)字表示節(jié)點的編號,相同的編號表示同一節(jié)點。向量上方的數(shù)字為向量編號,相同的數(shù)字表示同一向量。虛線表示連接操作。對于傳播模型的第1層,其輸入是基礎(chǔ)向量層的全體節(jié)點向量,對于知識圖譜來說還包括基礎(chǔ)向量層的全體關(guān)系向量?;A(chǔ)向量層的所有節(jié)點向量可以構(gòu)成矩陣E ∈RN×m,其中N為網(wǎng)絡(luò)中的節(jié)點總數(shù)。知識圖譜在基礎(chǔ)向量層對應(yīng)的關(guān)系向量構(gòu)成矩陣 R ∈RM×m,其中 M為網(wǎng)絡(luò)中關(guān)系的總數(shù)。通過一層注意力層后生成的新向量可以構(gòu)成矩陣 E(1)∈RN×m1,m1為新生成向量的維度;再通過一層注意力層后生成的新關(guān)系向量可以構(gòu)成矩陣 R(1)∈RM×m2,m2為新生成向量的維度。
對于知識圖譜中任一節(jié)點 vi對應(yīng)的3 元組(vi,r,vj),本文定義注意力系數(shù)
其中,注意力系數(shù) cirj表示節(jié)點vj在 關(guān)系r 的連接下對節(jié)點 vi的重要性;W1∈Rk1×m和 W2∈Rk2×2m為線性變換矩陣;∈Rk1+k2為線性變換向量;vi,r 和vj為 vi, r 和vj對 應(yīng)的向量;[ ,]和‖都表示連接操作(concatenation)。
對于簡單模式層的異質(zhì)信息網(wǎng)絡(luò)中的一個節(jié)點vi和 其任意一階鄰居vj,本文定義注意力系數(shù)
其中,W1∈Rk1×m和 W2∈Rk2×2m為線性變換矩陣,∈Rk1+k2為線性變換向量。與知識圖譜不同,簡單模式層的異質(zhì)信息網(wǎng)絡(luò)沒有關(guān)系向量。
接下來,本文使用softmax來歸一化與節(jié)點vi(知識圖譜與簡單模式層的異質(zhì)信息網(wǎng)絡(luò)通用)相關(guān)的注意力系數(shù)
其中, Nvi為節(jié)點vi的1階鄰居集合,Rik表示節(jié)點vi和節(jié)點vk之 間所有的關(guān)系集合,L eakyReLU為神經(jīng)網(wǎng)絡(luò)中常用的激活函數(shù)。
為了聚合節(jié)點 vi在該傳播層的鄰居信息,本文將不同注意力系數(shù)線性結(jié)合并采用多頭注意力[10],為知識圖譜定義的聚合公式為
其中,K是多頭注意力機制對應(yīng)頭的數(shù)量, Rij為節(jié)點 vi和vj之 間的關(guān)系集合,‖ 為連接操作。如圖1所示,向量1和向量2由不同的注意力頭生成,再采樣連接操作將二者融合。
對于簡單模式層的異質(zhì)信息網(wǎng)絡(luò),本文定義的聚合公式為
以上是經(jīng)過一個注意力層對一個特定節(jié)點的操作。所有新生成的節(jié)點向量構(gòu)成矩陣 E(1)。對于關(guān)系向量,本文利用線性變換矩陣WR轉(zhuǎn)化生成本注意力層對應(yīng)的關(guān)系向量
之后, E(1)和 R(1)可以作為下一層的輸入,按照以上聚集鄰居信息的方法,生成 E(2)和 R(2)。重復這個過程,最終可以生成n層的傳播模型。本文將最后一層的節(jié)點和關(guān)系向量矩陣表示為 E(f)和R(f)。最后一層知識圖譜的節(jié)點聚合公式為
簡單模式層的異質(zhì)信息網(wǎng)絡(luò),對應(yīng)的節(jié)點聚合公式為
圖1 知識圖譜傳播模型示意圖
3.3 任務(wù)模型
對于簡單模式層的異質(zhì)信息網(wǎng)絡(luò),本文對其執(zhí)行節(jié)點分類任務(wù);對于知識圖譜,本文對其執(zhí)行鏈接預(yù)測任務(wù)。
3.3.1 知識圖譜的鏈接預(yù)測
本文采用文獻[9]提出Conv-TransE來執(zhí)行知識圖譜的鏈接預(yù)測任務(wù),該模型既可以生成比較有效的特征又可以保留TransE模型的翻譯特性。該模型對應(yīng)的示意圖如圖2所示。
本文要求傳播模型每一層的節(jié)點向量維度都和關(guān)系向量維度相等。鏈接預(yù)測任務(wù)旨在給出一個3元組的頭實體和關(guān)系,預(yù)測尾實體。對于任務(wù)中的一個3元組( vs,r,n), 首先從E(f)和 R(f)中分別取出它們對應(yīng)的向量 vs和 r (其維度都為ml),再將兩個向量堆疊在一起。之后,利用C個卷積核對堆疊在一起的向量執(zhí)行卷積操作,其中第c個卷積操作為
經(jīng)過卷積操作之后的分數(shù)函數(shù)為
其中,W ∈RCml×ml是一個線性變換矩陣,而f 是一個非線性變換。矩陣M (vs,r)被轉(zhuǎn)換為一個向量vec(M)∈RCml。在訓練的過程中,本文對分數(shù)函數(shù)采用logistic sigmoid函數(shù),如式(16)
3.3.2 簡單模式層的異質(zhì)信息網(wǎng)絡(luò)的節(jié)點分類
給定任務(wù)模型的輸入向量,本文執(zhí)行節(jié)點分類任務(wù)。為了執(zhí)行該任務(wù),首先將分類標簽編碼為獨熱(one-hot)向量,再給輸入向量接入幾個全連接層,以使輸出向量的維度等于標簽對應(yīng)獨熱向量的維度。最后,采用交叉熵損失來估計標簽節(jié)點和預(yù)測值之間的差距
其中,Q為標記節(jié)點集合; Yl是對應(yīng)標簽的獨熱向量;是全連接層的最后一層輸出的向量;θ 為分類 器的參數(shù)。
本文主要執(zhí)行兩個任務(wù):節(jié)點分類和鏈接預(yù)測。本文基于pytorch編程,所使用服務(wù)器的詳細參數(shù)為:志強64核CPU;256 GB內(nèi)存;8塊TiTAN XP GPU。
圖2 Conv-TransE示意圖
4.1.1 簡單模式層的異質(zhì)信息網(wǎng)絡(luò)數(shù)據(jù)集
DBLP是記錄計算機領(lǐng)域?qū)W術(shù)論文信息的數(shù)據(jù)集。本文抽樣了一個DBLP的子網(wǎng)絡(luò)構(gòu)建數(shù)據(jù)集。所構(gòu)建的數(shù)據(jù)集包含4種類型的節(jié)點:論文(Paper,P),作者(Author, A),會議(Conference, C)和術(shù)語(Term, T)。數(shù)據(jù)集相關(guān)的4個研究領(lǐng)域包括機器學習、數(shù)據(jù)庫、數(shù)據(jù)挖掘和信息檢索。對于任一作者,如果他/她的大部分論文來自會議X,便將與會議X相關(guān)的研究領(lǐng)域標簽分配給該作者。最后,本文選擇了可以被明確分類的4000名作者用于節(jié)點分類任務(wù)。
IMDB是一個關(guān)于電影的數(shù)據(jù)庫,包括演員、導演、評論、簡介和電影的其他信息。本文從IMDB中抽取信息構(gòu)建了一個由電影(Movie, M)、演員(Actor, A)和導演(Director, D)組成的數(shù)據(jù)集。最終,本文選擇了3000部可以被明確分類為動作、喜劇或戲劇的節(jié)點來執(zhí)行節(jié)點分類。
本文構(gòu)建數(shù)據(jù)集的具體統(tǒng)計數(shù)據(jù)如表1所示。
4.1.2 知識圖譜數(shù)據(jù)集
本文采用了兩個知識圖譜數(shù)據(jù)集[5,11]:WN18RR和FB15k-237。WN18RR和FB15k-237是為了解決相關(guān)關(guān)系問題[5]為WN18和FB15k分別創(chuàng)建的子集。
本文采用KNN分類器來執(zhí)行節(jié)點分類并設(shè)置KNN的參數(shù)k=5。本文采用Micro-F1和Macro-F1作為評估實驗結(jié)果的指標。
4.2.1 基準算法
DeepWalk[12]將異質(zhì)信息網(wǎng)絡(luò)視作同質(zhì)信息網(wǎng)絡(luò)為每個節(jié)點生成向量。
Metapath2vec[6]利用隨機游走獲取每個節(jié)點的鄰居信息,并利用異質(zhì)Skip-Gram來學習每個節(jié)點的表示。本文對DBLP分別采用集合{APA, APCPA,APTPA}中的元路徑生成向量;對IMDB分別采用集合{MAM, MDM}中的元路徑生成向量。
Esim[13]使用預(yù)定義的元路徑作為向?qū)韺W習向量。與Metapath2vec不同,Esim在學習的過程中可以使用多個元路徑,而Metapath2vec在學習過程中只能采用一個元路徑。
HAN[7]也是一種基于圖注意力網(wǎng)絡(luò)的表示學習模型,該模型分別針對節(jié)點級別和語義級別(元路徑)的鄰居信息進行建模。本文為DBLP采用元路徑{APA, APCPA, APTPA};為IMDB采用元路徑{MAM, MDM}。
Variant1為了測試簡單模式層的異質(zhì)信息網(wǎng)絡(luò)是否需要學習關(guān)系向量,本文提出了令簡單模式層的異質(zhì)信息網(wǎng)絡(luò)利用知識圖譜的基礎(chǔ)向量模型和傳播模型生成向量的變體模型。
Variant2為了驗證簡單模式層的異質(zhì)信息網(wǎng)絡(luò)是否需要基礎(chǔ)向量層,本文提出了僅包含傳播模型和任務(wù)模型的變體模型。此外,本文首先訓練了基于歐氏距離的節(jié)點向量,再用這些向量對傳播模型進行了初始化。
訓練本文利用Adam[14]對模型進行訓練。本文對模型中所有的向量和圖神經(jīng)網(wǎng)絡(luò)所有的線性變換矩陣實施L2正則化來防止訓練過擬合。本文設(shè)置多頭注意力機制對應(yīng)頭的數(shù)量為4;學習率 λ=0.001;圖神經(jīng)網(wǎng)絡(luò)的層數(shù) l=2。與HAN的原論文不同,本文的數(shù)據(jù)集沒有使用任何額外的特征。本文令基礎(chǔ)向量模型的向量維度 d=50,其他基準模型的向量維度也為50。經(jīng)過第1層注意力層,單注意力頭輸出維度為25,總的維度為100;經(jīng)過第2層注意力層,向量的輸出維度為100;通過將不同層的向量連接,送入任務(wù)模型的向量維度為250。本文令負樣本的大小n =5。對于DeepWalk, Esim和Metapath2vec,本文將每個節(jié)點的遍歷數(shù)設(shè)置為50,并將步長設(shè)置為100。對于HE-GAN-NC和HAN,本文進行了10次實驗并報告了平均結(jié)果。對于Metapath2vec,僅在測試所有給定的元路徑后報告最佳結(jié)果。
4.2.2 實驗結(jié)果
實驗結(jié)果如表2所示。從實驗結(jié)果可以看出,本文所提HE-GAN-NC優(yōu)于所有的基準算法,證明本文所提模型對簡單模式層的異質(zhì)信息網(wǎng)絡(luò)具有比較好的學習能力。此外,圖神經(jīng)網(wǎng)絡(luò)模型(HAN和HE-GAN)的整體性能優(yōu)于其他傳統(tǒng)網(wǎng)絡(luò)表示學習模型(DeepWalk, Esim和Metapath2vec),表明圖神經(jīng)網(wǎng)絡(luò)生成的特征具有更強的表征能力。
表1 簡單模式層異質(zhì)信息網(wǎng)絡(luò)數(shù)據(jù)集的統(tǒng)計信息
表2 簡單模式層異質(zhì)信息網(wǎng)絡(luò)的節(jié)點分類性能
本文所提HE-GAN-NC的性能在所有數(shù)據(jù)集中都優(yōu)于HAN??赡艿脑蚴荋E-GAN-NC不僅使用注意力機制來選擇有用信息,而且還采用了歐氏距離來學習可以保留節(jié)點1階和2階相似度的基礎(chǔ)向量。此外,由于HAN的效果是基于所給定的元路徑的,相比之下本文所提的模型還具有更強的適用性。
本文所提模型的效果好于Variant1,說明學習簡單模式層的異質(zhì)信息網(wǎng)絡(luò)的邊信息并不能促進實驗的效果。本文所提模型的效果好于Variant2,說明基礎(chǔ)向量模型的提出可以更進一步提升模型性能。
知識圖譜的鏈接預(yù)測任務(wù)旨在預(yù)測3元組中丟失的頭實體或者尾實體,即對于一個3元組(v1,r,v2)給定 ( r,v2)預(yù) 測v1或者給定( v1,r) 預(yù) 測v2。對于測試集中的每一個3元組( v1,r,v2), 本文通過將v1或 v2換成實體集合 E中的其他實體來構(gòu)建損壞3元組并限定這些損壞3元組沒有在知識圖譜的訓練、驗證和測試集中出現(xiàn)過。本文采用的指標有平均倒序(Mean Reciprocal Rank, MRR)和Hits@N(正確的3元組在前N項中的排序),其中N在本文取1, 3和10。更高的MRR值和Hits@N值表示更好的實驗效果。
4.3.1 基準算法
TransE[3]是比較簡單有效的模型,它將尾實體看作從頭實體經(jīng)過關(guān)系的翻譯。
ConvE[4]是一種多層卷積神經(jīng)網(wǎng)絡(luò)模型,其參數(shù)利用率高,善于學習復雜結(jié)構(gòu)。
ConvKB[11]通過卷積神經(jīng)網(wǎng)絡(luò)捕獲實體和關(guān)系間的全局關(guān)系與翻譯特性。
SACN(GCN+Conv-TransE)[9]是一個端到端的圖卷積網(wǎng)絡(luò)模型,該模型利用加權(quán)的圖卷積網(wǎng)絡(luò)學習知識向量,并利用Conv-TransE執(zhí)行知識圖譜的鏈接預(yù)測任務(wù)。
relationPrediction(GAT+ConvKB)[5]使用圖注意力網(wǎng)絡(luò)并融合關(guān)系信息學習知識圖譜的結(jié)構(gòu)信息,并使用ConvKB作為解碼器。
Variant3為了驗證知識圖譜的表示學習是否需要基礎(chǔ)向量層,本文提出了僅包含傳播模型和任務(wù)模型的變體模型。此外,本文首先利用TransE模型訓練了知識向量,再用這些向量對傳播模型進行了初始化。
訓練本文利用Adam對模型進行訓練。本文對模型中所有的向量和圖神經(jīng)網(wǎng)絡(luò)所有的線性變換矩陣實施L2正則化來防止訓練過擬合。本文設(shè)置多頭注意力機制對應(yīng)頭的數(shù)量為4;學習率λ =0.001;圖神經(jīng)網(wǎng)絡(luò)的層數(shù)l =2。對于卷積核數(shù)C,本文在FB15k-237數(shù)據(jù)集上取100,在WN18RR數(shù)據(jù)集上取200。本文令基礎(chǔ)向量模型的向量維度 d=64。經(jīng)過第1層注意力層,單注意力頭輸出向量維度為64,總的維度為256;經(jīng)過第2層注意力網(wǎng)絡(luò),最終的 輸出維度為256。本文令負樣本的大小n =5。
4.3.2 實驗結(jié)果
從表3的實驗結(jié)果可以看出,本文提出的HEGAN-LP與基準算法相比取得了比較好的效果。在所有的模型中,TransE的實驗效果最不理想??赡艿脑蚴荰ransE是一種實驗參數(shù)較少的線性模型,而其他神經(jīng)網(wǎng)絡(luò)模型可以生成更有效的特征。SACN的效果整體優(yōu)于ConvKB,可能的原因是SACN提出的Conv-TransE可以更加有效地保留3元組的翻譯特性。本文所提模型比其變體模型Variant3整體效果略好,可能的原因是基礎(chǔ)向量層可以使輸入圖注意力網(wǎng)絡(luò)的知識向量始終保持翻譯特性。本文所提模型的效果整體上稍好于relation-Prediction(GAT+ConvKB)模型。其可能的原因是,本文所提模型具有基礎(chǔ)向量層,而且利用了可以生成有效特征的Conv-TransE模型。
此外,在FB15k-237數(shù)據(jù)集上,基于圖注意力網(wǎng)絡(luò)的模型(relationPrediction和HE-GAN-LP)效果優(yōu)于基于圖卷積網(wǎng)絡(luò)的模型(SACN);然而,在WN18RR數(shù)據(jù)集上,基于圖注意力網(wǎng)絡(luò)的模型并未比SACN模型有顯著提升??赡艿脑蚴荈B15k-237數(shù)據(jù)集的平均入度比較高,注意力方法可以從各節(jié)點的鄰居中選擇有用的節(jié)點提升實驗性能,而WN18RR數(shù)據(jù)集的平均入度太小(2.12),圖注意力網(wǎng)絡(luò)難以發(fā)揮優(yōu)勢。
表3 知識圖譜的鏈接預(yù)測任務(wù)性能
本文提出了一種通用的異質(zhì)信息網(wǎng)絡(luò)表示學習框架,該框架可以分為3部分:基礎(chǔ)向量模型,基于圖注意力網(wǎng)絡(luò)的傳播模型以及任務(wù)模型。對于每一個模型,本文針對不同的異質(zhì)信息網(wǎng)絡(luò),采用了不完全相同的設(shè)計方法,并解決了不同類型網(wǎng)絡(luò)中存在的一些問題。該框架可以應(yīng)用于多個任務(wù)并取得良好的效果。本框架的問題在于各模塊對于不同類型的網(wǎng)絡(luò)還需要特定的設(shè)計,未來計劃提出更加具有通用性的表示學習模型。