專利名稱:用于驗(yàn)證數(shù)據(jù)分類的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及信息分級(jí)和驗(yàn)證,尤其涉及對(duì)數(shù)據(jù)分類的驗(yàn)證。
背景技術(shù):
數(shù)據(jù)可由信息技術(shù)系統(tǒng)存儲(chǔ)或分類。例如,在某些顧客管理系統(tǒng)中,數(shù)據(jù)可以包括 顧客的地址和街道。商品推銷數(shù)據(jù)可以包括諸如蘋(píng)果和桔子的水果類別,或者雜貨種類可 以包括水果和蔬菜。數(shù)據(jù)分類的準(zhǔn)確性影響可通過(guò)特定系統(tǒng)檢索的信息的可靠性。然而, 以特定格式分類的數(shù)據(jù)通常取決于應(yīng)用被手工輸入數(shù)據(jù)結(jié)構(gòu),并且因此可能會(huì)出錯(cuò)。檢查 數(shù)據(jù)是否被正確分類的現(xiàn)有方法需要專用方法來(lái)檢查數(shù)據(jù)分類。通常,這些方法專用于存 儲(chǔ)分類數(shù)據(jù)的信息系統(tǒng)。例如,可能需要編寫(xiě)特定代碼以便驗(yàn)證特定數(shù)據(jù)庫(kù)或信息系統(tǒng)中 的數(shù)據(jù)被正確分類。
發(fā)明內(nèi)容
本公開(kāi)描述了一種使用以前存儲(chǔ)在常識(shí)知識(shí)庫(kù)中的一般信息來(lái)驗(yàn)證可在數(shù)據(jù)存 儲(chǔ)系統(tǒng)中被分類的數(shù)據(jù)的創(chuàng)新技術(shù)。 根據(jù)一類創(chuàng)新實(shí)施例,公開(kāi)了一種驗(yàn)證分類系統(tǒng)中的數(shù)據(jù)分類的計(jì)算機(jī)實(shí)現(xiàn)方
法。該方法包括可執(zhí)行指令執(zhí)行如下動(dòng)作基于從常識(shí)知識(shí)庫(kù)接收的信息,在支持查詢的框
架內(nèi)確定數(shù)據(jù)結(jié)構(gòu)中被分類的數(shù)據(jù)之間的關(guān)系的準(zhǔn)確性;響應(yīng)對(duì)不準(zhǔn)確分類的確定,將所
述數(shù)據(jù)結(jié)構(gòu)中的關(guān)系標(biāo)記為潛在不準(zhǔn)確;以及報(bào)告所述潛在不準(zhǔn)確的分類。 根據(jù)一類創(chuàng)新實(shí)施例,公開(kāi)了一種驗(yàn)證數(shù)據(jù)分類的系統(tǒng)。該系統(tǒng)包括確定數(shù)據(jù)結(jié)
構(gòu)中輸入數(shù)據(jù)的分類準(zhǔn)確性的驗(yàn)證引擎;通信地連接到所述驗(yàn)證引擎的接口 ;被配置為與
所述接口通信的知識(shí)庫(kù);以及提供支持以連接所述接口和所述知識(shí)庫(kù)的插件框架。 根據(jù)一類創(chuàng)新實(shí)施例,公開(kāi)了一種包括計(jì)算機(jī)可讀介質(zhì)的計(jì)算機(jī)程序產(chǎn)品,所述
計(jì)算機(jī)可讀介質(zhì)包括程序代碼。當(dāng)被處理器執(zhí)行時(shí),所述程序代碼執(zhí)行如下動(dòng)作在支持
查詢的框架內(nèi)確定數(shù)據(jù)結(jié)構(gòu)中被分類的數(shù)據(jù)之間的關(guān)系的準(zhǔn)確性;響應(yīng)對(duì)不準(zhǔn)確分類的確
定,將所述數(shù)據(jù)結(jié)構(gòu)中的關(guān)系標(biāo)記為潛在不準(zhǔn)確;以及報(bào)告潛在不準(zhǔn)確的分類。 所公開(kāi)處理的實(shí)施例提供了容易確定大型數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)是否被正確分級(jí)的優(yōu)點(diǎn)。 所公開(kāi)處理的實(shí)施例還提供了通過(guò)使用現(xiàn)有常識(shí)知識(shí)數(shù)據(jù)庫(kù)或知識(shí)庫(kù)來(lái)改進(jìn)數(shù) 據(jù)分類驗(yàn)證的優(yōu)點(diǎn)。 從下面結(jié)合附圖進(jìn)行的詳細(xì)描述和權(quán)利要求中,將會(huì)更清楚地理解這些和其它優(yōu) 點(diǎn)。
圖1是可操作用于本公開(kāi)各實(shí)施例的示例性軟件環(huán)境的方框圖;
圖2是根據(jù)本公開(kāi)一個(gè)實(shí)施例的頂層實(shí)現(xiàn)模型;
圖3是圖2所示頂層結(jié)構(gòu)的詳細(xì)實(shí)現(xiàn)模型; 圖4表示可用于本公開(kāi)各實(shí)施例的數(shù)據(jù)結(jié)構(gòu);禾口 圖5是詳細(xì)說(shuō)明根據(jù)當(dāng)前公開(kāi)實(shí)施例的驗(yàn)證處理的流程圖。
具體實(shí)施例方式
以下參考流程圖描述本公開(kāi),并且可以包括根據(jù)本發(fā)明實(shí)施例的方法、裝置、系統(tǒng) 和計(jì)算機(jī)程序產(chǎn)品的一個(gè)或多個(gè)方框圖。應(yīng)當(dāng)理解,可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/ 或方框圖的每個(gè)塊,以及流程圖和/或方框圖中的塊的組合。 這些計(jì)算機(jī)程序指令可被提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)的處理器,或其它可編 程數(shù)據(jù)處理裝置以便產(chǎn)生一種機(jī)器使得所述指令_由該計(jì)算機(jī)的處理器或其它可編程數(shù) 據(jù)處理裝置執(zhí)行所述指令-創(chuàng)建用于實(shí)現(xiàn)所述流程圖和/或方框圖的塊或多個(gè)塊中規(guī)定的 功能/動(dòng)作的裝置。這些計(jì)算機(jī)程序指令還可被存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中,所述計(jì)算機(jī)可 讀介質(zhì)可以指示計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置以特定方式操作,以使得存儲(chǔ)在計(jì)算機(jī) 可讀介質(zhì)中的指令產(chǎn)生一種包括實(shí)現(xiàn)所述流程圖和/或方框圖的塊或多個(gè)塊中規(guī)定的功 能/動(dòng)作的指令裝置的制品。 如本領(lǐng)域技術(shù)人員將會(huì)理解的,本公開(kāi)可被具體化為系統(tǒng)、方法、或計(jì)算機(jī)程序產(chǎn) 品。因此,本公開(kāi)可以采取完全硬件實(shí)施例、完全軟件實(shí)施例(包括固件,駐留軟件,微代碼 等)、或組合軟件和硬件方面的實(shí)施例的形式,所有這些在此處可被通稱為"電路"、"模塊" 或"系統(tǒng)"。另外,本公開(kāi)可以采取包括計(jì)算機(jī)可用介質(zhì)的計(jì)算機(jī)程序產(chǎn)品的形式,所述計(jì)算 機(jī)可用介質(zhì)具體化為具有計(jì)算機(jī)可用程序代碼在其中具體化的任何有形的表達(dá)介質(zhì)。本公 開(kāi)不應(yīng)限于此處描述的說(shuō)明性實(shí)現(xiàn)、附圖和技術(shù),而是可以在所附權(quán)利要求的范圍內(nèi)及其 等效方案的整個(gè)范圍內(nèi)進(jìn)行修改。 現(xiàn)在轉(zhuǎn)到圖1,根據(jù)一個(gè)說(shuō)明性實(shí)施例給出了數(shù)據(jù)處理系統(tǒng)的圖示。在這個(gè)說(shuō)明性 例子中,數(shù)據(jù)處理系統(tǒng)100包括通信架構(gòu)(communication fabric) 102,該通信架構(gòu)102在 處理器單元104、存儲(chǔ)器106、持久存儲(chǔ)108、通信單元110、輸入/輸出(I/O)單元112和顯 示器114之間提供通信。 處理器單元104用以執(zhí)行可被裝入存儲(chǔ)器106的軟件的指令。取決于特定的實(shí)現(xiàn), 處理器單元104可以是一個(gè)或多個(gè)處理器的集合,或者可以是多處理器核。另外,可以使用 一個(gè)或多個(gè)異構(gòu)處理器系統(tǒng)實(shí)現(xiàn)處理器單元104,其中主處理器和副處理器一起出現(xiàn)在單 個(gè)芯片上。作為另一個(gè)說(shuō)明性例子,處理器單元104可以是包含相同類型的多個(gè)處理器的 對(duì)稱多處理器系統(tǒng)。 存儲(chǔ)器106和持久存儲(chǔ)108是存儲(chǔ)設(shè)備的例子。存儲(chǔ)設(shè)備是能夠臨時(shí)和/或永久 存儲(chǔ)信息的任何硬件部件。在這些例子中,存儲(chǔ)器106可以是例如隨機(jī)訪問(wèn)存儲(chǔ)器或是任 何其他適合的易失或非易失存儲(chǔ)設(shè)備。根據(jù)特定的實(shí)現(xiàn),持久存儲(chǔ)108可以采取各種形式。 例如,持久存儲(chǔ)108可以包含一個(gè)或多個(gè)組件或設(shè)備。例如,持久存儲(chǔ)108可以是硬盤(pán)驅(qū)動(dòng) 器、閃存、可重寫(xiě)光盤(pán)、可重寫(xiě)磁帶、或上述的某種組合。持久存儲(chǔ)108使用的介質(zhì)還可以是 可移動(dòng)的。例如,可移動(dòng)硬盤(pán)可被用作持久存儲(chǔ)108。 在這些例子中,通信單元110提供與其它數(shù)據(jù)處理系統(tǒng)或設(shè)備的通信。在這些例 子中,通信單元110是網(wǎng)絡(luò)接口卡。通信單元110可以通過(guò)使用物理通信鏈路和無(wú)線通信鏈路中的任一種或兩者提供通信。 輸入/輸出單元112允許與可連接到數(shù)據(jù)處理系統(tǒng)100的其它設(shè)備進(jìn)行數(shù)據(jù)輸入 和輸出。例如,輸入/輸出單元112可以通過(guò)鍵盤(pán)和鼠標(biāo)為用戶輸入提供連接。另外,輸入 /輸出單元112可以向打印機(jī)發(fā)送輸出。顯示器114提供向用戶顯示信息的機(jī)制。
用于操作系統(tǒng)和應(yīng)用或程序的指令位于持久存儲(chǔ)108上。這些指令可被裝入存儲(chǔ) 器106以便由處理器單元104執(zhí)行。使用可被定位在存儲(chǔ)器(諸如存儲(chǔ)器106)中的計(jì)算機(jī) 執(zhí)行的指令,處理器單元104可以執(zhí)行不同實(shí)施例的處理。這些指令被稱為程序代碼、計(jì)算 機(jī)可用程序代碼、或可由處理器單元104中的處理器讀取并執(zhí)行的計(jì)算機(jī)可讀程序代碼。 不同實(shí)施例中的程序代碼可被包含在諸如處理器106或持久存儲(chǔ)108的不同的物理或有形 計(jì)算機(jī)可讀介質(zhì)上。如本領(lǐng)域技術(shù)人員顯見(jiàn)的,可由包括但不限于JaVa 、 C++、 Pascal、或 用于自動(dòng)存儲(chǔ)器管理的任何其他函數(shù)編程語(yǔ)言的軟件實(shí)現(xiàn)本公開(kāi)的實(shí)施例。
程序代碼116以函數(shù)形式位于計(jì)算機(jī)可讀介質(zhì)118上,計(jì)算機(jī)可讀介質(zhì)118是選 擇性可移動(dòng)的介質(zhì),并且可被裝載或傳輸?shù)綌?shù)據(jù)處理系統(tǒng)100上以供處理器單元104執(zhí)行。 在這些例子中,程序代碼116和計(jì)算機(jī)可讀介質(zhì)118包括計(jì)算機(jī)程序產(chǎn)品120。在一個(gè)實(shí)施 例中,計(jì)算機(jī)可讀介質(zhì)118可以有形的形式存在,諸如被插入或置于驅(qū)動(dòng)器或作為持久存 儲(chǔ)108的一部分的其它設(shè)備內(nèi)的光盤(pán)或磁盤(pán),以便傳輸?shù)酱鎯?chǔ)設(shè)備,諸如作為持久存儲(chǔ)108 一部分的硬盤(pán)驅(qū)動(dòng)器。作為有形的形式,計(jì)算機(jī)可讀介質(zhì)118還可以采取永久存儲(chǔ)的形式, 諸如硬盤(pán)驅(qū)動(dòng)器、拇指驅(qū)動(dòng)器、或連接到數(shù)據(jù)處理系統(tǒng)100的閃存。計(jì)算機(jī)可讀介質(zhì)118的 有形形式還被稱為計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。在某些情況下,計(jì)算機(jī)可讀介質(zhì)118可能不是可 移動(dòng)的。 可替換地,程序代碼116可被通過(guò)連至通信單元110的通信鏈路和/或通過(guò)連至 輸入/輸出單元112的連接從計(jì)算機(jī)可讀介質(zhì)118傳輸至數(shù)據(jù)處理系統(tǒng)100。在說(shuō)明性的 例子中,通信鏈路和/或連接可以是物理或無(wú)線的。計(jì)算機(jī)可讀介質(zhì)可以采取非有形介質(zhì)、 或傳輸型介質(zhì)的形式,諸如包含該程序代碼的通信鏈路或無(wú)線傳輸。 在某些說(shuō)明性實(shí)施例中,程序代碼116可經(jīng)網(wǎng)絡(luò)從另一個(gè)設(shè)備或數(shù)據(jù)處理系統(tǒng)下 載到持久存儲(chǔ)108以供在數(shù)據(jù)處理系統(tǒng)100內(nèi)使用。例如,存儲(chǔ)在服務(wù)器數(shù)據(jù)處理系統(tǒng)中 的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的程序代碼可經(jīng)網(wǎng)絡(luò)從服務(wù)器下載到數(shù)據(jù)處理系統(tǒng)100。提供程 序代碼116的數(shù)據(jù)處理系統(tǒng)可以是服務(wù)器計(jì)算機(jī)、客戶計(jì)算機(jī)、或是能夠存儲(chǔ)和傳輸程序 代碼116的某些其它設(shè)備。 為數(shù)據(jù)處理系統(tǒng)100示出的不同組件并不意味著對(duì)可以實(shí)現(xiàn)不同實(shí)施例的方式 提供體系結(jié)構(gòu)限制。可以在包括作為數(shù)據(jù)處理系統(tǒng)100所示組件的補(bǔ)充或替代的組件的數(shù) 據(jù)處理系統(tǒng)中實(shí)現(xiàn)不同的說(shuō)明性實(shí)施例。圖l所示的其它組件可以與示出的說(shuō)明性例子不 同??梢允褂媚軌驁?zhí)行程序代碼的任何硬件設(shè)備或系統(tǒng)實(shí)現(xiàn)不同實(shí)施例。作為一個(gè)例子, 數(shù)據(jù)處理系統(tǒng)可以包括與無(wú)機(jī)組件集成的有機(jī)組件,和/或可以完全由除人之外的有機(jī)組 件組成。例如,存儲(chǔ)設(shè)備可由有機(jī)半導(dǎo)體組成。 作為另一個(gè)例子,數(shù)據(jù)處理系統(tǒng)100中的存儲(chǔ)設(shè)備是可以存儲(chǔ)數(shù)據(jù)的任何硬件裝 置。存儲(chǔ)器106、持久存儲(chǔ)108和計(jì)算機(jī)可讀介質(zhì)118是有形形式的存儲(chǔ)設(shè)備的例子。
在另一個(gè)例子中,可以使用總線系統(tǒng)實(shí)現(xiàn)通信架構(gòu)102,并且可由一個(gè)或多個(gè)總線 組成,諸如系統(tǒng)總線或輸入/輸出總線。當(dāng)然,可以使用在附至總線系統(tǒng)的不同組件或設(shè)備
5之間提供數(shù)據(jù)傳輸?shù)娜魏芜m合類型的體系結(jié)構(gòu)來(lái)實(shí)現(xiàn)總線系統(tǒng)。另外,通信單元可以包括 用于傳輸和接收數(shù)據(jù)的一個(gè)或多個(gè)設(shè)備,諸如調(diào)制解調(diào)器或網(wǎng)絡(luò)適配器。另外,存儲(chǔ)器例如 可以是存儲(chǔ)器106,或者諸如在可能在通信架構(gòu)102中出現(xiàn)的接口或存儲(chǔ)器控制器集線器 中發(fā)現(xiàn)的高速緩存。 在本公開(kāi)的實(shí)施例中,應(yīng)用編程接口可以提取存儲(chǔ)在現(xiàn)有知識(shí)庫(kù)中的信息或知 識(shí),以便驗(yàn)證以某個(gè)格式分類的數(shù)據(jù)是否正確。該應(yīng)用編程接口被通用化,以便作用于允許 就對(duì)象類型和一種類別中各對(duì)象之間的關(guān)系進(jìn)行查詢的任何知識(shí)庫(kù)。 在圖2中,示例性系統(tǒng)200表示本發(fā)明的一種可能實(shí)施例。系統(tǒng)200以轉(zhuǎn)換信息 的應(yīng)用編程接口層210為特征。接口層210可以是可用于確定"isA(...是...)"關(guān)系或
可能存在于數(shù)據(jù)中的其它類型的分類關(guān)系的明確定義的應(yīng)用編程接口層。數(shù)據(jù)220可以包 括可被輸入分類驗(yàn)證系統(tǒng)230以便驗(yàn)證數(shù)據(jù)220元素之間的關(guān)系的數(shù)據(jù)集。分類驗(yàn)證系統(tǒng) 230可以調(diào)用接口層210以便確定存在于數(shù)據(jù)220中的關(guān)系。分類驗(yàn)證系統(tǒng)230可能要求 接口層210是允許特定性質(zhì)的查詢處理的通用或普通接口。接口層210還可以可被配置為 操作于多個(gè)數(shù)據(jù)庫(kù)或知識(shí)庫(kù),諸如包括公知信息的知識(shí)庫(kù)240。知識(shí)庫(kù)240可以代表單個(gè)知 識(shí)庫(kù)或多個(gè)不同或類似的知識(shí)庫(kù)。 一般地,知識(shí)庫(kù)240可以提供可以通過(guò)明確定義的應(yīng)用 編程接口進(jìn)行查詢以確定關(guān)系的單詞、對(duì)象、或者任何事物之間的語(yǔ)義關(guān)系。
知識(shí)庫(kù)240包括包含被認(rèn)為是常識(shí)或公知信息或知識(shí)的數(shù)據(jù)。例如,該數(shù)據(jù)對(duì)于 廣大消費(fèi)者或?qū)τ谔囟ㄖR(shí)領(lǐng)域的從業(yè)者來(lái)說(shuō)可能是常識(shí)。知識(shí)庫(kù)可以包括以特定格式從 多個(gè)源輸入的數(shù)據(jù)??梢约僭O(shè)知識(shí)庫(kù)中的數(shù)據(jù)是可信的或準(zhǔn)確的數(shù)據(jù)。重要的是要注意, 不必出于證實(shí)數(shù)據(jù)集(諸如數(shù)據(jù)220)的目的專門(mén)創(chuàng)建常識(shí)或公知知識(shí)庫(kù),而是該知識(shí)庫(kù)可 以是某個(gè)更寬背景中的知識(shí)庫(kù)。系統(tǒng)200可以使用知識(shí)庫(kù)240獨(dú)有的應(yīng)用編程接口,以便 對(duì)特定數(shù)據(jù)集200進(jìn)行證實(shí)。必須注意,任何給定的知識(shí)庫(kù)240甚至可以在數(shù)據(jù)集200可 被創(chuàng)建或考慮使用之前就存在。 知識(shí)庫(kù)240包括常識(shí)性概念和這些概念之間的關(guān)系。例如,網(wǎng)球運(yùn)動(dòng)、網(wǎng)球、球拍、 和跑鞋之間存在關(guān)系??梢酝ㄟ^(guò)允許詢問(wèn)問(wèn)題并提取信息的知識(shí)庫(kù)的應(yīng)用編程接口查詢這 種關(guān)系。查詢可以是,例如"如果打網(wǎng)球,需要哪些裝備?"。知識(shí)庫(kù)隨后可以用知識(shí)庫(kù)中包 括"網(wǎng)球"、"球拍"和"跑鞋"的一個(gè)或多個(gè)相關(guān)項(xiàng)目正確響應(yīng)。示例性的常識(shí)知識(shí)數(shù)據(jù)庫(kù) 或知識(shí)庫(kù)可以包括但不限于諸如Conc印tNet、 LifeNet、 WordNet之類的知識(shí)庫(kù),以及包括 關(guān)于各種各樣事實(shí)的關(guān)系信息和一般信息的其它這種知識(shí)數(shù)據(jù)庫(kù)。 關(guān)于輸入分類驗(yàn)證系統(tǒng)230的數(shù)據(jù)220分類的完整性或正確性的查詢可通過(guò)接口 層210傳遞到知識(shí)庫(kù)240。查詢可以是一種結(jié)構(gòu)化查詢語(yǔ)言詢問(wèn),并且對(duì)提交給分類驗(yàn)證 系統(tǒng)230的術(shù)語(yǔ)、對(duì)象、或單詞執(zhí)行語(yǔ)義分析。例如,查詢"isA"需要定義一種關(guān)系的響應(yīng)。 類似地,查詢"isTypeof(...是...類)"需要一種關(guān)系的定義。每個(gè)知識(shí)庫(kù)240可能需要 用于輸入查詢的獨(dú)特的或特定的格式。對(duì)查詢的響應(yīng)可被輸出到驗(yàn)證報(bào)告250。驗(yàn)證報(bào)告 250可以標(biāo)記或突出顯示數(shù)據(jù)220內(nèi)可能有潛在錯(cuò)誤并需要附加的外部檢查或詳細(xì)審查的 某些關(guān)系。 圖3的模型300提供了圖2所示實(shí)現(xiàn)的進(jìn)一步細(xì)節(jié)。分類數(shù)據(jù)310被輸入驗(yàn)證引 擎320,驗(yàn)證引擎320可以是系統(tǒng)的一部分或驗(yàn)證數(shù)據(jù)分類的工具。分類數(shù)據(jù)的格式可被表 示為包括父節(jié)點(diǎn)并鏈接到各子節(jié)點(diǎn)的分層樹(shù)結(jié)構(gòu)。
6
在一個(gè)實(shí)施例中,分類數(shù)據(jù)可以類似于圖4所示的數(shù)據(jù)樹(shù)結(jié)構(gòu)400。在圖4中,頂層或父節(jié)點(diǎn)410提供數(shù)據(jù)的整體分類"食品(Food)"。父節(jié)點(diǎn)410可被分別關(guān)聯(lián)到若干第一層鏈接或子節(jié)點(diǎn),諸如分別為蔬菜412、水果414和鋸416。在該分層中可以存在示出附加子節(jié)點(diǎn)或鏈接的其它鏈接。例如,蔬菜412可鏈接到桔子418和番茄420。鋸416可鏈接到電鋸422和手工鋸424。必須注意,數(shù)據(jù)樹(shù)結(jié)構(gòu)400不限于示出的節(jié)點(diǎn)或鏈接數(shù)目。任何樹(shù)結(jié)構(gòu)中的鏈接以及父節(jié)點(diǎn)和子節(jié)點(diǎn)的數(shù)目是數(shù)據(jù)的函數(shù)。 返回圖3的模型300,驗(yàn)證引擎320可以通過(guò)經(jīng)公共接口 330向知識(shí)庫(kù)提交查詢來(lái)檢查分類數(shù)據(jù)310的準(zhǔn)確性。公共接口 330可以是由插件框架340操作性支持的應(yīng)用編程接口層,插件框架340可以支持具有不同應(yīng)用編程接口的各種知識(shí)庫(kù)。例如,知識(shí)庫(kù)A350可以是帶有與知識(shí)庫(kù)B352和知識(shí)庫(kù)C356的應(yīng)用編程接口 (API)不同的API的公知知識(shí)庫(kù)。
公共接口 330可以包括可被配置為允許接口通過(guò)插件框架340與多個(gè)知識(shí)庫(kù)成功通信的適配器或插件。這些適配器或插件需要與相應(yīng)知識(shí)庫(kù)兼容,以便允許提出關(guān)于具有樹(shù)格式的數(shù)據(jù)結(jié)構(gòu)的問(wèn)題,或涉及類似的父節(jié)點(diǎn)和子節(jié)點(diǎn)以及鏈接的問(wèn)題。
適配器或插件可以用作將特定知識(shí)庫(kù)所使用的API規(guī)格化為插件框架340和公共接口 330所期望的API。例如,知識(shí)庫(kù)A可以通過(guò)適配器或插件342與插件網(wǎng)絡(luò)連接。類似地,插件344可將知識(shí)庫(kù)B與插件框架340連接,并且插件346可將知識(shí)庫(kù)X與插件框架340連接。必須注意,圖300中所示的知識(shí)庫(kù)的數(shù)量不限于3個(gè)或任何特定數(shù)目。知識(shí)庫(kù)的數(shù)目可以取決于實(shí)現(xiàn)或其它準(zhǔn)則。 公共接口 330可以從驗(yàn)證引擎320給出關(guān)于數(shù)據(jù)310中的對(duì)象以及對(duì)象和對(duì)象類別之間關(guān)系的查詢。例如,查詢可以類似于"isA"查詢。本領(lǐng)域技術(shù)人員顯見(jiàn),存在可以辨別數(shù)據(jù)類型和子類型之間關(guān)系的其它查詢。知識(shí)庫(kù)能夠通過(guò)插件框架340向公共接口 330提供有效響應(yīng)。 例如,來(lái)自驗(yàn)證引擎320的用于知識(shí)庫(kù)A 350的isA查詢可以是"蘋(píng)果是哺乳動(dòng)物嗎? (is即ple A mammal )"。知識(shí)庫(kù)可以用有效的肯定、否定、或不確定響應(yīng)進(jìn)行響應(yīng)。有效的肯定響應(yīng)可以是"是的"。有效的否定響應(yīng)可以是"不是",并且有效的不確定響應(yīng)可以是"不知道"。在另一個(gè)例子中,來(lái)自驗(yàn)證引擎320的對(duì)知識(shí)庫(kù)B 352的查詢可以是"書(shū)是物體? (is book An object )"。知識(shí)庫(kù)B 352可以肯定地響應(yīng)書(shū)是一個(gè)物體。
對(duì)驗(yàn)證引擎320查詢的響應(yīng)提供了關(guān)于分類數(shù)據(jù)310準(zhǔn)確性的信息。驗(yàn)證引擎320收集對(duì)查詢的響應(yīng),并且將它們輸出到報(bào)告360。報(bào)告360可以是突出顯示分類數(shù)據(jù)310的數(shù)據(jù)樹(shù)結(jié)構(gòu)中的關(guān)系的文本文件或其它類型的報(bào)告。報(bào)告360可以提供關(guān)于該數(shù)據(jù)結(jié)構(gòu)中可能存在的潛在錯(cuò)誤或不準(zhǔn)確分類的信息??梢詫?duì)報(bào)告360執(zhí)行外部或人工檢查,以便驗(yàn)證該信息。 圖5的流程圖500提供了根據(jù)本公開(kāi)實(shí)施例的方法的概述。在方框510,可將樹(shù)結(jié)構(gòu)格式的數(shù)據(jù)輸入框架或驗(yàn)證引擎。基于逐節(jié)點(diǎn)解析數(shù)據(jù)樹(shù),以便確定樹(shù)的關(guān)系。在方框520,驗(yàn)證引擎向知識(shí)庫(kù)執(zhí)行關(guān)于節(jié)點(diǎn)類別及其在解析的數(shù)據(jù)樹(shù)的結(jié)構(gòu)中的關(guān)系的查詢。最初,在方框530,檢查父節(jié)點(diǎn)的類別名稱,以便確定該類別是否具有有效的或有意義的標(biāo)識(shí)符或名稱。驗(yàn)證引擎可以查詢知識(shí)庫(kù),以便確定父節(jié)點(diǎn)是否具有有意義的標(biāo)識(shí)符。如果確定節(jié)點(diǎn)標(biāo)識(shí)符具有有意義的名稱,在方框550,驗(yàn)證引擎可以繼續(xù)驗(yàn)證數(shù)據(jù)類別名稱和屬于該類別的節(jié)點(diǎn)之間存在的關(guān)系或鏈接。確定 節(jié)點(diǎn)標(biāo)識(shí)符不具有有意義的名稱可以使得驗(yàn)證弓I擎調(diào)用嘗試識(shí)別子節(jié)點(diǎn)的公共類別的附加查詢。 在方框540,驗(yàn)證引擎向知識(shí)庫(kù)查詢可以標(biāo)識(shí)每個(gè)子節(jié)點(diǎn)的一般類別。在方框560,驗(yàn)證引擎可以確定每個(gè)子節(jié)點(diǎn)是否屬于某個(gè)一般類別。在方框570,可以輸出潛在錯(cuò)誤分類的報(bào)告,以便進(jìn)一步人工檢查和審閱。 回到圖4,可以使用圖5流程圖500所述的方法處理數(shù)據(jù)樹(shù)結(jié)構(gòu)400。在數(shù)據(jù)樹(shù)結(jié)構(gòu)400中,該方法可以解析數(shù)據(jù)樹(shù),并且檢驗(yàn)節(jié)點(diǎn)之間的每個(gè)鏈接,以便確定鏈接是正確、錯(cuò)誤、還是不確定。該方法可在節(jié)點(diǎn)410開(kāi)始,并且檢查第一層節(jié)點(diǎn)410是否是有意義的名稱。例如,第一層節(jié)點(diǎn)的名稱可被標(biāo)識(shí)或命名為"N2020"或某些無(wú)意義的內(nèi)容。但是在這個(gè)例子中,節(jié)點(diǎn)410被有效命名為"食品"。鏈接到食品的第一個(gè)節(jié)點(diǎn)是蔬菜412。通過(guò)API將該信息輸入所使用的知識(shí)庫(kù),并且給出一個(gè)查詢。查詢可以是"蔬菜是食品嗎?"?;诖鎯?chǔ)在知識(shí)庫(kù)中的知識(shí),知識(shí)庫(kù)可以輸出對(duì)該查詢的肯定響應(yīng),諸如"是的"。因此該肯定響應(yīng)驗(yàn)證了食品410父節(jié)點(diǎn)和蔬菜412子節(jié)點(diǎn)之間的分類鏈接。 對(duì)數(shù)據(jù)樹(shù)結(jié)構(gòu)400的解析可以繼續(xù)到下一個(gè)鏈接桔子418。查詢可以是"桔子是蔬菜嗎?"?;诖鎯?chǔ)在知識(shí)庫(kù)中的常識(shí),知識(shí)庫(kù)可以用否定的響應(yīng)諸如"不是"來(lái)響應(yīng)該查詢。驗(yàn)證引擎于是可以將蔬菜412父節(jié)點(diǎn)和桔子418子節(jié)點(diǎn)之間的分類鏈接標(biāo)記為潛在錯(cuò)誤。驗(yàn)證引擎收集查詢響應(yīng),并且報(bào)告它們以便以后檢驗(yàn)。 該方法繼續(xù)解析數(shù)據(jù)樹(shù)結(jié)構(gòu)400中的其它鏈接。例如,驗(yàn)證引擎可以向知識(shí)庫(kù)查詢父節(jié)點(diǎn)食品410和子節(jié)點(diǎn)鋸416之間的鏈接。該查詢可被格式化為"鋸是食品嗎?"?;诖鎯?chǔ)在知識(shí)庫(kù)中的常識(shí),知識(shí)庫(kù)可以用否定的響應(yīng)諸如"不是"來(lái)響應(yīng)該查詢。驗(yàn)證引擎可以將父節(jié)點(diǎn)食品410和子節(jié)點(diǎn)鋸416之間的分類鏈接標(biāo)記為潛在錯(cuò)誤??梢允占瘜?duì)知識(shí)庫(kù)的查詢的響應(yīng),以便由外部源進(jìn)行進(jìn)一步的人工審閱。 圖中的流程圖和方框圖示出了根據(jù)本發(fā)明各實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系結(jié)構(gòu)、功能和操作。在這個(gè)意義上,流程圖或方框圖中的每個(gè)塊可以表示包括用于實(shí)現(xiàn)特定(諸)邏輯功能的一個(gè)或多個(gè)可執(zhí)行指令的模塊、代碼段、或代碼部分。還應(yīng)當(dāng)注意,在某些可替換的實(shí)現(xiàn)中,塊中標(biāo)注的功能可以不以圖中所標(biāo)注的順序發(fā)生。例如,取決于所涉及的功能,以連續(xù)方式示出的兩個(gè)塊實(shí)際上可以被基本同時(shí)執(zhí)行,或某些時(shí)候可以相反順序執(zhí)行這些塊。還應(yīng)當(dāng)注意,可由執(zhí)行特定功能或動(dòng)作的基于專用硬件的系統(tǒng),或?qū)S糜布陀?jì)算機(jī)指令的組合可以實(shí)現(xiàn)方框圖和/或流程圖中的每個(gè)塊,以及方框圖和/或流程圖中的塊的組合。 此處使用的術(shù)語(yǔ)僅是為了描述特定實(shí)施例,并不旨在限制本發(fā)明。如此處使用的單數(shù)形式一個(gè)("a","an"和"the")旨在同樣包括復(fù)數(shù)形式,除非上下文中清楚指出。還應(yīng)當(dāng)理解,當(dāng)在本說(shuō)明書(shū)中使用時(shí),術(shù)語(yǔ)"包括(comprises)"和/或"包括(comprising)"指示組成特征、整體、步驟、操作、元件和/或組件的存在,但不排除一個(gè)或多個(gè)其他特征、整體、步驟、操作、元件、組件和/或其組合的存在或附加。 所附權(quán)利要求中的相應(yīng)結(jié)構(gòu)、材料、動(dòng)作、和所有裝置或步驟加功能元素的等同物旨在包括任何結(jié)構(gòu)、材料或動(dòng)作用于在特別聲明時(shí)結(jié)合所聲明的其它元素執(zhí)行功能。出于說(shuō)明和描述的目的給出了本發(fā)明的描述,但是該描述不旨在是窮盡的或?qū)⒈景l(fā)明限制為公開(kāi)的形式。本領(lǐng)域技術(shù)人員將會(huì)顯見(jiàn)不脫離本發(fā)明的范圍和精神的許多修改和變型。選擇并且描述這些實(shí)施例,以便最好地解釋本發(fā)明的原理和實(shí)際應(yīng)用,并且使得本領(lǐng)域的其它
8普通技術(shù)人員能夠理解本發(fā)明的各實(shí)施例帶有適合于構(gòu)想的特定用途的各種修改。 本發(fā)明可以采取全硬件實(shí)施例、全軟件實(shí)施例或包含硬件和軟件元素兩者的實(shí)施
例的形式。在優(yōu)選實(shí)施例中,以軟件實(shí)現(xiàn)本發(fā)明,該軟件包括但不限于固件、駐留軟件、微代碼等。 另外,本發(fā)明可以采取包括計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)的計(jì)算機(jī)程序產(chǎn)品的形式,以有形地具體化由計(jì)算機(jī)或任何指令執(zhí)行系統(tǒng)使用或結(jié)合其使用的程序代碼。出于本描述的目的,計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)可以是能夠包含或存儲(chǔ)由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或結(jié)合其使用的程序的任何有形裝置。 該介質(zhì)可以是電子、磁、光學(xué)、半導(dǎo)體系統(tǒng)、裝置或設(shè)備。計(jì)算機(jī)可讀介質(zhì)的例子包括半導(dǎo)體或固態(tài)存儲(chǔ)器、磁帶、可移動(dòng)計(jì)算機(jī)盤(pán)、隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、剛性磁盤(pán)和光盤(pán)。光盤(pán)的當(dāng)前例子包括致密盤(pán)_只讀存儲(chǔ)器(CD-ROM),致密盤(pán)-讀/寫(xiě)(CD-R/W)禾P DVD。 適合于存儲(chǔ)和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)包括直接或通過(guò)系統(tǒng)總線間接耦合到存儲(chǔ)器元件的至少一個(gè)處理器。存儲(chǔ)器元件可以包括在程序代碼的實(shí)際執(zhí)行過(guò)程中采用的本地存儲(chǔ)器、海量存儲(chǔ)、高速緩存存儲(chǔ)器,后者提供至少某些程序代碼以減少執(zhí)行期間必須從海量存儲(chǔ)檢索代碼的次數(shù)的臨時(shí)存儲(chǔ)。 輸入/輸出或I/0設(shè)備(包括但不限于鍵盤(pán)、顯示器、打印設(shè)備等)可以直接或通過(guò)中間I/O控制器間接耦合到系統(tǒng)。 還可將網(wǎng)絡(luò)適配器耦合到系統(tǒng),以使得數(shù)據(jù)處理系統(tǒng)能夠通過(guò)中間私有或公共網(wǎng)絡(luò)耦合到其它數(shù)據(jù)處理系統(tǒng)或遠(yuǎn)程打印機(jī)或存儲(chǔ)設(shè)備。調(diào)制解調(diào)器、纜線調(diào)制解調(diào)器和以太網(wǎng)卡僅是當(dāng)前可獲得的幾種網(wǎng)絡(luò)適配器。 已經(jīng)出于說(shuō)明和描述的目的給出了本發(fā)明的描述,但是該描述并不旨在是窮盡的或?qū)⒈景l(fā)明限制為公開(kāi)的形式。本領(lǐng)域技術(shù)人員可以顯見(jiàn)許多修改和變型。選擇并且描述這些實(shí)施例,以便最好地解釋本發(fā)明的原理和實(shí)際應(yīng)用,并且使得本領(lǐng)域的其它普通技術(shù)人員能夠理解本發(fā)明的各種實(shí)施例帶有適合于構(gòu)想的特定用途的各種修改。
權(quán)利要求
一種在分類驗(yàn)證系統(tǒng)中驗(yàn)證數(shù)據(jù)分類的計(jì)算機(jī)實(shí)現(xiàn)方法,該方法包括可執(zhí)行指令以執(zhí)行如下動(dòng)作基于從常識(shí)知識(shí)庫(kù)接收的信息,在支持查詢的框架內(nèi)確定數(shù)據(jù)結(jié)構(gòu)中被分類的數(shù)據(jù)之間的關(guān)系的準(zhǔn)確性;響應(yīng)對(duì)不準(zhǔn)確分類的確定,將所述數(shù)據(jù)結(jié)構(gòu)中的關(guān)系標(biāo)記為潛在不準(zhǔn)確;以及報(bào)告所述潛在不準(zhǔn)確的分類。
2. 如權(quán)利要求l所述的計(jì)算機(jī)實(shí)現(xiàn)方法,還包括 解析所述數(shù)據(jù)結(jié)構(gòu)中的分類數(shù)據(jù)的節(jié)點(diǎn);以及通過(guò)所述框架向所述常識(shí)知識(shí)庫(kù)發(fā)送關(guān)于所述數(shù)據(jù)結(jié)構(gòu)中的每個(gè)節(jié)點(diǎn)之間的關(guān)系的 查詢。
3. 如權(quán)利要求2所述的計(jì)算機(jī)實(shí)現(xiàn)方法,其中所述確定包括向所述常識(shí)知識(shí)庫(kù)發(fā)送查 詢,以便驗(yàn)證所述數(shù)據(jù)結(jié)構(gòu)中的節(jié)點(diǎn)之間的關(guān)系。
4. 如權(quán)利要求3所述的計(jì)算機(jī)實(shí)現(xiàn)方法,還包括確定所述數(shù)據(jù)結(jié)構(gòu)中的節(jié)點(diǎn)的類別標(biāo) 識(shí)符是否有效。
5. 如權(quán)利要求4所述的計(jì)算機(jī)實(shí)現(xiàn)方法,其中響應(yīng)所述父節(jié)點(diǎn)的類別標(biāo)識(shí)符是有效 的,驗(yàn)證所述數(shù)據(jù)結(jié)構(gòu)的父節(jié)點(diǎn)和子節(jié)點(diǎn)之間的關(guān)系。
6. 如權(quán)利要求4所述的計(jì)算機(jī)實(shí)現(xiàn)方法,其中響應(yīng)所述父節(jié)點(diǎn)的類別標(biāo)識(shí)符不是有效 的,向所述常識(shí)知識(shí)庫(kù)發(fā)送查詢,以便確定每個(gè)子節(jié)點(diǎn)的一般類別。
7. 如權(quán)利要求6所述的計(jì)算機(jī)實(shí)現(xiàn)方法,還包括基于對(duì)所述常識(shí)知識(shí)庫(kù)的查詢的響 應(yīng),確定每個(gè)子節(jié)點(diǎn)是否屬于所述一般類別。
8. —種驗(yàn)證數(shù)據(jù)分類的系統(tǒng),該系統(tǒng)包括 確定數(shù)據(jù)結(jié)構(gòu)中輸入數(shù)據(jù)的分類準(zhǔn)確性的驗(yàn)證引擎; 通信地連接到所述驗(yàn)證引擎的接口; 被配置為接受來(lái)自所述接口的通信的常識(shí)知識(shí)庫(kù);以及 為所述接口和所述知識(shí)庫(kù)提供連接性支持的插件框架。
9. 如權(quán)利要求8所述的系統(tǒng),其中所述數(shù)據(jù)結(jié)構(gòu)是分層且包括父節(jié)點(diǎn)和子節(jié)點(diǎn)的樹(shù)結(jié)構(gòu)。
10. 如權(quán)利要求8所述的系統(tǒng),其中所述驗(yàn)證引擎響應(yīng)所述確定標(biāo)記所述數(shù)據(jù)結(jié)構(gòu)中 的潛在不準(zhǔn)確的分類。
11. 如權(quán)利要求8所述的系統(tǒng),其中所述知識(shí)庫(kù)包括常識(shí)知識(shí)數(shù)據(jù)庫(kù)中的信息。
12. 如權(quán)利要求8所述的系統(tǒng),其中所述知識(shí)庫(kù)是包括應(yīng)用編程接口的常識(shí)知識(shí)庫(kù),所 述應(yīng)用編程接口被配置為支持查詢。
13. 如權(quán)利要求12所述的系統(tǒng),其中對(duì)所述知識(shí)庫(kù)的查詢的響應(yīng)提供關(guān)于存儲(chǔ)在所述 知識(shí)庫(kù)中的對(duì)象之間的關(guān)系的信息。
14. 如權(quán)利要求12所述的系統(tǒng),其中所述插件框架規(guī)格化由所述知識(shí)庫(kù)使用的應(yīng)用編 程接口。
全文摘要
本發(fā)明公開(kāi)了用于驗(yàn)證數(shù)據(jù)分類的方法和系統(tǒng),并且涉及與具有不同應(yīng)用編程接口的常識(shí)知識(shí)庫(kù)連接的系統(tǒng)中的數(shù)據(jù)的驗(yàn)證和分類。該系統(tǒng)輸入帶有信息類別的數(shù)據(jù)樹(shù)結(jié)構(gòu)。向常識(shí)知識(shí)庫(kù)查詢數(shù)據(jù)樹(shù)中的關(guān)系。可以輸出數(shù)據(jù)樹(shù)中潛在錯(cuò)誤分類的報(bào)告以供進(jìn)一步審閱。
文檔編號(hào)G06F17/30GK101770501SQ20091020838
公開(kāi)日2010年7月7日 申請(qǐng)日期2009年11月12日 優(yōu)先權(quán)日2008年12月30日
發(fā)明者L·尼戈?duì)?申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司