冉丈杰,孫林夫,鄒益勝,馬玉麟
(1.西南交通大學(xué) 計(jì)算機(jī)與人工智能學(xué)院,成都 611031;2.西南交通大學(xué) 制造業(yè)產(chǎn)業(yè)鏈協(xié)同與信息化支撐技術(shù)四川省重點(diǎn)實(shí)驗(yàn)室,成都 611031)
知識(shí)圖譜(Knowledge Graph,KG)是一種新興的有向圖數(shù)據(jù)結(jié)構(gòu),其中蘊(yùn)含了豐富的多元關(guān)系數(shù)據(jù),已經(jīng)廣泛應(yīng)用于人類生活的各個(gè)領(lǐng)域。Freebase[1]、YAGO[2]、WordNet[3]、NELL[4]、Wikidata[5]等現(xiàn)有知識(shí)圖譜都包含了大量由事實(shí)構(gòu)成的三元組,這些三元組通常以(頭實(shí)體,關(guān)系,尾實(shí)體)的形式表示,即(h,r,t)。在現(xiàn)實(shí)生活中,知識(shí)圖譜已在信息提?。?]、語義搜索[7]、智能問答[8]、個(gè)性化推薦[9]等任務(wù)中發(fā)揮了重要作用。然而由于多數(shù)知識(shí)圖譜中實(shí)體間的關(guān)系是不完整的,因此有必要通過推斷新的事實(shí)來進(jìn)行知識(shí)圖譜補(bǔ)全(Knowledge Graph Completion,KGC),從而提高知識(shí)圖譜的利用價(jià)值。
知識(shí)圖譜G 可以表示為三元組集合的形式{(h,r,t)}?E×R×E,其中,E 和R 分別表示實(shí)體集合與關(guān)系集合。知識(shí)圖譜補(bǔ)全任務(wù)包括給定頭實(shí)體h和關(guān)系r預(yù)測尾實(shí)體t、給定頭實(shí)體h和尾實(shí)體t預(yù)測關(guān)系r、給定關(guān)系r和尾實(shí)體t預(yù)測頭實(shí)體h等3 類。與一般的知識(shí)圖譜補(bǔ)全任務(wù)不同,小樣本知識(shí)圖譜補(bǔ)全任務(wù)在參考樣本很少的情況下進(jìn)行,即在給定關(guān)系r?R 的參考樣本很少的情況下,補(bǔ)全(h,r,?)缺失的尾實(shí)體t?E。
近年來,知識(shí)圖譜嵌入(Knowledge Graph Embedding,KGE)方法被證明對知識(shí)圖譜補(bǔ)全任務(wù)非常有效[10]。但由于知識(shí)圖譜的自身特性,知識(shí)圖譜中普遍存在一些出現(xiàn)次數(shù)很少的關(guān)系,即小樣本關(guān)系。對于現(xiàn)實(shí)世界中知識(shí)圖譜的小樣本關(guān)系而言,在有限的訓(xùn)練實(shí)例中無法有效地學(xué)習(xí)它們的表示,這導(dǎo)致知識(shí)圖譜嵌入方法在小樣本知識(shí)圖譜補(bǔ)全任務(wù)中的效果不理想。然而,對這些低頻關(guān)系的鏈接預(yù)測是非常重要的,因?yàn)檫@些關(guān)系不僅在多數(shù)知識(shí)圖譜中非常豐富,而且對于模型訓(xùn)練后可能出現(xiàn)新關(guān)系的知識(shí)圖譜補(bǔ)全任務(wù)也非常關(guān)鍵[11]。因此,針對小樣本知識(shí)圖譜補(bǔ)全的研究逐漸成為熱點(diǎn)。
在知識(shí)圖譜中,往往還存在以下兩種現(xiàn)象:同一實(shí)體在不同關(guān)系的三元組中可能具有不同的語義角色;同一名稱的關(guān)系在不同的三元組中也可能具有不同的細(xì)粒度語義。這兩種現(xiàn)象在常規(guī)的知識(shí)圖譜補(bǔ)全任務(wù)中并不會(huì)造成過多的影響,因?yàn)槠渚邆渥銐虻挠?xùn)練實(shí)例,但在小樣本知識(shí)圖譜補(bǔ)全任務(wù)中,卻會(huì)極大地影響補(bǔ)全效果。
為解決小樣本知識(shí)圖譜補(bǔ)全的問題,本文首先選擇小樣本關(guān)系的三元組作為參考集,對每個(gè)三元組的頭尾實(shí)體進(jìn)行鄰域編碼,之后結(jié)合Transformer編碼器與長短期記憶(Long Short-Term Memory,LSTM)神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)小樣本的關(guān)系表示,最后將其與待查詢的三元組進(jìn)行匹配,基于優(yōu)化的得分函數(shù)實(shí)現(xiàn)匹配打分,從而完成小樣本知識(shí)圖譜補(bǔ)全任務(wù)。
近年來,基于知識(shí)圖譜嵌入技術(shù),研究者們從表示學(xué)習(xí)的角度,對大規(guī)模知識(shí)圖譜補(bǔ)全任務(wù)進(jìn)行了廣泛的研究。知識(shí)圖譜嵌入通過發(fā)現(xiàn)知識(shí)圖譜中即有事實(shí)的潛在特征,學(xué)習(xí)實(shí)體和關(guān)系的分布式表征,從而實(shí)現(xiàn)知識(shí)圖譜補(bǔ)全任務(wù)。經(jīng)典的TransE[12]將關(guān)系視為實(shí)體對之間的轉(zhuǎn)換操作,以測試三元組的兼容性。TransH[13]在TransE 的基礎(chǔ)上,將實(shí)體嵌入到給定的不同關(guān)系的超平面上,賦予實(shí)體不同的表示形式。受此啟發(fā),TransR[14]將實(shí)體嵌入到多種關(guān)系并存的空間中,以此獲取實(shí)體的表征。DistMult[15]利用雙線性對角矩陣,對知識(shí)圖譜內(nèi)的關(guān)系進(jìn)行嵌入表示的學(xué)習(xí)。ComplEx[16]將實(shí)體和關(guān)系嵌入復(fù)數(shù)向量空間,以處理并推斷對稱和反對稱關(guān)系的問題。ConvE[17]、ConvKB[18]以及CapsE[19]都是利用卷積神經(jīng)網(wǎng)絡(luò)的思想,捕捉實(shí)體的特征和關(guān)系。KGBN[20]考慮同類實(shí)體之間所涉及關(guān)系的依賴性,基于KGBN 推理構(gòu)造新的三元組以補(bǔ)全知識(shí)圖譜。四元數(shù)膠囊網(wǎng)絡(luò)[21]將四元數(shù)嵌入模型QuaR[22]訓(xùn)練得到的超復(fù)數(shù)嵌入作為膠囊網(wǎng)絡(luò)嵌入模型CapsE 的輸入,捕獲三元組全局特性,取得了更高的預(yù)測準(zhǔn)確性。
然而,這些方法都需要大量的訓(xùn)練實(shí)例,忽略了實(shí)際知識(shí)圖譜中存在的長尾關(guān)系以及動(dòng)態(tài)更新特性,因此無法提供足夠的訓(xùn)練實(shí)例。
為了在樣本關(guān)系較少的知識(shí)圖譜中實(shí)現(xiàn)知識(shí)圖譜補(bǔ)全任務(wù),近年來多種小樣本知識(shí)圖譜補(bǔ)全模型陸續(xù)被提出。作為一種單樣本學(xué)習(xí)模型,GMatching[23]利用鄰域編碼器來增強(qiáng)單跳鄰域的實(shí)體嵌入,并利用LSTM 單元計(jì)算匹配分?jǐn)?shù),以得到不同實(shí)體 對之間 的相似 性。FSRL[24]將GMatching 推廣到多樣本情況,進(jìn)一步利用注意力機(jī)制捕捉小樣本在知識(shí)圖譜中的局部結(jié)構(gòu)。這兩種模型都屬于度量學(xué)習(xí)的范疇。元關(guān)系學(xué)習(xí)框架MetaR[25]在任務(wù)之間提取共享知識(shí),并將其從一系列現(xiàn)有事實(shí)轉(zhuǎn)移到不完整的事實(shí)上,利用模型不可知元學(xué)習(xí)(Model-Agnostic Meta-Learning,MAML)快速適應(yīng)策略網(wǎng)絡(luò)參數(shù)或關(guān)系元。FAAN[26]通過學(xué)習(xí)自適應(yīng)實(shí)體和參考表示,引入一種自適應(yīng)注意力網(wǎng)絡(luò),主要由一個(gè)自適應(yīng)鄰域編碼器與一個(gè)自適應(yīng)查詢感知聚合器構(gòu)成。GANA[27]采用一種全局-局部兩階段的框架進(jìn)行小樣本關(guān)系學(xué)習(xí),在全局階段利用門控機(jī)制過濾噪聲鄰域,在局部階段設(shè)計(jì)一種基于元學(xué)習(xí)的TransH(MTransH)方法來對一對多(1-N)、多對一(N-1)甚至多對多(N-N)的復(fù)雜關(guān)系進(jìn)行建模。
然而,現(xiàn)有的小樣本知識(shí)圖譜補(bǔ)全模型仍存在一些問題。GMatching 由于提出時(shí)間較早,只考慮對單樣本進(jìn)行學(xué)習(xí),無法針對多樣本的關(guān)系進(jìn)行建模。FSRL 更多地關(guān)注相似性或路徑發(fā)現(xiàn),而不是學(xué)習(xí)小樣本參考最為核心的關(guān)系表示的信息。MetaR 基于元學(xué)習(xí)的方法傳遞特定關(guān)系元所包含的信息,但忽略了鄰域中的相關(guān)語義。FAAN 在學(xué)習(xí)關(guān)系表示的過程中,只對參考集中每個(gè)樣本自身的關(guān)系進(jìn)行建模,未考慮參考集上下文語義對關(guān)系表示的影響。GANA 學(xué)習(xí)特定關(guān)系的超平面參數(shù)來建模復(fù)雜關(guān)系,但同樣忽略了實(shí)體對語義對關(guān)系建模的影響??傮w而言,現(xiàn)有的小樣本知識(shí)圖譜補(bǔ)全模型片面地關(guān)注相似性或元學(xué)習(xí)過程,未能從細(xì)粒度的上下文語義層面對小樣本關(guān)系進(jìn)行深入研究。
針對上節(jié)所述問題,提出一種基于關(guān)系學(xué)習(xí)網(wǎng)絡(luò)的小樣本知識(shí)圖譜補(bǔ)全模型FRLN,該模型通過融合路徑發(fā)現(xiàn)與上下文語義,最終達(dá)到有效提取小樣本關(guān)系表示的目的。模型主要由鄰域聚合編碼器、關(guān)系表示編碼器、匹配計(jì)算單元等3 個(gè)部分組成,如圖1 所示。由圖1 可以看出,模型輸入包括由K個(gè)小樣本關(guān)系的三元組構(gòu)成的參考集以及待查詢的三元組,參考集中的每一個(gè)三元組以及待查詢的三元組依次經(jīng)過鄰域編碼與關(guān)系表示兩步操作,然后利用所有得到的關(guān)系表示進(jìn)行匹配計(jì)算,最后輸出查詢?nèi)M與參考集之間的匹配得分。需要注意的是,輸入的參考集與查詢?nèi)M具有相同的小樣本關(guān)系r。
圖1 小樣本知識(shí)圖譜補(bǔ)全模型結(jié)構(gòu)Fig.1 Structure of few-shot knowledge graph completion model
文獻(xiàn)[23]研究表明:顯式地編碼圖譜局部結(jié)構(gòu)(即一跳鄰域)有利于關(guān)系預(yù)測。因此,考慮不同關(guān)系的鄰域?qū)?shí)體的動(dòng)態(tài)影響,將基于注意力機(jī)制的鄰域聚合編碼器用于識(shí)別與當(dāng)前實(shí)體更為相關(guān)的鄰域,如圖2 所示。
圖2 鄰域聚合編碼器結(jié)構(gòu)Fig.2 Structure of neighbor aggregation encoder
在給定關(guān)系r的小樣本參考/查詢集中,取一個(gè)三元組(h,r,t),以頭實(shí)體h為例,設(shè)h的一跳鄰域?yàn)镹h={(ri,ti)|(h,ri,ti)?G′},其中,G′是背景知識(shí)圖譜,ri和ti分別表示h的第i個(gè)鄰域關(guān)系及對應(yīng)的尾實(shí)體。為了量化h的特征輸出,首先使用一個(gè)雙線性點(diǎn)積函數(shù)Φ來計(jì)算參考關(guān)系r和鄰域關(guān)系ri之間的相關(guān)性,可表示如下:
其中:r和ri?Rd×1為嵌入表示向量,可使用隨機(jī)初始化向量或預(yù)訓(xùn)練向量;W?Rd×d和b?Rd×1均為模型的可訓(xùn)練參數(shù);LeakyReLU(?)為非線性轉(zhuǎn)換的激活函數(shù)。
然后使用Softmax 機(jī)制對相關(guān)性得分進(jìn)行規(guī)范化,并基于規(guī)范化的權(quán)重系數(shù)對ti進(jìn)行加權(quán)求和,計(jì)算出基于注意力機(jī)制的頭實(shí)體h的鄰域感知嵌入向量hc,可表示如下:
其中:αi為權(quán)重系數(shù);ti?Rd×1為鄰域尾實(shí)體的嵌入向量。
為了增強(qiáng)實(shí)體嵌入,同時(shí)考慮h及其鄰域感知嵌入向量hc的存在,得到最終的鄰域編碼輸出hn,可表示如下:
其中:σ為激活函數(shù),如Tanh、ReLU 等;W1和W2?Rd×d同樣是模型的可訓(xùn)練參數(shù)。
至此,得到了h經(jīng)過鄰域聚合編碼器處理后的輸出嵌入向量,該輸出不僅保留了h自身原有的特性,同時(shí)融合了h在不同鄰域關(guān)系中所表現(xiàn)出的屬性。
在得到了增強(qiáng)的實(shí)體嵌入向量后,需要進(jìn)一步對實(shí)體對進(jìn)行關(guān)系表示編碼。文獻(xiàn)[26]針對每個(gè)實(shí)體對分別使用Transformer 編碼器生成關(guān)系表示的嵌入向量,但忽略了各個(gè)實(shí)體對在上下文語義中受到的影響。受R-TLM[28]結(jié)構(gòu)的啟發(fā),本文基于調(diào)整后簡化的R-TLM,對Transformer 編碼器做出改進(jìn)。
為了利用LSTM 長程表示的互補(bǔ)性,同時(shí)進(jìn)一步學(xué)習(xí)路徑發(fā)現(xiàn)與上下文語義之間的潛在規(guī)律,在每個(gè)Transformer 編碼器的輸出后添加一個(gè)LSTM 單元,并將每個(gè)LSTM 單元輸出的隱藏狀態(tài)進(jìn)行殘差連接,即將LSTM 的輸入與輸出相加,以此作為每個(gè)編碼器最終的輸出。同時(shí),將每個(gè)實(shí)體對內(nèi)以及實(shí)體對間的LSTM 單元串聯(lián)起來,形成一個(gè)LSTM 神經(jīng)網(wǎng)絡(luò),以此學(xué)習(xí)實(shí)體對間的上下文語義表征。整個(gè)關(guān)系表示編碼器的結(jié)構(gòu)如圖3 所示。
圖3 關(guān)系表示編碼器結(jié)構(gòu)Fig.3 Structure of relation representation encoder
基于上述關(guān)系表示編碼器,對每個(gè)實(shí)體對進(jìn)行關(guān)系表示編碼。令X=(xh,xr,xt)為三元組(hk,r,tk)在關(guān)系表示編碼器中的初始輸入,其中,xh是頭實(shí)體的鄰域編碼,xr是參考關(guān)系的嵌入向量,xt是尾實(shí)體的鄰域編碼。為了方便表示,取每一個(gè)三元組的xh、xr、xt?xi,首先,將xi加上自己的位置嵌入向量作為關(guān)系表示編碼器的實(shí)際輸入,可表示如下:
其中:xi,pos為位置嵌入向量,可采用常見的正弦位置嵌入。由三元組元素個(gè)數(shù)可知,每個(gè)實(shí)體對的位置嵌入長度為3。然后,基于構(gòu)造出的所有待輸入后續(xù)結(jié)構(gòu)的向量表示,將其輸入關(guān)系表示編碼器對實(shí)體對進(jìn)行編碼,計(jì)算過程如下:
其中:Transformer(?)表示Transformer 編碼操作,主要包括多頭注意力(Multi-Head Attention,MHA)、前饋網(wǎng)絡(luò)(Feed-Forward Network,F(xiàn)FN)以及殘差連接與標(biāo)準(zhǔn)化等步驟,允許每個(gè)元素都注意到序列中不同權(quán)重的其他元素,這里Transformer 編碼器的詳細(xì)結(jié)構(gòu) 參考文獻(xiàn)[29];LSTM(?)輸入中 的xi,1即為當(dāng) 前Transformer 編碼器輸出的隱藏狀態(tài),hi-1為前向LSTM 單元輸出的隱藏狀態(tài),經(jīng)過當(dāng)前LSTM 單元處理后得到的隱藏狀態(tài)xi,2最終與xi,1進(jìn)行加和連接,即得到關(guān)系表示編碼器的最終輸出xi,3。最后,對于每個(gè)輸入到關(guān)系表示編碼器中的實(shí)體對,都將會(huì)得到由3 個(gè)輸出向量構(gòu)成的序列X3=(xh,3,xr,3,xt,3)。
在小樣本知識(shí)圖譜補(bǔ)全任務(wù)中,為實(shí)現(xiàn)關(guān)系表示這一核心的目標(biāo),往往更關(guān)注于關(guān)系r的編碼表示,因此將序列X3的中間元素xt,3作為當(dāng)前實(shí)體對關(guān)系表示編碼的核心輸出向量,該向量能對每個(gè)實(shí)體對的語義角色進(jìn)行編碼,從而表示出小樣本參考集中不同實(shí)體對自身的細(xì)粒度語義。
在小樣本知識(shí)圖譜補(bǔ)全任務(wù)中,為最終實(shí)現(xiàn)對(h,r,?)的尾實(shí)體的預(yù)測,還須進(jìn)行匹配計(jì)算操作,如圖4 所示。
圖4 匹配計(jì)算單元Fig.4 Matching calculation unit
首先,根據(jù)不同環(huán)節(jié)的需要構(gòu)造出待查詢的三元組(hQ,r,tQ)后,同樣將該三元組經(jīng)過鄰域聚合編碼以及關(guān)系表示編碼等操作,得到該查詢實(shí)體對的關(guān)系表示rq。此外,取rk為每個(gè)參考實(shí)體對的關(guān)系表示,即每個(gè)關(guān)系表示編碼器輸出序列的中間元素??紤]參考關(guān)系r的不同語義,定義函數(shù)Ψ用于計(jì)算rq與rk之間的語義相似性,可表示如下:
然后,為了動(dòng)態(tài)學(xué)習(xí)參考關(guān)系r的表示,同樣引入Softmax 機(jī)制計(jì)算注意力權(quán)重,以最終獲取當(dāng)前小樣本參考集在該查詢實(shí)體對語義下的動(dòng)態(tài)參考關(guān)系表示rm,可表示如下:
其中:βk為規(guī)范化的各個(gè)參考關(guān)系表示的注意力權(quán)重;rk為第k個(gè)參考實(shí)體對的關(guān)系表示。由于rq與rk是關(guān)系表示編碼器的輸出,能夠區(qū)分不同實(shí)體對的細(xì)粒度語義,因此rm也能夠動(dòng)態(tài)地對參考關(guān)系進(jìn)行表征。
最后,利用查詢關(guān)系表示rq與動(dòng)態(tài)參考關(guān)系表示rm,在參考關(guān)系r下與計(jì)算查詢實(shí)體對(hQ,tQ)與小樣本參考集之間的語義相似性得分s1,可表示如下:
其中:?表示相似性運(yùn)算符,可采用點(diǎn)積、余弦相似度或歐氏距離等。s1值越大,說明在參考關(guān)系r下查詢實(shí)體對(hQ,tQ)與小樣本參考集之間相似性越大,查詢?nèi)M成立的可能性越大,反之越小。此外,考慮平移模型TransE 對h+r≈t的期望,追加平移得分s2,若(hq,rq,tq)為查詢實(shí)體對(hQ,tQ)經(jīng)過關(guān)系表示編碼器后的輸出序列,則s2可表示如下:
其中:‖x‖2表示向量x的L2范數(shù),s2實(shí)際上就是hq+rq與tq之間的距離。由于s2越小,查詢?nèi)M成立的可能性越大,因此綜合考慮s1和s2,針對待查詢實(shí)體對(hQ,tQ)的最終匹配得分s可表示如下:
其中:δ為調(diào)整因子。
對于所有待查詢的三元組,計(jì)算出最終匹配得分s并進(jìn)行排序,以此開展后續(xù)計(jì)算相關(guān)評價(jià)指標(biāo)的工作。
模型訓(xùn)練在元訓(xùn)練集Tmtr上進(jìn)行。Tmtr中每個(gè)任務(wù)Tr的執(zhí)行方式為:對于待查詢的小樣本關(guān)系r,從G 中隨機(jī)抽取k個(gè)正例實(shí)體對作為參考集Rr={(hk,tk)|(hk,r,tk)?G},剩余的正例實(shí)體對作為正例查詢集Qr={(hQ,tQ)|(hQ,r,tQ)?G ∩(hQ,tQ)?Rr}。此外,還須構(gòu)造負(fù)例實(shí)體對作為負(fù)例查詢集,通過錯(cuò)誤的隨機(jī)替換tQ生成。至此,總損失函數(shù)可表示如下:
其中:[x]+=max(0,x)是標(biāo)準(zhǔn)Hinge 損失;γ是Margin超參數(shù);分別是正例實(shí)體對(hQ,tQ)和負(fù)例實(shí)體對與Rr中對應(yīng)小樣本參考集之間的匹配得分。
采用文獻(xiàn)[24]中提出的基于批量抽樣的元訓(xùn)練過程,將Tmtr中的每個(gè)關(guān)系作為一個(gè)元訓(xùn)練任務(wù),為了在最小化L 的同時(shí)優(yōu)化模型參數(shù)集Θ,使用Adam[30]優(yōu)化器對模型進(jìn)行優(yōu)化,并對Θ施加L2 正則化以避免過擬合,目標(biāo)函數(shù)可表示如下:
FRLN 模型訓(xùn)練過程的算法描述如下:
算法1FRLN 訓(xùn)練過程
在實(shí)驗(yàn)過程中使用文獻(xiàn)[23]構(gòu)建的兩個(gè)數(shù)據(jù)集NELL-One 和Wiki-One,分別在原始數(shù)據(jù)集中選擇三元組數(shù)目大于50 但小于500 的關(guān)系作為小樣本關(guān)系,其余與這些三元組相關(guān)的關(guān)系構(gòu)成背景知識(shí)圖譜,兩個(gè)數(shù)據(jù)集的統(tǒng)計(jì)數(shù)據(jù)如表1 所示。NELL-One和Wiki-One 上的訓(xùn)練、驗(yàn)證、測試的任務(wù)關(guān)系數(shù)分別是51、5、11 以及133、16、34。
表1 數(shù)據(jù)集統(tǒng)計(jì)情況 Table 1 Statistics of datasets 單位:個(gè)
FRLN 模型使用PyTorch 框架實(shí)現(xiàn),并在具有CUDA 加速功能的實(shí)驗(yàn)設(shè)備上進(jìn)行實(shí)驗(yàn)以提升實(shí)驗(yàn)效率。實(shí)驗(yàn)中選擇的小樣本數(shù)K=5,預(yù)訓(xùn)練嵌入模型選擇經(jīng)典的TransE 模型,在NELL-One 上進(jìn)行實(shí)驗(yàn)的相關(guān)參數(shù)為:嵌入維度d=100,批處理大小b=128,學(xué)習(xí)率l=5×10-5,Margin 超參數(shù)γ=5.0,正則項(xiàng)系數(shù)λ=0,熱身步數(shù)設(shè)置為1 000,訓(xùn)練次數(shù)設(shè)置為3 000;在Wiki-One 上進(jìn)行實(shí)驗(yàn)的相關(guān)參數(shù)為:嵌入維 度d=50,批處理大小b=128,學(xué)習(xí)率l=6×10-5,Margin 超參數(shù)γ=5.0,正則項(xiàng)系數(shù)λ=1×10-4,熱身步數(shù)設(shè)置為1 000,訓(xùn)練次數(shù)設(shè)置為6 000。
3.3.1 實(shí)驗(yàn)設(shè)計(jì)
在知識(shí)圖譜中,鏈接預(yù)測可表示為預(yù)測一個(gè)三元組缺失的實(shí)體或關(guān)系。小樣本的鏈接預(yù)測特指僅參考K個(gè)小樣本關(guān)系的三元組來預(yù)測另一個(gè)三元組缺失實(shí)體或關(guān)系。此外,小樣本鏈接預(yù)測還有一個(gè)重要特性,那就是進(jìn)行訓(xùn)練和測試的任務(wù)集是不相交的,即訓(xùn)練集中不包括測試集含有的關(guān)系,這增加了小樣本鏈接預(yù)測的難度。如上文所述,針對正例查詢集Qr以及負(fù)例查詢集,計(jì)算出其中每個(gè)待查詢?nèi)M的得分之后進(jìn)行排序,從而進(jìn)一步開展性能評估工作。
3.3.2 評價(jià)指標(biāo)
實(shí)驗(yàn)采用平均倒數(shù)排名(MRR)以及排名前n的比例(Hits@n)作為評價(jià)指標(biāo)。MRR 指的是正確答案排名倒數(shù)的平均值,MRR 值越大,說明模型性能越好;Hits@n指的是正確答案排在前n位的概率,同樣是值越大,模型性能越好,實(shí)驗(yàn)中n取1、5 和10。
3.3.3 結(jié)果分析
根據(jù)上文參數(shù)設(shè)置,分別在NELL-One 以及Wiki-One 數(shù)據(jù)集上進(jìn)行小樣本鏈接預(yù)測實(shí)驗(yàn),并計(jì)算評價(jià)指標(biāo)。同時(shí),與現(xiàn)有 的FSRL[24]、MetaR[25]、FAAN[26]、GANA[27]小樣本知識(shí)圖譜補(bǔ)全模型進(jìn)行對比,對比數(shù)據(jù)均來自原文獻(xiàn),最終的實(shí)驗(yàn)結(jié)果分別如表2、表3 所示,其中最優(yōu)指標(biāo)值用加粗字體標(biāo)示。
表2 NELL-One 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果 Table 2 Experimental results on the NELL-One dataset %
表3 Wiki-One 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果 Table 3 Experimental results on the Wiki-One dataset %
由表2、表3 中的數(shù)據(jù)可以看出,F(xiàn)RLN 在各個(gè)評價(jià)指標(biāo)上均取得了最優(yōu)的實(shí)驗(yàn)結(jié)果。
在同一數(shù)據(jù)集上對比FRLN 的每項(xiàng)評價(jià)指標(biāo)以及4 種基線模型中該項(xiàng)評價(jià)指標(biāo)的最優(yōu)值,可以看出:在NELL-One 數(shù)據(jù)集 上,F(xiàn)RLN 的MRR 提升了15.4 個(gè)百分點(diǎn),Hits@10 提升了9.7 個(gè)百分點(diǎn),Hits@5提升了8.2 個(gè)百分點(diǎn),Hits@1 提升了5.5 個(gè)百分點(diǎn);在Wiki-One 數(shù)據(jù)集 上,F(xiàn)RLN 的MRR 提升了13.7個(gè)百分 點(diǎn),Hits@10 提升了8.4 個(gè)百分 點(diǎn),Hits@5 提升了7.1 個(gè)百分點(diǎn),Hits@1 提升了8.1 個(gè)百分點(diǎn)。綜上,F(xiàn)RLN 在兩個(gè)數(shù)據(jù)集上較基線模型中所有評價(jià)指標(biāo)的最優(yōu)值平均提升了9.5 個(gè)百分點(diǎn)。
在同一數(shù)據(jù)集上對比FRLN 以及每個(gè)基線模型的4 個(gè)評價(jià)指標(biāo)的平均值,可以看出:在NELL-One數(shù)據(jù)集 上,F(xiàn)RLN 較FSRL 提升了11.6 個(gè)百分 點(diǎn),較MetaR 提升了17.9 個(gè)百分點(diǎn),較FAAN 提升了16.5 個(gè)百分 點(diǎn),較GANA 提升了9.7 個(gè)百分 點(diǎn);在Wiki-One 數(shù)據(jù)集 上,F(xiàn)RLN 較FSRL 提升了19.1個(gè)百分點(diǎn),較MetaR 提升了12.4 個(gè)百分點(diǎn),較FAAN 提升了10.3 個(gè)百分點(diǎn),較GANA 提升了9.8 個(gè)百分點(diǎn)。
根據(jù)上述結(jié)果分析可知:FRLN 較FSRL 性能更優(yōu),表明FRLN 的關(guān)系表示編碼器充分考慮上下文語義,比FSRL 中單獨(dú)的LSTM 神經(jīng)網(wǎng)絡(luò)更能有效提取小樣本的關(guān)系表示;FRLN 較MetaR 性能更優(yōu),表明FRLN 的度量學(xué)習(xí)方式在網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)合理的前提下,比MetaR 使用的MAML 框架更能勝任小樣本關(guān)系學(xué)習(xí)任務(wù);FRLN 較FAAN 性能更優(yōu),表明FRLN 的關(guān)系表示編碼器兼顧路徑發(fā)現(xiàn)與上下文語義,彌補(bǔ)了FAAN 中獨(dú)立的Transformer 編碼器在長程依賴方面的不足,更能有效提取小樣本的關(guān)系表示;FRLN 較GANA 性能更優(yōu),表明FRLN 針對鄰域聚合過程的設(shè)計(jì)較GANA 更為合理,因?yàn)镕RLN 更關(guān)注鄰域關(guān)系自身,而不是鄰域關(guān)系與實(shí)體的拼接。
上述實(shí)驗(yàn)結(jié)果和分析充分表明,F(xiàn)RLN 有效融合了路徑發(fā)現(xiàn)與上下文語義,學(xué)習(xí)到小樣本參考關(guān)系的核心關(guān)系表示,在小樣本鏈接預(yù)測實(shí)驗(yàn)中性能出眾。
3.3.4 消融實(shí)驗(yàn)
FRLN 由多個(gè)模塊組合而成,分別是鄰域聚合編碼器、關(guān)系表示編碼器以及匹配計(jì)算單元。為了驗(yàn)證各個(gè)模塊的有效性,針對每個(gè)模塊做出修改以進(jìn)行消融研究。
1)為了研究鄰域聚合編碼器的有效性,對其做出修改:A1_a 移除了注意力機(jī)制,使用鄰域嵌入的平均值代替鄰域感知嵌入hc;A1_b 移除了實(shí)體自身嵌入,僅使用鄰域進(jìn)行編碼輸出。
2)為了研究關(guān)系表示編碼器的有效性,對其做出修改:A2_a 移除了Transformer 編碼器;A2_b移除了LSTM 神經(jīng)網(wǎng)絡(luò)。
3)為了研究匹配計(jì)算單元的有效性,對其做出修改:A3 移除了注意力機(jī)制,使用參考集中所有樣本的關(guān)系表示的平均值代替動(dòng)態(tài)參考關(guān)系表示rm。
消融實(shí)驗(yàn)在NELL-One 數(shù)據(jù)集上進(jìn)行,實(shí)驗(yàn)結(jié)果如表4 所示,其中最優(yōu)指標(biāo)值用加粗字體標(biāo)示。
表4 NELL-One 數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果 Table 4 Ablation experimental results on the NELL-One dataset %
由表4 可以看出,完整的FRLN 模型的性能均優(yōu)于各個(gè)模型的變體。通過對比FRLN 及各個(gè)模型變體的4 個(gè)評價(jià)指標(biāo)的平均值,可以看出:A1_a 較FRLN低了6.6 個(gè)百分 點(diǎn),A1_b 較FRLN低了2.3 個(gè)百分點(diǎn),這表明注意力機(jī)制在鄰域聚合過程中十分有 效;A2_a 較FRLN低了15.0 個(gè)百分 點(diǎn),A2_b 較FRLN 低了19.4 個(gè)百分點(diǎn),這表明關(guān)系表示編碼器中Transformer 編碼器與LSTM 神經(jīng)網(wǎng)絡(luò)的組合結(jié)構(gòu)優(yōu)于兩者單獨(dú)使用;A3 較FRLN 低了13.3 個(gè)百分點(diǎn),這表明注意力機(jī)制在動(dòng)態(tài)表征參考關(guān)系的過程中也相當(dāng)重要。上述結(jié)果同樣表明,F(xiàn)RLN 在小樣本鏈接預(yù)測實(shí)驗(yàn)中表現(xiàn)良好。
3.3.5 損失函數(shù)
對模型訓(xùn)練過程中損失函數(shù)的變化情況進(jìn)行對比分析,每個(gè)模型每訓(xùn)練50 次采集1 次損失函數(shù)的數(shù)值。為了方便進(jìn)行對比,取調(diào)整因子δ=0,得到FRLN 與FSRL、FAAN 損失函數(shù)變化曲線的對比情況如圖5、圖6 所示。
圖5 NELL-One 數(shù)據(jù)集上的損失值變化Fig.5 Variations of loss on the NELL-One dataset
圖6 Wiki-One 數(shù)據(jù)集上的損失值變化Fig.6 Variations of loss on the Wiki-One dataset
由圖5、圖6 可以看出,F(xiàn)RLN 在NELL-One 以及Wiki-One 數(shù)據(jù)集上均在訓(xùn)練約500 次時(shí)就已接近收斂,且收斂速度遠(yuǎn)快于其他2 種模型,說明FRLN 能夠更快地縮小預(yù)測輸出與期望輸出之間的差值,從模型訓(xùn)練速度這一方面反映了FRLN 的優(yōu)異性能。
針對小樣本知識(shí)圖譜補(bǔ)全任務(wù)中小樣本關(guān)系表示無法有效提取的問題,本文提出一種基于關(guān)系學(xué)習(xí)網(wǎng)絡(luò)的小樣本知識(shí)圖譜補(bǔ)全模型。該模型利用Transformer 編碼器優(yōu)秀的語義編碼能力以及LSTM神經(jīng)網(wǎng)絡(luò)在長程依賴方面的優(yōu)勢,融合路徑發(fā)現(xiàn)與上下文語義,充分學(xué)習(xí)實(shí)體對之間的關(guān)系表示,從而有效提取小樣本關(guān)系的細(xì)粒度語義。此外,結(jié)合語義相似性以及平移模型的思想,在得分函數(shù)中充分利用關(guān)系表示編碼器的輸出元素,對得分函數(shù)以及損失函數(shù)進(jìn)行優(yōu)化。在NELL-One 以及Wiki-One 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,所提模型相比于基準(zhǔn)模型取得了較好的性能提升。
為了進(jìn)一步提高模型泛化能力,后續(xù)將從以下3 個(gè)方面進(jìn)行深入研究:針對知識(shí)圖譜中廣泛存在的長尾關(guān)系現(xiàn)象,在進(jìn)行鄰域編碼時(shí)擴(kuò)大鄰域選擇范圍,結(jié)合多跳鄰域進(jìn)行關(guān)系建模;針對1-N、N-1、N-N的復(fù)雜關(guān)系進(jìn)行建模與優(yōu)化,并在訓(xùn)練過程中同時(shí)對模型參數(shù)以及嵌入表示的向量進(jìn)行更新,提高模型準(zhǔn)確性;對于候選的實(shí)體對進(jìn)行初步的篩選處理,進(jìn)一步提高鏈接預(yù)測的成功率。