一種大數(shù)據(jù)環(huán)境下非結(jié)構(gòu)化表格文檔數(shù)據(jù)抽取與組織方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明專利設(shè)及一種大數(shù)據(jù)環(huán)境下非結(jié)構(gòu)化表格文檔數(shù)據(jù)抽取與組織方法。首 先,分析了非結(jié)構(gòu)化表格文檔的結(jié)構(gòu)特征和數(shù)據(jù)流特征,定義了數(shù)據(jù)抽取規(guī)則;其次,給出 了非結(jié)構(gòu)化表格文檔數(shù)據(jù)抽取流程與抽取算法;再次,給出了一種將抽取結(jié)果轉(zhuǎn)換為結(jié)構(gòu) 化數(shù)據(jù)的組織方法;最后,給出了基于MapReduce并行編程模型對所得到的結(jié)構(gòu)化數(shù)據(jù)集進(jìn) 行分析的方法。本方法能夠?yàn)榇髷?shù)據(jù)環(huán)境下挖掘非結(jié)構(gòu)化表格文檔蘊(yùn)藏的知識提供技術(shù)支 持。
【背景技術(shù)】
[0002] 隨著辦公自動(dòng)化的廣泛應(yīng)用,表格文檔被廣泛應(yīng)用于企事業(yè)和政務(wù)日常事務(wù)處理 中,如調(diào)查表、業(yè)績表、考核表、職稱評審表、審批表、申請書等,運(yùn)些表格通過辦公自動(dòng)化軟 件(如Word、WPS、Excel等)編輯而來。由于可編輯的表格文檔安全性較低、可移植性也較差, 在正式發(fā)布或提交之前,往往將其轉(zhuǎn)換為安全性高、可移植強(qiáng)的只讀格式的文檔,如PDF格 式。通過解析運(yùn)些文件可知,其數(shù)據(jù)流已不包含可編輯模式下的制表符,僅包括空格和換行 符分隔符。
[0003] 將不包含特殊制表符的表格文檔稱為非結(jié)構(gòu)化表格文檔,運(yùn)些文檔往往從Word表 格、HTML表格、Excel表格等半結(jié)構(gòu)化表格文檔轉(zhuǎn)換得到,其主要特征包括:(1)非結(jié)構(gòu)化:不 同于Word表格、HTML表格、Excel表格等半結(jié)構(gòu)化表格文檔的數(shù)據(jù)流中含有特殊的制表符, 非結(jié)構(gòu)化表格的數(shù)據(jù)流中往往不包含特殊的制表符,數(shù)據(jù)僅W空格或換行作為分隔符,是 一種較典型的非結(jié)構(gòu)化數(shù)據(jù)流;(2)樣式不固定:非結(jié)構(gòu)化表格與實(shí)際應(yīng)用緊密相關(guān),不同 應(yīng)用設(shè)計(jì)的表格樣式往往不同,導(dǎo)致表格樣式靈活多樣,沒有固定的樣式;(3)數(shù)據(jù)混雜:非 結(jié)構(gòu)化表格中的數(shù)據(jù)從類別上可W分為標(biāo)題區(qū)和數(shù)據(jù)區(qū),從形式上又可W進(jìn)一步分為單值 區(qū)域和多值區(qū)域,橫向排列和縱向排列兼而有之,數(shù)據(jù)較為混雜;(4)價(jià)值稀疏:表格文檔往 往包含了多方面的數(shù)據(jù),運(yùn)些數(shù)據(jù)混合在一起,價(jià)值提取的目標(biāo)數(shù)據(jù)僅僅是某一局部的數(shù) 據(jù),價(jià)值相對稀疏。
[0004] 大數(shù)據(jù)背景下,企事業(yè)單位和政務(wù)部口已積累或快速產(chǎn)生海量的非結(jié)構(gòu)化表格文 檔,其中存儲(chǔ)著豐富的有價(jià)值的數(shù)據(jù),對運(yùn)些海量非結(jié)構(gòu)化表格文檔分析具有重要的實(shí)際 意義,而數(shù)據(jù)抽取和數(shù)據(jù)組織是實(shí)現(xiàn)價(jià)值提取的關(guān)鍵步驟。數(shù)據(jù)抽取的目標(biāo)是從非結(jié)構(gòu)化 表格文檔中抽取出完整的語義數(shù)據(jù),而數(shù)據(jù)組織的目標(biāo)是對抽取的數(shù)據(jù)通過某種邏輯結(jié)構(gòu) 組織起來,為下一步數(shù)據(jù)分析奠定基礎(chǔ)。
[0005] 國內(nèi)許多學(xué)者和研究機(jī)構(gòu)對非結(jié)構(gòu)化表格文檔的數(shù)據(jù)抽取和組織也進(jìn)行了相關(guān) 的研究。張伯(北京工業(yè)大學(xué),2010)已對此做了初步研究,提出了一種基于文字流的表格識 別技術(shù),設(shè)計(jì)并實(shí)現(xiàn)了針對某類表格的識別系統(tǒng),但該技術(shù)不適用于處理合并單元格,而且 對于表格列間距過大和豎排表格的識別存在偏差;劉力(中南大學(xué),2010)提出了針對基金 項(xiàng)目申報(bào)書的信息抽取方法,該方法基于模板技術(shù)和文本定位算法,解決了科技文檔重要 數(shù)據(jù)抽取的問題,但對于一些缺少部分或全部信息的文檔及各主題的內(nèi)在結(jié)構(gòu)無法進(jìn)行抽 取,抽取的是單值屬性;萬里鵬(西南交通大學(xué),2013)設(shè)計(jì)了一種非結(jié)構(gòu)化到結(jié)構(gòu)化數(shù)據(jù)轉(zhuǎn) 換系統(tǒng),解決了文本發(fā)明檔等非結(jié)構(gòu)化文檔轉(zhuǎn)化為結(jié)構(gòu)化數(shù)據(jù)的問題,但不支持PDF文檔W 及結(jié)構(gòu)復(fù)雜的Word文件、Excel文件;馮亞麗(云南師范大學(xué)學(xué)報(bào),2012)提出了一種基于規(guī) 則庫的非結(jié)構(gòu)化數(shù)據(jù)轉(zhuǎn)換方法,解決了非結(jié)構(gòu)化數(shù)據(jù)格式轉(zhuǎn)換的統(tǒng)一性問題,但格式轉(zhuǎn)換 的正確率不高;鄒波(華中科技大學(xué),2008)開發(fā)了一種海量非結(jié)構(gòu)化數(shù)據(jù)組織管理系統(tǒng),解 決了海量非結(jié)構(gòu)化數(shù)據(jù)組織的問題,但屬性的自動(dòng)化獲取有待改進(jìn)。
【發(fā)明內(nèi)容】
[0006] 為挖掘海量非結(jié)構(gòu)化表格文檔中蘊(yùn)藏的潛在知識,克服現(xiàn)有數(shù)據(jù)抽取技術(shù)的不 足,本發(fā)明提出一種面向非結(jié)構(gòu)化表格文檔的數(shù)據(jù)抽取與組織方法,具有較高的靈活性和 較高的抽準(zhǔn)率。
[0007] 由于現(xiàn)有的數(shù)據(jù)抽取技術(shù)缺乏靈活性,也無法抽取結(jié)構(gòu)復(fù)雜的表格文檔。為解決 該問題,本發(fā)明專利給出了一種靈活性較高、準(zhǔn)確率也較高的數(shù)據(jù)抽取方法,并將抽取的數(shù) 據(jù)組織為適合于MapReduce并行編程模型分析的結(jié)構(gòu)化組織模型,為數(shù)據(jù)分析奠定基礎(chǔ)。
[0008] -種大數(shù)據(jù)環(huán)境下非結(jié)構(gòu)化表格文檔W下簡稱("表格文檔")數(shù)據(jù)抽取與組織方 法,包括W下步驟:
[0009] (1)定義表格文檔的基本特征與抽取規(guī)則;
[0010] (1.1)定義表格文檔的結(jié)構(gòu)特征;
[0011] (1.1.1)將表格文檔劃分為單值區(qū)域和多值區(qū)域,單值區(qū)域的一個(gè)標(biāo)題區(qū)對應(yīng)一 個(gè)數(shù)據(jù)區(qū),即一對一關(guān)系;多值區(qū)域的一個(gè)標(biāo)題區(qū)對應(yīng)一個(gè)或多個(gè)數(shù)據(jù)區(qū),即一對多關(guān)系;
[0012] (1.1.2)將表格文檔中的數(shù)據(jù)劃分為標(biāo)題區(qū)和數(shù)據(jù)區(qū)。標(biāo)題區(qū)是指數(shù)據(jù)的性質(zhì)和 類別,數(shù)據(jù)區(qū)是指數(shù)據(jù)實(shí)際取值,如"姓各'為標(biāo)題區(qū),"陳某"為數(shù)據(jù)區(qū);
[0013] (1.2)定義表格文檔的數(shù)據(jù)流特征;
[0014] 先設(shè)表格文檔單元格的每行字符串為一個(gè)五元組:
[0015] s=(V,L,N,E,F(xiàn)),其中
[0016] 為該行字符串的值;
[0017] m}表示該行字符串所屬單元格為單行(S)或多行(m);
[0018]參N= {s,m,null}表示該行字符串所屬單元格的下一個(gè)單元格內(nèi)容為單行(S)、多 行(m)或者該行所屬單元格為表格該行的最后一個(gè)單元格(null);
[0019] h}表示該行字符串包括軟回車(S)或硬回車化);
[0020] ?F={y,n}表示該行字符串是當(dāng)前單元格的最后一行(y)或不是最后一行(η)。
[0021] 再設(shè)表格文檔單元格的每行字符串轉(zhuǎn)換得到的數(shù)據(jù)流為一個(gè)二元組:
[0022] d=(V,A),其中
[0023] 為該行字符串的值;
[0024] se}表示轉(zhuǎn)換后在V后新增的分隔符:空格S、換行e、空格及換行se。
[0025] 貝IJ,表格文檔單元格的每行字符串生成數(shù)據(jù)流的特征可W歸納如下:
[0026] l)S=(V,s,s,Null,Null)一 D=(V,s)
[0027] 2)S=(V,s,m,Null,Null)^D=(V,se)
[0028] 3)S=(V,m,Null,h,Null)^D=(V,se)
[00 巧]4)S=(V,m,Null,s,n)^D=(V,e)
[0030] 5)S = (V,m,Null,s,y)一D = (V,se)
[0031] 6)S=(V,Null,null,Null,Null)^D=(V,se)
[0032] W上多元組中的Nul 1值表示可W取對應(yīng)元素取值集合中的任意值,運(yùn)些規(guī)則是從 非結(jié)構(gòu)化數(shù)據(jù)流中抽取數(shù)據(jù)的重要依據(jù);
[0033] (1.3)定義表格文檔的數(shù)據(jù)抽取規(guī)則;
[0034] (1.3.1)區(qū)域劃分規(guī)則:若標(biāo)題區(qū)后是數(shù)據(jù)區(qū),則該區(qū)域?yàn)閱沃祬^(qū)域;若標(biāo)題區(qū)后 是連續(xù)的標(biāo)題區(qū),則該區(qū)域?yàn)槎嘀祬^(qū)域;
[0035] (1.3.2)單值區(qū)域規(guī)則:標(biāo)題區(qū)和數(shù)據(jù)區(qū)是一對一的關(guān)系,且數(shù)據(jù)區(qū)位于標(biāo)題區(qū)之 后;
[0036] (1.3.3)多值區(qū)域規(guī)則:每行的標(biāo)題區(qū)個(gè)數(shù)與數(shù)據(jù)區(qū)個(gè)數(shù)相同且順序一致,一個(gè)標(biāo) 題區(qū)可W擁有多個(gè)數(shù)據(jù)區(qū);
[0037] (1.3.4)正向最大匹配規(guī)則:從當(dāng)前字符開始的最大字符串如果與數(shù)據(jù)字典中的 某一字符串匹配,則該字符串為一個(gè)具有完整語義的標(biāo)題區(qū),在單值區(qū)域中介于兩個(gè)標(biāo)題 區(qū)之間的字符串為數(shù)據(jù)區(qū);
[0038] (2)表格文檔數(shù)據(jù)抽取流程與算法;
[0039] (2.1)表格文檔數(shù)據(jù)抽取流程;
[0040] 表格文檔的數(shù)據(jù)抽取流程如圖1所示,包括邏輯結(jié)構(gòu)抽取、文檔預(yù)處理、數(shù)據(jù)抽取、 數(shù)據(jù)組織和大數(shù)據(jù)分析等主要步驟,在該流程中,包括一個(gè)數(shù)據(jù)字典,其作用是存儲(chǔ)文檔的 標(biāo)題區(qū),作為判定標(biāo)題區(qū)與數(shù)據(jù)區(qū)的基本依據(jù),各模塊的功能如下:
[0041] ?邏輯結(jié)構(gòu)抽取:抽取表格文檔的標(biāo)題區(qū),并建立它們之間的邏輯關(guān)系,將結(jié)果保 存在邏輯結(jié)構(gòu)庫中;
[0042] ?文檔預(yù)處理:將表格文檔解析為數(shù)據(jù)流,并將數(shù)據(jù)流中存在的冗余信息、無用信 息去掉;
[0043] ?數(shù)據(jù)抽取:根據(jù)抽取規(guī)則從數(shù)據(jù)流中抽取出標(biāo)題區(qū)和數(shù)據(jù)區(qū);
[0044] ?數(shù)據(jù)組織:根據(jù)結(jié)構(gòu)化數(shù)據(jù)模型將標(biāo)題區(qū)和數(shù)據(jù)區(qū)組織成結(jié)構(gòu)化數(shù)據(jù)集;
[0045] ?大數(shù)據(jù)分析:使用MapReduce并行編程模型對結(jié)構(gòu)化數(shù)據(jù)集進(jìn)行分析;