數(shù)據(jù)的修復(fù)方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及信息技術(shù)領(lǐng)域,特別涉及一種數(shù)據(jù)的修復(fù)方法及裝置。
【背景技術(shù)】
[0002] 隨著信息技術(shù)的不斷發(fā)展,RDF(Resource Description Framework,資源描述框 架)知識庫中的數(shù)據(jù)快速增長。由于數(shù)據(jù)轉(zhuǎn)換錯誤、拼寫錯誤等原因,RDF知識庫中的數(shù)據(jù) 可能會出現(xiàn)異常。因此,如何對RDF知識庫中的異常數(shù)據(jù)進(jìn)行修復(fù),從而提高數(shù)據(jù)質(zhì)量成為 人們關(guān)注的問題。
[0003] 目前有兩種數(shù)據(jù)的修復(fù)方式。第一種方式:根據(jù)RDF知識庫中的數(shù)據(jù)獲取一個關(guān) 系數(shù)據(jù)表,并挖掘該關(guān)系數(shù)據(jù)表中的依賴關(guān)系;根據(jù)依賴關(guān)系檢測關(guān)系數(shù)據(jù)表中的異常數(shù) 據(jù),并對異常數(shù)據(jù)進(jìn)行修復(fù)。第二種方式:獲取RDF圖數(shù)據(jù),并對RDF圖數(shù)據(jù)中的屬性值進(jìn) 行聚類,得到屬性值聚類中心;根據(jù)RDF圖數(shù)據(jù)中每個屬性值與屬性值聚類中心的距離檢 測RDF圖數(shù)據(jù)中的第一異常數(shù)據(jù);挖掘RDF圖數(shù)據(jù)中的屬性依賴關(guān)系,根據(jù)屬性依賴關(guān)系檢 測RDF圖數(shù)據(jù)中的第二異常數(shù)據(jù),并對第一異常數(shù)據(jù)及第二異常數(shù)據(jù)進(jìn)行修復(fù)。
[0004] 在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
[0005] 第一種方式中對關(guān)系數(shù)據(jù)表中的異常數(shù)據(jù)進(jìn)行修復(fù),致使數(shù)據(jù)的修復(fù)范圍受到一 定的限制。另外,第一種方式挖掘關(guān)系數(shù)據(jù)表中的依賴關(guān)系,第二種方式挖掘RDF圖數(shù)據(jù)中 的屬性依賴關(guān)系,使得根據(jù)關(guān)系數(shù)據(jù)表中挖掘的依賴關(guān)系或RDF圖數(shù)據(jù)中挖掘的屬性依賴 關(guān)系檢測的異常數(shù)據(jù)的錯誤類型受到限制,進(jìn)一步限制了數(shù)據(jù)的修復(fù)范圍。
【發(fā)明內(nèi)容】
[0006] 為了解決現(xiàn)有技術(shù)的問題,本發(fā)明實施例提供了一種數(shù)據(jù)的修復(fù)方法及裝置。所 述技術(shù)方案如下:
[0007] 第一方面,提供了一種數(shù)據(jù)的修復(fù)方法,所述方法包括:
[0008] 根據(jù)RDF知識庫中的數(shù)據(jù)獲取RDF圖數(shù)據(jù)及鄰居步數(shù);
[0009] 根據(jù)所述RDF圖數(shù)據(jù)及鄰居步數(shù)確定至少一個頻繁圖結(jié)構(gòu);
[0010] 挖掘每個頻繁圖結(jié)構(gòu)中包含語義的依賴關(guān)系;
[0011] 根據(jù)所述包含語義的依賴關(guān)系檢測所述RDF圖數(shù)據(jù)中的異常數(shù)據(jù),并對所述異常 數(shù)據(jù)進(jìn)行修復(fù)。
[0012] 第二方面,提供了一種數(shù)據(jù)的修復(fù)裝置,所述裝置包括:
[0013] 獲取模塊,用于根據(jù)RDF知識庫中的數(shù)據(jù)獲取RDF圖數(shù)據(jù)及鄰居步數(shù);
[0014] 確定模塊,用于根據(jù)所述RDF圖數(shù)據(jù)及鄰居步數(shù)確定至少一個頻繁圖結(jié)構(gòu);
[0015] 挖掘模塊,用于挖掘每個頻繁圖結(jié)構(gòu)中包含語義的依賴關(guān)系;
[0016] 檢測模塊,用于根據(jù)所述包含語義的依賴關(guān)系檢測所述RDF圖數(shù)據(jù)中的異常數(shù) 據(jù);
[0017] 修復(fù)模塊,用于對所述異常數(shù)據(jù)進(jìn)行修復(fù)。
[0018] 本發(fā)明實施例提供的技術(shù)方案帶來的有益效果是:
[0019] 通過根據(jù)RDF圖數(shù)據(jù)及鄰居步數(shù)確定至少一個頻繁圖結(jié)構(gòu),并根據(jù)挖掘到的每個 頻繁圖結(jié)構(gòu)中包含語義的依賴關(guān)系檢測RDF圖數(shù)據(jù)中的異常數(shù)據(jù),使得檢測到的異常數(shù)據(jù) 的錯誤類型較多,進(jìn)而通過對檢測到的異常數(shù)據(jù)進(jìn)行修復(fù),擴(kuò)大了數(shù)據(jù)的修復(fù)范圍。
【附圖說明】
[0020] 為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于 本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。
[0021] 圖1是本發(fā)明實施例提供的數(shù)據(jù)的修復(fù)方法流程圖;
[0022] 圖2是本發(fā)明另一實施例提供的數(shù)據(jù)的修復(fù)方法流程圖;
[0023] 圖3是本發(fā)明另一實施例提供的RDF數(shù)據(jù)的示意圖;
[0024] 圖4是本發(fā)明另一實施例提供的1步鄰居圖t吳式的TK意圖;
[0025] 圖5是本發(fā)明另一實施例提供的圖模式的示意圖;
[0026] 圖6是本發(fā)明另一實施例提供的圖模式關(guān)系表的示意圖;
[0027] 圖7是本發(fā)明另一實施例提供的頻繁圖結(jié)構(gòu)的示意圖;
[0028] 圖8是本發(fā)明另一實施例提供的頻繁圖結(jié)構(gòu)的編碼的示意圖;
[0029] 圖9是本發(fā)明另一實施例提供的層級化的有向圖的TK意圖;
[0030] 圖10是本發(fā)明另一實施例提供的數(shù)據(jù)庫的示意圖;
[0031] 圖11是本發(fā)明另一實施例提供的前綴樹的示意圖;
[0032] 圖12是本發(fā)明另一實施例提供的包含語義的依賴關(guān)系的示意圖;
[0033] 圖13是本發(fā)明另一實施例提供的實驗結(jié)果的示意圖;
[0034] 圖14是本發(fā)明另一實施例提供的包含語義的依賴關(guān)系的示意圖;
[0035] 圖15是本發(fā)明另一實施例提供的數(shù)據(jù)的修復(fù)裝置的結(jié)構(gòu)示意圖;
[0036] 圖16是本發(fā)明另一實施例提供的確定模塊的結(jié)構(gòu)示意圖;
[0037] 圖17是本發(fā)明另一實施例提供的挖掘模塊的結(jié)構(gòu)示意圖;
[0038] 圖18是本發(fā)明另一實施例提供的挖掘單元的結(jié)構(gòu)示意圖;
[0039] 圖19是本發(fā)明另一實施例提供的服務(wù)器的結(jié)構(gòu)示意圖。
【具體實施方式】
[0040] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方 式作進(jìn)一步地詳細(xì)描述。
[0041] 針對目前在修復(fù)數(shù)據(jù)時,檢測到的異常數(shù)據(jù)的錯誤類型較少,限制數(shù)據(jù)修復(fù)范圍 的情況,本發(fā)明實施例提供了一種數(shù)據(jù)的修復(fù)方法,參見圖1,方法流程包括:
[0042] 101 :根據(jù)RDF知識庫中的數(shù)據(jù)獲取RDF圖數(shù)據(jù)及鄰居步數(shù);
[0043] 102 :根據(jù)RDF圖數(shù)據(jù)及鄰居步數(shù)確定至少一個頻繁圖結(jié)構(gòu);
[0044] 作為一種可選實施例,根據(jù)RDF圖數(shù)據(jù)及鄰居步數(shù)確定至少一個頻繁圖結(jié)構(gòu),包 括:
[0045] 查找RDF圖數(shù)據(jù)中每個主體對應(yīng)的鄰居步數(shù)的圖模式;
[0046] 將每個鄰居步數(shù)的圖模式轉(zhuǎn)換為一個圖模式;
[0047] 根據(jù)所有圖模式生成一個圖模式關(guān)系表;
[0048] 根據(jù)圖模式關(guān)系表確定至少一個頻繁圖結(jié)構(gòu)。
[0049] 103 :挖掘每個頻繁圖結(jié)構(gòu)中包含語義的依賴關(guān)系;
[0050] 作為一種可選實施例,挖掘每個頻繁圖結(jié)構(gòu)中包含語義的依賴關(guān)系,包括:
[0051] 挖掘每個頻繁圖結(jié)構(gòu)中的開包集;
[0052] 根據(jù)每個頻繁圖結(jié)構(gòu)中的開包集計算每個頻繁圖結(jié)構(gòu)中的閉包集;
[0053] 根據(jù)每個頻繁圖結(jié)構(gòu)中的開包集及閉包集確定每個頻繁圖結(jié)構(gòu)中包含語義的依 賴關(guān)系。
[0054] 作為一種可選實施例,挖掘每個頻繁圖結(jié)構(gòu)中的開包集,包括:
[0055] 確定所有頻繁圖結(jié)構(gòu)之間的子集鏈,子集鏈包括至少兩個第一頻繁圖結(jié)構(gòu);
[0056] 挖掘子集鏈的第一開包集,根據(jù)第一開包集驗證每個第一頻繁圖結(jié)構(gòu)的開包集, 得到每個第一頻繁圖結(jié)構(gòu)的第二開包集;
[0057] 挖掘除第一頻繁圖結(jié)構(gòu)外的每個第二頻繁圖結(jié)構(gòu)的第三開包集,將第二開包集及 第三開包集作為挖掘到的每個頻繁圖結(jié)構(gòu)中的開包集。
[0058] 作為一種可選實施例,確定所有頻繁圖結(jié)構(gòu)之間的子集鏈,包括:
[0059] 將所有頻繁圖結(jié)構(gòu)轉(zhuǎn)換為一個有向圖,有向圖中的每個節(jié)點對應(yīng)一個頻繁圖結(jié) 構(gòu);
[0060] 確定有向圖中的最長路徑的集合,并將最長路徑集合中任一最長路徑的每個節(jié)點 對應(yīng)的第一頻繁圖結(jié)構(gòu)作為確定的所有頻繁圖結(jié)構(gòu)之間的一個子集鏈,得到所有頻繁圖結(jié) 構(gòu)之間的子集鏈。
[0061] 作為一種可選實施例,確定所有頻繁圖結(jié)構(gòu)之間的子集鏈,包括:
[0062] 將所有頻繁圖結(jié)構(gòu)組合成一個數(shù)據(jù)庫;
[0063] 根據(jù)數(shù)據(jù)庫構(gòu)建前綴樹,并將前綴樹中葉子節(jié)點到根節(jié)點構(gòu)成的路徑的每個節(jié)點 對應(yīng)的第一頻繁圖結(jié)構(gòu)作為確定的所有頻繁圖結(jié)構(gòu)之間的一個子集鏈,得到所有頻繁圖結(jié) 構(gòu)之間的子集鏈。
[0064] 104 :根據(jù)包含語義的依賴關(guān)系檢測RDF圖數(shù)據(jù)中的異常數(shù)據(jù),并對異常數(shù)據(jù)進(jìn)行 修復(fù)。
[0065] 本發(fā)明實施例提供的方法,通過根據(jù)RDF圖數(shù)據(jù)及鄰居步數(shù)確定至少一個頻繁圖 結(jié)構(gòu),并根據(jù)挖掘到的每個頻繁圖結(jié)構(gòu)中包含語義的依賴關(guān)系檢測RDF圖數(shù)據(jù)中的異常數(shù) 據(jù),使得檢測到的異常數(shù)據(jù)的錯誤類型較多,進(jìn)而通過對檢測到的異常數(shù)據(jù)進(jìn)行修復(fù),擴(kuò)大 了數(shù)據(jù)的修復(fù)范圍。
[0066] 本發(fā)明實施例提供了一種數(shù)據(jù)的修復(fù)方法,結(jié)合上一實施例的內(nèi)容,參見圖2,方 法流程包括:
[0067] 201 :根據(jù)RDF知識庫中的數(shù)據(jù)獲取RDF圖數(shù)據(jù)及鄰居步數(shù);
[0068] 需要說明的是,本實施例提供的方法在描述數(shù)據(jù)時,對于圖中的數(shù)據(jù),使用三元組 〈主體,謂詞,客體〉描述;對于表格中的數(shù)據(jù),使用三元組〈實體名稱,屬性,屬性值〉描述; 其中,主體對應(yīng)實體名稱,謂詞對應(yīng)屬性,客體對應(yīng)屬性值。因此,對于RDF圖數(shù)據(jù),使用三 元組〈主體,謂詞,客體〉描述。
[0069] 具體實施時,RDF圖數(shù)據(jù)可以表示為有向圖G = <I,L,R,E> ;其中,I、L及R分別 表示實體標(biāo)識符(Instance)、文字標(biāo)識符(Literal)及關(guān)系標(biāo)識符(Relation),對應(yīng)于三 元組〈主體,謂詞,客體〉,I為RDF圖數(shù)據(jù)中所有主體的標(biāo)識的集合,L為RDF圖數(shù)據(jù)中所 有客體的標(biāo)識的集合,R為RDF圖數(shù)據(jù)中所有謂詞的標(biāo)識的集合;E表示有向邊集合,有向 邊表明實體標(biāo)識符、關(guān)系標(biāo)識符及文字標(biāo)識符或?qū)嶓w標(biāo)識符之間的關(guān)系,用公式表示為E =I*R*(I U L),*表示連接關(guān)系,U表示或關(guān)系,即有向邊從一個實體標(biāo)識符通過關(guān)系標(biāo) 識符指向一個文字標(biāo)識符或?qū)嶓w標(biāo)識符。G中的一條路徑(path)可以表示為〈I。, Γι,I1^-,rn,In>,I。、^及^分別表示RDF圖數(shù)據(jù)中的一個主體,巧及匕分別表示RDF圖數(shù)據(jù)中 的一個謂詞,G中所有路徑的集合可以表示為P° ;其中,如果巧,〇5./.<^7 且i弇j,則I1弇I,,I1及分別表示RDF圖數(shù)據(jù)中的一個主體;如災(zāi)成0</<?,則 〈1〇 ri+1,Ii+1> e E 或 <Ii+1,ri+1,I) e E,r; e R0
[0070] 例如,獲取到的RDF圖數(shù)據(jù)為如圖3所示的數(shù)據(jù)。其中,"演員A"及"導(dǎo)演A"為 主體,"AB"、"普通話"、"西安"、"天秤"、"天蝎"、"演員"、"119分鐘"及"演藝導(dǎo)演"為客體, "血型"、"語言"、"籍貫"、"星座"、"作品"、"職業(yè)"、"片長"為謂詞,"電影1"在三元組〈演員 A,作品,電影1>或〈導(dǎo)演A',作品,電影1>中為客體,在三元組〈電影1,語言,普通話〉或 〈電影1,片長,119分鐘〉中為主體。
[0071] 另外,鄰居步數(shù)為對RDF圖數(shù)據(jù)中的所有主體進(jìn)行DFS (D印th First Search,深度 優(yōu)先搜索)的步數(shù)。以圖3所示RDF圖數(shù)據(jù)為例,當(dāng)鄰居步數(shù)為1時,對主體"演員A"進(jìn)行 DFS的過程為:訪問主體"演員A" ;訪問與"演員A" 1步相鄰的未被訪問的謂詞或主體,即 訪問"AB "、"天秤"、"電影1"及"演員"。
[0072] 進(jìn)一步地,獲取RDF圖數(shù)據(jù),包括但不限于:對RDF知識庫中的數(shù)據(jù)進(jìn)行半結(jié)構(gòu)化 數(shù)據(jù)的抽取、數(shù)據(jù)集成,得到所有的三元組;將客體通過謂詞連接主體,得到以主體為中心 的"星形"圖,再通過既可作為主體又可作為客體的數(shù)據(jù)將不同的"星形"圖連接,即可得到 RDF圖數(shù)據(jù)。
[0073] 獲取鄰居步數(shù),包括但不限于:提供交互界面,獲取用戶通過交互界面輸入的鄰居 步數(shù),將用戶輸入的鄰居步數(shù)作為獲取到的鄰居步數(shù)。
[0074] 關(guān)于獲取到的RDF圖數(shù)據(jù)的內(nèi)容及數(shù)量,以及鄰居步數(shù)的大小,本實施例均不作 具體限定。具體實施時,可根據(jù)RDF圖數(shù)據(jù)的大小等條件調(diào)整鄰居步數(shù)的大小。
[0075] 202 :根據(jù)RDF圖數(shù)據(jù)及鄰居步數(shù)確定至少一個頻繁圖結(jié)構(gòu);
[0076] 其中,一個頻繁圖結(jié)構(gòu)為包含RDF圖數(shù)據(jù)中頻繁出現(xiàn)的謂詞的圖結(jié)構(gòu),并且所