龐 俊,徐 浩,秦宏超,林曉麗,劉小琪,王國仁
1.武漢科技大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,武漢 430070
2.智能信息處理與實(shí)時工業(yè)系統(tǒng)湖北省重點(diǎn)實(shí)驗(yàn)室,武漢 430070
3.北京理工大學(xué) 計(jì)算機(jī)學(xué)院,北京 100081
知識超圖是一種超圖結(jié)構(gòu)[1]的知識圖譜。它使用超邊(即多元關(guān)系)描述現(xiàn)實(shí)世界中多個實(shí)體之間的關(guān)系[2]。知識超圖鏈接預(yù)測旨在通過已知的實(shí)體和關(guān)系預(yù)測出未知的關(guān)系,在推薦系統(tǒng)[3]和問答系統(tǒng)[4]等領(lǐng)域有廣泛的應(yīng)用。
目前,學(xué)界對知識超圖的鏈接預(yù)測方法開展了一些研究。根據(jù)推理方式的不同,現(xiàn)有知識超圖鏈接預(yù)測方法可分為三類:基于軟規(guī)則的方法[5]、基于神經(jīng)網(wǎng)絡(luò)的方法[6-8]與基于嵌入表示模型的方法[2,9-11]。與前兩種方法相比,基于嵌入表示模型的方法可以將復(fù)雜的數(shù)據(jù)結(jié)構(gòu)映射到歐式空間,更容易發(fā)現(xiàn)關(guān)聯(lián)關(guān)系。
目前,最優(yōu)的知識超圖嵌入模型是文獻(xiàn)[2]提出的HypE 模型。HypE 根據(jù)實(shí)體在元組中的不同位置,采用不同的卷積核來提取實(shí)體的特征,具有較好的鏈接預(yù)測效果。但是HypE 直接采用初始化的關(guān)系嵌入?yún)⑴c最終評分,未考慮不同實(shí)體對關(guān)系嵌入的貢獻(xiàn)程度不同,從而制約了算法性能。
注意力機(jī)制是一種常用的表達(dá)不同貢獻(xiàn)的有效機(jī)制,因此本文提出了一種改進(jìn)的注意力機(jī)制,提取實(shí)體不同貢獻(xiàn)度的有效信息,融入關(guān)系嵌入向量。此外,為提取實(shí)體特征的卷積核添加相鄰實(shí)體數(shù)量,使實(shí)體嵌入包含更多信息?;谏鲜龉ぷ?,本文提出了一種聯(lián)合注意力與卷積網(wǎng)絡(luò)的知識超圖嵌入模型(link prediction based on attention and convolution network,LPACN)。
雖然LPACN 方法的鏈接預(yù)測性能比HypE 等baseline方法更高,但訓(xùn)練時存在梯度消失的問題,使得繼續(xù)增加迭代次數(shù),其訓(xùn)練效果也不會更好。因此本文引入改進(jìn)的ResidualNet 來緩解LPACN 的梯度消失,增強(qiáng)知識超圖鏈接預(yù)測的效果。此外,為增強(qiáng)模型的非線性學(xué)習(xí)能力,本文還在改進(jìn)的Residual-Net之后添加了一個多層感知器。基于上述工作,本文提出了LPACN的改進(jìn)模型LPACN+。
本文的主要貢獻(xiàn)如下:
(1)提出了一種基于注意力和卷積網(wǎng)絡(luò)的嵌入模型LPACN,解決知識超圖鏈接預(yù)測問題。采用改進(jìn)的注意力機(jī)制,將實(shí)體的不同貢獻(xiàn)度融入關(guān)系嵌入,并且采用相鄰實(shí)體數(shù)量補(bǔ)足實(shí)體嵌入信息含量。
(2)提出改進(jìn)模型LPACN+。引入改進(jìn)的Residual-Net 與多層感知器,緩解了LPACN 的梯度消失,增強(qiáng)了模型的非線性學(xué)習(xí)能力。
(3)真實(shí)數(shù)據(jù)集上的大量實(shí)驗(yàn)結(jié)果驗(yàn)證了本文提出的LPACN 和LPACN+的鏈接預(yù)測能力優(yōu)于Baseline方法。
本章主要介紹了與本文相關(guān)的研究工作,現(xiàn)有知識超圖鏈接預(yù)測方法可大致分為三類:(1)基于軟規(guī)則的方法[5];(2)基于神經(jīng)網(wǎng)絡(luò)的方法[6-8];(3)基于嵌入表示模型的方法[2,9-11]。
第一類基于軟規(guī)則的方法將關(guān)系作為謂詞,節(jié)點(diǎn)作為變量,通過設(shè)置關(guān)系推理的邏輯和約束條件進(jìn)行簡單推理,典型方法包括RLR(relational logistic regression)[5]等。這類模型學(xué)習(xí)能力非常有限,不適合預(yù)測大規(guī)模數(shù)據(jù)。
第二類基于神經(jīng)網(wǎng)絡(luò)的方法采用CNN等神經(jīng)網(wǎng)絡(luò)對非線性關(guān)系進(jìn)行建模,能深入學(xué)習(xí)超圖的語義特征。例如,NaLP(link prediction on N-ary relational data)[6]將n元事實(shí)表示為一組“角色-值”對,通過卷積神經(jīng)網(wǎng)絡(luò)提取相關(guān)特征,并使用全連接神經(jīng)網(wǎng)絡(luò)來評估它們的相關(guān)性,最后得到整個n元關(guān)系事實(shí)的有效性得分。NaLP 對建模關(guān)系的類別有嚴(yán)格的要求,限制了該模型的應(yīng)用場景。NeuInfer(knowledge inference on N-ary facts)[7]以主三元組與輔助“角色-實(shí)體”對的形式來描述n元事實(shí),通過多層全連接網(wǎng)絡(luò)學(xué)習(xí)事實(shí)中的語義特征,然后使用打分函數(shù)得到元組的得分。HINGE(hyper-relational knowledge graph embedding)[8]表示n元事實(shí)的方式與NeuInfer相同,并使用卷積網(wǎng)絡(luò)提取事實(shí)中的語義特征,通過全連接網(wǎng)絡(luò)對事實(shí)進(jìn)行打分,HINGE相較于NeuInfer在性能上有較大提升。這類方法往往只關(guān)注局部的語義特征而忽略了事實(shí)之間的關(guān)聯(lián)。
第三類基于嵌入學(xué)習(xí)模型的方法通過歐式空間映射的方式將元組轉(zhuǎn)化為向量,然后學(xué)習(xí)它們之間隱含的關(guān)聯(lián)關(guān)系,通過不同的處理方式來使用打分函數(shù)對正負(fù)樣本進(jìn)行打分,完成鏈接預(yù)測的任務(wù)。其首先在知識圖譜鏈接預(yù)測中得到應(yīng)用,如TransE[12]將知識圖譜中每個關(guān)系看作頭實(shí)體到尾實(shí)體的一個平移變換,將知識圖譜中的實(shí)體和關(guān)系映射到低維空間進(jìn)行打分。由于TransE 模型不具有魯棒性,TransH[13]將翻譯操作放在特定的超平面上進(jìn)行,將實(shí)體嵌入映射到關(guān)系超平面之后再進(jìn)行打分運(yùn)算。文獻(xiàn)[9]將TransH擴(kuò)展到知識超圖中,提出了m-TransH方法,將多元關(guān)系事實(shí)定義為角色序列到其值的映射,每個映射都對應(yīng)一個關(guān)系的實(shí)例。m-TransH 不具有完全表達(dá)性,且對建模的關(guān)系類別有嚴(yán)格的要求。文獻(xiàn)[10]將TuckER[14]擴(kuò)展到知識超圖中,提出了GETD(generalizing tensor decomposition)方法,并使用張量環(huán)來降低模型的復(fù)雜度。GETD 只能處理所有元組元數(shù)均相同的數(shù)據(jù)集。HyperGAN(hyper generative adversarial network)[11]通過對抗訓(xùn)練生成高質(zhì)量負(fù)樣本,來解決現(xiàn)有模型訓(xùn)練負(fù)樣本質(zhì)量低下、復(fù)雜度過高的問題。該方法專注于提高負(fù)樣本質(zhì)量,而本文重點(diǎn)研究整個知識超圖鏈接預(yù)測算法。此外,HSimplE[2]改進(jìn)了SimplE[15],使實(shí)體嵌入向量根據(jù)其在元組中的位置而改變。HypE[2]同樣受益于SimplE的啟發(fā),根據(jù)實(shí)體在元組中不同位置包含信息不同的特性,學(xué)習(xí)不同的卷積核以提取實(shí)體特征,使得模型因能提取更加豐富的特征,而取得了當(dāng)前最好的鏈接預(yù)測效果。且HypE具有完全表達(dá)性,對于包含不同元數(shù)元組的數(shù)據(jù)集能給出準(zhǔn)確的鏈接預(yù)測結(jié)果。但由于參與最終評分的關(guān)系嵌入是通過初始化方法獲取的,而未考慮實(shí)體對關(guān)系的貢獻(xiàn);并且其卷積可提取的信息不夠豐富,從而限制了算法的鏈接預(yù)測能力。
綜上所述,基于嵌入模型的方法能夠發(fā)現(xiàn)元組隱含的關(guān)聯(lián)信息,從而取得更好預(yù)測效果,是目前最優(yōu)的知識超圖鏈接預(yù)測模型。因此本文對該類方法展開研究。但現(xiàn)有的最優(yōu)嵌入模型HypE 在鏈接預(yù)測時忽略了實(shí)體對關(guān)系的貢獻(xiàn),從而制約了模型的性能。因此,本文提出了LPACN方法,考慮實(shí)體對關(guān)系的貢獻(xiàn)度,將實(shí)體的有效信息融入到關(guān)系嵌入中,并向處理實(shí)體的卷積網(wǎng)絡(luò)添加更多信息,增強(qiáng)方法的鏈接預(yù)測能力。
定義1(知識超圖)知識超圖是由頂點(diǎn)和超邊組成的圖,記作KHG={V,E}。其中V={v1,v2,…,v|V|}表示KHG 中實(shí)體(頂點(diǎn))的集合;E={e1,e2,…,e|E|}表示節(jié)點(diǎn)之間關(guān)系(超邊)的集合。|V|指KHG 所含頂點(diǎn)的個數(shù),|E|指KHG 所含超邊的數(shù)目。任意一條超邊e都對應(yīng)著一個元組T=e(v1,v2,…,v|e|),T∈τ。|e|指超邊e所含頂點(diǎn)的個數(shù),即e的元數(shù)。τ表示理想完整目標(biāo)知識超圖KHG所有元組組成的集合。知識超圖也可看作多元組的集合。每個多元組由一條超邊和該超邊包含的所有實(shí)體組成。
定義2(知識超圖鏈接預(yù)測)已知根據(jù)實(shí)際應(yīng)用構(gòu)建的知識超圖所有元組的集合τ′,同場景下理想完整的知識超圖所有元組的集合τ,τ′?τ。知識超圖鏈接預(yù)測旨在根據(jù)已知元組T∈τ′預(yù)測出新的元組Ti∈τ-τ′,并更新τ′=τ′∪Ti,使得min(|τ-τ′|) 。|τ-τ′|表示集合τ與τ′的差集的基數(shù)。
本文剩余部分常用符號及含義如表1所示。
表1 符號及含義Table 1 Notation and description
本章詳細(xì)介紹本文提出的LPACN模型。首先簡要描述LPACN 框架與其執(zhí)行大致流程,然后重點(diǎn)展開介紹其中的關(guān)系的嵌入表示和實(shí)體投影向量生成,最后描述LPACN模型的訓(xùn)練過程。
LPACN 模型的基本思想是:基于注意力機(jī)制生成關(guān)系注意力向量,該向量考慮了不同實(shí)體對所在關(guān)系嵌入的不同貢獻(xiàn)程度;將關(guān)系內(nèi)實(shí)體的鄰居實(shí)體數(shù)目融入提取實(shí)體特征的卷積核,以補(bǔ)足實(shí)體投影向量包含的信息??紤]實(shí)體貢獻(xiàn)度和補(bǔ)足實(shí)體嵌入信息,有利于增大正例元組的得分,從而提高知識超圖鏈接預(yù)測的性能。
LPACN 總體框架如圖1(a)所示,包括三步:(1)關(guān)系注意力向量生成;(2)實(shí)體投影向量集生成;(3)元組打分。由于元組打分較簡單,下文將主要介紹第一步和第二步。
圖1 LPACN模型示意圖Fig.1 Illustration diagram of LPACN model
本節(jié)提出一種關(guān)系的注意力嵌入表示方法。注意力機(jī)制為元組內(nèi)的每個實(shí)體分配不同的重要程度。其通過實(shí)體和對應(yīng)關(guān)系之間的權(quán)重來表示,使關(guān)系注意力嵌入向量按比例包含實(shí)體信息,從而豐富關(guān)系所含語義信息,提高算法預(yù)測性能。
為了得到關(guān)系ei的注意力嵌入表示,首先對關(guān)系初始嵌入向量ei∈Rde(de表示向量ei的維度)與實(shí)體初始嵌入向量集合(1 ≤i≤|e|,dv表示實(shí)體向量v的維度)進(jìn)行串聯(lián)操作,然后對串聯(lián)結(jié)果向量進(jìn)行線性映射,并遵循文獻(xiàn)[16]中的方法,在線性映射后使用LeakyReLU 非線性函數(shù)進(jìn)行處理,得出同時包含實(shí)體集合Vi與關(guān)系ei信息的投影向量。該計(jì)算過程如式(1)所示:
為了得到關(guān)系ei與實(shí)體集合Vei之間的權(quán)重α,將融合了實(shí)體與關(guān)系的投影向量pi使用softmax 進(jìn)行處理。關(guān)系注意力嵌入向量ef通過αij與pij的乘積的累加得到,其計(jì)算公式如式(2)所示:
αij表示權(quán)重向量,代表了實(shí)體vij對關(guān)系ei的重要程度,pij表示投影向量pi的第j行。
關(guān)系注意力嵌入向量ef包含了關(guān)系ei與實(shí)體集合Vei的信息,能更好地適應(yīng)知識超圖的鏈接預(yù)測任務(wù)。
知識超圖的實(shí)體可出現(xiàn)在多個關(guān)系的不同位置,同一元組中相鄰實(shí)體數(shù)量與特征會因出現(xiàn)位置不同而異。為了能根據(jù)實(shí)體vij在元組中的位置來提取特征,首先使用包含了元組位置信息的卷積核wi∈Rn×Rl提取實(shí)體嵌入vij中的特征(n代表該位置的卷積核個數(shù),l代表卷積核長度,可預(yù)先定義。wi表示元組中第i個位置的卷積核,wij∈Rl指代第i個位置的卷積核中的第j行);然后采用參數(shù)nebj向卷積核wi中添加相鄰實(shí)體數(shù)目信息,使得wi能根據(jù)不同的相鄰實(shí)體數(shù)量提取到不同的有效特征。卷積處理如式(3)所示:
為了得出完整的映射向量,需要對獲得的卷積嵌入向量βij進(jìn)行串聯(lián)操作與線性映射,如式(4)所示:
W2∈Rnq×Rdv表示線性映射矩陣。q代表特征映射的大小,q=(d-l/s)+1。
此外,嵌入學(xué)習(xí)過程中,使用多層神經(jīng)網(wǎng)絡(luò)處理實(shí)體,很容易丟失實(shí)體初始嵌入信息。為了解決該問題,將初始實(shí)體向量vij加上轉(zhuǎn)換后的映射向量,計(jì)算得到的在保留原始向量特征基礎(chǔ)上,有更強(qiáng)的表達(dá)能力。其計(jì)算過程如式(5)所示:
最后,使用關(guān)系注意力向量與所有實(shí)體投影向量之間的內(nèi)積對元組T進(jìn)行打分,如式(6)所示:
LPACN 模型中每個實(shí)體只學(xué)習(xí)單個向量,能有效降低模型的復(fù)雜程度,還具有完全表達(dá)性(能夠?yàn)槊恳粋€元組打分,從而分辨它們是否為真)。
3.4.1 損失函數(shù)
訓(xùn)練神經(jīng)網(wǎng)絡(luò)旨在使損失函數(shù)盡可能達(dá)到最小。不同的損失函數(shù)可能適合不同的任務(wù)。根據(jù)本文任務(wù)選擇了交叉熵?fù)p失作為損失函數(shù)(文獻(xiàn)[17]已驗(yàn)證有效性),其計(jì)算公式如式(7)所示:
其中,Gtrain表示訓(xùn)練集,Gneg(T)表示通過替換元組T中的實(shí)體構(gòu)建的負(fù)樣集。
3.4.2 訓(xùn)練過程
算法1LPACN的訓(xùn)練過程
算法1 描述了LPACN 的訓(xùn)練過程。首先,根據(jù)實(shí)體v所需的卷積核數(shù)量nf對卷積核w進(jìn)行初始化(第1行)。然后,進(jìn)行迭代訓(xùn)練,直至預(yù)設(shè)Ite次為止(第2~20 行,為了使模型得到充分訓(xùn)練,根據(jù)文獻(xiàn)[2]的方法,實(shí)驗(yàn)中Ite設(shè)置為1 000)。每次迭代過程如下所示:根據(jù)Mini-Batch 方法將Gtrain劃分為多個子集{Si}(第3 行),并將全局損失loss初始化為0(第4行);然后分別對每個子集Si分批次進(jìn)行處理(第5~19行)。其處理過程如下:首先分別對Si中的每個元組T進(jìn)行打分(第6~15 行),然后計(jì)算出該子集訓(xùn)練時的損失L(Si),并更新實(shí)體與關(guān)系的嵌入(第16、17行),最后更新全局損失(第18行)。其中,Si中的每個元組T的處理過程如下:首先為T構(gòu)造負(fù)樣集Gneg(T)(第7行),并將Gneg(T)與T合并組成元組集合T*(第8行);然后遍歷T*中的元組T′,對其中的v、e進(jìn)行初始化,并使用注意力機(jī)制與卷積網(wǎng)絡(luò)對關(guān)系與實(shí)體進(jìn)行處理,最后對該元組進(jìn)行打分(第9 至14 行)。
雖然LPACN方法通過豐富關(guān)系和實(shí)體嵌入向量包含的信息,能提高知識超圖鏈接預(yù)測的性能,但實(shí)驗(yàn)發(fā)現(xiàn)它仍存在梯度消失問題。針對該問題,本文使用改進(jìn)的ResidualNet,對LPACN 進(jìn)行優(yōu)化處理。此外,采用多層感知器進(jìn)一步提升LPACN 的非線性學(xué)習(xí)能力,最終得到LPACN的改進(jìn)算法LPACN+。
LPACN+在LPACN 模型中的卷積網(wǎng)絡(luò)之后引入了改進(jìn)的ResidualNet,接著使用一種多層感知器得到實(shí)體感知向量。由于其余部分均與LPACN相同,圖2 只簡要展示了LPACN+模型引入改進(jìn)的ResidualNet與多層感知器這部分流程。在圖2中,代表經(jīng)過殘差網(wǎng)絡(luò)處理得到的殘差向量,improved residual processing 表示使用改進(jìn)的殘差網(wǎng)絡(luò)進(jìn)行處理。下文將主要介紹改進(jìn)的ResidualNet。
圖2 LPACN+主要改進(jìn)工作示意圖Fig.2 Illustration diagram of main improvement work for LPACN+
為了緩解梯度消失問題,本文在實(shí)體投影操作(詳情見3.3 節(jié))之后添加ResidualNet[18],并對其進(jìn)行改進(jìn)。ResidualNet中的殘差函數(shù)F(x)通常使用全連接層或卷積層作為殘差網(wǎng)絡(luò),但考慮到卷積層相較于全連接層更靈活且高效,因此本文實(shí)驗(yàn)中的F(x)使用了卷積神經(jīng)網(wǎng)絡(luò)。
通常殘差函數(shù)F(x)中使用的卷積核是隨機(jī)初始化而來,無法有效提取知識超圖中的映射向量的結(jié)構(gòu)信息。為此,本文使用3.3節(jié)中包含位置信息與鄰接信息的卷積核wi來作為代替權(quán)重層的卷積核,使ResidualNet 最大程度地保留元組中的結(jié)構(gòu)信息。整個殘差網(wǎng)絡(luò)的過程如式(8)所示:
F(x)選擇兩層以上的網(wǎng)絡(luò)層數(shù)是因?yàn)楫?dāng)F(x)選用單層網(wǎng)絡(luò)時,式(8)變成線性層,相較其他網(wǎng)絡(luò)沒有優(yōu)勢。
改進(jìn)后的ResidualNet通過一段跳連接為模型恢復(fù)了學(xué)習(xí)梯度。多層網(wǎng)絡(luò)學(xué)習(xí)后,為模型重新賦值一個實(shí)體向量,使殘差向量在很大程度上保留了原超圖中節(jié)點(diǎn)的特征與結(jié)構(gòu)信息,這樣模型在不斷學(xué)習(xí)中始終含有知識超圖的原始信息,從而恢復(fù)了原本的梯度,能有效緩解梯度消失。
最后,本文使用文獻(xiàn)[19]中提出的多層感知器,如圖2所示。限于篇幅,不贅述。
本章在真實(shí)數(shù)據(jù)集上比較了本文提出的LPACN算法、LPACN+算法以及Baseline 算法的鏈接預(yù)測能力,分析了LPACN+的梯度消失緩減程度,通過消融實(shí)驗(yàn)測試了不同元數(shù)的數(shù)據(jù)對鏈接預(yù)測結(jié)果的影響。
本文實(shí)驗(yàn)采用了文獻(xiàn)[2]使用的數(shù)據(jù)集,即從FreeBase 數(shù)據(jù)集抽取的兩個常用知識超圖鏈接預(yù)測數(shù)據(jù)集JF-17K[8]、FB-AUTO[2]。
JF-17K 數(shù)據(jù)集通過刪除FreeBase 中出現(xiàn)頻率不高的實(shí)體和三元組,并隨機(jī)抽取關(guān)系中的事實(shí)構(gòu)造而成,沒有劃分驗(yàn)證集。FB-AUTO 數(shù)據(jù)集中只包含與“Automative”相關(guān)的事實(shí),并隨機(jī)劃分為訓(xùn)練集、測試集、驗(yàn)證集。上述數(shù)據(jù)集的數(shù)據(jù)情況如表2 所示。其中,|E|與|R|分別表示實(shí)體與關(guān)系的數(shù)量。#train、#test、#valid分別描述訓(xùn)練集、測試集與驗(yàn)證集中包含元組的數(shù)量。
表2 數(shù)據(jù)集統(tǒng)計(jì)Table 2 Statistics of datasets
本文Baseline 算法包括目前流行的知識超圖鏈接預(yù)測算法m-TransH[9]、HSimplE[2]與HypE[2]。
本文采用了知識超圖鏈接預(yù)測常用的評價標(biāo)準(zhǔn):平均倒數(shù)排名(mean reciprocal rank,MRR)[2]和Hit@n[2]。由于平均排名(mean rank,MR)對異常值不敏感[20],本文未采用。MRR和Hit@n值越大,鏈接預(yù)測性能越好。本文實(shí)驗(yàn)取Hit@1、Hit@3、Hit@10。
本節(jié)分別在JF-17K 和FB-AUTO 數(shù)據(jù)集上對比本文提出的LPACN、LPACN+與Baseline方法的MRR、Hit@1、Hit@3和Hit@10,實(shí)驗(yàn)結(jié)果如表3所示。
表3 LPACN與Baseline方法的鏈接預(yù)測性能對比Table 3 Comparison of link prediction performance of LPACN and Baseline methods
實(shí)驗(yàn)結(jié)果表明,LPACN 在上述數(shù)據(jù)集的絕大部分結(jié)果都優(yōu)于HypE。因?yàn)橐环矫?,本文改進(jìn)的注意力機(jī)制相較于HypE,不但考慮了目標(biāo)關(guān)系所含實(shí)體對該關(guān)系的嵌入表示的貢獻(xiàn)度不同,還融入相鄰實(shí)體數(shù)量以增加對應(yīng)實(shí)體嵌入表示包含的信息;能為鏈接預(yù)測提供更多的推理依據(jù),從而提升了知識超圖鏈接預(yù)測的效果。另一方面,添加的鄰接實(shí)體數(shù)目信息讓卷積網(wǎng)絡(luò)可學(xué)習(xí)的特征更多。此外,為實(shí)體向量添加丟失的初始信息,使模型能夠更好地進(jìn)行預(yù)測。LPACN 在JF-17K 數(shù)據(jù)集上的Hit@1 比HypE低0.002。因?yàn)镴F-17K存在數(shù)據(jù)泄露的問題[21],會干擾模型預(yù)測的準(zhǔn)確性。
從表3 還可以看出,LPACN+在所有數(shù)據(jù)集上的指標(biāo)都遠(yuǎn)高于LPACN。這是LPACN+在LPACN的基礎(chǔ)上依次添加了改進(jìn)的殘差網(wǎng)絡(luò)和多層感知器的緣故。這樣不但緩解了梯度消失,還增強(qiáng)了非線性學(xué)習(xí)能力,使模型能夠不斷地學(xué)習(xí),并減少學(xué)習(xí)過程中信息的損失,因此LPACN+的鏈接預(yù)測結(jié)果更加準(zhǔn)確。
為了進(jìn)一步分析梯度消失緩解程度,本節(jié)在FBAUTO數(shù)據(jù)集上比較了LPACN、R-LPACN(ResidualNet+LPACN)和LPACN+的loss曲線,結(jié)果如圖3所示。
圖3 loss對比圖Fig.3 Comparison chart of loss
從圖3可見,雖然3個模型的曲線下降趨勢大致相同,但是最終的loss 有較大差別。LPACN 模型在經(jīng)過1 000 次迭代學(xué)習(xí)之后的loss 定格在了9 左右;在LPACN 的基礎(chǔ)上添加了ResidualNet 之后,RLPACN的loss降到了6左右,降低約30%;最后,同時添加了ResidualNet 與多層感知器的LPACN+,其loss降到3左右,較上一模型降低了約50%,較LPACN降低約60%。從對比的結(jié)果可直觀地看出:與LPACN相比,LPACN+最終損失有很大幅度的下降,達(dá)到了60%。這驗(yàn)證了ResidualNet 與多層感知器對降低loss都發(fā)揮了較大的作用,能有效緩解梯度消失。
ResidualNet 與多層感知器從不同的角度對模型進(jìn)行提升。一方面,改進(jìn)的ResidualNet 恢復(fù)了學(xué)習(xí)的梯度,從而緩解梯度消失的問題;另一方面,多層感知器又通過多層的神經(jīng)元與非線性函數(shù)增強(qiáng)模型的非線性學(xué)習(xí)能力使其能學(xué)到更多的特征,損失的信息也就越少,loss值更低。
為了驗(yàn)證LPACN+對于不同關(guān)系元數(shù)的鏈接預(yù)測能力,本節(jié)在JF-17K不同元數(shù)的數(shù)據(jù)子集上,使用Hit@10 對比了LPACN+與Baseline方法的性能,其實(shí)驗(yàn)結(jié)果如表4所示。
表4 JF-17K不同元數(shù)的子集上鏈接預(yù)測結(jié)果對比Table 4 Comparison of link prediction results on subsets of JF-17K in different arities
從表4可知LPACN+雖然在不同元數(shù)數(shù)據(jù)集上的鏈接預(yù)測能力總體略強(qiáng)于HypE,但相較于其他Baseline 優(yōu)勢非常明顯。對于二元、四元的數(shù)據(jù)集,LPACN+的預(yù)測能力都優(yōu)于HypE;在三元、五元的數(shù)據(jù)集上,LPACN+與HypE 的鏈接預(yù)測能力基本相同。對六元組進(jìn)行預(yù)測時,HypE 相對于LPACN+略有優(yōu)勢。分析發(fā)現(xiàn),JF-17K 中六元組的數(shù)量只有37個,模型在該稀疏子集中可學(xué)習(xí)的樣例較少,且HypE對于稀疏數(shù)據(jù)具有更強(qiáng)的推理能力,因此LPACN+在該子集上的鏈接預(yù)測效果略遜色于HypE。
本文提出了一種聯(lián)合注意力與卷積網(wǎng)絡(luò)的方法LPACN,解決知識超圖鏈接預(yù)測問題。與目前最優(yōu)的模型相比,LPACN 不但采用一種改進(jìn)的注意力機(jī)制,考慮了實(shí)體對所在關(guān)系的嵌入表示的貢獻(xiàn)度,而且將相鄰實(shí)體個數(shù)信息融入卷積核,以豐富實(shí)體嵌入向量中包含的信息。為緩減LPACN 的梯度消失,LPACN+對LPACN進(jìn)行了優(yōu)化:在實(shí)體向量投影操作后,融合了改進(jìn)的ResidualNet繼續(xù)進(jìn)行殘差處理,并在殘差處理后使用了多層感知器,進(jìn)一步提升了模型的非線性學(xué)習(xí)能力。真實(shí)數(shù)據(jù)集上的大量實(shí)驗(yàn)結(jié)果驗(yàn)證了本文方法的預(yù)測性能比所有Baseline 方法更高。后續(xù)工作將嘗試加入一些輔助文本或其他元組內(nèi)的信息來進(jìn)一步豐富嵌入,從而繼續(xù)提升算法預(yù)測性能。