曹 越
(西南交通大學(xué)制造業(yè)產(chǎn)業(yè)鏈協(xié)同與信息化支撐技術(shù)四川省重點(diǎn)實(shí)驗(yàn)室,成都 611756)
知識圖譜是現(xiàn)今非常熱門的一個研究領(lǐng)域,現(xiàn)已存在以Freebase[1]、WordNet[2]為代表的幾大知識圖譜,它們都包含了大量表示事實(shí)的三元組,這些三元組通常的形式為頭實(shí)體、關(guān)系和尾實(shí)體。但是知識圖譜常是不完全的,從而有了對知識圖譜補(bǔ)全技術(shù)的研究以完善圖譜。
知識圖譜補(bǔ)全也可稱圖譜中實(shí)體的鏈路預(yù)測,鏈接預(yù)測就是根據(jù)已觀測到的節(jié)點(diǎn)和鏈接,來判斷某個鏈接出現(xiàn)的可能性有多大。鏈接預(yù)測是將復(fù)雜網(wǎng)絡(luò)與信息科學(xué)聯(lián)系起來的重大紐帶,主要處理信息科學(xué)中的基本問題——確定信息的還原和預(yù)測[3]。知識圖譜補(bǔ)全可以分作基于規(guī)則和基于表示學(xué)習(xí)的兩類[4],本文的研究工作圍繞隱式關(guān)聯(lián)信息挖掘能力較強(qiáng)的知識表示學(xué)習(xí)進(jìn)行。
現(xiàn)今TransE 等[5-14]許多經(jīng)典基于表示學(xué)習(xí)的知識圖譜補(bǔ)全模型主要圍繞圖譜三元組結(jié)構(gòu)、網(wǎng)絡(luò)結(jié)構(gòu)特征的提取工作構(gòu)建,這使得知識圖譜本身的文本信息缺乏有效利用,也存在利用文本信息的補(bǔ)全模型如KG-BERT[15],但其計(jì)算成本高并且不能充分提取圖譜的結(jié)構(gòu)特征。但是很多時候?qū)嶓w的文本信息不免會對相鄰實(shí)體的向量表示產(chǎn)生影響,因此本文嘗試結(jié)合兩部分特征,以聚合相鄰實(shí)體關(guān)系特征作為自身實(shí)體特征表示的圖卷積神經(jīng)網(wǎng)絡(luò)為基礎(chǔ),嘗試使用預(yù)訓(xùn)練語言模型獲取鄰域?qū)嶓w文本描述信息的文本向量表示,以供加權(quán)約束來影響實(shí)體關(guān)系的知識表示。
知識表示學(xué)習(xí),也被稱為知識圖譜嵌入,旨在學(xué)習(xí)知識圖譜中實(shí)體和關(guān)系的分布式嵌入,即將實(shí)體和關(guān)系通過一定約束映射為低維向量,現(xiàn)有的知識表示學(xué)習(xí)方法主要可以分為三類,一類是以TransE[5]為代表的平移思想模型,TransE 通過向量平移將實(shí)體和關(guān)系映射到同一個向量空間;后續(xù)提出的TransH[6]、TransR[7]等衍生模型通過不同方法將關(guān)系做出區(qū)分來處理TransE 無法有效處理一對多、多對一和多對多關(guān)系的問題并進(jìn)一步提升了模型性能。一類是以RESCAL[8]、DistMult[9]、ComplEx[10]為代表的模型,核心思想是用一個關(guān)系矩陣表示兩個實(shí)體間潛在關(guān)系的交互作用。最后是結(jié)合深度學(xué)習(xí)的表示學(xué)習(xí)模型,ConvE[11]結(jié)合卷積神經(jīng)網(wǎng)絡(luò),先連接一對頭實(shí)體和關(guān)系的重塑向量表示,然后用二維卷積來預(yù)測尾部實(shí)體;InteractE[12]在ConvE 的基礎(chǔ)上增加了特征交互;R-GCN[13]、CompGCN[14]則是引入了圖神經(jīng)網(wǎng)絡(luò)將相鄰的實(shí)體和關(guān)系一起進(jìn)行編碼后使用特定解碼器進(jìn)行評分。另外也有部分學(xué)者做了結(jié)合文本表示的相關(guān)模型研究,如NTN[16]提出使用外部語料庫學(xué)習(xí)詞向量并將實(shí)體表示為其包含詞向量的平均值;KG-BERT[15]將圖譜中的三元組看作文本序列,將三元組中實(shí)體和關(guān)系的名稱或描述作為輸入微調(diào)BERT[17]計(jì)算三元組分?jǐn)?shù)。
本文以圖卷積神經(jīng)網(wǎng)絡(luò)為基礎(chǔ),參考Comp-GCN[14]模型并在其基礎(chǔ)上使用BERT預(yù)訓(xùn)練語言模型獲取實(shí)體文本描述信息的向量表示,用于計(jì)算關(guān)聯(lián)度以作為文本加權(quán)約束來影響實(shí)體關(guān)系向量表示的學(xué)習(xí)。
本文定義知識圖譜為G=(E,R),E、R分別代表知識圖譜中實(shí)體和關(guān)系的集合,e∈E和r∈R分別代表實(shí)體集合中的實(shí)體和關(guān)系集合中的關(guān)系,定義三元組為(eh,r,et) ∈G,其中eh、et∈E分別表示頭尾實(shí)體,r∈R表示頭尾實(shí)體間的關(guān)系。知識表示學(xué)習(xí)就是基于現(xiàn)存三元組學(xué)習(xí)知識圖譜G中實(shí)體e∈E和r∈R的向量表示e∈Rd和r∈Rd,其中R 表示實(shí)數(shù)集,d是向量表示的維度。表示學(xué)習(xí)的下游任務(wù)是鏈路預(yù)測,本文給定頭實(shí)體e∈E和關(guān)系r∈R的向量表示e∈Rd和r∈Rd,預(yù)測尾實(shí)體e'∈E,即預(yù)測(e,r,e') ∈G是否存在。
然后定義任意實(shí)體e∈E經(jīng)輸入BERT 模型后得到的實(shí)體文本描述向量表示為te∈Rh,h是BERT 模型輸出文本向量的維度。同時,與CompGCN 的工作一樣,需要對數(shù)據(jù)集的所有關(guān)系做一個反向關(guān)系和所有實(shí)體自環(huán)關(guān)系的補(bǔ)充[14],即對每一條存在的三元組(e,r,e') ∈G都補(bǔ)充一條逆向三元組(e',rinv,e) 于G中使得(e',rinv,e) ∈G(其中rinv為r∈R的逆關(guān)系);以及對每一個存在的實(shí)體e∈E都補(bǔ)充一條自環(huán)三元組(e,rself,e)于G中使得(e,rself,e) ∈G(其中rself為e∈E的自環(huán)關(guān)系),即按如下公式更新G為
由此存在關(guān)系集合R的逆關(guān)系集合Rinverse=以及實(shí)體集合E的自環(huán)關(guān)系集合Rself=。將R賦值于Rori,即Rori=R,然后同時按如下公式更新R為
最后,在該模型中需要聚合與任意實(shí)體e∈E直接相連的所有實(shí)體和關(guān)系集合中(在這里稱為鄰域?qū)嶓w和其對應(yīng)鄰域關(guān)系)的特征作為實(shí)體e的向量表示,因此本文定義N(e)為實(shí)體e的鄰域三元組集合,Nent(e)為實(shí)體e的鄰域?qū)嶓w集合,Nrel(e)為實(shí)體e的鄰域關(guān)系集合。
本文采用R-GCN中提到的編碼器-解碼器模型框架[13]。編碼器在CompGCN 的基礎(chǔ)上結(jié)合文本權(quán)值約束構(gòu)建,解碼器采用ConvE 模型,將三元組信息包含的任意實(shí)體e∈E和關(guān)系r∈R的初始向量eini∈Rd和rini∈Rd輸入到編碼器進(jìn)行文本加權(quán)約束下的圖卷積聚合操作一次后得到對應(yīng)的eaggr∈Rd'和raggr∈Rd',再通過解碼器即鏈路預(yù)測打分函數(shù)的約束來評價,這是模型的前向過程,然后反向更新eini和rini等其他相關(guān)參數(shù),并反復(fù)進(jìn)行該過程以實(shí)現(xiàn)模型的訓(xùn)練,模型訓(xùn)練完成后得到的eini和rini就是實(shí)體e∈E和關(guān)系r∈R的最終向量表示。框架結(jié)構(gòu)如圖1所示。
圖1 模型框架
本文采用CompGCN 模型作為編碼器的基礎(chǔ),并且考慮在圖譜中常有一種情況:對于一個示例實(shí)體eexp∈E, 其鄰域?qū)嶓w集合為Nent(eexp), 對于集合中一個鄰域?qū)嶓wei∈Nent(eexp),若它與Nent(eexp)中其余的實(shí)體的關(guān)聯(lián)度較小,則它的特征信息于該集合中相對獨(dú)特,對實(shí)體e的影響相對較大,相反若它與其余實(shí)體的關(guān)聯(lián)度較大,其特征信息相對普通,對實(shí)體e的影響相對較小。
因此本文約定對于實(shí)體eexp∈E,任一鄰域?qū)嶓wei∈Nent(eexp),其與鄰域?qū)嶓w集合中其余實(shí)體的關(guān)聯(lián)度由αi來衡量:
其中cos 表示余弦相似度,式(3)中∑表示的是αi需要累加ei和eexp的所有鄰域三元組中相鄰實(shí)體ej(考慮重復(fù))的余弦相似度絕對值,同時因?yàn)閑exp和ej無法確定唯一的三元組,即無法確定唯一的關(guān)系r,因而此處寫作rk,rk∈Nrel(eexp)。并如前述可得,ei對eexp的影響系數(shù)可表示為
由式(3)、(4)可知,對于實(shí)體ei∈Nent(eexp),它與Nent(eexp)中其余實(shí)體的關(guān)聯(lián)度越小,其對實(shí)體eexp的影響系數(shù)越大;相反關(guān)聯(lián)度越大,影響系數(shù)越小。
并于此設(shè)置可訓(xùn)練參數(shù)γ使得聚合權(quán)值pi可表示為
而后對所有實(shí)體進(jìn)行其鄰域?qū)嶓w和關(guān)系特征的聚合操作,聚合示意圖如圖2、圖3 所示,圖中以聚合實(shí)體e1、e2、e3、e4的初始向量得到e3的聚合表示為例。
圖2 關(guān)系結(jié)構(gòu)
圖3 聚合方式
本節(jié)后續(xù)公式均基于CompGCN 模型[14]展開,圍繞上述示例實(shí)體eexp來闡述聚合過程,eexp的具體聚合公式為
其中,m表示向量的第m列。
其中Wtype(r)∈Rd'×d根據(jù)2.1 節(jié)相關(guān)定義分為三個可訓(xùn)練參數(shù),公式為
聚合得到實(shí)體eexp的向量表示后,通過可訓(xùn)練參數(shù)矩陣Wrel∈Rd'×d獲取每一個對應(yīng)相鄰關(guān)系rt的向量表示:
本文采用使用二維卷積的ConvE 模型[11]作為解碼器,基于2.3 節(jié)每次模型前向聚合得到的實(shí)體和關(guān)系的向量表示和打分函數(shù)進(jìn)行鏈路預(yù)測,并通過優(yōu)化鏈路預(yù)測的效果來更新模型的可訓(xùn)練參數(shù)。針對任意三元構(gòu)成的三元組(e,r,e'),打分函數(shù)如下:
其中:f2是ReLU 非線性映射函數(shù)用于加快模型訓(xùn)練;eaggr,raggr,e'aggr為通過2.3節(jié)編碼器學(xué)習(xí)到的相應(yīng)向量表示;,是eaggr,raggr的二維重塑形式;表示拼接操作;ω為卷積的過濾器;vec 代表的是對卷積層獲取的特征進(jìn)行的維數(shù)重塑操作;W是參數(shù)轉(zhuǎn)換矩陣,最后通過W將特征映射輸出與e'aggr同維并與其做內(nèi)積操作獲取得分。
本文實(shí)驗(yàn)采用兩個經(jīng)典公開數(shù)據(jù)集FB15k-237[19]和WN18RR[11],數(shù)據(jù)集基本信息見表1,實(shí)體文本描述信息數(shù)據(jù)取自文獻(xiàn)[15]。
表1 數(shù)據(jù)集信息
本文實(shí)驗(yàn)在遠(yuǎn)程服務(wù)器上進(jìn)行,服務(wù)器搭載ubuntu18.04 系統(tǒng),GPU 配置為1 張RTX3090(24 GB),CPU 配置為Intel(R)Xeon(R)Gold 6330@2.00 GHz,內(nèi)存配置為160 GB,BERT 使用了Google提供的BERT-base(uncased)模型。
實(shí)驗(yàn)中對CompGCN 模型和本文模型分別進(jìn)行了同環(huán)境下(見3.2 節(jié))的訓(xùn)練與測試,另外同樣作為對比模型的TransE 模型、ConvE 模型、KG-BERT 模型分別引用文獻(xiàn)[14]、文獻(xiàn)[11]和文獻(xiàn)[15]中報告的結(jié)果,實(shí)驗(yàn)結(jié)果見表2。
表2 實(shí)驗(yàn)結(jié)果
由表2可以得出,相比于幾個基準(zhǔn)模型,本文引入鄰域?qū)嶓w文本權(quán)值約束改進(jìn)的CompGCN模型在FB15k-237 數(shù)據(jù)集上的評價指標(biāo)MRR、Hit@3和Hit@1均取得了最優(yōu)值,Hit@10僅次于CompGCN;在WN18RR 數(shù)據(jù)集上的評價指標(biāo)Hit@10 和Hit@3 取得了最優(yōu)值,MRR 和Hit@1僅次于CompGCN。綜上,本文模型在對比基準(zhǔn)模型時都取得了相對較好的實(shí)驗(yàn)表現(xiàn),相比于基礎(chǔ)模型CompGCN 也有一定程度的性能提升,這證明了該模型具有一定的有效性。
另外本文同CompGCN 模型一樣設(shè)置相同閾值的早停操作來防止模型的過擬合。從表3中的早停Epoch值可以看出本文提出的模型在兩個數(shù)據(jù)集上訓(xùn)練收斂所需時間均比CompGCN 模型少約30%,這也在一定程度上說明引入鄰域?qū)嶓w文本權(quán)值約束可以提高模型訓(xùn)練的收斂速度。
表3 早停Epoch
本文針對現(xiàn)存部分基于知識表示學(xué)習(xí)的知識圖譜補(bǔ)全模型未有效利用知識圖譜豐富的文本信息的問題,以及部分利用文本信息的模型對圖譜結(jié)構(gòu)特征的缺失問題,提出了一種融合實(shí)體文本加權(quán)約束的知識表示學(xué)習(xí)方法,即以CompGCN 模型為基礎(chǔ),使用預(yù)訓(xùn)練語言模型BERT 獲取鄰域?qū)嶓w文本描述信息的文本向量表示并用于計(jì)算實(shí)體關(guān)聯(lián)度以作為文本加權(quán)約束使得圖卷積的聚合過程具有偏向性,以影響實(shí)體和關(guān)系的向量表示,最后在兩個公開數(shù)據(jù)集上與部分模型做的對比實(shí)驗(yàn)也證明了該方法的有效性。在后續(xù)的研究中會嘗試加入關(guān)系的文本表示而不僅限于實(shí)體文本信息,會嘗試探索更多的結(jié)合文本信息作表示學(xué)習(xí)的知識圖譜補(bǔ)全方法、更充分地利用文本信息以提高模型的表現(xiàn)。