曹建春,曾 赟
(黃河水利職業技術學院,河南 開封475004)
隨著海洋運輸及海底開發業務的發展,基于海上各種應用的電子信息系統越來越多,如用于海底開發的目標探測系統,在海運業務中發揮重要作用的氣象傳感網絡,現有的這些應用大多是基于物聯網的體系結構,其利用各種類型的傳感器對目標物采集數據,然后發送至各自系統的信息處理中心進行數據處理及挖掘。隨著業務的增加,傳統的信息處理系統無論在數據挖掘的處理效率,還是數據存儲容量都無法滿足日益擴張的應用服務。
云計算是一種分布式﹑并行化的計算架構[1],它利用虛擬化技術把分布在不同地方的計算資源按照一定的邏輯進行組合,同一處理任務可以通過進程的劃分運行在云系統不同的計算節點,有效的增加了系統的信息處理速率。同時,基于云的數據挖掘算法可以避免傳統算法中收斂速率過慢,時效性過低的缺點,有效提高了海上海量數據挖掘的效率。
本文在研究現有的云計算架構及數據挖掘技術的基礎上,改造Apriori 算法,提出一種基于云計算的高性能數據挖掘算法,并進行仿真,同時和傳統的算法進行比較分析。
云計算是最新的信息科學研究方向,利用虛擬化的技術將分布在不同地方的計算機硬件進行統一,對所有硬件資源進行抽象,并按照一定的邏輯進行資源劃分。
對于用戶端,云架構是一種透明的[2]﹑安全可靠并且可擴展的架構。用戶無需知道具體的硬件資源,只需提交作業,則云服務器自動進行資源分配。
圖1 為云計算平臺架構圖。

圖1 云計算平臺架構Fig.1 The cloud computing platform architecture
云計算服務平臺根據用戶申請的任務所需要資源動態的進行平臺中計算及存儲資源的分配。當前可利用資源不能滿足用戶所需資源時,云計算平臺通過監控服務控制程序從可用資源池中調用新的可用資源放入當前資源池中。
在云計算平臺中,不同應用程序所得到的數據是按照一定的邏輯關系進行編排,組成一個數據隊列。然后利用云處理平臺統一進行處理,根據不同的用戶需求來分配相應的資源。
具體步驟如下:
假設海上不同應用程序所得到的數據集合為{b1,b2,…bp},應用程序的個數為p,數據之間的復雜度設為λ。云計算平臺首先將數據集合{b1,b2,…,bp}進行融合,屬性相同的數據進行合并,轉化為結構化的數據隊列{e1,e2,…,cq},其中屬性個數為q。
首先需要求得數據bi與需求之間的耦合性[3]:

則針對特性需求數據bi進行數據挖據,所需要的耗時公式如下:

式(1)分析可知,數據之間復雜系數λ 與數據挖掘需求之間呈現線性關系,隨著應用系數數據復雜度的提升而提升。式(2)分析可知對不同的應用系統,其數據挖據之間的耦合性增強,則最終的處理時間隨之增加。
在海上各種數據處理系統有可能處于不同的地點,并且各種信息處理系統架構也可能不同,隨著應用的增多,無論從復雜度還是處理信息量都有了指數級增長。傳統的集中式數據挖掘處理平臺的計算性能以及存儲容量已經越來越不能滿足業務的擴展,并且傳統算法在處理多屬性數據挖掘算法時,容易陷入局部最優點。
如上節所示,利用統一的信息處理平臺對不同應用的海量數據進行數據挖掘處理時,其算法的收斂效果較差,并且計算資源和存儲資源并不能滿足客戶需求的增長,從而導致信息系統的效率降低。本文利用分布式的云架構對數據挖掘算法進行改進,提出一種分布式架構及網格處理的Apriori 數據挖掘[4]算法,有效提升了計算效率。
首先在初始化階段,云計算服務器需要對各種需要處理的數據,根據屬性進行判斷、排序、優化等操作,下面詳細描述其步驟:
1)對不同應用程序所得到的數據集合的屬性進行統計,并將隨機的數據集合按照不同的數據屬性重新進行排序。
2)對排序后的序列進行簡化處理,相同屬性的數據刪除冗余數據。并且云服務器端需要構建各數據之間的關聯系數。
①首先得到不同屬性數據的邏輯關系集。
②假設用戶所需的數據集的屬性為B,經過云服務器端邏輯處理后的邏輯屬性為D,則需要計算用戶需求E 與原始數據及屬性B 及處理后的邏輯屬性D 之間的關系:η(D,E)及η(D - {B},E)。
3)計算原始屬性B 與用戶需求E 之間的關聯系數,公式如下:

若計算的該關聯系數大于0,則表示原始屬性B與用戶需求E 之間相關,則在云存儲端保存原始數據;否則,則說明原始屬性B 代表的數據集與用戶需求沒有關系,不保存數據。
4)最后將經過上述步驟處理的有效數據保存在云數據庫端。
數據冗余判斷及關聯性處理如圖2 所示。

圖2 數據關聯處理模型Fig.2 Data processing model
通過上面預處理后,能有效降低數據的復雜性,并且去除冗余數據,為接下來的數據挖掘提供有效數據。
本文利用Apriori 算法對云數據挖掘進行計算。首先統計經過云計算服務器預處理的數據屬性個數,得到針對每個不同屬性的業務數據集。然后對每個屬性的數據逐次進行計算。首先計算得出屬性種類為1 的需要挖掘的數據集,記為M1。然后根據與屬性為1 的關聯系數,計算屬性種類為2 的需要挖掘的數據集,記為M2,同理依次計算屬性為3,4,…,L的數據集,并記錄為M3,M4,…,ML。為了有效地進行計算的資源分配[5],按照如下步驟進行:
1)對集合進行關聯
對每個屬性的信息集ML-1做自相關運算,得到相關矩陣集Di,假設m1,m2∈ML-1,則mj(k)為包含所有屬性的信息集M1,M2,…,ML中排序為j 的向量中的第k 元素,云計算服務器端把信息集合中的每個向量按照升序排列,有:

同時,本文假設在信息集M1,M2,…,ML相鄰向量之間互相關,則每個矩陣向量中元素m1,m2也具有相關性,數據之間進行連接操作可以簡化數據挖掘算法的復雜度,具體公式如下所示:

最終經過關聯處理后的數據表達式如下:

2)冗余數據裁剪
數據挖掘是從海量的信息中提取出用戶所需數據,而原始數據中包含大量的數據冗余信息,需要進行裁剪。若原始數據集為Di,包含所有屬性的數據集,則D 為數據集Ml,Ml超集,也即Ml∈Dl,同時根據Dl所包含的數據屬性數目來推斷出ML-1,則推斷過程中由于原始數據集Dl數目信息量過于龐大,其算法復雜度很高,所以需要對Dl作冗余裁剪及壓縮數據信息含量。若屬性i 的數據集Mi與屬性j 的數據集Mj之間信息存在交叉數據,則對交叉數據進行裁剪,最終實現對原始數據集Dl的簡化。
本仿真平臺為Visual c ++6.0,構建的云計算平臺原始數據集為所有信息數據總量P,數據屬性的個數為l,沒有經過處理后的信息集為{b1,b2,…,bp},經過云服務器端處理后的信息集為{c1,c2,…c3},那么原始數據集中的向量bj與經過邏輯處理后的向量ck之間可以進行關系描述。
對上述數據可以計算基于云計算的數據挖掘算法耗時,公式如下:

上述耗時是衡量算法最重要的性能指標。
在本次實驗中數據屬性設為15,每個屬性的數據樣本量為1 000。
第1 個實驗假設數據屬性不同的數據之間的沒有相關性,也即數據的復雜度較低,圖3 為利用傳統的算法與本算法的比較曲線圖。

圖3 復雜度小的數據處理耗時曲線圖Fig.3 The time curve of the small complexity data processing
數據屬性不同的數據之間的有相關性,也即數據的復雜度較高,圖4 同樣為利用傳統的算法與本算法的比較曲線圖。

圖4 復雜度大的數據處理耗時曲線圖Fig.4 The time curve of the big complexity data processing
現代海洋業務的信息處理系統業務越來越多,傳統的對多業務的數據挖據算法的時效性已經越來越不能滿足客戶的需求;同時,隨著計算機科學的發展,基于云計算集分布式架構在處理多數據信息處理中的應用越來越成熟。
本文在研究現有的云計算架構及數據挖掘技術的基礎上,改造Apriori 算法,提出了一種基于云計算的高性能數據挖掘算法,并進行仿真。
[1]GOETHALS B.Memory issues in frequent itemset mining[C]//Proc of ACM Symposium on Applied Computing.New York,NY:ACM,2004:530 -534.
[2]BARALIS E,CERQUITELLI T,CHIUSANO S.Index support for frequent itemset mining in a relational DBMS[C]//Proc of Data Engineering 2005.ICDE 2005.Los Alamitos,CA:IEEE Computer Society,2005:754-765.
[3]WILLIAM A M,MOHAMMED J Z.Systems support for scalable data mining[J].ACM SIGKDD Explorations Newsletter,2000,2(2):56 -65.
[4]臧麗娜,鄭艷娟,張宇敬.面向云計算的船舶生產信息平臺建設[J].艦船科學技術,2014,36(12):107 -111.ZANG Li-na,ZHENG Yan-juan,ZHANG Yu-jing.Research on ship production information platform based on cloud computing[J].Ship Science and Technology,2014,36(12):107 -111.
[5]曹強,潘維光.數據挖掘技術在艦載信息系統中的應用研究[J].艦船科學技術,2005,27(8):62 -65.CAO Qiang,PAN Wei-guang.A study of DM technique using in warship C4ISR[J].Ship Science and Technology,2005,27(8):62 -65.