李 楊,朱月琴,李朝奎,肖克炎,范建福,李秋平
(1.湖南科技大學地理空間信息技術國家地方聯合工程實驗室,湖南 湘潭 411201;2.國土資源部地質信息技術重點實驗室,北京 100037;3.中國地質調查局發展研究中心,北京 100037;4.中國地質科學院礦產資源研究所,北京 100037;5.西北大學城市與環境學院,陜西 西安 710127)
面向海量地質文檔的表格信息快速抽取方法研究
李 楊1,朱月琴2,3,李朝奎1,肖克炎4,范建福4,李秋平5
(1.湖南科技大學地理空間信息技術國家地方聯合工程實驗室,湖南 湘潭 411201;2.國土資源部地質信息技術重點實驗室,北京 100037;3.中國地質調查局發展研究中心,北京 100037;4.中國地質科學院礦產資源研究所,北京 100037;5.西北大學城市與環境學院,陜西 西安 710127)
以Hadoop分布式系統架構中最核心的HDFS和MapReduce為基礎,提出了一種面向海量地質文檔的表格信息快速抽取的方法。為了提高地質文檔表格信息抽取速度,首先利用關鍵詞查找文檔在HDFS中存儲的根目錄,其次利用Hadoop分布式集群中Map函數和Reduce函數實現單元格信息的抽取和信息還原顯示,最后對重慶市礦產資源潛力評價成果數據中WORD文檔進行表格快速抽取實驗。實驗證明,本文提出的地質文檔表格信息快速抽取方法可以大幅縮減傳統單機串行地質文檔表格信息抽取所需的時間。
地質文檔;表格信息;快速抽取
在文檔中,以表格和文本相結合的方式進行信息展示,是當前生活和工作中一種較為簡明、規范的文檔表現形式[1],使閱讀者能夠快速抓取文檔中的主要信息,很好的提高了工作效率。而當面對海量文檔的時候,如何實現快速的表格文檔自動化處理[2]一直是國內外專家學者關注和研究的問題。在全國礦產潛力評價成果數據由大量MapGIS格式的圖件和數以百萬計的地質文檔組成,幾乎所有的文檔都是以表格和文本結合的形式呈現的,所以做到對這樣海量的地質文檔表格信息的快速抽取對今后礦產潛力評價具有深遠的意義。
對于海量的地質文檔,主要是對兩個方面進行處理:文檔中表格的分類;表格信息的提取。本文針對海量地質文檔提出一種基于Hadoop云平臺的文檔中表格信息快速抽取的方法,在原有的單機串行表格信息提取的基礎上實現在Hadoop上的MapReduce的并行編程,達到海量文檔的表格信息快速抽取的目的。
本文的研究成果致力于對全國礦產預測成果中的文檔成果進行表格信息的快速抽取,并對其進行分類、整理、匯總等工作,為后期通過已知礦產預測未知礦產做好前期資料準備工作。
1.1表格信息提取
表格作為文檔的一部分,在文檔內容表現上起著至關重要的作用,是對文本內容的重要補充[3]。在日常生活和工作中得到了極其廣泛的應用,例如金融系統的各種票據、申請表、郵政匯款單、公司銷售報表等[4]。隨著信息化的發展,將紙質文檔電子化保存下來,通過版面分析、理解、OCR等技術提取表格中的信息[5],經過進一步加工整理存入數據庫,方便以后對這些信息的查詢、修改和統計等工作。Chen等[6]在識別表格文檔類型和提取數據域信息中用到了水平線和垂直線檢測的方法。Fan等[7]一種不需要事先提取數據域的方法提取字符數據。隨著時間推移圖像質量退化等因素使得這類方法無法正確獲取表格數據域信息。還有一些研究表格識別的,可以進行多分類,從文檔數據庫中找到某個匹配的文檔類型作為輸入文檔的類別,這類方法將文檔的整體布局作為分類的參考依據。Lin等[8]利用鄰接數據域之間的關系用于文檔識別。Tang[9]在中根據表格由水平直線片段和垂直直線片段構成、獲取表格信息的區域以表格線為參考提出了表格文檔的獨特性的概念。
1.2面向信息提取的并行算法研究現狀
隨著計算機軟硬件技術的高速發展,并行計算的門檻被不斷拉低。多核處理器、計算機集群等設備為并行計算提供了良好的硬件基礎;同時,MPI、CUDA、OpenCL、OpenMP、MapReduce等并行編程模型庫的廣泛應用提高了并行編程的可擴展性。在此基礎上,陳磊等[10]采用并行計算方法對視頻、音頻等監控設備的多元信息進行提取;柳家福等[11]利用GPU并行計算的優勢提出了基于圖形處理單元的高光譜巖礦信息快速提取方法;劉軍志等[12]對分布式水文模型并行計算的研究現狀進行了總結分析,并對其發展進行了討論。
上述研究之所以要選用并行計算的方法,無非是因為其需要處理的數據量大,傳統的串行方法無法滿足其快速處理的需要。同樣的,當地質文檔達到海量時,采用并行計算的方法對其表格信息進行抽取,也能極大地縮短所需的時間。因此,本文研究內容采用Hadoop分布式集群的HDFS存儲海量地質文檔文件,MapReduce編程負責海量地質文檔中表格信息的提取工作。
2.1面向海量地質文檔的表格信息快速抽取框架
針對海量地質文檔的表格信息快速抽取模型如圖1所示。表格的來源主要由4個方面組成:WORD文檔、PDF文檔、JPG等圖片以及WEB。
對于WORD、PDF等文檔類型的文件來說,首先獲取文檔讀取范圍,判斷讀取范圍內有無表格,若存在表格,則進行表格識別、表格定位、表格結構識別等工作,最后通過遍歷單元格實現表格信息抽取工作。
對于JPG等圖片文件,由于圖片文件大多都是通過紙質表格掃描成圖片格式的,其信息質量低影響信息抽取,是亟待解決的問題。首先,對圖片文件進行灰度變換、圖像平滑、邊緣檢測等操作,完成圖像預處理去除干擾圖像識別的噪音[13]。然后,進行表格特征識別、表格定位、表格結構識別等工作,完成表格信息抽取。
對于WEB表格,采用聚焦網絡爬蟲中的基于內容評價的爬行策略進行WEB網頁的查找工作,然后對所得到的WEB表格判斷真偽,剔除為表格,對真表格進行表格結構識別,并做表頭和數據部分的拆分操作,最終完成表格信息抽取(圖1)。
2.2關鍵技術及算法設計
2.2.1 不同來源的表格特征識別
根據上述不同的文件來源,本節分別針對上述文件的表格特征識別技術進行詳細說明。
2.2.1.1 WORD表格特征的識別
在WORD文檔中進行表格特征的識別較為困難的就是對復雜表頭的表格進行處理(如下圖所示),表頭結構上存在包含關系。此類表頭的上層對下層是一對多的關系,一般可以采用樹形結構或圖形結構來表示(圖2)。

圖2 復雜表格表頭樣式圖
對于WORD文檔中的表格來說,完成了表頭的釋義,即可對表格內容進行逐單元格的識別與表征。
2.2.1.2 WEB表格的特征識別
Html對表格有專門的標簽定義,表格的主標簽為,行標簽為,列標簽為,屬性說明標簽跨行(COLSPAN)、跨列(ROWSPAN)等[2]。但對于WEB表格的信息抽取較難處理的是偽表格的識別,例如導航欄、站點廣告等是為了界面美觀、易讀,而不是為了表示真正的數據,這類表格稱為偽表格[11]。
識別真偽表格,通常需要構造相應的分類算法,一般是根據表格的特點選取一定的特征量建立模型,目前性能較好的特征模型主要有DOM模型、集合特征模型等,然后利用機器學習模型完成表格真偽的判定,從而剔除偽表格。
2.2.1.3 PDF表格的特征識別
PDF對表格沒有做特殊的定義,所以相對于WEB表格特征的提取,PDF的表格提取具有較大的難度。表格的基本信息有框線和文字兩部分組成[13],因此對于PDF表格信息提取主要從框線和文字兩個方面入手:基于框線的表格還原:此方法的難點在于框線信息的還原處理,當頁面存在多個表格或有干擾線時,框線的合理分解具有較大難度;基于文字的柵格化處理:此方法依據文字位置來分析表格的特征。其基本原理是表格的行列之間存在明顯的界限,對表格中的文字位置進行柵格化處理,還原出表格的原始框架特征。但對于具有跨行跨列的復雜表格來說,提取的準確率不高是其明顯的缺陷。
2.2.1.4 基于JPG等圖像的表格特征提取
對于JPG等圖像類型的表格識別,關鍵在于圖像的預處理與線條的識別。由于圖像采集的原始文件的新舊差異以及采集過程中的環境因素影響,造成圖像信息質量較低不利于表格的識別,需要通過灰度變換、圖像平滑、邊緣檢測、二值化、傾斜矯正等算法去除圖像中與表格無關的噪音。
2.2.2 面向海量地質文檔的表格信息快速抽取
傳統的單機串行運行環境難以滿足海量地質文檔的表格信息快速抽取的需要,如何在現有技術的基礎上實現對面向海量地質文檔的表格信息快速抽取,是地質大數據處理的關鍵環節。
Google公司在2004年提出了并發處理海量數據的MapReduce并行編程模型[14]。近年來,很多公司和科研機構都研發了基于MapReduce設計規范的海量數據并行處理系統[15],其中,Apache基金會開發的Hadoop分布式系統基礎架構是MapReduce的一種開源實現,也是當前并行處理海量數據的標準式(1)。和傳統的并行編程模型相比,它有效降低了并行編程的難度,提高了編程的效率[14]。

(1)
MapReduce合并了兩個經典函數:映射[14](Mapping)和化簡[14](Reducing)。
映射(Mapping)對集合里的每一個目標應用同一個操作。在主程序main函數中根據關鍵詞(文件名的一部分或文件名后綴)查找文件存放路徑,然后獲取文檔讀取內容確定表格位置,將表格每一行作為一個鍵值對[17](key-value),Map階段即是對鍵值對(iKey-iValue)進行逐單元格迭代拆分并記錄成鍵值對(jKey-jValue),如式(1)前半段所示。此階段由多個Mapper對同一表格的不同行進行相同的信息抽取操作,偽代碼如下。
public class Map extends Mapper
public void map(Object key,Text value,Context context) throws IOException,InterruptedException {
//過濾表頭行
String line=value.toString();
If(line.contains(“”)==true){
retune;
}
//根據單元格號記錄其內容
}
}
合并(Reducing)遍歷集合中的元素并返回一個綜合結果[19]。如公式(1)后半段所示,將Map階段返回的鍵值對(jKey-jValue)整合成鍵值對(mKey-mValue),偽代碼如下:
public class Reduce extends Reducer
Text result = new Text ();
public void reduce(Text key,Iterable
//將各單元格還原至表樣式并顯示
}
}
3.1實驗環境
本文實驗環境是在Apache基金會開發的Hadoop分布式系統架構為基礎,采用開源的MapReduce并行編程模型進行開發。搭建了Hadoop分布式集群(Hadoop版本2.7.2),其中1個主控制節點(命名為hdmaster),另外3臺工作節點(命名為hadoop002-hadoop004),Zookeeper3個(分別命名為zk01-zk03)。實驗集群配置見表1。

表1 Hadoop集群配置表
3.2實驗結果
本實驗對重慶市礦產資源潛力評價成果數據中的硫鐵礦文檔表格信息作為研究對象,選取了成礦要素圖編圖說明書作為標題關鍵字進行地質文檔篩選,表格信息中“礦物組合”這一項進行信息快速抽取與整合工作。實驗結果篩選出標題為“*成礦要素圖編圖說明書”的地質文檔16個,對文檔中的表格(原文檔表格樣式如表2所示)信息進行快速抽取與信息整合,并對表頭進行規范化設置后其結果示意圖如表3所示。
3.3對比分析
首先,對地質文檔進行傳統單機串行實驗,實驗結果如圖3所示。
為驗證海量地質文檔表格快速抽取的實際效率,本文選取了重慶市礦產資源潛力評價成果數據中的WORD文檔文件數據作為實驗數據進行表格信息抽取工作。該計算實例中包括25個礦種,5 813個WORD文檔,通過改變不同數量的文檔,依次對該計算實例進行計算實驗,計算結果見表4。
本實驗結果為對不同數量的地質文檔分別進行10次實驗,剔除首次運行時間,并對其他9次結果去除特殊值后求其平均值所得。為了更明顯看出結果的對比性,分別做如圖4所示的基于Hadoop的MapReduce地質文檔表格信息抽取時間、圖5所示的傳統單機串行文檔表格信息抽取與MapReduce表格信息抽取結果對比圖。

圖3 傳統單機串行文檔表格信息抽取

圖4 基于Hadoop的MapReduce地質文檔表格信息抽取時間
傳統單機串行地質文檔表格抽取結果與基于Hadoop的MapReduce地質文檔表格抽取結果對比如圖5所示,當文檔數量較少時,由于MapReduce運行過程中需要Map和Reduce之間通信等原因,傳統單機串行地質文檔表格抽取所需時間占有一定的優勢;隨著地質文檔數量增加,傳統單機串行地質文檔表格抽取壓力不斷增大,而基于Hadoop的MapReduce地質文檔表格抽取具有較大優勢,可很大的縮短表格信息抽取所需的時間。

表2 原文檔中表格樣式示意圖

表3 地質文檔表格信息抽取結果示意圖

表4 海量地質文檔表格信息快速提取計算結果

圖5 傳統單機串行文檔表格信息抽取與MapReduce表格信息抽取結果對比圖
為了提高地質文檔表格信息抽取速度,本文以Hadoop分布式系統架構中最核心的HDFS和MapReduce為基礎,提出了一種面向海量地質文檔的表格信息快速抽取的方法。該方法首先利用關鍵詞查找文檔在HDFS中存儲的根目錄,其次利用Hadoop分布式集群中Map函數和Reduce函數實現單元格信息的抽取和表格還原顯示。為驗證該方法對文檔表格信息抽取的速度,本文就該方法對重慶市礦產資源潛力評價成果數據中的文檔成果進行了不同個數虛擬機和不同數據量的實驗。實驗結果表明,當文檔個數達到一定數量時,該方法的表格信息抽取速度遠大于傳統的單機串行表格信息抽取速度,達到了地質文檔表格信息快速抽取的目的。
[1] 秦振海,譚守標,徐超.基于WEB的表格信息抽取研究[J].計算機技術與發展,2010,20(2):217-220.
[2] 劉穎.基于WEB結構的表格信息抽取研究[D].合肥:合肥工業大學,2012.
[3] 趙洪,肖洪,薛德軍,等.WEB表格信息抽取研究綜述[J].現代圖書情報技術,2008(3):24-31.
[4] 劉兵.表格文檔圖像分析方法研究[D].上海:上海交通大學,2013.
[5] 曾廣樸,陶維安.基于信息量的WEB表格信息抽取方法[J].西南師范大學學報:自然科學版,2010,35(4):159-163.
[6] Chen,J.L.,Lee,H.J.An efficient algorithm for form structure extraction using strip projection[J].Pattern Recognition 1998,31(9):1353-1368.
[7] Fan,K.C.,Lu,J.M.,Wang,L.S.,et al.Extraction of characters from form documents by feature point clustering[J].Pattern Recognition,1995,16(9):963-970.
[8] Lin.J.Y.,Lee,C.W.,Chen,Z.Identification of business forms using relationships between adjacent frames[J].Machine Vision and Applications.1996.9(1):56-64.
[9] Tang Y.Y.,Lee.S.W.,Suen,C.Y.Automatic document processing:a survey[J].Pattern Recognition 1996,29(12):1931-1952.
[10] 陳磊.基于監控信號的多信息提取識別的并行計算方法[D].南京:南京理工大學,2015.
[11] 柳家福,吳澤彬,劉天石,等.基于GPU的高光譜遙感巖礦信息快速提取方法[J].中國科技論文,2014,9(10):1137-1143.
[12] 劉軍志,朱阿興,秦承志,等.分布式水文模型的并行計算研究進展[J].地理科學進展,2013,32(4):538-547.
[13] 閆丹鳳.一種面向PDF文件的表格數據抽取方法的研究與實現[D].北京:北京郵電大學,2014.
[14] 徐飛,張素芹,姚紅革.面向結構的WEB表格數據抽取系統[J].西安工業大學學報,2009,29(6):574-578.
[15] 李建江,崔健,王聃,等.MapReduce并行編程模型研究綜述[J].電子學報,2011,11(11):2635-2642.
[16] 李偉衛,趙航,張陽,等.基于MapReduce的海量數據挖掘技術研究[J].計算機工程與應用,2013,49(20):112-117.
[17] 和亮,馮登國,王蕊,等.基于MapReduce的大規模在線社交網絡蠕蟲仿真[J].軟件學報,2013,24(13):1666-1682.
[18] 梅華威,米增強,吳廣磊.基于MapReduce模型的間歇性能源海量數據處理技術[J].電力系統自動化,2014,38(15):76-80.
[19] 潘巍,李戰懷,伍賽,等.基于消息傳遞機制的MapReduce圖算法研究[J].計算機學報,2011,34(10):1768-1784.
Studyontherapidextractionoftableinformationformassgeologicaldocuments
LI Yang1,ZHU Yueqin2,3,LI Chaokui1,XIAO Keyan4,FAN Jianfu4,LI Qiuping5
(1.National-Local Joint Engineering Laboratory of Geospatial Information Technology,Hunan University of Science and Technology,Xiangtan411201,China;2.Key Laboratory of Geological Information Technology of Ministry of Land and Resources,Beijing100037,China;3.Development and Research Center,China Geological Survey,Beijing100037,China;4.Institute of Mineral Resources,Chinese Academy of Geological Sciences,Beijing100037,China;5.College of Urban and Environmental Science,Northwest University,Xi’an710127,China)
Based on the most core HDFS and MapReduce in Hadoop distributed system architecture,a rapid extraction method of table information for massive geological documents is proposed.In order to improve the extraction speed of geological information document form,first of all,using the key WORDs to find documents stored in the HDFS root directory,then,using the Hadoop distributed cluster Map function and a Reduce function reduction cell information extraction and information,according to the mineral resources potential evaluation result data in Chongqing in WORD document form rapid extraction experiments.It is proved that the method of rapid extraction of geological document table information in this paper can greatly reduce the time needed to extract the information of the traditional single-machine serial geological document form.
geological document;table information;rapid extraction
2017-07-07責任編輯:趙奎濤
國土資源部公益性行業科研專項項目資助(編號:201511079)
李楊(1993-),男,碩士研究生,主要從事地質大數據技術研究工作,E-mail:Liyang_Click@outlook.com。
朱月琴(1975-),女,博士,高級工程師,主要從事地質大數據、地圖綜合與可視化研究工作,E-mail:yueqinzhu@163.com。
P208
:A
:1004-4051(2017)09-0098-06