一種動態數據環境下的數據流混合分類方法
2023-12-01 07:29:41 1
一種動態數據環境下的數據流混合分類方法
【專利摘要】本發明涉及智能信息處理【技術領域】,公開了一種動態數據環境下的數據流混合分類方法,本發明採用集成學習和混合模型框架構建數據流分類模型,可以適應數據流的海量性、實時性和動態變化性三種特點的要求,並提高數據流分類的準確率。其中,集成學習模型利用了集成學習理論相關內容,通過使用多個分類器進行分類,提高分類效果和適應數據流動態性的能力。此外,聚類方法對分類結果進行匯總,有效利用分類結果之間的內部關係,有利於提高分類準確率,減少因分類所消耗時間。
【專利說明】一種動態數據環境下的數據流混合分類方法
【技術領域】
[0001]本發明涉及智能信息處理【技術領域】,特別涉及一種動態數據環境下的數據流混合分類方法,適用於網絡入侵檢測,網絡安全監控、傳感器數據監控和電網供電等方面。
【背景技術】
[0002]隨著物聯網的發展,以及「大數據」時代的到來,傳統數據挖掘方法正面臨著新的挑戰,其中數據形式的變化是最為重要和基本的內容。傳統數據形式主要以靜態數據為主,其容量有限,可被存儲且基本無變化。因此,對傳統數據挖掘算法的設計,往往假設數據是靜態,考慮更多的是算法本身而不是數據形式適應問題。
[0003]但近些年,隨著信息化發展的深入,一種嶄新的數據形式,即數據流,逐漸成為主流數據形式。與靜態數據形式不同,數據流主要包含三種基本特徵,即海量性、實時性和動態變化性,因此如果再繼續單純的套用傳統數據挖掘方法,往往無法得到令人滿意的結果,甚至是完全失效。也正因為如此,目前針對數據流挖掘的研究成為新的研究熱點。
[0004]對數據流分類問題來說,其核心問題是設計適應數據流特點(海量性、實時性和動態變化性)的分類方法。具體來說,較傳統分類方法來說,數據流的海量性特點要求數據流分類方法能夠在無法存儲歷史數據的前提下,對數據進行訓練和分類;數據流的實時性要求分類模型在分類過程中,除了要考慮分類準確率方面外,還需要對分類時間進行優化和壓縮,儘可能的在新數據流產生前完成分類整體過程,對分類模型的運行效率提出了新的要求;數據流的動態變化性要求分類模型具有一定的擴充性和自我更新性,能夠適應數據流的變化。因為如此,設計出完全滿足數據流三種特點的分類模型,一直是學術界追求的目標,而當前所提出分類方法,大部分只能滿足一種或兩種數據流特點,只能在一定程度上達到分類的要求。
[0005]目前國際、國內尚未出現完全適應數據流特點的分類方法,亟待一種動態數據環境下的數據流混合分類方法。
【發明內容】
[0006]本發明的目的是:為解決上述現有技術中存在的問題,提供一種動態數據環境下的數據流混合分類方法,能夠滿足數據流海量性、實時性和動態變化性的特點,達到分類要求。
[0007]為達到上述目的,本發明採用的技術方案是:一種動態數據環境下的數據流混合分類方法,具體包括以下步驟:
步驟1:動態數據流收集模塊102從海量實時數據流101中按照時間順序收集數據。
[0008]步驟2:數據流劃分模塊103讀取步驟I中的數據流數據,並且根據數據流數據的時間先後關係對數據流進行劃分;所述數據流初始化模塊103劃分得到的數據塊中,包含3類數據分別是訓練集、驗證集和測試集,每個數據集中所包含的數據樣本數量為N ;N是固定變量,由使用者提前設定。[0009]步驟3:將經過數據流劃分模塊103所得到的三種靜態數據集即訓練集、測試集和驗證集輸入到數據初始化模塊104,對靜態數據集進行歸一化處理。
[0010]步驟4:將經過數據初始化模塊104處理後的訓練集數據輸入到集成分類器模塊105中,所述集成分類器模塊105對訓練集數據進行分類並構建集成分類器。
[0011]步驟5:利用參數優化模塊(106)對步驟4中集成分類器模型進行參數優化;
步驟6:將經過數據初始化模塊(104)處理後的驗證集輸入到步驟5優化後的集成分類
器中,得到的數據類別標籤為數據集L ;
步驟7:將數據集L輸入到聚類模塊107中,對所使用的聚類模型進行訓練。
[0012]步驟8:將數據初始化模塊104所得到的測試集數據輸入到所構建的混合分類模型中,完成數據流分類過程。
[0013]其中,所述步驟2中數據流劃分模塊103對數據流的劃分,包括以下步驟:
步驟2.1:首先使用滑動窗口法對海量實時數據流進行靜態化處理;其中,滑動窗口每次滑動的距離為見且每個靜態子集所包含的樣本數量也為#個;
步驟2.2:使用隨機抽取方法對步驟2.1所得到的子集進行混合,分別得到三個數據集,即訓練集、測試集和驗證集,其中訓練集和測試集的大小均為4#。
[0014]其中,所述步驟3中數據初始化模塊104採用MapMinMax歸一化方法對數據進行歸一化處理,包括以下步驟:
步驟3.1:首先將得到的訓練集、測試集和驗證集,分別對其各個屬性值進行統計,找到各屬性的最大和最小屬性值;``
步驟3.2:對數據集的各個屬性進行歸一化處理,所述歸一化方法公式為:
【權利要求】
1.一種動態數據環境下的數據流混合分類方法,具體包括以下步驟: 步驟1:動態數據流收集模塊(102)從海量實時數據流(101)中按照時間順序收集數據; 步驟2:數據流劃分模塊(103)讀取步驟I中的數據流數據,並且根據數據流數據的時間先後關係對數據流進行劃分;所述數據流初始化模塊(103)劃分得到的數據塊中,包含3類數據分別是訓練集、驗證集和測試集,每個數據集中所包含的數據樣本數量為N ;N是固定變量,由使用者提前設定; 步驟3:將經過數據流劃分模塊(103)所得到的三種靜態數據集即訓練集、測試集和驗證集輸入到數據初始化模塊(104),對靜態數據集進行歸一化處理; 步驟4:將經過數據初始化模塊(104)處理後的訓練集數據輸入到集成分類器模塊(105)中,所述集成分類器模塊(105)使用訓練集數據進行訓練,構建集成分類器模型;步驟5:利用參數優化模塊(106)對步驟4中集成分類器模型進行參數優化; 步驟6:將經過數據初始化模塊(104)處理後的驗證集輸入到步驟5優化後的集成分類器中,得到的數據類別標籤為數據集L ; 步驟7:將數據集L輸入到聚類模塊(107)中,對所使用的聚類模型進行訓練; 步驟8:將數據初始化模塊(104)所得到的測試集數據輸入到所構建的混合分類模型中,完成數據流分類過程。
2.根據權利 要求1所述的一種動態數據環境下的數據流混合分類方法,其特徵在於,所述步驟2中數據流劃分模塊(103)對數據流的劃分,包括以下步驟: 步驟2.1:首先使用滑動窗口法對海量實時數據流進行靜態化處理;其中,滑動窗口每次滑動的距離為N,且每個靜態子集所包含的樣本數量也為#個; 步驟2.2:使用隨機抽取方法對步驟2.1所得到的子集進行混合,分別得到三個數據集,即訓練集、測試集和驗證集,其中訓練集和測試集的大小均為4#。
3.根據權利要求1所述的一種動態數據環境下的數據流混合分類方法,其特徵在於,所述步驟3中數據初始化模塊(104)採用MapMinMax歸一化方法對數據進行歸一化處理,包括以下步驟: 步驟3.1:首先將得到的訓練集、測試集和驗證集,分別對其各個屬性值進行統計,找到各屬性的最大和最小屬性值; 步驟3.2:對數據集的各個屬性進行歸一化處理,所述歸一化方法公式為:/ (x.) - (ymax ^ymm) -mmOi))^ 1 (ma^(x.)-mm(^)) + ymm 其中,Xi表示當前樣本的第i個屬性值,HiinCri)和max Cri)分別表示當前第i個屬性的最小和最大值,ymax和ymin分別表示歸一化的上限和下限,如果想歸一化到[0,I]區間時,則 ymax 為 I, ymin 為 O。
4.根據權利要求1所述的一種動態數據環境下的數據流混合分類方法,其特徵在於,所述步驟4中數據集成分類器模塊(105)採用支持向量機模型作為基本分類模型對數據流進行分類,並構建集成分類器,包括以下步驟: 步驟4.1:首先使用兩種支持向量機模型作為基本分類模型,即C-SVM和V (nu)-SVM模型; 步驟4.2:使用三種個函數對上述兩種支持向量機模型進行劃分,得到六個不同的支持向量機分類模型,其中,所使用核函數為線性核函數、高斯徑向基核函數和Sigmoid核函數; 步驟4.3:對得到的集成學習模型進行訓練。
5.根據權利要求1所述的一種動態數據環境下的數據流混合分類方法,其特徵在於,所述步驟5中參數優化模塊(106)對所構建的集成分類器進行參數優化,所使用優化方法為粒子群算法,優化過程包含以下步驟: 步驟5.1:首先將使用C-SVM和高斯徑向基核函數所構建的分類模型中的參數c和^?進行提取; 步驟5.2:將數據流初始化模塊(104)歸一化後的驗證數據集輸入到該模型中,然後使用PSO算法對參數進行優化,其中優化過程中的適應性函數使用《交叉驗證的方法,其公式表示為:
6.根據權利要求1所述的一種動態數據環境下的數據流混合分類方法,其特徵在於,所述步驟7中聚類模塊(107)針對集成分類器給出的分類結果即數據集L進行聚類,得到最終的分類結果,所使用聚類方法為自組織映射,包含以下步驟: 步驟7.1:首先對SOM模型進行訓練,得到訓練後的SOM模型; 步驟7.2:將測試集輸入到構建好後的集成分類模型中,得到測試集對應的類別標籤數據集; 步驟7.3:將類別標籤數據集輸入到訓練好的SOM模型中,模型計算所輸入樣本與最終類別的距離,找到被激活節點,計算方法如下:
7.據權利要求2所述的一種動態數據環境下的數據流混合分類方法,其特徵在於,所述步驟2.2中所使用的測試集是驗證集和訓練集之外的集合,其大小等同於滑動窗口大小見參數#必須提前人為設定。
8.根據權利要求4所述的一種動態數據環境下的數據流混合分類方法,其特徵在於,所述步驟4.3中所使用集成學習模型訓練方法,包含以下子步驟: 步驟4.3.1:首先將訓練集劃分為六個數據子集,劃分方法為等分法;步驟4.3.2:將劃分好後的分別輸入到集成學習模型中的六個分類器中進行訓練。
9.據權利要求5所述的一種動態數據環境下的數據流混合分類方法,其特徵在於,所述步驟5.2中所使用PSO優化方法,包含以下子步驟: 步驟5.2.1:首先使用隨機值對所要優化的變量進行賦值; 步驟5.2.2:然後在優化過程中不斷更新兩個變量K]和的值,更新方法如下,
10.根據權利要求6所述的一種動態數據環境下的數據流混合分類方法,其特徵在於,所述步驟7.1中所使用SOM聚類模型的訓練過程包含以下步驟: 步驟7.1.1:首先將驗證數據集輸入到集成學習分類模型中,得到驗證數據集所對應的類別數據集L ; 步驟7.1.2:將所得到的類別數據集對SOM模型進行訓練。
【文檔編號】G06F17/30GK103678512SQ201310608553
【公開日】2014年3月26日 申請日期:2013年12月26日 優先權日:2013年12月26日
【發明者】姚遠 申請人:大連民族學院