陳 恒,李冠宇,祁瑞華,王維美
1.大連外國(guó)語(yǔ)大學(xué) 語(yǔ)言智能研究中心,遼寧 大連116044
2.大連海事大學(xué) 信息科學(xué)技術(shù)學(xué)院,遼寧 大連116026
一個(gè)典型的知識(shí)圖譜KG(Knowledge Graph)是事實(shí)三元組的集合,節(jié)點(diǎn)代表實(shí)體,邊代表實(shí)體間關(guān)系[1]?,F(xiàn)如今,很多知識(shí)圖譜,如YAGO[2]、Freebase[3]、DBpedia[4]和NELL[5]已經(jīng)被創(chuàng)建并成功應(yīng)用于一些現(xiàn)實(shí)應(yīng)用程序中[6]。知識(shí)圖譜提供有效的結(jié)構(gòu)化信息,成為包括推薦系統(tǒng)[7]、問(wèn)答[8]、信息檢索[9]和自然語(yǔ)言處理[10]在內(nèi)的智能應(yīng)用程序的關(guān)鍵資源。盡管知識(shí)圖譜在各領(lǐng)域有著重要應(yīng)用,很多大型知識(shí)圖譜仍不完整,大量實(shí)體之間隱含的關(guān)系沒(méi)有被充分地挖掘出來(lái)[11]。針對(duì)知識(shí)圖譜補(bǔ)全,進(jìn)行了大量的研究工作,即預(yù)測(cè)缺失三元組是否正確[12],將正確三元組添加到知識(shí)圖譜進(jìn)行補(bǔ)全。目前,許多嵌入模型用來(lái)學(xué)習(xí)實(shí)體和關(guān)系的矢量表示,如早期的TransE[13]、TransH[14]、TransR[15]等模型,這些模型中正確三元組得分高于錯(cuò)誤三元組得分,這可以有效預(yù)測(cè)缺失三元組。例如:在知識(shí)圖譜中,三元組(Aliens,_ditrected_by,James Cameron)得分高于(Community,_ditrected_by,James Cameron)。
在這些嵌入模型中,TransE 簡(jiǎn)單有效,實(shí)現(xiàn)了更高級(jí)的預(yù)測(cè)性能。受文獻(xiàn)[16]的啟發(fā),TransE 學(xué)習(xí)實(shí)體和關(guān)系的向量表示,將關(guān)系視為頭實(shí)體到尾實(shí)體之間的一種平移[17]。其他的翻譯模型擴(kuò)展了TransE,使用投影向量或矩陣將頭尾實(shí)體嵌入轉(zhuǎn)換為關(guān)系向量空間,例如:TransH、TransR、TransD[18]、STransE[19]和TranSparse[20]。上述嵌入模型僅使用加法、減法或簡(jiǎn)單的乘法運(yùn)算符,因此只能捕獲實(shí)體間的線性關(guān)系。最近,很多研究將深度神經(jīng)網(wǎng)絡(luò)應(yīng)用于三元組預(yù)測(cè)問(wèn)題[21]。例如,ConvKB[22]是一種基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)的知識(shí)圖譜補(bǔ)全模型,并獲得較好的實(shí)驗(yàn)結(jié)果。大多數(shù)嵌入模型通過(guò)對(duì)實(shí)體和關(guān)系相同維度的特征進(jìn)行建模,每個(gè)維度捕獲某些特定屬性。然而,現(xiàn)有嵌入模型沒(méi)有采用“深度”架構(gòu)來(lái)對(duì)同一維度三元組的屬性進(jìn)行建模。膠囊是一組神經(jīng)元的集合,利用向量來(lái)表示。該向量包含任意多個(gè)值,并且每個(gè)值代表當(dāng)前物體的一個(gè)特征。在傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)中,卷積層的輸出為神經(jīng)元加權(quán)求和的結(jié)果,因此是標(biāo)量。在膠囊網(wǎng)絡(luò)中,每個(gè)值使用向量表示,即膠囊不僅可以表示物體的特征,也可以表示物體的方向、狀態(tài)等。因此,使用膠囊代替神經(jīng)網(wǎng)絡(luò)中的神經(jīng)元可以更好表征實(shí)體和關(guān)系,使得知識(shí)圖譜補(bǔ)全效果更好。CapsNet[23]使用膠囊捕獲圖像中的實(shí)體,利用路由操作指定從上一層膠囊到下一層膠囊的連接。為此,引入CapsNet 模型提出的膠囊網(wǎng)絡(luò)對(duì)三元組進(jìn)行補(bǔ)全操作。與分割特征映射構(gòu)造膠囊的傳統(tǒng)CapsNet模型不同,使用膠囊對(duì)實(shí)體和關(guān)系在相同維度上的屬性進(jìn)行建模,捕獲實(shí)體和關(guān)系矢量表示。本文提出一種膠囊網(wǎng)絡(luò)知識(shí)圖譜補(bǔ)全方法,解決卷積神經(jīng)網(wǎng)絡(luò)單層神經(jīng)元不足以表征實(shí)體和關(guān)系屬性等問(wèn)題,利用膠囊代替每層神經(jīng)元表示實(shí)體和關(guān)系,輸入一個(gè)三元組,輸出連續(xù)矢量的值,利用該值判定給定三元組正確性,將正確的三元組添加到知識(shí)圖譜,對(duì)知識(shí)圖譜進(jìn)行補(bǔ)全。
實(shí)驗(yàn)采用三個(gè)數(shù)據(jù)集FB15K-237、WN18RR、FB15K進(jìn)行相關(guān)的鏈接預(yù)測(cè)和三元組分類實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,基于膠囊神經(jīng)網(wǎng)絡(luò)的知識(shí)圖譜嵌入方法擁有更好的預(yù)測(cè)準(zhǔn)確度,三個(gè)數(shù)據(jù)集的補(bǔ)全效果優(yōu)于某些傳統(tǒng)基準(zhǔn)嵌入模型。
基準(zhǔn)模型TransE 將知識(shí)庫(kù)中的關(guān)系看作實(shí)體間的平移向量,即關(guān)系是頭實(shí)體到尾實(shí)體間的一種平移,例如,三元組(Alaska,cityOf,America),即有:vec(′Alaska′)+成 立,即,認(rèn) 為無(wú)限接近零,這也表明在嵌入空間中t 應(yīng)該是h+r 最近的鄰居[24],見圖1。
圖1 實(shí)體和關(guān)系低維嵌入表示
與以往模型相比,TransE 模型參數(shù)較少,計(jì)算復(fù)雜度低,卻能夠直接建立起實(shí)體和關(guān)系間的復(fù)雜語(yǔ)義聯(lián)系[25]。TransE 模型簡(jiǎn)單有效,可以處理較為簡(jiǎn)單的1-1關(guān)系,卻不適用復(fù)雜關(guān)系類型:一對(duì)多,多對(duì)一,多對(duì)多。給定兩個(gè)正確三元組(Shanghai,cityOf,China)和(Beijing,cityOf,China),若要得到Shanghai和Beijing兩個(gè)頭實(shí)體嵌入,利用TransE打分函數(shù)計(jì)算出兩個(gè)相同的實(shí)體嵌入,這顯然是不成立的。由于這些復(fù)雜關(guān)系的存在,導(dǎo)致TransE學(xué)習(xí)得到的實(shí)體表示區(qū)分性較低。為了彌補(bǔ)這個(gè)缺陷,TransH模型提出不同的實(shí)體在不同關(guān)系下應(yīng)該擁有不同表示,對(duì)關(guān)系r ,同時(shí)使用平移向量r和超平面的法向量wr來(lái)表示。由于TransH 假設(shè)實(shí)體和關(guān)系處于同一語(yǔ)義空間,從某種程度上限制了它的表達(dá)能力。TransR 通過(guò)將實(shí)體和關(guān)系投影到不同的實(shí)體空間和關(guān)系空間,解決實(shí)體和關(guān)系屬于不同的對(duì)象,難以用同一個(gè)空間表示的問(wèn)題。另外,針對(duì)TransR 參數(shù)過(guò)多,時(shí)間復(fù)雜度高等問(wèn)題,TransD 使用兩個(gè)投影向量生成兩個(gè)投影矩陣Mh,Mr,讓實(shí)體和關(guān)系實(shí)現(xiàn)交互。DistMult[26]模型和ComplEx[27]模型使用向量點(diǎn)乘計(jì)算三元組得分,利用概率判定三元組的正確性。KBGAN[28]模型提出一種生成對(duì)抗性學(xué)習(xí)框架來(lái)抽取負(fù)樣本,在一些基準(zhǔn)數(shù)據(jù)集上取得了顯著效果,可以應(yīng)用于大型知識(shí)圖譜補(bǔ)全任務(wù)。文獻(xiàn)[29]提出一種新的語(yǔ)義圖推理方法,通過(guò)將新實(shí)體鏈接到知識(shí)圖譜中,進(jìn)而對(duì)知識(shí)圖譜進(jìn)行補(bǔ)全,該方法獲得較為先進(jìn)的實(shí)驗(yàn)結(jié)果。
嵌入模型僅僅關(guān)注三元組的結(jié)構(gòu)信息,沒(méi)有對(duì)三元組同維度屬性進(jìn)行深入研究,不能深層次挖掘?qū)嶓w和關(guān)系特征。基于這個(gè)原因,很多工作開始使用卷積神經(jīng)網(wǎng)絡(luò)補(bǔ)全知識(shí)圖譜,DKRL[30]使用兩種表示學(xué)習(xí)方法,連續(xù)詞袋(CBOW)以及卷積神經(jīng)網(wǎng)絡(luò)(CNN)來(lái)建立實(shí)體描述文本的語(yǔ)義向量。文獻(xiàn)[31]提出一種基于CNN 的鏈接預(yù)測(cè)模型,ConvE將實(shí)體和關(guān)系向量的重組作為模型的輸入,實(shí)體和關(guān)系間的交互是通過(guò)卷積層和完全連接層建模的。此外,該模型利用CNN 可以高效訓(xùn)練三元組,獲取實(shí)體和關(guān)系的嵌入表示,同時(shí)學(xué)習(xí)三元組更多的特征。ConvE將頭實(shí)體和關(guān)系向量作為模型的輸入,沒(méi)有考慮三元組全局信息,忽略了三元組的全局特征,為此,文獻(xiàn)[22]提出ConvKB模型,該模型將三元組矩陣[vh,vr,vt]作為輸入,和不同濾波器進(jìn)行卷積操作,通過(guò)打分函數(shù)得到每個(gè)三元組的得分,作為判斷三元組正確的依據(jù)。上述兩個(gè)模型均利用卷積神經(jīng)網(wǎng)絡(luò)提取實(shí)體和關(guān)系的嵌入表示,捕獲實(shí)體間的復(fù)雜關(guān)系,適用于大規(guī)模知識(shí)圖譜補(bǔ)全。ConvKB 使用卷積層對(duì)知識(shí)圖譜中三元組信息進(jìn)行編碼,但輸入層和輸出層神經(jīng)元過(guò)于簡(jiǎn)單,不能深層地挖掘?qū)嶓w和關(guān)系的嵌入表示。受文獻(xiàn)[23]的啟發(fā),用一組膠囊代替神經(jīng)網(wǎng)絡(luò)每層神經(jīng)元,膠囊使用矢量作為模型的輸入、輸出,能夠很好表征實(shí)體和關(guān)系。算法中,輸入一個(gè)三元組矩陣[vh,vr,vt],在CNN 中卷積生成不同特征圖,連接特征圖得到多個(gè)膠囊(即一組神經(jīng)元的集合),通過(guò)和權(quán)重點(diǎn)乘生成一個(gè)連續(xù)向量,該向量和權(quán)重點(diǎn)積操作的分?jǐn)?shù)用于判定三元組正確性。利用膠囊網(wǎng)絡(luò)嵌入方法進(jìn)行知識(shí)圖譜補(bǔ)全任務(wù),可以有效提高知識(shí)圖譜補(bǔ)全準(zhǔn)確性。以上部分模型的打分函數(shù)如表1所示。
表1 模型打分函數(shù)
由于TransE模型具有以下特點(diǎn):(1)模型參數(shù)少,計(jì)算復(fù)雜度低;(2)簡(jiǎn)單有效,適用于大規(guī)模知識(shí)圖譜補(bǔ)全。將TransE 訓(xùn)練得到的實(shí)體、關(guān)系嵌入,作為本文算法的輸入,膠囊網(wǎng)絡(luò)算法偽代碼如下。在KG=(E,R,T)中,E 是實(shí)體集合,R 是關(guān)系集,T 是所有數(shù)據(jù)集,根據(jù)不同比例劃分成訓(xùn)練集、測(cè)試集和驗(yàn)證集。
Input:Training set S=(h,r,t),entities and relation sets E
and R,margin γ,embeddings dim K.
2. r ←r/||r||for each r ∈R
4. Loop:
5. e ←e/||e||for each e ∈E
6. Sbatch←sample(S,b) //sample a minibatch of b
7. Tbatch←?
8. for(h,r,t)∈Sbatchdo
9. (h′,r′,t′)←sample(S′(h,r,t))
10. Tbatch←Tbatch?{((h,r,t),(h′,r′,t′))}
11. end for
12. update embeddings w.r.t:
14. Input ←[vh,vr,vt]//input matrix
16. update loss function w.r.t:
18. End Loop
本文模型圖如圖2所示。
vh,vr,vt是h,r,t 的K 維嵌入,參照文獻(xiàn)[13],將嵌入三元組[vh,vr,vt]定義為一個(gè)矩陣表示A=[vh,vr,vt]∈RK×3,其中,Ai,:∈R1×3代表A 的每行。在卷積層使用過(guò)濾器ω ∈R1×3和Ai,:重復(fù)卷積操作,令 ||ω =N ,產(chǎn)生N 個(gè)特征圖q=[q1,q2,…,qN]∈RK,其中,qi=g(ω ?Ai,:+b),?代表點(diǎn)乘操作,b ∈R 是偏置項(xiàng),g 是非線性激活函數(shù)。
上述介紹了卷積層操作,下面將使用膠囊層構(gòu)建基于膠囊網(wǎng)絡(luò)的知識(shí)圖譜補(bǔ)全算法,以簡(jiǎn)化模型架構(gòu)。在第一層,使用卷積得到的N 個(gè)特征圖重構(gòu)成K 個(gè)膠囊(V1,V2,V3,V4,V5,V6),所有特征圖同維度特征被封裝進(jìn)相應(yīng)膠囊,如圖2 所示。因此,每個(gè)膠囊可以捕獲嵌入三元組相應(yīng)維度不同特征,這些膠囊和不同的權(quán)重點(diǎn)積生成較小維度的膠囊,得到一個(gè)個(gè)連續(xù)矢量;然后該矢量和權(quán)重向量再次進(jìn)行點(diǎn)積運(yùn)算獲得對(duì)應(yīng)得分,所有分?jǐn)?shù)求和的結(jié)果用來(lái)判斷給定三元組的正確性。得分越低,三元組越正確。圖2中,嵌入大小定義為:K=6,濾波器的數(shù)量為:N=5,第一層膠囊內(nèi)神經(jīng)元數(shù)量等于N ,第二層膠囊內(nèi)神經(jīng)元數(shù)量:d=2。
第一層包含K 個(gè)膠囊,每個(gè)膠囊i ∈{1,2,…,K}產(chǎn)生一個(gè)矢量輸出Vi∈RN×1,矢量輸出Vi和權(quán)重矩陣Wi∈Rd×N相乘產(chǎn)生矢量vi∈Rd×1,將矢量vi和不同權(quán)重點(diǎn)乘生成膠囊s,s 作為第二層輸入,繼續(xù)和權(quán)重作點(diǎn)乘,得到一個(gè)個(gè)分?jǐn)?shù),最終求和判斷三元組正確性,如式(1)所示:
圖2 算法架構(gòu)
形式上,定義三元組打分函數(shù),如式(2)所示:
其中,濾波器集Ω 是卷積層的共享超參數(shù),*表示卷積運(yùn)算符,caps′表示膠囊網(wǎng)絡(luò)操作,g 代表激活函數(shù),本文使用ReLU。本文將最小化以下的損失函數(shù)作為模型最終的訓(xùn)練目標(biāo),損失函數(shù)如式(3)所示:
負(fù)例三元組構(gòu)造方法如式(5)所示,即將正確三元組頭實(shí)體和尾實(shí)體分別用數(shù)據(jù)集所有實(shí)體代替。
本文使用Adam[32]最小化如式(3)所示的損失函數(shù),使用ReLU 作為算法激活函數(shù)。
在三個(gè)廣泛使用的數(shù)據(jù)集WN18RR[31]、FB15k[13]、FB15K-237[33]上評(píng)估實(shí)驗(yàn)。數(shù)據(jù)集FB15k包含很多反轉(zhuǎn)關(guān)系,例如:朋友關(guān)系、夫妻關(guān)系。參照文獻(xiàn)[33],將數(shù)據(jù)集FB15k中所有具有反轉(zhuǎn)關(guān)系的三元組過(guò)濾掉,得到數(shù)據(jù)集FB15K-237。同理,去掉數(shù)據(jù)集WN18所有反轉(zhuǎn)關(guān)系,得到WN18RR。
WN18RR大約包含40 943個(gè)具有11種不同關(guān)系的實(shí)體,93 003個(gè)三元組,參照文獻(xiàn)[33],分為訓(xùn)練集、驗(yàn)證集、測(cè)試集3種。
FB15k 大約包含14 951 個(gè)實(shí)體,具有1 345 種不同的關(guān)系,592 213個(gè)三元組。知識(shí)圖譜中描述了電影、演員、獎(jiǎng)項(xiàng)和體育等三元組類型。
FB15k-237大約包含14 541個(gè)具有237種不同關(guān)系的實(shí)體,310 116 個(gè)三元組,參照文獻(xiàn)[33],劃分成訓(xùn)練集、驗(yàn)證集、測(cè)試集3種。
數(shù)據(jù)集統(tǒng)計(jì)情況如表2所示。
表2 數(shù)據(jù)集統(tǒng)計(jì)
參照文獻(xiàn)[13]和文獻(xiàn)[22]提出的TransE模型和ConvKB模型實(shí)現(xiàn)本文算法。本文首先使用TransE 模型訓(xùn)練三元組,得到實(shí)體嵌入表示和關(guān)系嵌入表示,將三元組矩陣[vh,vr,vt]作為本文算法的輸入。對(duì)于ConvKB模型,設(shè)定過(guò)濾器數(shù)量的范圍是: ||ω =N ∈{50,100,200,400},Adam 初始化學(xué)習(xí)率是:γ ∈{0.000 01,0.000 05,0.000 1,0.000 5},利用超參數(shù)網(wǎng)格搜索訓(xùn)練模型500 次。其中,每訓(xùn)練100次,監(jiān)測(cè)一次Hits@10得分,以選擇Hits@10最優(yōu)超參數(shù)。最優(yōu)超參數(shù)設(shè)置如下:在FB15K-237上,Hits@10最優(yōu)設(shè)置:N=100,K=100,γ=0.000 01。在WN18RR 上,Hits@10 最優(yōu)設(shè)置:N=400,K=100,γ=0.000 05。
與文獻(xiàn)[22]類似,使用TransE訓(xùn)練生成的實(shí)體和關(guān)系嵌入初始化本文算法實(shí)體和關(guān)系嵌入,用于三個(gè)基準(zhǔn)數(shù)據(jù)集WN18RR、FB15k-237 和FB15k,嵌入維度K=100。設(shè)置批處理大小batchsize為128,即每次訓(xùn)練128個(gè)三元組;第二個(gè)膠囊層中的膠囊內(nèi)神經(jīng)元數(shù)量設(shè)置為10(d=10);權(quán)重w 最初由截?cái)嗪瘮?shù)初始化,最終由模型訓(xùn)練后確定。訓(xùn)練算法多達(dá)500 次,平均每100次監(jiān)測(cè)Hits@10,以選擇最優(yōu)Hits@10超參數(shù):驗(yàn)證集上最優(yōu)Hits@10 如下:在FB15K-237 上,最優(yōu)Hits@10:N=100,K=100,γ=0.000 1,d=5。在WN18RR上,最優(yōu)Hits@10:N=400,K=100,γ=0.000 05,d=10。
4.3.1 實(shí)驗(yàn)設(shè)計(jì)
鏈接預(yù)測(cè)是指預(yù)測(cè)知識(shí)圖譜缺失的三元組,即三元組中缺失的實(shí)體或關(guān)系。例如:給定三元組(Michelle Obama,residence,?),其中,頭實(shí)體為Michelle Obama,關(guān)系為residence,尾實(shí)體缺失,為補(bǔ)全三元組,將知識(shí)圖譜中正確尾實(shí)體添加到該元組中,對(duì)其進(jìn)行補(bǔ)全操作。實(shí)驗(yàn)中,對(duì)于缺失的實(shí)體或關(guān)系,從知識(shí)圖譜實(shí)體集中選擇一組候選實(shí)體進(jìn)行排名,而不是僅給出一個(gè)最佳結(jié)果。參照文獻(xiàn)[13]和文獻(xiàn)[15],對(duì)測(cè)試集中每個(gè)三元組,用所有實(shí)體替換頭實(shí)體或尾實(shí)體來(lái)創(chuàng)建一組負(fù)例三元組。對(duì)這組負(fù)例三元組使用打分函數(shù)計(jì)算它們的相似性得分,以此對(duì)它們進(jìn)行排名,相似度越高排名越靠前,由此可以得到正確實(shí)體的真實(shí)排名[15]。
4.3.2 評(píng)估指標(biāo)
參照文獻(xiàn)[13],使用以下三個(gè)指標(biāo)作為評(píng)估標(biāo)準(zhǔn):(1)正確實(shí)體的平均排名MR(MeanRank),越小越好;(2)正確實(shí)體的平均倒數(shù)排名MRR(Mean Reciprocal Rank),越大越好;(3)正確實(shí)體進(jìn)入前10 的百分比Hits@10,越大越好。實(shí)際上,知識(shí)圖譜中也可能存在錯(cuò)誤三元組,認(rèn)為是正確的。因此,本文采用文獻(xiàn)[13]的標(biāo)準(zhǔn),從數(shù)據(jù)集中過(guò)濾掉錯(cuò)誤的三元組。過(guò)濾后的設(shè)置稱為Filter,原來(lái)的稱為Raw。另外,在數(shù)據(jù)集FB15K-237和WN18RR上,僅使用Filter設(shè)置,即不考慮錯(cuò)誤的三元組。
4.3.3 實(shí)驗(yàn)結(jié)果和分析
本文實(shí)驗(yàn)環(huán)境為:實(shí)驗(yàn)環(huán)境為Window 7 64位系統(tǒng),物理內(nèi)存為8 GB,使用獨(dú)立顯卡芯片:NVIDIA GeForce GT 720M,顯存容量為2 GB。實(shí)驗(yàn)工具為Pycharm,使用Python 3.6作為編程語(yǔ)言編寫程序,深度學(xué)習(xí)框架采用TensorFlow。在實(shí)驗(yàn)中,MRR和Hits@10最優(yōu)參數(shù)設(shè)置為:N=400,K=100,γ=0.000 05,d=10。數(shù)據(jù)集WN18RR鏈接預(yù)測(cè)結(jié)果如表3所示。
從表3可以看出,基于膠囊網(wǎng)絡(luò)的知識(shí)圖譜嵌入方法在WN18RR 上獲得最好MR、MRR 和最高Hit@10。具體分析如下:(1)和CapsE模型相比,數(shù)據(jù)集WN18RR在MR 上有1.8%的提高,在Hit@10 上有3.5%的提高;和ComplEx模型相比,數(shù)據(jù)集WN18RR在MRR上提高5.4%。(2)TransE 模型的MR 指標(biāo)優(yōu)于ConvE、ComplEx等模型;TransE模型的Hit@10指標(biāo)優(yōu)于ConvE、DistMult等模型。從中可以看出,基準(zhǔn)嵌入模型TransE在數(shù)據(jù)集WN18RR上具有很好的表示效果。(3)和其他模型相比,本文方法在數(shù)據(jù)集WN18RR 上具有更好的補(bǔ)全能力,也說(shuō)明了膠囊網(wǎng)絡(luò)用于知識(shí)圖譜補(bǔ)全性能更好。
表3 數(shù)據(jù)集WN18RR實(shí)驗(yàn)結(jié)果比較
MRR和Hit@10最優(yōu)參數(shù)設(shè)置為:N=100,K=100,γ=0.000 01,d=5。數(shù)據(jù)集FB15K-237 鏈接預(yù)測(cè)結(jié)果如表4所示。
表4 數(shù)據(jù)集FB15K-237實(shí)驗(yàn)結(jié)果比較
從表4可以看出,基于膠囊網(wǎng)絡(luò)的知識(shí)圖譜嵌入方法在數(shù)據(jù)集FB15K-237 上獲得最好的MR 和最高的Hit@10。具體分析如下:(1)和ConvE 模型相比,數(shù)據(jù)集FB15K-237 在MR 上提高2.5%,ConvE 模型在MR 指標(biāo)上優(yōu)于所有模型。(2)和CapsE 模型相比,數(shù)據(jù)集FB15K-237 在Hit@10 上提高2.5%,MRR、Hit@10 指標(biāo)優(yōu)于TransE、ComplEx 等模型,可以看出,CapsE 模型在數(shù)據(jù)集FB15K-237 上具有很好的表示效果。(3)和其他模型相比,本文方法在數(shù)據(jù)集FB15K-237上具有更好的補(bǔ)全效果,這也說(shuō)明膠囊網(wǎng)絡(luò)可以用于大規(guī)模知識(shí)圖譜補(bǔ)全。
4.4.1 實(shí)驗(yàn)設(shè)計(jì)
三元組分類即判斷一個(gè)給定三元組的正確與否,這是一個(gè)二分類任務(wù)。引用文獻(xiàn)[13,15]提出的三元組分類任務(wù),設(shè)置一個(gè)閾值,對(duì)于任意一個(gè)三元組,使用式(3)所示的打分函數(shù)計(jì)算三元組得分,如果這個(gè)得分低于閾值,則三元組是正確的,否則為錯(cuò)誤三元組。
4.4.2 實(shí)驗(yàn)結(jié)果和分析
參照文獻(xiàn)[15],使用基準(zhǔn)數(shù)據(jù)集FB15K進(jìn)行三元組分類實(shí)驗(yàn)。實(shí)驗(yàn)環(huán)境與4.3.3節(jié)相同。FB15K最優(yōu)參數(shù)為:N=400,K=100,γ=0.000 1,d=8。實(shí)驗(yàn)結(jié)果如表5所示。
表5 三元組分類實(shí)驗(yàn)結(jié)果比較
從表5中可以看出:本文方法在數(shù)據(jù)集FB15K上實(shí)現(xiàn)了92.5%的準(zhǔn)確率,這表明膠囊網(wǎng)絡(luò)在三元組分類任務(wù)中效果顯著,相比其他模型,準(zhǔn)確率較高。另外,實(shí)驗(yàn)結(jié)果可以看出,膠囊網(wǎng)絡(luò)用于知識(shí)圖譜補(bǔ)全性能更好,并可以應(yīng)用于大規(guī)模知識(shí)圖譜補(bǔ)全。
本文針對(duì)知識(shí)圖譜補(bǔ)全提出一種基于膠囊網(wǎng)絡(luò)的方法,即利用膠囊代替神經(jīng)元建模實(shí)體和關(guān)系的嵌入表示,輸入三元組矩陣,輸出三元組真實(shí)得分,利用該分?jǐn)?shù)判定三元組正確性,將正確的三元組添加到知識(shí)圖譜,對(duì)KG進(jìn)行補(bǔ)全。在三元組分類實(shí)驗(yàn)中,本文方法取得92.5%的準(zhǔn)確率,優(yōu)于一些傳統(tǒng)嵌入模型;在鏈接預(yù)測(cè)實(shí)驗(yàn)中,本文方法在MR、MRR、Hit@10 指標(biāo)上均有明顯提高,這表明本文方法可以有效解決知識(shí)圖譜數(shù)據(jù)稀疏問(wèn)題,提高知識(shí)圖譜完備性。為提高鏈接預(yù)測(cè)和三元組分類準(zhǔn)確率,在今后的研究中,將從兩方面進(jìn)行探索:
(1)本文模型較為簡(jiǎn)單,提取三元組有一定誤差。下步工作將重新設(shè)計(jì)模型并引入更有意義的算法來(lái)補(bǔ)全知識(shí)圖譜。
(2)外部數(shù)據(jù)源含有大量實(shí)體描述文本,考慮將實(shí)體和關(guān)系的描述文本合并到膠囊網(wǎng)絡(luò)中作為模型的輸入。