2] 17 R={};
[0163] 18 u = 0;
[0164] 19 For(each node v){
[0165] 20 x=;
[0166] 21 if(pre(u)< pre(x))
[0167] 22 if ( | | u = v)
[0168] 23 R=;
[0169] 24 u = x;
[0170] 25 }
[0171] 26 return
[0172] 27 }
[0173] (4)候選近似語義片段評分。通過計算上一步得到的每棵XML候選子樹的近似語義 評分,將評分相對較高的子樹作為匹配對象返回,如果存在幾個評分最高的子樹則全部返 回,讓用戶進(jìn)行人工判別。
[0174] maxScore偽代碼如下所示,輸入是符合要求的候選近似語義片段集合Frags,輸出 是匹配對象集合ECSF。
[0175] maxScore
[0176] 輸入:候選近似語義片段集合Frags;
[0177] 輸出:匹配對象集合ECSF;
[0178] 1 max = 0;
[0179] 2 result= {};
[0180] 3 For(each fragment f in Frages)
[0181] 4 kwNodes^get keywordNodes rooted at f ;
[0182] 5 entitynum -get number of different entities;
[0183] 6 totalnum-the number of non-leaf nodes of subtree whose root is f;
[0184] 7 product = 1 ;
[0185] 8 for(each keyword k in kwNodes)
[0186] 9 product = product*(k.Dewey. length-f .Dewey. length)
[0187] l〇 score=(entitynum氺entitynum)/(totalnum氺totalnum氺product);
[0188] 11 if(score>max)
[0189] 12 max = score ;
[0190] 13 result = f ;
[0191] 最后通過實驗數(shù)據(jù)驗證本發(fā)明技術(shù)方案的積極效果:
[0192] 為了證明本發(fā)明的效果,實現(xiàn)了相應(yīng)的原型系統(tǒng),進(jìn)行了一系列實驗。系統(tǒng)實現(xiàn)所 用的編程環(huán)境是Eclipse,Java虛擬機(jī)的版本是1.7。實驗的運行環(huán)境為Core i5 CPU 3 ·10ΜΗζ,8GB內(nèi)存,Windows 7 Enterprise x64操作系統(tǒng)。實驗的數(shù)據(jù)集來自Internet Movie Database (IMDB · http : //www · imdb · com/,2014 · 9)的真實電影數(shù)據(jù)的子集和THE GREATEST FILMS(THE GREATEST FILMS. http://www.filmsite.org/,2014.9)的電影影評。
[0193] 在召回率及準(zhǔn)確率實驗中,實驗數(shù)據(jù)分為3組,每組100篇影評,分別對3組影評進(jìn) 行匹配測試,得到結(jié)果如圖5所示。由實驗結(jié)果可知,召回率達(dá)到了95%以上,且準(zhǔn)確率達(dá)到 93 %以上。經(jīng)過對實驗結(jié)果的分析,未召回的影評主要由于影評抽取的實例中包含名字縮 寫(即Ed,Le,Bo,De等),使得獲取最高得分的近似語義片段橫跨幾個電影單元,從而無法與 目標(biāo)電影匹配;錯配的影評主要由于XML文檔中描述另一電影的片段也覆蓋所有抽取的實 體,且近似程度相同或更高,即另一電影的演職員與目標(biāo)影片的演職員相似。對于錯配的片 段評分與目標(biāo)片段評分相同的情況,我們采取一輪人工判別的方式進(jìn)行校正,從而可以獲 得更好的匹配效果,準(zhǔn)確率都有一定的提升,達(dá)到了95%以上,測試結(jié)果如圖6所示。進(jìn)一步 分析,錯配的影評通過實體抽取工具抽取的實體數(shù)量一般較少,且與實體相關(guān)的實例在電 影數(shù)據(jù)庫中詞頻都較高。
[0194] 在實體數(shù)量對準(zhǔn)確率影響的實驗中,通過對所有測試影評抽取的實例數(shù)量進(jìn)行統(tǒng) 計,如圖7所示;同時對不同實例數(shù)量和匹配結(jié)果之間的關(guān)系進(jìn)行了統(tǒng)計,如圖8所示。由統(tǒng) 計結(jié)果可以發(fā)現(xiàn),大部分的測試影評在經(jīng)過實體抽取后得到的實例數(shù)量分布在6到14個之 間(為總數(shù)的70%)。同時對比圖8中可以發(fā)現(xiàn),6個實例是召回的影評是否完全準(zhǔn)確的臨界 值,當(dāng)抽取的實例數(shù)量小于6個時,就會出現(xiàn)錯配情況,且隨著數(shù)量越少,錯配概率越大。
[0195] 通過對未召回的影評進(jìn)行分析,其中許多影評抽取出的實例集合中包含名稱縮 寫,如"E."、"L."、"De"等,這類的縮寫詞可以通過使用縮略表或別名表來輔助匹配的執(zhí)行, 改善未召回的影評的情況。
[0196] 本發(fā)明雖然已以較佳實施例公開如上,但其并不是用來限定本發(fā)明,任何本領(lǐng)域 技術(shù)人員在不脫離本發(fā)明的精神和范圍內(nèi),都可以利用上述揭示的方法和技術(shù)內(nèi)容對本發(fā) 明技術(shù)方案做出可能的變動和修改,因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明 的技術(shù)實質(zhì)對以上實施例所作的任何簡單修改、等同變化及修飾,均屬于本發(fā)明技術(shù)方案 的保護(hù)范圍。
【主權(quán)項】
1. 一種基于實體的文本數(shù)據(jù)與XML文檔的匹配方法,其特征在于,包括: 將文本數(shù)據(jù)的模式定義為實體及實例集合,將文本數(shù)據(jù)與XML文檔模式匹配的語義定 義為在XML文檔中檢索包含所有實體、實例對集合的最小連通子樹,將查詢結(jié)果定義為基于 實體的最近語義片段; 將XML文檔構(gòu)造為一棵有序的帶標(biāo)記樹,構(gòu)造成的XML樹的節(jié)點采用帶類型的Dewey編 碼標(biāo)注; 通過基于條件隨機(jī)場的實體抽取算法提取文本數(shù)據(jù)的實體及實例信息,結(jié)合XML樹,找 出所有可能組合的基于實體的近似語義片段節(jié)點集,然后通過篩選保留最近語義片段候選 集; 對所有候選的最近語義片段進(jìn)行評分,以得分最高的最近語義片段作為最終匹配結(jié) 果。2. 根據(jù)權(quán)利要求1所述的基于實體的文本數(shù)據(jù)與XML文檔的匹配方法,其特征在于,所 述文本數(shù)據(jù)的模式為通過實體抽取過程得到的實例集合K(ki,k 2,k3,. . .,kn)及實體集合C (C1,C2,C3, . . .,cn),每個實例ki對應(yīng)一個命名實體Ci。3. 根據(jù)權(quán)利要求2所述的基于實體的文本數(shù)據(jù)與XML文檔的匹配方法,其特征在于,所 述文本數(shù)據(jù)與XML文檔模式匹配的語義定義包括: 對實例集合K= {ki,k2,k3,…,kn}中的每個實例ki在XML樹上都存在一個節(jié)點集合Ki,其 中的每個節(jié)點都直接包含實例ki且表示實體Ci的節(jié)點為ki的祖先節(jié)點; 對每一種可能的節(jié)點組合{ei,e2,e3,…,en},其中eiECi,都會有一個相應(yīng)的基于實體 的近似語義片段(表示為£5?)節(jié)點¥,即¥ = 68;^1,62,63,'",611); 使用^^^,^,^,…,^來表示所有可能組合的基于實體的近似語義片段節(jié)點集; 對eSf(K1,K2,K3,…,Kn)集合中的節(jié)點 V來說,如果集合中沒有其它節(jié)點u滿足V<u,則V 是Κι,Κ2,Κ3,···,Kn的一個ECSF節(jié)點,記為v = ecsf (Κι,Κ2,Κ3,···,Kn),其中v<u表示v是u的祖 先,v < u表不v不是u的祖先; 所有這樣的v節(jié)點組成集合記為RzECSF%,K2,K3,…,Kn); 令rj表示R中的一個元素,其中|R|,則由rj及其對應(yīng)的實例集合K|j確定的XML子 樹的節(jié)點集合記為I (r j)。4. 根據(jù)權(quán)利要求3所述的基于實體的文本數(shù)據(jù)與XML文檔的匹配方法,其特征在于,基 于實體的最近語義片段的篩選包括: 通過對所有1(0)集合進(jìn)行評分,擁有最高得分的集合1(〇)即為XML樹上與文本數(shù)據(jù)匹 配的片段;當(dāng)從給定文本數(shù)據(jù)D抽取出實例集合K及其對應(yīng)實體集合C后,I是該實例集合K在 給定XML文檔中匹配的查詢片段,需要滿足下列條件:I=maxi;sj;sR{score(I(rj),D)} 〇5. 根據(jù)權(quán)利要求1所述的基于實體的文本數(shù)據(jù)與XML文檔的匹配方法,其特征在于,構(gòu) 造節(jié)點采用帶類型的Dewey編碼標(biāo)注的XML樹包括: 對XML樹節(jié)點的編碼在Dewey編碼的基礎(chǔ)上,添加節(jié)點類型標(biāo)志位,格式為"[類型, Dewey編碼]",形成帶節(jié)點類型的Dewey編碼;若節(jié)點A是節(jié)點B的祖先,則記為A〈B,否則記為 A < B;節(jié)點A的前序遍歷序號記為pre(A)。6. 根據(jù)權(quán)利要求1所述的基于實體的文本數(shù)據(jù)與XML文檔的匹配方法,其特征在于,所 述XML樹的節(jié)點索引構(gòu)建包括針對XML樹構(gòu)建倒排索引過程,所述構(gòu)建倒排索引過程包括: 將XML樹節(jié)點分析成詞條標(biāo)記; 使用hash散列映射所有詞條,相同的詞條的多個位置采用鏈表進(jìn)行鏈接,并按照編碼 大小按從小到大排序; 對詞條生成倒排列表,倒排列表儲存的是XML樹節(jié)點的帶類型的Dewey編碼。7. 根據(jù)權(quán)利要求2所述的基于實體的文本數(shù)據(jù)與XML文檔的匹配方法,其特征在于,所 述的近似語義片段候選集的檢索過程如下: 計算所有候選近似語義片段的根節(jié)點;針對實例集合(Ki,K2, ...,Kn),將所含實例數(shù)量 最少的實例集合放在首位;設(shè)置容量為Ρ的緩沖區(qū),首先計算Ki的前Ρ節(jié)點與實例集合心的近 似語義片段根節(jié)點集乂2 = 6〇8£(?,1(2),然后依次迭代計算與其它各集合的6〇8£節(jié)點集乂11 = ecsf (. . .ecsf (P,K2). . .Kn),Xn中除最后一個節(jié)點外的所有結(jié)點均為ecsf節(jié)點,而在每一輪 迭代的最后一個節(jié)點是否為ecsf節(jié)點也都需要驗證;驗證方法為檢查上一輪最后一個節(jié)點 與當(dāng)前第一個節(jié)點的祖孫節(jié)點關(guān)系,如果不存在祖孫節(jié)點則均為ecsf節(jié)點,相反則保留祖 先節(jié)點作為ecsf節(jié)點; 校驗候選近似語義片段對應(yīng)的子樹是否覆蓋所有實體和實例對集合信息;從表示實例 信息的葉子節(jié)點向上遍歷到子樹根節(jié)點,檢查實例對應(yīng)的實體節(jié)點是否在這條路徑上。8. 根據(jù)權(quán)利要求1所述的基于實體的文本數(shù)據(jù)與XML文檔的匹配方法,其特征在于,所 述對所有候選片段進(jìn)行評分包括: 令t表示XML樹中滿足要求的片段,t'表示t去除實例結(jié)點后的子樹片段,則該片段與文 本文檔的實例集K的匹配評分為:其中)表示實體集對應(yīng)的節(jié)點在子樹t'中出現(xiàn)的頻率, lc;i,ki表 示實體Cl沿著邊到實例lu的距離,k^Cl的第幾代子孫節(jié)點。
【專利摘要】一種基于實體的文本數(shù)據(jù)與XML文檔的匹配方法,包括:將文本數(shù)據(jù)的模式定義為實體及實例集合,將文本數(shù)據(jù)與XML文檔模式匹配的語義定義為在XML文檔中檢索包含所有實體、實例對集合的最小連通子樹,將查詢結(jié)果定義為基于實體的最近語義片段;基于實體的最近語義片段定義為XML樹上覆蓋所有實體及實例信息的最小連通子樹;模式匹配過程首先使用基于條件隨機(jī)場的實體抽取算法提取文本文檔的實體及實例信息,然后在XML文檔樹中查詢覆蓋所有實體及實例的最近語義片段作為匹配對象。本發(fā)明能夠有效支持文本數(shù)據(jù)和XML文檔等異構(gòu)數(shù)據(jù)間的集成,召回率、準(zhǔn)確率高,匹配效果好,可應(yīng)用于企業(yè)異構(gòu)數(shù)據(jù)集中管理分析、大數(shù)據(jù)技術(shù)實施前的數(shù)據(jù)集成等領(lǐng)域。
【IPC分類】G06F17/30
【公開號】CN105677740
【申請?zhí)枴緾N201511017999
【發(fā)明人】蔡喁, 楊衛(wèi)東, 劉木強(qiáng)
【申請人】中國民用航空上海航空器適航審定中心
【公開日】2016年6月15日
【申請日】2015年12月29日