運晨超, 黃毅臣, 趙微, 薛璐璐, 楊亮
(1. 國網(wǎng)冀北電力有限公司經(jīng)濟技術(shù)研究院, 北京 100038;2. 北京博望華科科技有限公司, 北京 100045)
科技成果是科研人員利用智力在科學(xué)技術(shù)活動中勞動得到的知識產(chǎn)品,該產(chǎn)品擁有學(xué)術(shù)價值或經(jīng)濟價值。因特網(wǎng)上有大量關(guān)于科技成果數(shù)據(jù)的信息和頁面,而且這些數(shù)據(jù)還擁有類型多樣性和結(jié)構(gòu)多樣性等特點,導(dǎo)致無法從中快速又準確地獲取有價值的科技成果數(shù)據(jù)。
數(shù)據(jù)融合是通過聯(lián)合多傳感器信息源的數(shù)據(jù)及信息,對位置和身份進行更加精確的估計,以便實時處理戰(zhàn)場態(tài)勢及威脅、完整評價其重要程度[1]。為了實現(xiàn)數(shù)據(jù)融合,李曉瑜等[2]提出一種k-means改進算法的并行化實現(xiàn)與應(yīng)用,趙駿鵬等[3]提出基于粒計算的多尺度聚類尺度上推算法。前者只適用于小范圍的數(shù)據(jù)融合,大數(shù)據(jù)處理時會產(chǎn)生擁塞;后者的融合過程復(fù)雜,融合內(nèi)容不穩(wěn)定、效率低。針對上述問題,本文提出一種基于大數(shù)據(jù)分析的科技成果數(shù)據(jù)融合方法。
設(shè)定科技成果為多個數(shù)據(jù)項構(gòu)成的記錄,而元數(shù)據(jù)為構(gòu)成這些科技成果信息的數(shù)據(jù)項。例如學(xué)位論文,其元數(shù)據(jù)通過對許多學(xué)術(shù)網(wǎng)頁內(nèi)容的分析確認,主要有題目、作者、附注、日期、資源類型、資源標識、相關(guān)文獻與權(quán)限管理等。采用DOM(Document Object Model)樹實現(xiàn)科技成果數(shù)據(jù)抽取,該過程抽取萬維網(wǎng)頁面中科技成果數(shù)據(jù)的元數(shù)據(jù),組合成完好的成果記錄[4-5]。
HTML是萬維網(wǎng)的大部分頁面表示語言,它的文本是自描述性數(shù)據(jù),具有半結(jié)構(gòu)化特征,無法清楚辨識頁面上混雜在一塊的科技成果數(shù)據(jù)結(jié)構(gòu)和內(nèi)容。為了解決這一問題,通過結(jié)構(gòu)化處理HTML網(wǎng)頁,繼而實現(xiàn)目標科技成果數(shù)據(jù)的抽取[6]。由于HTML網(wǎng)頁中的格式不夠規(guī)范,可能有些標簽會出現(xiàn)沒有結(jié)束標簽,或者錯誤遞歸嵌套,并且存在循序交叉的問題,所以需要對HTML網(wǎng)頁開展結(jié)構(gòu)化處理,正確遞歸嵌套網(wǎng)頁的標簽元素,從而將其解析成DOM樹[7]。
結(jié)構(gòu)化處理后的HTML網(wǎng)頁頁面文檔格式規(guī)范,將此文檔反饋至解析器轉(zhuǎn)為DOM樹結(jié)構(gòu),每一個HTML網(wǎng)頁頁面中的標簽對應(yīng)樹上的一個節(jié)點。遍歷DOM樹上的每一個節(jié)點,匹配主題詞得出節(jié)點集合A1、A2、A3、A4分別為標題節(jié)點集合、作者節(jié)點集合、作者姓名節(jié)點集合以及初始化目標節(jié)點集合(DOM樹中所有節(jié)點的集合),通過各節(jié)點坐標值研究節(jié)點集合A1、A2、A3中的節(jié)點a1、a2、a3彼此之間的空間關(guān)系,得出中間結(jié)果集合TEMP1、TEMP2、TEMP3,其滿足(a1,a2)=(miorbi,a)且(a1,a3)=(a,miorbi)的條件,這時存在作者姓名的節(jié)點在中間結(jié)果集合TEMP3中,說明中間結(jié)果集合TEMP3滿足全部的規(guī)定抽取要求,最終的目標節(jié)點是將中間結(jié)果集合TEMP3中每個節(jié)點temp3與集合A4中節(jié)點a4作關(guān)系連接(temp3,a4)=(miorbi,ai)的輸出結(jié)果。
本文方法不僅應(yīng)用DOM樹的包含層次特點,而且對網(wǎng)頁結(jié)構(gòu)發(fā)生的變化適應(yīng)良好。利用DOM樹的包含層次特點檢索DOM樹,若存在與條件不符的任一節(jié)點,則該節(jié)點中的所有節(jié)點都不符合條件,從而省去了所有DOM樹節(jié)點絕對坐標的計算量[8]。
科技成果數(shù)據(jù)具有種類多、數(shù)量大、相互關(guān)聯(lián)信息不清晰的問題,且其初始數(shù)據(jù)的冗余度和噪聲含量比較高,所以必須對數(shù)據(jù)進行預(yù)處理和分類。
結(jié)合MapReduce模型與Hermite正交基前向神經(jīng)網(wǎng)絡(luò)方法共同實現(xiàn)科技成果數(shù)據(jù)的融合。依據(jù)MapReduce執(zhí)行流程,對預(yù)處理完成的科技成果的數(shù)據(jù)實施并行化處理,并采用Hermite正交基前向神經(jīng)網(wǎng)絡(luò),對并行化處理后得到的子數(shù)據(jù)集進行分類融合,利用多個歸約函數(shù)合并所有節(jié)點計算處理的子集,獲取最終數(shù)據(jù)融合結(jié)果。
圖1描述了Hermite正交基前向神經(jīng)網(wǎng)絡(luò)的方法流程。
圖1 Hermite正交基前向神經(jīng)網(wǎng)絡(luò)方法流程圖
確定網(wǎng)絡(luò)初始化的初值,利用輸入的樣本數(shù)據(jù),計算隱含層輸出、輸出層輸出及輸出層偏差,對比實際輸出與期望值,判斷其是否滿足偏差,滿足則結(jié)束方法,若不滿足則通過調(diào)節(jié)隱含層與輸出層之間的連接權(quán)值回到輸出層計算環(huán)節(jié),直到滿足偏差。通過Hermite正交基前向神經(jīng)網(wǎng)絡(luò)方法使整個計算的過程更簡單、速度更快,讓數(shù)據(jù)融合的復(fù)雜程度大大降低。
MapReduce作為一種編程模型,用于對范圍較大的數(shù)據(jù)集合開展并行化計算,主要由Client、JobTracker、TaskTracker、HDFS等4個獨立部分組成了由任務(wù)提交到任務(wù)完成的整個過程。MapReduce主要結(jié)構(gòu)如圖2所示:
圖2 MapReduce主要結(jié)構(gòu)
圖2描述了MapReduce的實施結(jié)構(gòu),主要分為任務(wù)提交、初始化、任務(wù)分配、任務(wù)實施、任務(wù)完成等5個環(huán)節(jié)。其中任務(wù)提交的內(nèi)容是:首先部署任務(wù)的有關(guān)信息(Map方法、Reduce方法以及輸送渠道),實現(xiàn)部署后上傳任務(wù)(圖2中的①);然后通過分配節(jié)點獲得ID(圖2中的②),對任務(wù)的方法和渠道安排開展查驗,整理任務(wù)資源將其拷貝到分布式文件系統(tǒng)(圖2中的③),通過任務(wù)實施節(jié)點的調(diào)用通知其開始任務(wù)(圖2中的④)。初始化是JobTracker通過分布式文件系統(tǒng)獲得有關(guān)任務(wù)信息的輸入(圖2中的⑤),同時按照任務(wù)資源信息將Map、Reduce的程序初始化。任務(wù)分配環(huán)節(jié)是TaskTracker憑借心跳通信機制與JobTracker取得聯(lián)絡(luò),并通過接收JobTracker整理的任務(wù)信息獲得被分配的任務(wù)(圖2中的⑥)。任務(wù)實施的內(nèi)容是TaskTracker在得到自己的任務(wù)后,獲取任務(wù)資源有關(guān)的部署信息、代碼和數(shù)據(jù),并將其拷貝到系統(tǒng)文件夾中(圖2中的⑦)。在Map或Reduce的任務(wù)結(jié)束后,任務(wù)反饋信息輸出到HDFS并保存(圖2中的⑧)。
組合Hermite正交基前向神經(jīng)網(wǎng)絡(luò)方法與MapReduce模型后的MapReduce能夠在集群上對大數(shù)據(jù)集同時進行處理,數(shù)據(jù)計算效率得到大幅度提升。利用MapReduce幫助研究基于大數(shù)據(jù)分析的科技成果數(shù)據(jù)融合方法,將處理小樣本的方法應(yīng)用到大數(shù)據(jù)的處理上。圖3是結(jié)合MapReduce模型與 Hermite正交基前向神經(jīng)網(wǎng)絡(luò)方法的并行化處理架構(gòu)圖。
利用Hermite正交基前向神經(jīng)網(wǎng)絡(luò)方法運行時的數(shù)據(jù)塊獨立被處理的特點,將其與MapReduce模型組合進行并行計算,在數(shù)據(jù)融合初期,通過任務(wù)分配節(jié)點將數(shù)據(jù)集合應(yīng)用Map原理分割成體積平均的多個子數(shù)據(jù)集,并安排到所有任務(wù)實施節(jié)點,使用本文方法對科技成果數(shù)據(jù)依據(jù)給定要求實施融合,最終結(jié)果通過數(shù)個歸約函數(shù)對所有節(jié)點計算處理的子集合并得出。
圖3 結(jié)合MapReduce模型和Hermite正交基前向神經(jīng)網(wǎng)絡(luò)方法的并行化處理架構(gòu)圖
為驗證本文方法的數(shù)據(jù)融合性能,本文選擇實驗的數(shù)據(jù)為國家科技成果網(wǎng)科技成果數(shù)據(jù)的不同類別網(wǎng)絡(luò)頁面??萍汲晒罁?jù)研究性質(zhì)劃分成基礎(chǔ)理論成果、應(yīng)用技術(shù)成果和發(fā)展工作成果3類:基礎(chǔ)理論成果類包含科學(xué)論文、原理性模型和發(fā)明專利等;應(yīng)用技術(shù)成果類包含新技術(shù)、新材料和新設(shè)備等;發(fā)展工作成果類包含了對科技的政策、管理和活動進行研究的研究報告。由于詳細類別的數(shù)據(jù)容量過大,僅采用首頁數(shù)據(jù)展開實驗。
表1描述了本文方法針對國家科技成果網(wǎng)科技成果數(shù)據(jù)的抽取結(jié)果。
表1 針對國家科技成果網(wǎng)科技成果數(shù)據(jù)的抽取結(jié)果
分析表1所示的數(shù)據(jù)抽取結(jié)果發(fā)現(xiàn),3類科研成果的數(shù)據(jù)塊正確抽取率均為100%,各個數(shù)據(jù)塊內(nèi)信息正確抽取也達到了100%,可見本文方法可以非常完整正確地抽取科技成果數(shù)據(jù)內(nèi)容,驗證了本文方法在數(shù)據(jù)抽取時可有效確保抽取數(shù)據(jù)的完整性和準確性。
為進一步驗證本文方法的優(yōu)勢,采用k-means方法(文獻[2]方法)、粒計算方法(文獻[3]方法)為本文方法對比方法,對比3種方法融合不同數(shù)據(jù)容量的3種類型科研成果數(shù)據(jù)的效率,對比結(jié)果如圖4~圖6所示。
圖4 基礎(chǔ)理論成果類數(shù)據(jù)融合效率比較
圖5 應(yīng)用技術(shù)成果類數(shù)據(jù)融合效率比較
圖6 發(fā)展工作成果類數(shù)據(jù)融合效率比較
通過圖4看出,當數(shù)據(jù)容量超過16 GB時,3種方法逐漸拉開差距,k-means方法和粒計算方法的數(shù)據(jù)融合時間隨著數(shù)據(jù)容量的增大而增長,而本文方法的數(shù)據(jù)融合時間保持穩(wěn)定,不受數(shù)據(jù)容量的增長影響。
分析圖5可知,當數(shù)據(jù)容量超過16 GB以后,k-means方法的數(shù)據(jù)融合時間出現(xiàn)大幅度提升,粒計算方法的數(shù)據(jù)融合時間也有明顯提升,但是上升幅度低于k-means方法,本文方法的數(shù)據(jù)融合時間則較為穩(wěn)定,當數(shù)據(jù)容量達到128 GB時,處理時間僅為48 s。
分析圖6可知,當數(shù)據(jù)容量為128 GB時,2種對比方法的數(shù)據(jù)融合時間分別達到122 s、145 s,而本文方法的數(shù)據(jù)融合時間僅為45 s。
本文研究基于大數(shù)據(jù)分析的科技成果數(shù)據(jù)融合方法,通過數(shù)據(jù)抽取和數(shù)據(jù)預(yù)處理對繁雜的科技成果信息數(shù)據(jù)實施簡化處理,在此基礎(chǔ)上有效結(jié)合MapReduce編程模型和Hermite正交基前向神經(jīng)網(wǎng)絡(luò)方法,共同實現(xiàn)數(shù)據(jù)并行化處理,完成科技成果數(shù)據(jù)信息的融合。實驗結(jié)果表明,本文方法能夠完整正確識別科技成果數(shù)據(jù)信息,有效提升融合效率,減小了數(shù)據(jù)融合的復(fù)雜程度,對大數(shù)據(jù)的處理提供強有力的支持。