霍英哲 王群 尹曉華 于海 李峰
摘 要:當今,數(shù)據(jù)容量規(guī)模的擴大,導致數(shù)據(jù)規(guī)模擴大、復雜化,人們無法快速找到感興趣的數(shù)據(jù),對于此類爆炸式增長的數(shù)據(jù),人們進行數(shù)據(jù)處理以及數(shù)據(jù)分析的能力非常有限。因此,數(shù)據(jù)挖掘技術得到了廣泛重視及深入研究,逐步成為重要研究領域。
關鍵詞:大型數(shù)據(jù)庫;關聯(lián)規(guī)則;挖掘算法;關聯(lián)挖掘
數(shù)據(jù)挖掘即從大量不完全、有噪聲、模糊隨機數(shù)據(jù)中獲取包含有人們事先不知道又潛在有用信息及知識處理進程。該方法之所以被稱為未來信息處理重要技術之一,關鍵是它以一種全新概念轉變著人類使用數(shù)據(jù)的模式。但數(shù)據(jù)庫技術作為一種最基礎的信息儲存及管理形式,依舊以聯(lián)機事務處理為重點使用,對決策、解析、預測等高級性能的支持技術較少。關聯(lián)規(guī)則挖掘是數(shù)據(jù)挖掘的一個重要分支,廣泛應用在多個領域,如數(shù)據(jù)分析、數(shù)據(jù)庫設計、倉儲規(guī)劃、網(wǎng)絡故障解析等,導致已有的數(shù)據(jù)庫規(guī)模迅速擴大,對大規(guī)模數(shù)據(jù)庫關聯(lián)規(guī)則挖掘的研究成為了該領域具備關鍵理論價值及現(xiàn)實意義事件。對此,提出并設計了基于貝葉斯信息標準BIC評分函數(shù)的大型數(shù)據(jù)庫關聯(lián)挖掘算法。
1數(shù)據(jù)庫關聯(lián)數(shù)據(jù)分析
在對大型數(shù)據(jù)庫進行關聯(lián)挖掘過程中,其數(shù)據(jù)庫的獲取及數(shù)據(jù)預處理是影響關聯(lián)挖掘的關鍵步驟。對此,在數(shù)據(jù)庫獲取后,對數(shù)據(jù)進行預處理過程中,采用自適應函數(shù)對其進行分析,提高大型數(shù)據(jù)庫數(shù)據(jù)性能,為進行關聯(lián)挖掘提供基礎依據(jù)。
1.1數(shù)據(jù)庫獲取分析
數(shù)據(jù)庫還原模塊在運行時,首先將運行環(huán)境初始化,包括環(huán)境變量初始化、配置文件初始化、公共變量和數(shù)據(jù)緩存初始化。然后進行網(wǎng)絡設備初始化,最后創(chuàng)建數(shù)據(jù)庫還原模塊的工作線程,包括數(shù)據(jù)流還原線程、攔截數(shù)據(jù)包線程和數(shù)據(jù)包處理分析調度線程。攔截數(shù)據(jù)包線程的主要功能是攔截網(wǎng)上的數(shù)據(jù)包,數(shù)據(jù)流還原線程的主要功能是還原網(wǎng)絡數(shù)據(jù)包,并將還原結果存入數(shù)據(jù)庫還原模塊的數(shù)據(jù)庫中。數(shù)據(jù)包處理分析調度線程主要對不同的數(shù)據(jù)包進行調度。數(shù)據(jù)獲取中主要獲取內容是相關數(shù)據(jù)來源記錄信息、具體數(shù)據(jù)特征、獲取數(shù)據(jù)所需時間等。實現(xiàn)這一目標的方式有很多種,其主要依據(jù)是借助各種途徑,對數(shù)據(jù)進行采集。
1.2數(shù)據(jù)庫關聯(lián)
數(shù)據(jù)預處理數(shù)據(jù)庫數(shù)據(jù)量較大,若要增加挖掘效率,實現(xiàn)挖掘的目的,要對數(shù)據(jù)提前進行一定處理,即預處理,重點包括數(shù)據(jù)采集、整理、選擇、轉存等流程。在數(shù)據(jù)整理方面,重點是對具有冗余特征的數(shù)據(jù)刪除、對類似數(shù)據(jù)項進行合并、篩查修正數(shù)據(jù)信息等。在此之后進行集體的篩選處理,把來自不同源點的數(shù)據(jù)匯集起來,對數(shù)據(jù)進行篩查,找出適合搜尋需求的數(shù)據(jù)種類。最后對數(shù)據(jù)進行轉換,把最終得到的數(shù)據(jù)對應地進行適應度函數(shù)調整、轉變成更適合使用的格式,方便進行關聯(lián)挖掘解析。在進行關聯(lián)數(shù)據(jù)預處理過程中,把網(wǎng)絡結構學習作為最優(yōu)化問題,對挖掘目標進行搜索評分。
對此采用較為常用的評分函數(shù)有貝葉斯信息標準BIC評分函數(shù),對數(shù)據(jù)進行預處理。該評分函數(shù)具備以下幾個優(yōu)點[9]:一是不依附先驗概率,不對先驗概率分布情況進行估計;二是在樣本集合過大時,能夠近似地對后驗概率進行驗證;三是在沒有規(guī)定多項式分布及Dirichlet先驗概率情況下,和MDL測度取負號的結果近似相等。因此,在本算法中使用BIC評分函數(shù)作為適應度函數(shù),并認為BIC的得分越高,適應度越好,為后續(xù)的關聯(lián)挖掘提供基礎。在數(shù)據(jù)關聯(lián)挖掘中,若每個部分均要給出相應的挖掘規(guī)則、頻繁集等,則需對選取范圍進行確認,并建立對應向量,采用普通的安全多方循環(huán)協(xié)議進行集合的合并。為了增加預處理的安全性能,采用基于可交換密鑰順序方法進行安全加密處理。在共享的狀況下,能夠采用其余方式進行可交換加密。
2關聯(lián)挖掘算法優(yōu)化研究
在進行大數(shù)據(jù)關聯(lián)挖掘算法優(yōu)化過程中,首先對數(shù)據(jù)進行一次掃描,搜出整體的頻繁1_項集;然后對搜出的頻繁1_項集進行組合,依次產(chǎn)生頻繁2_項集、頻繁3_項集等。關聯(lián)挖掘算法優(yōu)化流程圖如圖1所示。
3系統(tǒng)性能測試
3.1系統(tǒng)性能評估方法
實驗采用系統(tǒng)仿真的方式對算法有效性進行驗證,實驗環(huán)境如下。系統(tǒng)硬件采用4核1.66GHz的CPU;RAM10GB。系統(tǒng)操作系統(tǒng)采用Windows2010Server;源數(shù)據(jù)庫使用默認.dat二進制的數(shù)據(jù);輸出文件為.txt文本文件;以VC++6.0sp6編制為實驗程序;實驗期間斷開網(wǎng)絡連接,防止出現(xiàn)誤差;每一次實驗后對系統(tǒng)內存進行整理,讓每一次程序運行環(huán)境盡量統(tǒng)一。準確率在算法驗證過程中,將某一興趣類別產(chǎn)生的數(shù)據(jù)進行正確的判定,而得到的總和百分比才是最終的準確率。準確率與出錯率成反比,即當錯誤率降低時,準確率提高,表示用戶的挖掘效率越高。
3.2結果分析
準確率對比結果如圖2所示。
圖2 準確率對比結果分析
由圖2可知,采用傳統(tǒng)挖掘算法進行數(shù)據(jù)庫挖掘時,在時間不定的情況下,其挖掘準確率隨著時間的增加出現(xiàn)下降的趨勢,準確率最高達到73.4%,最低為50.8%,平均準確率約為56.4%;采用改進方法時,隨著時間的增加,其挖掘準確率具有上升趨勢,準確率最高達到99.4%,最低為80.1%,平均值約為91.3%,相比傳統(tǒng)挖掘算法提高了約34.9%,具有一定的優(yōu)勢。
4結論
針對傳統(tǒng)挖掘算法一直存在挖掘準確率低、效率差的問題,提出基于貝葉斯信息標準BIC評分函數(shù)的大型數(shù)據(jù)庫關聯(lián)挖掘算法。實驗結果表明,采用改進算法相比傳統(tǒng)挖掘算法準確率提高了約34.9%,具有顯著優(yōu)勢。
參考文獻
[1] 何佩佩. 云環(huán)境下數(shù)據(jù)挖掘算法的研究與設計[D]. 東華大學,2016.
[2] 謝笑盈,徐應濤,張瑩. 基于抽樣學習的關聯(lián)挖掘算法設計[J]. 浙江師范大學學報(自然科學版),2018(1).
[3] 張全紅. 面向大數(shù)據(jù)的關聯(lián)規(guī)則算法研究[D]. 西安科技大學,2017.
(作者單位:國網(wǎng)遼寧省電力有限公司信息通信分公司)