本發(fā)明屬于知識(shí)圖譜和數(shù)據(jù)庫(kù)領(lǐng)域,具體涉及一種基于關(guān)聯(lián)發(fā)現(xiàn)的知識(shí)圖譜horn規(guī)則挖掘方法。
背景技術(shù):
近年來(lái),隨著大規(guī)模知識(shí)圖譜如yago、freebase、wikidata等的不斷出現(xiàn),基于知識(shí)圖譜的應(yīng)用場(chǎng)景也隨之逐步擴(kuò)增到各個(gè)領(lǐng)域中,包括智能問(wèn)答、語(yǔ)義搜索等,它可以提供更加直接的回答服務(wù),搜索引擎也可以利用知識(shí)圖譜精準(zhǔn)地返回用戶搜索的答案等。
然而,知識(shí)圖譜并不完整,需要對(duì)知識(shí)圖譜進(jìn)行挖掘和補(bǔ)充,基于知識(shí)圖譜的規(guī)則挖掘越來(lái)越得到人們的重視,一方面自動(dòng)規(guī)則學(xué)習(xí)能夠幫助刻畫和推理圖譜中的語(yǔ)義關(guān)系,同時(shí)也可以通過(guò)規(guī)則豐富知識(shí)圖譜。安全、封閉的horn規(guī)則具有較強(qiáng)的表達(dá)能力,可以反映知識(shí)圖譜大多數(shù)語(yǔ)義信息,同時(shí)其規(guī)則體和規(guī)則頭具有良好的定義標(biāo)準(zhǔn),因此可以兼顧表達(dá)能力和規(guī)則復(fù)雜性兩方面要求。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明提供了一種基于關(guān)聯(lián)發(fā)現(xiàn)的知識(shí)圖譜horn規(guī)則挖掘方法。相比其他方法,本發(fā)明實(shí)現(xiàn)了知識(shí)圖譜horn規(guī)則的自動(dòng)學(xué)習(xí),而且可以提供靈活的配置參數(shù)以適應(yīng)各種不同類型知識(shí)圖譜。
一種基于關(guān)聯(lián)發(fā)現(xiàn)的知識(shí)圖譜horn規(guī)則挖掘方法,包括以下步驟:
(1)輸入一個(gè)三元組格式的知識(shí)圖譜,初始化horn規(guī)則配置參數(shù);
(2)從知識(shí)圖譜中選擇n個(gè)需要進(jìn)行挖掘的關(guān)系,并將n個(gè)不含規(guī)則體的空horn規(guī)則放入目標(biāo)規(guī)則集合中,此處,每個(gè)空horn規(guī)則包含一種挖掘關(guān)系;
(3)在目標(biāo)規(guī)則集合中取一個(gè)空horn規(guī)則,從知識(shí)圖譜中抽取所有的具有推導(dǎo)出空horn規(guī)則所對(duì)應(yīng)的挖掘關(guān)系可能性的規(guī)則體,將滿足條件的由規(guī)則體與空horn規(guī)則組成的horn規(guī)則輸出至挖掘結(jié)果集合中;
(4)判斷目標(biāo)規(guī)則的集合中的空horn規(guī)則的個(gè)數(shù)是否為0,若是,結(jié)束horn規(guī)則的挖掘,若否,執(zhí)行步驟(3)。
所述步驟(1)中,所述的horn規(guī)則配置參數(shù)是多維度的,包括:規(guī)則長(zhǎng)度、規(guī)則置信度以及規(guī)則覆蓋度。更具體地說(shuō)是包括:最小規(guī)則覆蓋度、最大規(guī)則長(zhǎng)度以及最小規(guī)則置信度。horn規(guī)則的配置參數(shù)可以靈活地定義挖掘規(guī)則的各個(gè)條件,并將horn規(guī)則應(yīng)用到多種可能的場(chǎng)景中去。
所述的規(guī)則長(zhǎng)度指的是每個(gè)空horn規(guī)則中,能夠添加的規(guī)則體的最大個(gè)數(shù);每個(gè)規(guī)則體就是一個(gè)三元組。
所述的規(guī)則覆蓋度通過(guò)公式(1)計(jì)算得到:
其中,hc(b=>r(x,y))表示規(guī)則覆蓋度,b=>r(x,y)表示horn規(guī)則,b表示規(guī)則體,r(x,y)表示由主語(yǔ)x、賓語(yǔ)y以及關(guān)系r組成規(guī)則頭,size(r)表示horn規(guī)則b=>r(x,y)的規(guī)則頭r(x,y)對(duì)應(yīng)關(guān)系的所有事實(shí)個(gè)數(shù),且size(r)=#(x′,y′):r(x′,y′);sup(b=>r(x,y))為規(guī)則支持度,通過(guò)公式(2)計(jì)算得到:
其中,z1,…,zm表示自由變?cè)?,m表示自由變?cè)膫€(gè)數(shù),規(guī)則支持度sup表示horn規(guī)則b=>r(x,y)在知識(shí)圖譜中命中三元組事實(shí)的個(gè)數(shù),注意這里只考慮規(guī)則頭主語(yǔ)和賓語(yǔ)所對(duì)應(yīng)的事實(shí)個(gè)數(shù)。
公式(1)考慮了知識(shí)圖譜中關(guān)系的長(zhǎng)尾可能,有效地解決了某些關(guān)系實(shí)例出現(xiàn)較少的情況。
所述的規(guī)則置信度通過(guò)公式(3)計(jì)算得到:
其中,conf(b=>r(x,y))表示規(guī)則置信度,規(guī)則置信度表示規(guī)則的可信程度(模糊度),是知識(shí)圖譜中命中三元組正確事實(shí)的個(gè)數(shù)與總命中個(gè)數(shù)的比值;y′表示通過(guò)部分完整假設(shè)(partialcompletenessassumption,pca)假設(shè)所計(jì)算得到的規(guī)則頭所有可能的賓語(yǔ)。
本發(fā)明的規(guī)則置信度的計(jì)算不同于傳統(tǒng)封閉世界假設(shè)的計(jì)算方法,公式(3)考慮了知識(shí)圖譜的自身特點(diǎn),提出了一種基于部分完整假設(shè)的計(jì)算方法,這可以有效地進(jìn)行非封閉世界負(fù)樣本的判斷方法,提高規(guī)則的質(zhì)量。
步驟(2)中,每一個(gè)需要進(jìn)行挖掘的關(guān)系實(shí)際上是一個(gè)規(guī)則頭,是通過(guò)規(guī)則體推出的規(guī)則頭,每個(gè)不含規(guī)則體的空horn規(guī)則中都包含一種規(guī)則頭。
步驟(3)執(zhí)行的過(guò)程實(shí)際是將挖掘得到的能夠推出一個(gè)規(guī)則頭的所有規(guī)則體分別與該規(guī)則頭組成的horn規(guī)則輸出。
步驟(3)的具體過(guò)程為:
(3-1)在目標(biāo)規(guī)則集合中取一個(gè)空horn規(guī)則;
(3-2)并從知識(shí)圖譜中抽取一個(gè)規(guī)則長(zhǎng)度小于horn規(guī)則配置參數(shù)中最大規(guī)則長(zhǎng)度的規(guī)則體添加至該空horn規(guī)則中,形成當(dāng)前horn規(guī)則;
(3-3)判斷當(dāng)前horn規(guī)則是否為封閉的,若是,執(zhí)行步驟(3-4),若否,將當(dāng)前horn規(guī)則剪枝過(guò)濾掉,并返回false;
(3-4)判斷當(dāng)前horn規(guī)則的置信度是否大于horn規(guī)則配置參數(shù)中的最小規(guī)則置信度,若是,執(zhí)行步驟(3-5),若否,將當(dāng)前horn規(guī)則剪枝過(guò)濾掉,返回false;
(3-5)判斷當(dāng)前horn規(guī)則的所有父規(guī)則的置信度是否都小于當(dāng)前horn規(guī)則的置信度,若是,執(zhí)行步驟(3-6),若否,將當(dāng)前horn規(guī)則剪枝過(guò)濾掉,返回false;
(3-6)輸出當(dāng)前horn規(guī)則至挖掘結(jié)果集合中;
(3-7)判斷知識(shí)圖譜中是否具有推導(dǎo)出空horn規(guī)則所對(duì)應(yīng)的挖掘關(guān)系可能性的規(guī)則體,若是,跳轉(zhuǎn)執(zhí)行步驟(3-2),若否,結(jié)束本步驟。
步驟(3-2)中,所述的規(guī)則體包括:包含新變量的規(guī)則體、不含新變量的封閉規(guī)則體、變量實(shí)例化的規(guī)則體。
所述包含新變量的規(guī)則體:規(guī)則體中包含了一個(gè)不在原規(guī)則中出現(xiàn)的新變量,例如:
原規(guī)則:
新規(guī)則:
b(z,y)就表示新變量的規(guī)則體。
所述不含新變量的封閉規(guī)則體:規(guī)則體中包含了一個(gè)使得原規(guī)則變得封閉的變量,例如:
原規(guī)則:
新規(guī)則:
b(z,y)就表示不含新變量的規(guī)則體;
所述變量實(shí)例化的規(guī)則體:規(guī)則體中包含了一個(gè)實(shí)例化的實(shí)體和一個(gè)共享變量,例如
原規(guī)則:
新規(guī)則:
b(x,a)就表示不含新變量的規(guī)則體,a是一個(gè)實(shí)例化的實(shí)體。
步驟(3-5)中,父規(guī)則理解為:
規(guī)則1:
規(guī)則2:
稱規(guī)則2是規(guī)則1的父規(guī)則。當(dāng)提取到規(guī)則1的時(shí)候,要求規(guī)則1的置信度比它所有父規(guī)則的置信度都大,如果不滿足這個(gè)條件,規(guī)則1將會(huì)被舍棄。這是因?yàn)?,如果子?guī)則的復(fù)雜度比父規(guī)更大,如果子規(guī)則相對(duì)于父規(guī)則不能帶來(lái)置信度的提升,那么子規(guī)則將會(huì)沒(méi)有意義。
傳統(tǒng)的規(guī)則挖掘算法面對(duì)非封閉世界假設(shè)的知識(shí)圖譜具有重大缺陷,而本發(fā)明提出了新穎的面向知識(shí)圖譜規(guī)則發(fā)現(xiàn)計(jì)算標(biāo)準(zhǔn)和方法,可以自動(dòng)的挖掘知識(shí)圖譜中的horn規(guī)則。具體的優(yōu)勢(shì)體現(xiàn)如下:
(1)本發(fā)明提出了更加有效的判斷知識(shí)圖譜中規(guī)則有效性的度量方法,從而幫助提取更加具有語(yǔ)義表達(dá)意義的規(guī)則集合。
(2)本發(fā)明設(shè)計(jì)了規(guī)則體增加的多種方法和流程,可以覆蓋所有可能的規(guī)則集合,同時(shí)通過(guò)設(shè)定相應(yīng)的剪枝條件,使得規(guī)則挖掘的性能大大提高。
附圖說(shuō)明
圖1是本發(fā)明基于關(guān)聯(lián)發(fā)現(xiàn)的知識(shí)圖譜horn規(guī)則挖掘方法的流程圖。
具體實(shí)施方式
為了更為具體地描述本發(fā)明,下面結(jié)合附圖及具體實(shí)施方式對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說(shuō)明。
參見(jiàn)圖1,本發(fā)明基于關(guān)聯(lián)發(fā)現(xiàn)的知識(shí)圖譜horn規(guī)則挖掘方法,包括以下步驟:
s01,輸入一個(gè)三元組格式的知識(shí)圖譜,初始化horn規(guī)則配置參數(shù)。
horn規(guī)則配置參數(shù)為規(guī)則長(zhǎng)度、規(guī)則置信度以及規(guī)則覆蓋度,此初始化地是最小規(guī)則覆蓋度、最大規(guī)則長(zhǎng)度以及最小規(guī)則置信度,這些參數(shù)可以靈活地定義挖掘規(guī)則的各個(gè)條件,并將horn規(guī)則應(yīng)用到多種可能的場(chǎng)景中去。
規(guī)則長(zhǎng)度指的是每個(gè)空horn規(guī)則中,能夠添加的規(guī)則體的最大個(gè)數(shù);每個(gè)規(guī)則體就是一個(gè)三元組。
規(guī)則覆蓋度通過(guò)公式(1)計(jì)算得到:
其中,hc(b=>r(x,y))表示規(guī)則覆蓋度,b=>r(x,y)表示horn規(guī)則,b表示規(guī)則體,r(x,y)表示由主語(yǔ)x、賓語(yǔ)y以及關(guān)系r組成規(guī)則頭,size(r)表示horn規(guī)則b=>r(x,y)的規(guī)則頭r(x,y)對(duì)應(yīng)關(guān)系的所有事實(shí)個(gè)數(shù),且size(r)=#(x′,y′):r(x′,y′);sup(b=>r(x,y))為規(guī)則支持度,通過(guò)公式(2)計(jì)算得到:
其中,z1,…,zm表示自由變?cè)琺表示自由變?cè)膫€(gè)數(shù),規(guī)則支持度sup表示horn規(guī)則b=>r(x,y)在知識(shí)圖譜中命中三元組事實(shí)的個(gè)數(shù),注意這里只考慮規(guī)則頭主語(yǔ)和賓語(yǔ)所對(duì)應(yīng)的事實(shí)個(gè)數(shù)。
公式(1)考慮了知識(shí)圖譜中關(guān)系的長(zhǎng)尾可能,有效地解決了某些關(guān)系實(shí)例出現(xiàn)較少的情況。
規(guī)則置信度通過(guò)公式(3)計(jì)算得到:
其中,conf(b=>r(x,y))表示規(guī)則置信度,規(guī)則置信度表示規(guī)則的可信程度(模糊度),是知識(shí)圖譜中命中三元組正確事實(shí)的個(gè)數(shù)與總命中個(gè)數(shù)的比值;y′表示通過(guò)部分完整假設(shè)(partialcompletenessassumption,pca)假設(shè)所計(jì)算得到的規(guī)則頭所有可能的賓語(yǔ)。
規(guī)則置信度的計(jì)算不同于傳統(tǒng)封閉世界假設(shè)的計(jì)算方法,公式(3)考慮了知識(shí)圖譜的自身特點(diǎn),提出了一種基于部分完整假設(shè)的計(jì)算方法,這可以有效地進(jìn)行非封閉世界負(fù)樣本的判斷方法,提高規(guī)則的質(zhì)量。
s02,從知識(shí)圖譜中選擇n個(gè)需要進(jìn)行挖掘的關(guān)系,并將n個(gè)不含規(guī)則體的空horn規(guī)則放入目標(biāo)規(guī)則集合中,此處,每個(gè)空horn規(guī)則包含一種挖掘關(guān)系。
每一個(gè)需要進(jìn)行挖掘的關(guān)系實(shí)際上是一個(gè)規(guī)則頭,是通過(guò)規(guī)則體推出的規(guī)則頭,每個(gè)不含規(guī)則體的空horn規(guī)則中都包含一種規(guī)則頭。
s03,在目標(biāo)規(guī)則集合中取一個(gè)空horn規(guī)則。
s04,并從知識(shí)圖譜中抽取一個(gè)規(guī)則長(zhǎng)度小于horn規(guī)則配置參數(shù)中最大規(guī)則長(zhǎng)度的規(guī)則體添加至該空horn規(guī)則中,形成當(dāng)前horn規(guī)則。
本步驟中,添加的規(guī)則體包括:包含新變量的規(guī)則體、不含新變量的封閉規(guī)則體、變量實(shí)例化的規(guī)則體。
s05,判斷當(dāng)前horn規(guī)則是否為封閉的,若是,執(zhí)行s06,若否,將當(dāng)前horn規(guī)則剪枝過(guò)濾掉,并返回false。
s06,判斷當(dāng)前horn規(guī)則的置信度是否大于horn規(guī)則配置參數(shù)中的最小規(guī)則置信度,若是,執(zhí)行s07,若否,將當(dāng)前horn規(guī)則剪枝過(guò)濾掉,返回false。
s07,判斷當(dāng)前horn規(guī)則的所有父規(guī)則的置信度是否都小于當(dāng)前horn規(guī)則的置信度,若是,執(zhí)行s08,若否,將當(dāng)前horn規(guī)則剪枝過(guò)濾掉,返回false。
本步驟中,父規(guī)則理解為:
規(guī)則1:
規(guī)則2:
稱規(guī)則2是規(guī)則1的父規(guī)則。當(dāng)提取到規(guī)則1的時(shí)候,要求規(guī)則1的置信度比它所有父規(guī)則的置信度都大,如果不滿足這個(gè)條件,規(guī)則1將會(huì)被舍棄。這是因?yàn)?,如果子?guī)則的復(fù)雜度比父規(guī)更大,如果子規(guī)則相對(duì)于父規(guī)則不能帶來(lái)置信度的提升,那么子規(guī)則將會(huì)沒(méi)有意義。
s08,輸出當(dāng)前horn規(guī)則至挖掘結(jié)果集合中。
s09,判斷知識(shí)圖譜中是否具有推導(dǎo)出空horn規(guī)則所對(duì)應(yīng)的挖掘關(guān)系可能性的規(guī)則體,若是,跳轉(zhuǎn)執(zhí)行s04,若否,執(zhí)行s10。
s10,判斷目標(biāo)規(guī)則的集合中的空horn規(guī)則的個(gè)數(shù)是否為0,若是,結(jié)束horn規(guī)則的挖掘,若否,執(zhí)行s03。
實(shí)施例
本實(shí)施例以挖掘關(guān)系為屬性為居住地的horn規(guī)則為例。
首先將以三元組表示的規(guī)則頭(a,居住地,b)放入目標(biāo)規(guī)則集合中,同時(shí)輸入相應(yīng)的知識(shí)圖譜,初始化好規(guī)則最小覆蓋度、規(guī)則最大長(zhǎng)度和規(guī)則最小置信度。
然后增加不含新變量的封閉規(guī)則體,在知識(shí)圖譜里面進(jìn)行查詢得出同時(shí)包含變量a和b的所有可能關(guān)系,通過(guò)規(guī)則判定條件判斷是否這個(gè)規(guī)則滿足條件,例如得出一個(gè)滿足條件的規(guī)則體(a,出生在,b),此時(shí)將這個(gè)規(guī)則體和規(guī)則頭輸出作為一條horn規(guī)則。
接下來(lái)增加包含規(guī)則頭其中一個(gè)變量實(shí)例化的規(guī)則體,判斷此時(shí)的規(guī)則是否滿足條件。
最后增加包含一個(gè)新變量和一個(gè)共享變量的規(guī)則體,在又添加了一個(gè)封閉規(guī)則體后,可以得出新的規(guī)則體,例如(a,夫妻,c)和(c,居住地,b)。
按照這幾種方式進(jìn)行循環(huán)挖掘,就可以得到所有滿足條件的關(guān)于居住地的horn規(guī)則,同樣的其他類型的規(guī)則頭也按照這種方式進(jìn)行挖掘。
以上所述的具體實(shí)施方式對(duì)本發(fā)明的技術(shù)方案和有益效果進(jìn)行了詳細(xì)說(shuō)明,應(yīng)理解的是以上所述僅為本發(fā)明的最優(yōu)選實(shí)施例,并不用于限制本發(fā)明,凡在本發(fā)明的原則范圍內(nèi)所做的任何修改、補(bǔ)充和等同替換等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。