本發(fā)明涉及知識(shí)圖譜表示技術(shù)領(lǐng)域,具體涉及一種知識(shí)圖譜表示模型及其方法。
背景技術(shù):
目前在世界范圍內(nèi)已有的知識(shí)圖譜表示方法主要集中在利用人工構(gòu)建的特征和基于rdf框架表示的特征。這些特征表示方法在進(jìn)行知識(shí)表示方面存在效率低下,算法復(fù)雜等問(wèn)題。近幾年來(lái),利用深度學(xué)習(xí)的方法提出了一系列的知識(shí)表示方法,但當(dāng)前的訓(xùn)練的知識(shí)表示方法多少存在一些模型復(fù)雜度較高,或者訓(xùn)練效率較低的問(wèn)題。
另外國(guó)內(nèi)外的知識(shí)圖譜表示方法代表性工作主要包括transe(基于翻譯的嵌入式模型)[1],transh(基于超平面的嵌入式模型)[2],transr(基于實(shí)體關(guān)系空間的嵌入式模型)[3],ctransr(基于聚類和實(shí)體關(guān)系空間的嵌入式模型)[3]和transd(基于動(dòng)態(tài)映射矩陣的嵌入式模型)[4]等方法.上述方法被統(tǒng)稱為基于翻譯的知識(shí)表示模型?;诜g的模型認(rèn)為,對(duì)每個(gè)三元組(h,r,t),其中的關(guān)系r是從頭實(shí)體向量h到尾實(shí)體向量t的一個(gè)翻譯操作,據(jù)此,bordes等人率先提出了transe(基于翻譯的嵌入式模型)知識(shí)表示方法,transe(基于翻譯的嵌入式模型)通過(guò)歐氏距離上的偏移量來(lái)衡量計(jì)算實(shí)體之間的語(yǔ)義相似度,是一種簡(jiǎn)單基本的知識(shí)表示方法.它的優(yōu)化目標(biāo)是盡量使得h+r=t,因此相應(yīng)模型學(xué)習(xí)的得分函數(shù)是fr(h,t)=||h+r-t||2,其中||h+r-t||2是h+r-t的2階范數(shù),即歐氏距離。transh(基于超平面的嵌入式模型)方法建立了一個(gè)面向關(guān)系的超平面,它由一個(gè)法向量nr和翻譯向量r表示,頭實(shí)體向量h和尾實(shí)體向量t首先被投影到關(guān)系的超平面,得到向量h⊥=h-nrthnr和t⊥=t-nrthnr.因而,transh(基于超平面的嵌入式模型)的優(yōu)化目標(biāo)變?yōu)閔⊥+r=t⊥,相應(yīng)的其得分函數(shù)修改為fr(h,t)=||h⊥+r-t⊥||2。transr(基于實(shí)體關(guān)系空間的嵌入式模型)和ctransr(基于聚類和實(shí)體關(guān)系空間的嵌入式模型)希望通過(guò)建立一個(gè)映像矩陣mr和一個(gè)向量r來(lái)表示每一個(gè)關(guān)系r,具體地,transr(基于實(shí)體關(guān)系空間的嵌入式模型)將頭實(shí)體向量h和尾實(shí)體向量t通過(guò)矩陣映射到關(guān)系向量r的層次上,得到mrh+r=mrt,也即transr(基于實(shí)體關(guān)系空間的嵌入式模型)的優(yōu)化目標(biāo),transd(基于動(dòng)態(tài)映射矩陣的嵌入式模型)以向量操作取代了transr(基于實(shí)體關(guān)系空間的嵌入式模型)中的矩陣與向量的乘法操作,提高了算法效率。
在實(shí)際應(yīng)用中,transe(基于翻譯的嵌入式模型)[1]取得了較好的預(yù)測(cè)效果。在transe(基于翻譯的嵌入式模型)中,針對(duì)每個(gè)三元組(h,r,t),頭實(shí)體向量h、尾實(shí)體向量t和關(guān)系r被表示為n維向量h(t)和r。嵌入向量t近似等于嵌入的h加上嵌入的r,即h+r≈t,transe(基于翻譯的嵌入式模型)能很好的處理一對(duì)一關(guān)系,但是在處理如一對(duì)n,n對(duì)一和n對(duì)n的復(fù)雜關(guān)系時(shí)有一個(gè)明顯的缺點(diǎn),具體來(lái)說(shuō),在處理復(fù)雜關(guān)系的過(guò)程中,會(huì)導(dǎo)致不同實(shí)體使用相同的向量,這是不符合實(shí)際情況的。transh(基于超平面的嵌入式模型)[2]通過(guò)將頭實(shí)體向量h和尾實(shí)體向量t映射到關(guān)系特異性超平面的超平面映射規(guī)則解決了復(fù)雜關(guān)系的問(wèn)題。但是實(shí)體和關(guān)系是兩種完全不同的概念,因此把它們放在同一向量空間是不正確的。transr(基于實(shí)體關(guān)系空間的嵌入式模型)/ctransr(基于聚類和實(shí)體關(guān)系空間的嵌入式模型)[3]和transd(基于動(dòng)態(tài)映射矩陣的嵌入式模型)[4]提出了把實(shí)體和關(guān)系放在不同向量空間的兩種新穎的模型,例如:實(shí)體空間和多重關(guān)系空間,transr(基于實(shí)體關(guān)系空間的嵌入式模型)對(duì)每個(gè)關(guān)系r設(shè)定了一個(gè)映射矩陣mr,然后用mr將實(shí)體映射到關(guān)系空間中。在關(guān)系空間中,用mr映射后的實(shí)體向量和關(guān)系向量r可以構(gòu)造一個(gè)黃金三元組,這個(gè)三元組被描述為mrh+r≈mrt。作為對(duì)transr(基于實(shí)體關(guān)系空間的嵌入式模型)的擴(kuò)展,ctransr(基于聚類和實(shí)體關(guān)系空間的嵌入式模型)使用簇算法對(duì)transe(基于翻譯的嵌入式模型)的初始結(jié)果進(jìn)行了分割,將每個(gè)關(guān)系r分為幾個(gè)子關(guān)系rs。在某種程度上,使用rs替換r解決了每個(gè)關(guān)系的多義性問(wèn)題。transd(基于動(dòng)態(tài)映射矩陣的嵌入式模型)使用兩個(gè)向量ep和hp為每個(gè)實(shí)體-關(guān)系對(duì)構(gòu)造了動(dòng)態(tài)的映射矩陣。但transr(基于實(shí)體關(guān)系空間的嵌入式模型)/ctransr(基于聚類和實(shí)體關(guān)系空間的嵌入式模型)的算法復(fù)雜度較高,沒(méi)法在實(shí)際中應(yīng)用。
【1】bordesa,usuniern,garcia-durana,etal.translatingembeddingsformodelingmulti-relationaldata[c]//procofnips.cambridge,ma:mitpress,2013:2787–2795
【2】wangzhen,zhangjianwen,fengjianlin,etal.knowledgegraphembeddingbytranslatingonhyperplanes[c]//procofaaai.menlopark,ca:aaai,2014:1112–1119
【3】linyankai,liuzhiyuan,sunmaosong,etal.learningentityandrelationembeddingsforknowledgegraphcompletion[c]//procofaaai.menlopark,ca:aaai,2015
【4】jiguoliang,heshizhu,xuliheng,etal.knowledgegraphembeddingviadynamicmappingmatrix[c]//procofacl.stroudsburgpa:acl,2045:687–696
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提出能夠提高知識(shí)圖譜的表示能力的一種知識(shí)圖譜表示模型及其方法,其對(duì)知識(shí)圖譜的補(bǔ)全和校驗(yàn)也有及其重要的作用。
為了實(shí)現(xiàn)本發(fā)明的目的,本發(fā)明的第一技術(shù)方案具體如下:
一種知識(shí)譜圖表示模型,所述表示模型包括實(shí)體空間模塊、優(yōu)化函數(shù)模塊、以及模型訓(xùn)練模塊;
所述實(shí)體空間模塊用于表示實(shí)體特征的表示空間,其包括本征態(tài)空間和擬態(tài)空間;
所述優(yōu)化函數(shù)模塊用于表示不同實(shí)體在翻譯之后的距離,其包括距離計(jì)算和權(quán)重向量;
所述模型訓(xùn)練模塊用于特征訓(xùn)練并輸出訓(xùn)練結(jié)果,所述訓(xùn)練結(jié)果用于進(jìn)行知識(shí)圖譜預(yù)測(cè)和分類。
本發(fā)明的第二技術(shù)方案具體如下:
一種構(gòu)建所述知識(shí)譜圖表示模型的方法,所述方法包括以下步驟:
1)實(shí)體空間構(gòu)建過(guò)程,其采用兩個(gè)向量來(lái)表示實(shí)體和關(guān)系,所述兩個(gè)向量包括本征態(tài)向量和擬態(tài)向量,所述本征態(tài)向量用于描述實(shí)體關(guān)系本征態(tài),所述擬態(tài)向量用于描述實(shí)體關(guān)系擬態(tài),所述擬態(tài)向量構(gòu)成擬態(tài)矩陣,擬態(tài)向量和本征態(tài)向量共同構(gòu)成實(shí)體空間的特征向量;
2)優(yōu)化函數(shù)過(guò)程,其包括計(jì)算頭實(shí)體翻譯后與尾實(shí)體的距離公式,采用權(quán)重向量表示不同維度的權(quán)重,以達(dá)到優(yōu)化距離計(jì)算公式的目的;
3)模型訓(xùn)練過(guò)程,其包括權(quán)重向量的動(dòng)態(tài)訓(xùn)練以及防止過(guò)擬合參數(shù)的設(shè)置。
本發(fā)明的第三技術(shù)方案具體如下:
如前面所述的知識(shí)譜圖表示模型的實(shí)施方法,其還包括數(shù)據(jù)采集模塊、預(yù)處理模塊、特征抽取模塊、訓(xùn)練模塊、知識(shí)圖譜補(bǔ)全模塊以及分類模塊,所述實(shí)施方法具體包括以下步驟:
1)利用數(shù)據(jù)采集模塊抽取現(xiàn)有知識(shí)圖譜中的數(shù)據(jù),利用分布式爬蟲(chóng)系統(tǒng)對(duì)互聯(lián)網(wǎng)中存在的知識(shí)進(jìn)行分布式的采集,并將其存儲(chǔ)在分布式的圖數(shù)據(jù)庫(kù)中;
2)利用預(yù)處理模塊對(duì)抽取的數(shù)據(jù)進(jìn)行結(jié)構(gòu)化處理,所述預(yù)處理模塊對(duì)采集到的數(shù)據(jù)進(jìn)行過(guò)濾,主要分為實(shí)體關(guān)系去重、過(guò)濾掉不符合描述規(guī)范實(shí)體關(guān)系以及過(guò)濾存在非法字符的實(shí)體關(guān)系三部分;
3)利用特征抽取模塊對(duì)結(jié)構(gòu)化處理后的數(shù)據(jù)進(jìn)行特征抽取,抽取知識(shí)圖譜中包含的實(shí)體、關(guān)系、屬性,并將其用三元組的形式進(jìn)行描述,并利用所述訓(xùn)練模塊對(duì)抽取的特征進(jìn)行訓(xùn)練;
4)利用訓(xùn)練好的結(jié)果通過(guò)所述知識(shí)圖譜補(bǔ)全模塊以及分類模塊進(jìn)行知識(shí)圖譜預(yù)測(cè)和分類,所述知識(shí)圖譜補(bǔ)全模塊以及分類模塊對(duì)訓(xùn)練好的表示模型進(jìn)行測(cè)試以驗(yàn)證模型的有效性,實(shí)現(xiàn)對(duì)知識(shí)圖譜中缺失的實(shí)體或者關(guān)系進(jìn)行推薦、以及對(duì)現(xiàn)有的三元組進(jìn)行正確與否的判斷。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:
1、本發(fā)明基于動(dòng)態(tài)表示空間的翻譯模型,對(duì)每一個(gè)關(guān)系設(shè)置一個(gè)動(dòng)態(tài)的表示空間,解決現(xiàn)有技術(shù)中表示模型無(wú)法區(qū)分不同關(guān)系空間的問(wèn)題,提供了更為全面可靠的表示方法,并降低了模型的復(fù)雜度提高算法的效率,在實(shí)際應(yīng)用中取得了較好的效果。
2、本發(fā)明提出了一個(gè)新穎的transdr模型(基于動(dòng)態(tài)關(guān)系空間的嵌入式模型),其為每個(gè)關(guān)系構(gòu)建了一個(gè)動(dòng)態(tài)的關(guān)系空間,對(duì)于每個(gè)關(guān)系向量空間它都提供了一個(gè)自適應(yīng)關(guān)系權(quán)重;transdr(基于動(dòng)態(tài)關(guān)系空間的嵌入式模型)可以減少來(lái)自其他關(guān)系的噪聲,提高不同關(guān)系之間的區(qū)分度。
附圖說(shuō)明
圖1是本發(fā)明中的知識(shí)譜圖表示模型的實(shí)施方法組成結(jié)構(gòu)示意圖。
圖2是本發(fā)明中transdr模型的基本思想闡述圖。
圖3是本發(fā)明中知識(shí)圖譜表示模型的實(shí)體空間構(gòu)建流程圖。
圖4是本發(fā)明中知識(shí)圖譜表示模型的優(yōu)化函數(shù)構(gòu)建流程圖。
圖5是本發(fā)明中知識(shí)圖譜表示模型訓(xùn)練流程圖。
圖6是本發(fā)明中知識(shí)圖譜表示模型工作流程圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步詳細(xì)說(shuō)明。
本具體實(shí)施方式為一種知識(shí)圖譜表示模型及其方法,如圖1所示,本發(fā)明知識(shí)圖譜表示模型包括數(shù)據(jù)采集模塊,預(yù)處理模塊,特征抽取模塊,知識(shí)圖譜補(bǔ)全模塊以及分類模塊。
所述數(shù)據(jù)采集模塊利用分布式爬蟲(chóng)系統(tǒng)對(duì)互聯(lián)網(wǎng)中存在的知識(shí)進(jìn)行分布式的采集,并將其存儲(chǔ)在分布式的圖數(shù)據(jù)庫(kù)中;所述預(yù)處理模塊對(duì)采集到的數(shù)據(jù)進(jìn)行過(guò)濾,主要分為實(shí)體關(guān)系去重、過(guò)濾掉不符合描述規(guī)范實(shí)體關(guān)系以及過(guò)濾存在非法字符的實(shí)體關(guān)系三部分;所述特征抽取模塊是對(duì)抽取出來(lái)的實(shí)體通過(guò)知識(shí)圖譜表示模型進(jìn)行訓(xùn)練;所述知識(shí)圖譜補(bǔ)全模塊以及分類模塊對(duì)訓(xùn)練好的表示模型進(jìn)行測(cè)試,已驗(yàn)證模型的有效性。
所述訓(xùn)練模塊為知識(shí)圖譜表示模型,其建立過(guò)程的具體如下:
定義g是三元組(h,r,t),其中h表示頭實(shí)體,r表示關(guān)系,t表示尾實(shí)體,粗體字h,r,t為(h,r,t)的嵌入表示。
h=(h1,h2,...,hi,...,hn);
r=(r1,r2,...,ri,...,rn);
t=(t1,t2,...,ti,...,tn);
hi,ri,ti分別是h,r,t的第i個(gè)特征,n是特征的長(zhǎng)度,δ表示正確的三元組集合,δ'表示不正確的三元組集合,因此(h,r,t)∈δ表示三元組是正確的,(h',r',t')∈δ'表示三元組是不正確的;wr表示關(guān)系權(quán)重的嵌入表示,wr=(wr1,wr2,...,wri,...,wrn);
本發(fā)明知識(shí)圖譜表示模型的構(gòu)建具體包括實(shí)體空間構(gòu)建、優(yōu)化函數(shù)、模型訓(xùn)練。
實(shí)體空間構(gòu)建
由于知識(shí)圖譜的潛在特征在不同的維度的分布是不均勻的,因此不能為每個(gè)維度設(shè)置相等的權(quán)重。于是本發(fā)明提出一個(gè)更靈活的模型,即transdr(基于動(dòng)態(tài)關(guān)系空間的嵌入式模型),其考慮了不同類型的關(guān)系空間以避免不同維度的不均勻分布。如圖2所示,transdr(基于動(dòng)態(tài)關(guān)系空間的嵌入式模型)為每個(gè)實(shí)體h(t)定義兩個(gè)向量,為每個(gè)關(guān)系r定義三個(gè)向量,h(t)的第一個(gè)向量和r的第一個(gè)向量表示自然特征,h(t)的第二個(gè)向量和r的第二個(gè)向量表示用于構(gòu)造映射矩陣的外部特征,r的第三個(gè)向量表示每個(gè)維度上的關(guān)系空間權(quán)重。實(shí)體在實(shí)體空間中是隨機(jī)無(wú)序的,但在被翻譯到關(guān)系空間中后,實(shí)體就變成了有序的。雖然
本發(fā)明使用兩個(gè)向量來(lái)表示實(shí)體和關(guān)系,第一個(gè)向量描述實(shí)體關(guān)系的本征態(tài),另一個(gè)向量描述實(shí)體關(guān)系的擬態(tài),使用六個(gè)向量he,hm,re,rm,te,tm表示一個(gè)三元組(h,r,t),其中下標(biāo)e和m表示本征態(tài)和擬態(tài),實(shí)體的真實(shí)態(tài)是由擬態(tài)和本征態(tài)共同組成的。
其中,he,hm,re,rm,te,tm∈gm。
rm表示m維度的實(shí)體關(guān)系空間,對(duì)于每個(gè)三元組(h,r,t),本發(fā)明定義兩個(gè)擬態(tài)矩陣mh、mt分別表示頭實(shí)體和尾實(shí)體擬態(tài)空間,對(duì)mh、mt的定義如下:
mh=rmhmt(1)
mt=rmtmt(2)
對(duì)稱的擬態(tài)矩陣由實(shí)體和關(guān)系的擬態(tài)向量構(gòu)造,因此對(duì)于每個(gè)三元組(h,r,t),h和t都具有唯一的擬態(tài)矩陣。
事實(shí)上,實(shí)體的真實(shí)狀態(tài)是由擬態(tài)和本征態(tài)共同構(gòu)成的,因此本發(fā)明定義真實(shí)的向量如下:
h=mhhe+he(3)
t=mtte+te(4)
實(shí)體空間模型構(gòu)建流程具體如圖3所示。
優(yōu)化函數(shù)
對(duì)于一個(gè)黃金三元組來(lái)說(shuō),得分函數(shù)fr(h,t)應(yīng)該是較低的,對(duì)于一個(gè)不正確的黃金三元組來(lái)說(shuō)應(yīng)該會(huì)較高,以l2范數(shù)為例,傳統(tǒng)的得分函數(shù)為:
傳統(tǒng)的得分函數(shù)計(jì)算了h+r和t之間的歐幾里得距離(ed),歐幾里得距離考慮了每個(gè)特征維度的均勻分布,但其無(wú)法區(qū)分不同關(guān)系空間的趨勢(shì),為了解決這個(gè)問(wèn)題,本發(fā)明使用標(biāo)準(zhǔn)化的歐幾里德距離(sed)替代ed。
其中,sed的函數(shù)為:
其中x和x*分別表示正態(tài)化之前和正態(tài)化之后的特征向量,μ和σ分別為期望和標(biāo)準(zhǔn)偏差向量。sed可以通過(guò)正態(tài)化消除特征的不均勻分布,因此h+r和t之間的距離為:
其中,σi是σ的第i個(gè)維度特征,取wr=1/σ2,本發(fā)明提出一個(gè)新的得分函數(shù):
優(yōu)化函數(shù)構(gòu)建流程具體如圖4所示。
模型訓(xùn)練
為了獲得黃金三元組和不正確的三元組之間的區(qū)分,本發(fā)明定義以下基于邊際的排名損失函數(shù):
其中,
本發(fā)明使用隨機(jī)采樣和伯努利采樣兩種策略來(lái)構(gòu)建負(fù)三元組集合。
在最小化損失l時(shí)考慮以下約束:
||h||≤1,||t||≤1
||wr||=1(7)
其中方程(7)確保了關(guān)系權(quán)重向量wr是常數(shù),通過(guò)軟約束的方式將其轉(zhuǎn)換為以下的無(wú)約束損失函數(shù):
其中,λ和η是兩個(gè)對(duì)軟約束重要性加權(quán)的超參數(shù)。
利用改進(jìn)的隨機(jī)梯度下降法(adadelta)來(lái)訓(xùn)練損失函數(shù),在式(8)中缺少約束式(5)和式(6),相反,在訪問(wèn)每個(gè)小批量之前就直接滿足了約束式(5)和式(6);為了加速收斂,使用transe的結(jié)果來(lái)替換he,te,re的隨機(jī)初始值,模型訓(xùn)練的流程具體如圖5所示。
其中,本發(fā)明知識(shí)圖譜表示模型工作流程如圖6所示,本發(fā)明知識(shí)圖譜表示模型的實(shí)施方法包括如下步驟:
1)利用數(shù)據(jù)采集模塊抽取現(xiàn)有知識(shí)圖譜中的數(shù)據(jù),利用分布式爬蟲(chóng)系統(tǒng)對(duì)互聯(lián)網(wǎng)中存在的知識(shí)進(jìn)行分布式的采集,并將其存儲(chǔ)在分布式的圖數(shù)據(jù)庫(kù)中;
2)利用預(yù)處理模塊對(duì)抽取的數(shù)據(jù)進(jìn)行結(jié)構(gòu)化處理,所述預(yù)處理模塊對(duì)采集到的數(shù)據(jù)進(jìn)行過(guò)濾,主要分為實(shí)體關(guān)系去重、過(guò)濾掉不符合描述規(guī)范實(shí)體關(guān)系以及過(guò)濾存在非法字符的實(shí)體關(guān)系三部分;
3)利用特征抽取模塊對(duì)結(jié)構(gòu)化處理后的數(shù)據(jù)進(jìn)行特征抽取,抽取知識(shí)圖譜中包含的實(shí)體、關(guān)系、屬性,并將其用三元組的形式進(jìn)行描述,并利用所述知識(shí)圖譜表示模型對(duì)抽取的特征進(jìn)行訓(xùn)練;
4)利用訓(xùn)練好的結(jié)果通過(guò)所述知識(shí)圖譜補(bǔ)全模塊以及分類模塊進(jìn)行知識(shí)圖譜預(yù)測(cè)和分類,所述知識(shí)圖譜補(bǔ)全模塊以及分類模塊對(duì)訓(xùn)練好的表示模型進(jìn)行測(cè)試以驗(yàn)證模型的有效性,實(shí)現(xiàn)對(duì)知識(shí)圖譜中缺失的實(shí)體或者關(guān)系進(jìn)行推薦、以及對(duì)現(xiàn)有的三元組進(jìn)行正確與否的判斷。
以上實(shí)施例僅起到解釋本發(fā)明技術(shù)方案的作用,本發(fā)明所要求的保護(hù)范圍并不局限于上述實(shí)施例所述的實(shí)現(xiàn)系統(tǒng)和具體實(shí)施步驟。因此,僅對(duì)上述實(shí)施例中具體的公式及算法進(jìn)行簡(jiǎn)單替換,但其實(shí)質(zhì)內(nèi)容仍與本發(fā)明所述方法相一致的技術(shù)方案,均應(yīng)屬于本發(fā)明的保護(hù)范圍。