馮興杰,張成豪,馮小榮,許云峰
1(中國(guó)民航大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,天津 300300) 2(中國(guó)民航大學(xué) 空中交通管理學(xué)院,天津 300300)
隨著科技社會(huì)的發(fā)展,知識(shí)圖譜(Knowledge graphs,KGs)已經(jīng)在各行各業(yè)中得到廣泛的應(yīng)用,越來越多的知識(shí)圖譜不斷出現(xiàn),而不同行業(yè)、領(lǐng)域?qū)陀^世界中存在的真實(shí)對(duì)象表述不同,造成了豐富的資源無法有效的進(jìn)行統(tǒng)一和補(bǔ)充.
實(shí)體對(duì)齊[1]旨在從大量不同的知識(shí)圖譜中找到表示客觀世界中存在的同一個(gè)實(shí)體.通俗來說就是在兩個(gè)或多個(gè)知識(shí)圖譜中發(fā)現(xiàn)兩個(gè)等價(jià)的實(shí)體或者兩個(gè)相同的實(shí)體.由于實(shí)體分類方式和表示方式的不同,造成了當(dāng)前所擁有的知識(shí)圖譜數(shù)據(jù)不完整、領(lǐng)域性強(qiáng)等問題.目前主流的實(shí)體對(duì)齊方法主要是基于深度學(xué)習(xí)的方法,又可以細(xì)分為基于TransE的方法、基于圖神經(jīng)網(wǎng)絡(luò)的方法和基于實(shí)體對(duì)的方法.這些方法都通過近似關(guān)系表示和實(shí)體嵌入進(jìn)行向量的學(xué)習(xí),使得不同空間同一實(shí)體的相似性更強(qiáng).
在實(shí)體對(duì)齊發(fā)展的這個(gè)過程中,實(shí)體的相關(guān)信息不斷的加入到實(shí)體的對(duì)齊過程中,這些相關(guān)信息指的是實(shí)體的屬性信息和實(shí)體的類別信息.剛開始實(shí)體對(duì)齊只使用關(guān)系三元組,后來逐漸的將屬性三元組加入到實(shí)體對(duì)齊中,除了這些信息,類別信息同樣很重要,因?yàn)椴煌硎龅耐粋€(gè)實(shí)體可能有著相同的類別信息,所以本體(ontology)的嵌入會(huì)對(duì)實(shí)體對(duì)齊產(chǎn)生重要的影響.
本文提出聯(lián)合指導(dǎo)嵌入的實(shí)體對(duì)齊方法(Joint guidance embedding method for entity alignment,JGEA)進(jìn)行實(shí)體對(duì)齊,將本體信息和屬性信息融入到實(shí)體對(duì)齊當(dāng)中,并且在空間映射的過程中將得到的高質(zhì)量實(shí)體對(duì)加入到種子詞當(dāng)中,提高本體類別間的沖突程度.
知識(shí)圖譜的嵌入學(xué)習(xí)已經(jīng)廣泛地應(yīng)用在實(shí)體對(duì)齊領(lǐng)域.當(dāng)前的普遍方法是基于TransE的實(shí)體對(duì)齊,該類方法將知識(shí)圖譜表示為向量空間的嵌入,然后通過測(cè)量各個(gè)實(shí)體嵌入之間的相似性來進(jìn)行實(shí)體對(duì)齊.基于TransE模型的基本思想是把三元組的實(shí)體和關(guān)系都表示成向量,使得在滿足特定關(guān)系的條件下頭實(shí)體向量和關(guān)系向量之和盡可能靠近尾實(shí)體的向量,主要的任務(wù)是做鏈接的預(yù)測(cè)和三元組的分類.基于JE的聯(lián)合嵌入方法[2]在實(shí)體對(duì)齊的過程中融入了翻譯模型應(yīng),先通過模型學(xué)習(xí)統(tǒng)一向量空間的表示,再將不同的知識(shí)圖譜嵌入到該空間,最后在這個(gè)空間中進(jìn)行實(shí)體對(duì)齊.MTransE[3]是比較早的將表示學(xué)習(xí)的方法引入到知識(shí)圖譜實(shí)體對(duì)齊的任務(wù)中的模型.該模型在獨(dú)立的嵌入空間中對(duì)每種語言的三元組信息進(jìn)行編碼,為跨語言的知識(shí)圖譜對(duì)齊提供空間映射關(guān)系,不僅保留了單語嵌入的功能,還提升了跨語言知識(shí)圖譜實(shí)體對(duì)齊的能力.但MTransE只利用了結(jié)構(gòu)化的信息,也就是實(shí)體間的關(guān)系.
考慮到實(shí)體屬性信息的重要性,JAPE[4]將實(shí)體屬性信息結(jié)合到模型中進(jìn)行表示學(xué)習(xí),利用結(jié)構(gòu)向量的方法對(duì)兩個(gè)知識(shí)圖譜的關(guān)系三元組信息進(jìn)行向量化,利用屬性向量對(duì)知識(shí)圖譜中屬性三元組進(jìn)一步細(xì)化向量,最后做實(shí)體對(duì)齊.基于MultiKE多視圖嵌入的方法[5]將每一個(gè)知識(shí)圖譜進(jìn)行視圖拆分,一共分成3種視圖,分別為名稱、屬性和關(guān)系,這3個(gè)視圖分別進(jìn)行向量的訓(xùn)練,最后將3個(gè)視圖中的實(shí)體向量進(jìn)行結(jié)合再進(jìn)行對(duì)齊.IPTransE[6]是一種聯(lián)合知識(shí)嵌入來實(shí)現(xiàn)實(shí)體對(duì)齊的方法,將新發(fā)現(xiàn)的對(duì)齊的結(jié)果加入到種子詞中,并基于迭代訓(xùn)練的方式來提高對(duì)齊的性能.基于MMR的多映射關(guān)系的方法是[7]一種新的知識(shí)表示學(xué)習(xí)方法,該方法重新定義了能量函數(shù),解決了TransE存在的一些多關(guān)系劣勢(shì)的問題,從而大大提升了知識(shí)圖譜實(shí)體對(duì)齊性能.BootEA[8]將實(shí)體對(duì)齊當(dāng)作一個(gè)分類任務(wù).在所有標(biāo)記的和未標(biāo)記的數(shù)據(jù)中找到最好的嵌入,使得知識(shí)圖譜能夠更好的對(duì)齊,并且提出了一個(gè)基于限制的公式,對(duì)于正樣本三元組得到低的分?jǐn)?shù),對(duì)于負(fù)樣本三元組得到更高的分?jǐn)?shù).OntoEA[9]首次將本體引入到實(shí)體對(duì)齊空間中,通過本體的指導(dǎo)更好的解決了實(shí)體對(duì)齊中存在的類沖突問題.
這些基于TransE的模型都需要對(duì)知識(shí)圖譜本身的關(guān)系建模和對(duì)對(duì)齊關(guān)系建模之間進(jìn)行平衡調(diào)整,即這些模型的損失函數(shù)當(dāng)中需要將兩部分的損失函數(shù)做一個(gè)加權(quán)的求和,這個(gè)權(quán)重是一個(gè)超參數(shù),而調(diào)整超參數(shù)找到最好的結(jié)果是比較困難的.
在基于TransE方法上,研究人員更多的在考慮能否直接進(jìn)行實(shí)體的表示,目的就是用來做不同知識(shí)圖譜間的實(shí)體對(duì)齊,而不是做鏈接的預(yù)測(cè)或者三元組的分類.與上述基于知識(shí)圖譜嵌入的方法不同,在做對(duì)齊的過程中除了用到屬性信息之外還可以用到與實(shí)體相連的實(shí)體(鄰居)信息作為特征,如果某兩個(gè)實(shí)體之間的鄰居有很多相同的等價(jià)的實(shí)體,這兩個(gè)實(shí)體也就比較相同.所以接下來的大多數(shù)方法將圖神經(jīng)網(wǎng)絡(luò)(GNN)引入到實(shí)體對(duì)齊的過程中.GNN使用圖結(jié)構(gòu)和節(jié)點(diǎn)特征來學(xué)習(xí)節(jié)點(diǎn)或整個(gè)圖的表示向量,遵循鄰域聚合策略,在一次的聚合過程中可以將鄰居的信息傳遞給與之相鄰的其他結(jié)點(diǎn),當(dāng)經(jīng)過多層的卷積之后鄰居的信息傳遞會(huì)更多一點(diǎn),所以實(shí)體對(duì)齊在圖學(xué)習(xí)方面取得了顯著進(jìn)步.因此,一些工作試圖將GNN應(yīng)用在實(shí)體對(duì)齊方面以取得更好的對(duì)齊性能.
GCN-Align[10]是一種通過圖形卷積網(wǎng)絡(luò)進(jìn)行跨語言知識(shí)圖譜對(duì)齊的新方法.GCN-Align將實(shí)體本身和它的一些鄰居特征通過整合形成一個(gè)用于實(shí)體對(duì)齊的特征向量.在基于已有的種子集合要求兩個(gè)知識(shí)圖譜中等價(jià)的實(shí)體的距離越小越好.該方法沒有對(duì)三元組信息進(jìn)行建模,也沒有考慮知識(shí)圖譜單向邊的問題,直接做的實(shí)體對(duì)齊.RDGCN[11]是一種基于關(guān)系感知的雙圖卷積網(wǎng)絡(luò),在探索復(fù)雜關(guān)系信息的基礎(chǔ)上解決異構(gòu)知識(shí)圖譜上的實(shí)體對(duì)齊問題,并且這些信息通常存在于多關(guān)系知識(shí)中.AVR-GCN[12]是一種向量化卷積關(guān)系圖模型,該模型同時(shí)對(duì)實(shí)體和關(guān)系的向量進(jìn)行嵌入學(xué)習(xí),其卷積操作也同時(shí)應(yīng)用于實(shí)體和關(guān)系,具有區(qū)分實(shí)體位置信息的特性.NMN[13]是一種新的實(shí)體對(duì)齊框架-鄰域匹配網(wǎng)絡(luò)(Neighborhood Matching Network,NMN).NMN首先會(huì)做一個(gè)領(lǐng)域的抽樣,通過評(píng)估實(shí)體間的相似度來獲取拓?fù)浣Y(jié)構(gòu)和鄰域差異,從而將重要的鄰居篩選出來.AliNet[14]將注意力和門控神經(jīng)網(wǎng)絡(luò)結(jié)合在一起,緩解了鄰域結(jié)構(gòu)的非同構(gòu).因?yàn)槟J骄哂挟悩?gòu)性,導(dǎo)致實(shí)體的直接鄰居相似度很低,所以AliNet引入了多跳鄰居來解決它們的鄰域結(jié)構(gòu)之間的重疊.基于圖注意力(Graph Attention,GAT)[15]網(wǎng)絡(luò)將注意力機(jī)制加入到實(shí)體對(duì)齊的過程中,通過對(duì)鄰居節(jié)點(diǎn)的特征進(jìn)行加權(quán)求和進(jìn)行特征提取,鄰居節(jié)點(diǎn)間特征的權(quán)重取決于該節(jié)點(diǎn)的特征信息,并且獨(dú)立于圖結(jié)構(gòu),在實(shí)體對(duì)齊節(jié)點(diǎn)分類的方面取得了不錯(cuò)的結(jié)果.
為了得到更好的結(jié)果,現(xiàn)在的模型變得越來越復(fù)雜,考慮到的因素越來越多.王志春[16]等人為了使對(duì)齊的效果好,模型更簡(jiǎn)單,針對(duì)上述問題提出了PCG(pair-wise connectivity graph)模型.該模型在給定兩個(gè)知識(shí)圖譜之后,先將兩個(gè)知識(shí)圖譜進(jìn)行實(shí)體對(duì)連接圖的生成,在這個(gè)連接圖里面,每個(gè)結(jié)點(diǎn)是一個(gè)實(shí)體對(duì),對(duì)應(yīng)原來兩個(gè)知識(shí)圖譜中的實(shí)體,之后做特征提取的時(shí)候只針對(duì)實(shí)體對(duì)做特征提取.但是該模型針對(duì)大規(guī)模知識(shí)圖譜的時(shí)候會(huì)產(chǎn)生實(shí)體對(duì)數(shù)量大,無用實(shí)體對(duì)多的問題.
實(shí)體所具有的特性稱為實(shí)體屬性,也可以認(rèn)為是實(shí)體和實(shí)體之間的抽象關(guān)系.每個(gè)屬性都有取值的集合,這個(gè)集合稱為屬性值的域.在實(shí)體對(duì)齊任務(wù)中,很多的方法基本假設(shè)都是認(rèn)為等價(jià)的實(shí)體具有相似或相同的屬性,比如在不同的電子商務(wù)平臺(tái),會(huì)有對(duì)于同一件商品信息展示的不同頁面,但是對(duì)于商品的性能參數(shù)描述信息可能是相同的.所以就可以通過這些屬性信息去判斷這兩個(gè)或多個(gè)商品是否是同一件商品,從而可以通過屬性、屬性值去計(jì)算實(shí)體的相似度.
本體[17]概念最早來自于哲學(xué)領(lǐng)域,后來本體概念被引入到計(jì)算機(jī)領(lǐng)域中描述語義層次上描述的知識(shí),或者學(xué)科領(lǐng)域中的概念,是一個(gè)抽象的概念性模型.本體跟個(gè)體不同,本體是一個(gè)團(tuán)體的共識(shí),是領(lǐng)域內(nèi)公認(rèn)的概念或類集合.根據(jù)本體的層次性不同可以將本體分為頂層本體、領(lǐng)域本體、任務(wù)本體以及應(yīng)用本體四大類.一個(gè)本體主要包含5種元素,分別是類別、關(guān)系、函數(shù)、公理以及實(shí)例.類別又可以稱為集合、概念或者事物對(duì)象的種類;關(guān)系則表示類與類之間的聯(lián)系;函數(shù)是一種特殊的關(guān)系表示形式,通過一些函數(shù)可以確定類別、關(guān)系中所存在的邏輯規(guī)律;公理則表示本體里面存在的客觀事實(shí)的東西;實(shí)例表示本體中某個(gè)類別在現(xiàn)實(shí)生活中的存在.
本體的構(gòu)建方法有很多種,常見的方法有骨架法、七步法和敘詞表的方法;骨架法常用來構(gòu)建企業(yè)級(jí)別的本體,通過企業(yè)間相關(guān)術(shù)語和特殊定義集合來建立企業(yè)本體.七步法是現(xiàn)在常用的構(gòu)建本體的方法,是由斯坦福大學(xué)開發(fā)的.從確定領(lǐng)域范疇開始,之后是復(fù)用本領(lǐng)域范圍內(nèi)已經(jīng)存在的本體,再根據(jù)領(lǐng)域內(nèi)的知識(shí)列出領(lǐng)域中的術(shù)語,制定領(lǐng)域類別等級(jí)關(guān)系,再到定義類別的屬性信息,定義屬性分面,最后是填充一些領(lǐng)域本體的實(shí)例.
本體描述語言主要有3種:RDF,RDFS,OWL.這3種描述語言都是W3C推薦的本體描述語言,每一種語言都解決了前一種語言所存在的一些問題.其中,RDF是資源描述框架,專門用于描述web上的大部分資源信息,是根據(jù)XML語言編寫的.RDFS是詞匯描述語言,在RDF的基礎(chǔ)上進(jìn)行擴(kuò)展,改善了RDF原有的缺點(diǎn),定義了一些類別屬性來描述和約束現(xiàn)有的資源.OWL是web本體語言,保持了RDF和RDFS原有的特點(diǎn)增強(qiáng)了語義表達(dá)的能力.
目前,世界上存在各種各樣的知識(shí)圖譜或者知識(shí)庫,例如:DBpedia[18]、YAGO[19]、Freebase[20]、科學(xué)知識(shí)庫[21]等,這些知識(shí)圖譜通常表示為KG={E,R,V,A,T},其中,E、R、A、V、T表示知識(shí)圖譜中的一些集合信息,E是實(shí)體集,R是關(guān)系集,V是屬性集合,A是屬性值集合,T是三元組集合.關(guān)系三元組表示為TR={(h,r,t)},其中h表示頭實(shí)體,r表示關(guān)系,t表示尾實(shí)體;屬性三元組表示為TA={(h,a,v)},其中h表示實(shí)體,a表示屬性,v表示屬性值.
知識(shí)圖譜對(duì)應(yīng)的本體可以表示為O={C,H},C是本體集合、H是本體類間的三元組集合,對(duì)于本體間關(guān)系的三元組表示為H={(ch,ro,ct)},其中,ch表示頭本體,ro表示本體之間的關(guān)系,ct表示尾本體.由于在本體中嵌入兩個(gè)KGs是比較困難的,所以本文的本體關(guān)系三元組簡(jiǎn)化為H={(ch,ct)},省略的ro只選取subClassOf類型的關(guān)系.
基于聯(lián)合指導(dǎo)嵌入的實(shí)體對(duì)齊任務(wù)就是從給定的兩個(gè)知識(shí)圖譜:KGi={Ei,Ri,Vi,Ai,Ti},KGj={Ej,Rj,Vj,Aj,Tj}、給定的本體:Oi={Ci,Hi},O2={Cj,Hj}以及種子詞(已對(duì)齊的實(shí)體對(duì)):L={(ei,ei)|ei∈Ei,ej∈Ej},其中ei是Ei中的一個(gè)實(shí)體,ej是Ej中的一個(gè)實(shí)體,通過深度學(xué)習(xí)的方法構(gòu)建模型框架,找出兩個(gè)知識(shí)圖譜中剩余的等價(jià)實(shí)體對(duì),并將其添加到種子詞中.
本文要解決的實(shí)體對(duì)齊中存在的問題如圖1所示.在第2節(jié)相關(guān)工作中存在的大部分方法的實(shí)體映射會(huì)造成一些類的沖突.考慮圖中的例子,圖1(a)中兩個(gè)知識(shí)圖譜存在兩個(gè)表述相同的實(shí)體alpha,這兩個(gè)實(shí)體alpha有著相同的age:18,也有著相同的height:170,但是第1個(gè)知識(shí)圖譜中的實(shí)體alpha屬于Person類別,而第2個(gè)知識(shí)圖譜中的實(shí)體alpha屬于Robot類別.這兩個(gè)實(shí)體描述相同,屬性相同,但類別歸屬不同,故兩者不是等價(jià)的實(shí)體.圖1(b)中兩個(gè)知識(shí)圖譜存在兩個(gè)表述相同的實(shí)體alpha,這兩個(gè)實(shí)體alpha有著相同的歸屬類型Person、Student、Singer,但他們的屬性信息并不相同,第1個(gè)知識(shí)圖譜中實(shí)體alpha的age為18,第2個(gè)知識(shí)圖譜中實(shí)體alpha的age為15,所以盡管這兩個(gè)知識(shí)圖譜中相同表述的實(shí)體有著相同的歸屬類型,但屬性信息不同,故兩者不是等價(jià)的實(shí)體.
圖1 實(shí)體對(duì)齊中沖突示例Fig.1 Examples of conflicts in entity alignment
針對(duì)以上問題本文提出了一種聯(lián)合指導(dǎo)嵌入的實(shí)體對(duì)齊模型:JGEA模型.整體的框架如圖2所示.該模型主要分為3層結(jié)構(gòu),8個(gè)模塊.3層分別是嵌入層、指導(dǎo)層、迭代訓(xùn)練層,八個(gè)模塊分別是:本體嵌入、實(shí)體嵌入、屬性嵌入、本體樹沖突構(gòu)建、屬性指導(dǎo)、本體指導(dǎo)、空間映射和迭代訓(xùn)練.
圖2 JGEA模型結(jié)構(gòu)Fig.2 Model structure of JGEA
首先通過預(yù)訓(xùn)練詞向量對(duì)本體三元組、實(shí)體關(guān)系三元組和屬性三元組分別進(jìn)行嵌入,再通過線性變換或者TransE的方法進(jìn)行不同空間的向量?jī)?yōu)化.在優(yōu)化的過程中采用負(fù)采樣進(jìn)行負(fù)樣本的抽取,之后進(jìn)行指導(dǎo)訓(xùn)練,在訓(xùn)練之間構(gòu)建本體沖突矩陣來調(diào)整本體間的沖突程度,然后通過屬性和本體進(jìn)行自底而上的進(jìn)行指導(dǎo)嵌入.最后進(jìn)行對(duì)齊訓(xùn)練,將得到置信度高的實(shí)體對(duì)加入到種子詞當(dāng)中.
1)本體嵌入.對(duì)于給定的本體O={C,H},并且已知本體的三元組簡(jiǎn)化為H={(ch,ct)},其中(ch,ct)為一個(gè)類別對(duì).由于本體類別間的關(guān)系是固定的,且類和子類之間具有傳遞性的關(guān)系,所以無法用TransE的方法區(qū)分同一個(gè)頭實(shí)體在固定關(guān)系下的尾實(shí)體.
本文采用非線性變換的方法對(duì)本體類別之間的聯(lián)系進(jìn)行建模,首先,本文通過GloVe[22]模型進(jìn)行詞向量的訓(xùn)練,形成預(yù)訓(xùn)練的詞向量字典,其次,通過預(yù)訓(xùn)練的詞向量對(duì)本體進(jìn)行嵌入,再通過構(gòu)建的評(píng)分函數(shù)為fo(ch,ct)作為本體對(duì)(ch,ct)的損失評(píng)分,如公式(1)所示,最后訓(xùn)練調(diào)整詞向量.整個(gè)訓(xùn)練的損失函數(shù)如公式(2)所示.
(1)
(2)
2)實(shí)體嵌入.對(duì)于數(shù)據(jù)集中給定的知識(shí)圖譜KG={E,R,V,A,T},并且已知實(shí)體的關(guān)系三元組為TR={(h,r,t)}.本文采用TransE的方法對(duì)實(shí)體之間的關(guān)系進(jìn)行建模,并采用預(yù)訓(xùn)練模型GloVe對(duì)實(shí)體關(guān)系三元組進(jìn)行嵌入,再通過構(gòu)建評(píng)分函數(shù)fr(h,r,t)作為關(guān)系三元組的損失評(píng)分,之后訓(xùn)練調(diào)整詞向量,評(píng)分函數(shù)如公式(3)所示.
(3)
式中,h是關(guān)系三元組的頭實(shí)體,r是關(guān)系,t是尾實(shí)體.h、r、t為h、r、t所對(duì)應(yīng)的向量表示.
TransE是非常經(jīng)典的知識(shí)表示翻譯模型,主要解決的是對(duì)于實(shí)體和多關(guān)系數(shù)據(jù)在低維空間中如何更好的嵌入問題,在TransE中,三元組的各個(gè)元素被映射到向量空間中[23,24],三元組之間的關(guān)系成了各個(gè)向量之間的相互表示.如圖3所示是TransE的向量空間假設(shè).假設(shè)知識(shí)圖譜中每一個(gè)三元組(h,r,t)都能唯一表示,其含義是在該向量空間中,頭實(shí)體的向量加上關(guān)系的向量等于尾實(shí)體的向量.
圖3 TransE向量空間假設(shè)Fig.3 TransE vector space hypothesis
在訓(xùn)練過程中,整個(gè)關(guān)系三元組訓(xùn)練的損失如公式(4)所示.
(4)
式中,TR是實(shí)體關(guān)系三元組集合,T′R為經(jīng)過負(fù)采樣的實(shí)體關(guān)系三元組集合,αr為超參數(shù).
3)屬性嵌入.在本文中,屬性的訓(xùn)練不與實(shí)體關(guān)系三元組一起訓(xùn)練,而是將所有屬性三元組一起訓(xùn)練.之所以將兩個(gè)知識(shí)圖譜中的屬性三元組放在一起訓(xùn)練,是因?yàn)閷?duì)于兩個(gè)知識(shí)圖譜中相同的屬性或者屬性值在訓(xùn)練的過程中會(huì)使得擁有相同屬性或者屬性值的實(shí)體相似性更高,從而在指導(dǎo)的過程中獲取更多的信息.對(duì)于已經(jīng)給定的知識(shí)圖譜KG={E,R,V,A,T},并且已知實(shí)體的屬性三元組為TA={(h,a,v)}.本文采用TransE的方法對(duì)實(shí)體之間的屬性三元組進(jìn)行建模,并采用預(yù)訓(xùn)練模型GloVe對(duì)實(shí)體屬性三元組進(jìn)行嵌入,再通過構(gòu)建評(píng)分函數(shù)fa(h,a,v)作為關(guān)系三元組的損失評(píng)分,如公式(5)所示,最后訓(xùn)練調(diào)整詞向量.
(5)
式中,h是屬性三元組的頭實(shí)體,a是屬性,v是屬性值.h、a、v為h、a、v所對(duì)應(yīng)的向量表示.
整個(gè)屬性三元組訓(xùn)練的損失定義如公式(6)所示.
(6)
式中,TA是實(shí)體屬性三元組集合,T′A為經(jīng)過負(fù)采樣的實(shí)體屬性三元組集合,αa為超參數(shù).
1)沖突構(gòu)建.由于本體三元組中的關(guān)系是固定的,對(duì)于本體中同一個(gè)節(jié)點(diǎn)的孩子結(jié)點(diǎn)之間的嵌入相似度會(huì)很大,所以本文為了區(qū)分類別之間的相似度使用沖突矩陣構(gòu)建類間的沖突.類沖突矩陣是一個(gè)斜對(duì)稱矩陣,只保留上三角或者下三角可以提高計(jì)算的效率.類沖突主要包括顯式?jīng)_突和隱式?jīng)_突.
顯式?jīng)_突計(jì)算主要包含3個(gè)方面:第一、矩陣中的值為0,表示同一個(gè)類別或者兩個(gè)類包含相同的實(shí)體,第二、矩陣中的值為1,表示兩個(gè)類別之間毫無關(guān)系,這里毫無關(guān)系的類別對(duì)是預(yù)定義好的.第三、矩陣中的值在0-1之間,是不滿足上述兩種條件的情況.表示兩個(gè)類別之間有多少概率的沖突.采用公式(7)計(jì)算本體類之間的沖突值.
(7)
式中,mi,j表示類別ci和類別cj之間的沖突程度,S(ci)和S(cj)分別表示從當(dāng)前節(jié)點(diǎn)到根節(jié)點(diǎn)路徑中元素的集合,|·|表示集合的元素個(gè)數(shù).
隱式?jīng)_突主要考慮兩個(gè)本體類之間的相似度,沖突程度用dcos(ci,cj)=1-cos(ci,cj)來計(jì)算,類間沖突損失函數(shù)表示如公式(8)所示.
Ld=-mi,jlogdcos(ci,cj)
(8)
2)屬性指導(dǎo).屬性信息是知識(shí)圖譜中存在的客觀信息,屬性三元組不像關(guān)系三元組那樣有規(guī)則,屬性三元組中的屬性值可以是一個(gè)字母,一個(gè)詞語甚至一段句子.屬性的表示會(huì)給實(shí)體嵌入提供更多的信息.
對(duì)于給出實(shí)體和屬性成員對(duì)集合D={(e,v)},本文采用非線性變換將實(shí)體嵌入空間與屬性嵌入空間相關(guān)聯(lián),選擇的評(píng)分函數(shù)為fv(e,v),如公式(9)所示.實(shí)體和屬性的空間映射損失函數(shù)如公式(10)所示.
(9)
(10)
式中,Wv∈Rdr×dv、bv∈Rdv,D是實(shí)體和屬性成員對(duì)集合,D′為經(jīng)過負(fù)采樣的實(shí)體和屬性成員對(duì)集合,e、v為e、v所對(duì)應(yīng)的向量表示,αv為超參數(shù).
3)本體指導(dǎo).本體信息是知識(shí)圖譜中實(shí)體的概念升華,它是實(shí)體的類別信息,是實(shí)體抽象的概念信息.本體三元組和關(guān)系三元組類似,只是實(shí)體和本體的區(qū)別.本體的表示會(huì)給實(shí)體嵌入提供更多的類別約束.
給出實(shí)體和本體成員對(duì)集合B={(e,c)},本文采用非線性變換將實(shí)體嵌入空間與本體嵌入空間相關(guān)聯(lián),選擇的評(píng)分函數(shù)為fc(e,c),如公式(11)所示.實(shí)體和本體的空間映射損失函數(shù)如公式(12)所示.
(11)
(12)
式中,Wc∈Rdr×do、bc∈Rdo,B是實(shí)體和本體成員對(duì)集合,B′為經(jīng)過負(fù)采樣的實(shí)體和本體成員對(duì)集合,e、c為e、c所對(duì)應(yīng)的向量表示,αc為超參數(shù).
對(duì)于給定的種子詞集合M={(ei,ej)},ei∈KGi,ej∈KGj,訓(xùn)練出一個(gè)能夠橋接兩個(gè)不同知識(shí)圖譜的神經(jīng)網(wǎng)絡(luò).使得KGi中的實(shí)體通過映射關(guān)系得到KGj中相同的實(shí)體.選擇的評(píng)分函數(shù)為fm(ei,ej),如公式(13)所示.知識(shí)圖譜的空間映射損失函數(shù)如公式(14)所示.
(13)
(14)
式中,Wm∈Rdr×dr、bm∈Rdr,M是實(shí)體和本體成員對(duì)集合,M′為經(jīng)過負(fù)采樣的實(shí)體和本體成員對(duì)集合,ei、ej為ei、ej所對(duì)應(yīng)的向量表示,αm為超參數(shù).
將得到對(duì)齊的實(shí)體對(duì)加入到種子詞中,更新本體沖突矩陣,更新神經(jīng)網(wǎng)絡(luò)參數(shù).進(jìn)行下一次訓(xùn)練.
整合上述模塊,計(jì)算以下?lián)p失,使得在整個(gè)訓(xùn)練過程中損失降到最低.損失計(jì)算如公式(15)所示.
L=LO+LR+LA+λ1LD+λ2LV+λ3LC+λ4LM
(15)
式中,LO、LR、LA分別是本體嵌入損失、實(shí)體嵌入損失、屬性嵌入損失.LD、LV、LC、LM分別是本體類沖突構(gòu)建損失、屬性指導(dǎo)損失、本體指導(dǎo)損失、對(duì)齊損失.λ1、λ2、λ3、λ4是平衡嵌入模塊和指導(dǎo)模塊和對(duì)齊模塊的超參數(shù).
給定知識(shí)圖譜、本體和屬性KGi={Ei,Ri,Vi,Ai,Ti},KGj={Ej,Rj,Vj,Aj,Tj}、O={C,H},在進(jìn)行兩個(gè)知識(shí)圖譜中待對(duì)齊實(shí)體間的相似度計(jì)算,計(jì)算公式如公式(16)所示.
sim(ei,ej)=(1-β1-β2)cos(ei,ej)+β1cos(ci,cj)+β2cos(vi,vj)
(16)
式中,ei∈Ei,ej∈Ej,β1、β2∈[0,1],vi∈Vi,vj∈Vj,ci、cj∈C.若實(shí)體存在多種本體類型映射或者擁有多種屬性,則計(jì)算該實(shí)體所有的本體類型的平均值作為類的嵌入、計(jì)算該實(shí)體所有的屬性值的平均值作為屬性的嵌入.對(duì)于要對(duì)齊的KGi中的每個(gè)實(shí)體,根據(jù)相似度計(jì)算公式計(jì)算與KGj中所有的候選實(shí)體的相似性,并根據(jù)相似性得分進(jìn)行從高到低排名.
本文選擇了4個(gè)流行的數(shù)據(jù)集EN-FR-15K-V1/V2,D-W-15K-V1/V2[25]統(tǒng)計(jì)的信息如表所示.其中每個(gè)數(shù)據(jù)集中都包含兩個(gè)知識(shí)圖譜和一個(gè)本體,以及本體與實(shí)體之間的聯(lián)系.為了實(shí)現(xiàn)屬性個(gè)本體的共同指導(dǎo),本實(shí)驗(yàn)將兩個(gè)知識(shí)圖譜中的屬性三元組單獨(dú)提出來,融合到一起進(jìn)行訓(xùn)練.具體的知識(shí)圖譜的數(shù)據(jù)如表1所示.每個(gè)知識(shí)圖譜的本體信息如表2所示.
表1 數(shù)據(jù)集信息Table 1 Dataset information
表2 本體信息Table 2 Ontology information
本文對(duì)待對(duì)齊的實(shí)體對(duì)采用跨領(lǐng)域相似度的搜索算法來計(jì)算相似性并對(duì)候選項(xiàng)進(jìn)行排序.選擇實(shí)體對(duì)齊常用的評(píng)估指標(biāo):Hits@k,(k=1,5)簡(jiǎn)記H@k和搜索算法評(píng)價(jià)MRR(Mean Reciprocal Ranking).其計(jì)算公式如下所示:
(17)
(18)
式中,∏是indicator函數(shù),條件為真函數(shù)值為1,若為假則函數(shù)值為0.S是三元組集合;|S|是三元組集合元素的個(gè)數(shù);ranki是指第i個(gè)三元組的連接預(yù)測(cè)排名.
本文所有實(shí)驗(yàn)均通過深度學(xué)習(xí)框架 TensorFlow 實(shí)現(xiàn),實(shí)驗(yàn)中本體嵌入、實(shí)體嵌入和屬性嵌入的維度都是300,訓(xùn)練過程中采用 Adagrad 優(yōu)化器進(jìn)行參數(shù)優(yōu)化,學(xué)習(xí)率初始值為 0.01.實(shí)體屬性和關(guān)系三元組的batch_size為4500,本體三元組的模型的batch_size為64.具體參數(shù)設(shè)置如表3所示.實(shí)體屬性和關(guān)系三元組的batch_size為4500,本體三元組的模型的batch_size為64.αO、αr、αa、αv、αc、αm的取值都為0.01.
表3 模型參數(shù)表Table 3 Parameters
本文將JGEA模型與近年來常見的基于嵌入和基于圖神經(jīng)網(wǎng)絡(luò)的實(shí)體對(duì)齊模型進(jìn)行比較.在實(shí)驗(yàn)的過程中選擇是否具有實(shí)體表面信息(surface information,SI)進(jìn)行實(shí)驗(yàn).這里的SI表示實(shí)體名稱信息,因?yàn)槭褂肧I與否通常在實(shí)體對(duì)齊中被認(rèn)為是兩種不同的評(píng)估環(huán)境.實(shí)驗(yàn)結(jié)果如表4所示.w/o SI表示沒有實(shí)體表面信息,w/SI表示用到了實(shí)體表面信息.
表4 不同模型在數(shù)據(jù)集上的性能Table 4 Performance of different models on datasets
實(shí)驗(yàn)結(jié)果表明,JGEA模型整體優(yōu)于所有的基線模型.是因?yàn)樵趯?shí)體中融入了屬性的信息和本體的信息.對(duì)于加入了表面信息的對(duì)齊結(jié)果比沒有加入實(shí)體表面信息的對(duì)齊結(jié)果要好.JAPE是首次將屬性信息加入到實(shí)體對(duì)齊任務(wù)中,但是表示學(xué)習(xí)在實(shí)體對(duì)齊的任務(wù)中精度不高,所以該模型效果不佳.GCNAlign是首次將圖神經(jīng)網(wǎng)絡(luò)加入到實(shí)體對(duì)齊的任務(wù)中,在該任務(wù)中也加入了屬性的信息,但該模型沒有將GCN進(jìn)行拓展.OntoEA是首次將本體信息加入到實(shí)體對(duì)齊任務(wù)中,考慮了本體類別信息對(duì)實(shí)體嵌入得到影響.但該方法沒有充分利用已經(jīng)對(duì)齊的高質(zhì)量實(shí)體對(duì)的信息,對(duì)于實(shí)體有多種本體類型的對(duì)齊不太好.
為了驗(yàn)證本體指導(dǎo)和屬性指導(dǎo)對(duì)模型的有效性,將MLGEA模型在不使用本體和屬性、使用屬性不使用本體的情況下進(jìn)行對(duì)比,首先是無指導(dǎo)的實(shí)體對(duì)齊,去除了多層指導(dǎo),包括本體嵌入、屬性嵌入、屬性指導(dǎo)、本體指導(dǎo).接著進(jìn)行只有屬性指導(dǎo)的實(shí)驗(yàn).實(shí)驗(yàn)結(jié)果如表所示.如表5、表6所示,在沒有指導(dǎo)嵌入的情況下效果是最差的.在加入了屬性指導(dǎo)之后,有了更多的額外信息,模型效果有了明顯提升.在進(jìn)行了聯(lián)合指導(dǎo)之后模型在EN-FR-15K-V1數(shù)據(jù)集上的H@1值提升了5.4%,H@5值提升了4.9%,MRR值提升了5.1%.在EN-FR-15K-V2數(shù)據(jù)集上的H@1值提升了3.9%,H@5值提升了2.4%,MRR值提升了3.2%.
表5 EN-FR-15K-V1/V2消融實(shí)驗(yàn)Table 5 Ablation study of EN-FR-15K-V1
表6 D-W-15K-V1/V2消融實(shí)驗(yàn)Table 6 Ablation study of D-W-15K-V1/V2
在表6中可以看到,D-W-15K-V1數(shù)據(jù)集上的H@1值提升了9.8%,H@5值提升了8.5%,MRR值提升了9.2%.在D-W-15K-V2數(shù)據(jù)集上的H@1值提升了9.8%,H@5值提升了5.1%,MRR值提升了7.7%.
本文提出了一種聯(lián)合指導(dǎo)嵌入的實(shí)體對(duì)齊方法-JGEA,該模型在實(shí)體對(duì)齊的過程中加入本體和實(shí)體屬性信息,形成一種從下至上的聯(lián)合指導(dǎo)對(duì)齊方法,并且在空間映射的過程中將得到的高質(zhì)量實(shí)體對(duì)加入到種子詞當(dāng)中,提高本體類別間的沖突程度.并通過該方法解決了實(shí)體對(duì)齊中存在的同一個(gè)實(shí)體有著同類型不同屬性表示的問題和同屬性表示但不同類型的問題.后續(xù)將進(jìn)一步對(duì)模型進(jìn)行優(yōu)化,在保留高效的對(duì)齊方式之外提升對(duì)齊的速度;解決相似度評(píng)分之間權(quán)重的動(dòng)態(tài)分配問題.