專利名稱:一種基于動態二叉樹的svm多分類方法
技術領域:
本發明涉及一種SVM (Support Vector Machine,支持向量機)多分類方法,尤其涉及一種基于動態二叉樹的SVM多分類方法,屬于數據挖掘技術領域。
背景技術:
支持向量機最初是為兩類分類問題而設計的,而在實際應用中,多分類問題更為普遍。如何將支持向量機的優良性能推廣到多類分類當中去,成為目前支持向量機研究的一個熱點問題。目前存在的支持向量機多分類方法可以分為兩類一類方法是在所有的訓練樣本上求解一個大的二次規劃問題,同時將多個類分開。這類方法在思想上比較簡單,但求解這樣一個大的多類二次規劃其計算復雜度大大增加,從而其訓練時間較長。第二類方法是構造和結合多個兩類分類問題進行多類分類。這類方法包括一類對余類法、一類對一類法、決 策二叉樹法和決策導向無環圖法等。一類對余類法(One Versus Rest, 0VR)是目前應用最為廣泛的方法之一,其步驟是構造K個兩類分類機(設共有K個類別),其中第i個支持向量機以第i類樣本為正類樣本,其余樣本為負類樣本進行訓練。判別時,輸入樣本經過K個向量機共得到K個輸出值,若有一個+1出現,則其對應類別為輸入樣本類別;若沒有一個+1輸出,則證明輸入向量不屬于這K種類型中的一種,而屬于其他類型,本次分類失敗。OVR方法的優點是只需要訓練K個兩類分類機,所得到的分類函數的個數(K個)較少,在樣本數量不大的情況下訓練速度較快。OVR方法的缺點是1、每個二分類向量機的訓練都是將全部樣本作為訓練樣本,這需要求解K個含全部變量的二次規劃問題。因為支持向量機的訓練速度隨著訓練樣本數的增加而急劇減慢,因此,OVR方法訓練時間較長;2.隨著樣本數量的增加分類速度也會急劇減慢,由判別方法可知,每一個樣本必須經過每一個支持向量機,這樣大大的降低了分類速度。
發明內容
本發明所要解決的技術問題在于克服傳統基于支持向量機的分類技術所存在的隨著樣本數量的增多,分類速度急劇下降的不足,提供一種基于動態二叉樹的SVM多分類方法,在不影響分類準確率的情況下有效提高多分類的速度,擴展了基于支持向量機的多分類方法的應用范圍。本發明具體采用以下技術方案解決上述技術問題。一種基于動態二叉樹的SVM多分類方法,首先利用訓練好的多個二分類SVM構造二叉樹結構的SVM多分類器,然后利用所構造的SVM多分類器對測試樣本集進行分類;所述利用所構造的SVM多分類器對測試樣本集進行分類,具體包括以下步驟步驟I、將測試樣本集中的第一個測試樣本輸入所述SVM多分類器的根節點,并將SVM多分類器中各二分類SVM的調整因子初始化為O,所述調整因子的定義為該二分類SVM的分類成功次數與分類總次數的比值,分類成功次數為通過該二分類SVM并且輸出結果為+1的測試樣本的個數,分類總次數是指通過該二分類SVM的測試樣本的總數;
步驟2、如當前節點為空節點,則分類過程結束,轉到步驟4,否則,轉至步驟3 ;
步驟3、用當前二分類SVM對待分類樣本進 行分類,如輸出結果為-I,則根據輸出結果動態調整當前二分類SVM的調整因子,并將該測試樣本輸入給當前二分類SVM的子節點所對應的二分類SVM,然后轉步驟2 ;若為+1,則根據輸出結果動態調整當前二分類SVM的調整因子,分類過程結束,轉至步驟4 ;
步驟4、判斷SVM多分類器中各二分類SVM的調整因子的最大值與最小值之間的比值是否大于一預設的調整閾值,如是,則按照以下方法重新調整所述SVM多分類器的二叉樹結構將調整因子值大的SVM向二叉樹的根部位置調整,即調整因子最大的SVM作為根節點,次大的SVM作為根節點的子節點,以此類推,建立新的二叉樹結構;如否,則保持二叉樹的結構不變;
步驟5、將測試樣本集中的下一個測試樣本輸入所述SVM多分類器的根節點,并重復執行步驟2—步驟4,直至測試樣本集中所有測試樣本均完成分類。本發明的多分類方法可廣泛用于各領域的數據挖掘,例如
一種網絡告警預測方法,對告警的時間序列進行分類,分類結果即為預測結果,所述對告警的時間序列進行分類,包括以下步驟
步驟A、對一類網絡告警歷史數據進行向量提取并進行預處理,得到該類網絡告警的訓練樣本;
步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類網絡告警的二分類
SVM ;
步驟C、選取多類網絡告警歷史數據分別重復步驟A—步驟B,得到多個訓練好的二分類 SVM ;
步驟D、利用得到的多個訓練好的二分類SVM,使用上述基于動態二叉樹的SVM多分類方法對告警的時間序列進行分類,分類結果即為預測結果。一種P2P流量分類方法,用于對P2P流量所屬類型進行識別,包括以下步驟 步驟A、對一類P2P流量數據進行特征提取,得到該類P2P流量的訓練樣本;
步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類P2P流量的二分類SVM ; 步驟C、選取多類P2P流量數據分別重復步驟A—步驟B,得到多個訓練好的二分類
SVM ;
步驟D、利用得到的多個訓練好的二分類SVM,使用上述基于動態二叉樹的SVM多分類方法對P2P流量數據進行分類。一種圖像語義分類方法,包括以下步驟
步驟A、對一類圖像進行語義特征提取,得到該類圖像的訓練樣本;
步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類圖像的二分類SVM ; 步驟C、選取多類圖像分別重復步驟A—步驟B,得到多個訓練好的二分類SVM ;
步驟D、利用得到的多個訓練好的二分類SVM,使用上述基于動態二叉樹的SVM多分類方法對圖像進行語義分類。一種網絡攻擊檢測方法,通過對網絡數據包進行分類,判斷是否發生網絡攻擊,所述對網絡數據包進行分類,包括以下步驟
步驟A、對一類網絡攻擊數據進行特征提取,得到該類網絡攻擊的訓練樣本;
步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類網絡攻擊的二分類
SVM ;
步驟C、選取多類已知的網絡攻擊數據分別重復步驟A—步驟B,得到多個訓練好的二分類SVM ;
步驟D、利用得到的多個訓練好的二分類SVM,使用上述基于動態二叉樹的SVM多分類方法對網絡數據包進行分類。一種網頁分類方法,包括以下步驟
步驟A、對一類網頁數據進行特征提取,得到該類網頁的訓練樣本;
步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類網頁的二分類SVM ;步驟C、選取多類網頁數據分別重復步驟A—步驟B,得到多個訓練好的二分類SVM ;步驟D、利用得到的多個訓練好的二分類SVM,使用上述基于動態二叉樹的SVM多分類方法對網頁進行分類。本發明的多分類方法利用多個二分類SVM構成二叉樹結構的SVM多分類器,并在分類過程中根據各二分類SVM的分類結果動態調整二叉樹結構,將分類成功率較高的二分類SVM調整至二叉樹結構的根部,從而提高早期分類成功的概率,并且減少單個樣本所經過的二分類SVM的數量,在保證分類準確率的同時有效提高了分類速度。
圖I為二叉樹結構的SVM多分類器的結構;
圖2為本發明中定義的支持向量機的結構;
圖3為本發明基于動態二叉樹的SVM多分類方法的流程圖。
具體實施例方式下面結合附圖對本發明的技術方案進行詳細說明
本發明的目的在于解決現有基于支持向量機的多分類方法存在的分類速度低的問題。考慮到在具體的應用環境中每一個樣本只能屬于一個類別,所以在一個樣本經過K個向量機形成的二叉樹隊列時,若輸出結果為+1,則可以不經過剩下的向量機,這樣會節約大量時間。基于這個思想可以將經常輸出+1的支持向量機調到隊列前半部,這樣又會節省一部分時間,提高分類的速度。基于以上思想,本發明在分類階段,首先將多個訓練好的二分類SVM組合成一棵二叉樹,二叉樹的結構如圖I所示,同時在每一個支持向量機中增加一個調整因子屬性,所述調整因子的定義為該二分類SVM的分類成功次數與分類總次數的比值,分類成功次數為通過該二分類SVM并且輸出結果為+1的測試樣本的個數,分類總次數是指通過該二分類SVM的測試樣本的總數。在分類的過程中根據每個二分類SVM的分類結果不斷調整其調整因子的大小,當各二分類SVM的調整因子的最大值與最小值之比大于預設的閾值時,對二、叉樹的結構重新進行調整,將調整因子最大的二分類SVM放到二叉樹的根節點,第二大的作為其子節點,以此類推,形成一棵新的二叉樹。調整后繼續進行后續樣本的分類過程。本發明的基于動態二叉樹的SVM多分類方法,首先利用訓練好的多個二分類SVM構造二叉樹結構的SVM多分類器,其中所述二分類SVM在傳統支持向量機的結構基礎上增加了三個屬性,分別為分類成功次數、分類總次數和調整因子屬性,分類成功次數為通過該SVM并且輸出結果為+1的向量的個數,分類總次數是指通過該SVM的向量的總數。該二分類SVM的屬性結構如圖2所示。然后利用所構造的SVM多分類器對測試樣本集進行分類,具體包括以下步驟 步驟I、將測試樣本集中的第一個測試樣本輸入所述SVM多分類器的根節點,并將SVM
多分類器中各二分類SVM的調整因子初始化為0 ;
步驟2、如當前節點為空節點,則分類過程結束,轉到步驟4,否則,轉至步驟3 ;· 步驟3、用當前二分類SVM對待分類樣本進行分類,如輸出結果為-1,則根據輸出結果動態調整當前二分類SVM的調整因子,并將該測試樣本輸入給當前二分類SVM的子節點所對應的二分類SVM,然后轉步驟2 ;若為+1,則根據輸出結果動態調整當前二分類SVM的調整因子,分類過程結束,轉至步驟4 ;
步驟4、判斷SVM多分類器中各二分類SVM的調整因子的最大值與最小值之間的比值是否大于一預設的調整閾值4如
是,則按照以下方法重新調整所述SVM多分類器的二叉樹結構將調整因子值大的SVM向二叉樹的根部位置調整,即調整因子最大的SVM作為根節點,次大的SVM作為根節點的子節點,以此類推,建立新的二叉樹結構;如否,則保持二叉樹的結構不變;
步驟5、將測試樣本集中的下一個測試樣本輸入所述SVM多分類器的根節點,并重復步驟執行步驟2—步驟4,直至測試樣本集中所有測試樣本均完成分類。本發明的基于動態二叉樹的SVM多分類方法的流程如圖3所示。為了使公眾更進一步了解本發明的技術方案,下面舉幾個不同領域的應用實例進行說明。應用實例I、網絡告警預測
SVM的一個應用為網絡告警的預測,利用SVM的分類功能,對告警的時間序列進行分類,分類結果即為預測結果,因為一個SVM只能分類預測一種類型的告警是否存在,而網絡中需要對多種類型的告警進行預測,所以需要訓練得到多個SVM,并將多個SVM組織成一個二叉樹結構,解決多分類的問題。假設在一個雙向有限電視網絡中,主要管理HFC設備、光網絡設備(Optical Network Unit, 0NU)和 MoCA (Multimedia over Coax Alliance)頭端以及MoCA終端,其中可能出現五種類型的告警光纜終端設備(Optical Line Terminal,0LT)信號丟失、設備丟包率過高、鏈路故障、頭端掉線和終端掉線。本實例對這五種類型的告警進行預測,則需要建立五個SVM。網絡告警預測的具體過程如下
I、SVM的學習階段
I)對告警記錄進行向量提取,得到目標告警為OLT信號丟失的向量,然后對其進行預處理,形成訓練樣本,對所得到的訓練樣本進行訓練學習,生成可以分類出OLT信號丟失的SVM ;2)重復上述過程,分別得到四個是否為某種類型告警的SVM ;
2、基于動態二叉樹的SVM多分類階段
1)將五個SVM的調整因子都初始化為O;
2)按照訓練得到SVM的順序,構造初始二叉樹,根節點為OLT信號丟失SVM,其孩子節點為設備丟包率過高SVM,以此類推分別為鏈路故障SVM、頭端掉線SVM和終端掉線SVM ;
3)將測試樣本中的下一個樣本通過該二叉樹,向量首先通過根節點OLT信號丟失SVM;
4)判斷當前節點是否為空節點,若為空節點,則當前向量分類結束,轉步驟7),否則轉步驟5);
5)用當前節點對應的SVM對該向量進行二分類,并修改當前SVM的調整因子的值;
6)判斷當前SVM的輸出結果是否為+1,若為+1,表明當前樣本已成功分類,轉步驟7),若為-1,則該樣本繼續通過當前節點的孩子節點,轉步驟4);
7)計算二叉樹節點中最大調整因子與最小調整因子的比值,與閾值6進行比較,若比值大于P則重新調整五個SVM在二叉樹中的位置,將調整因子最大的作為根節點,次大的作為根節點的孩子節點,以此類推,形成新的二叉樹,若比值小于A則保持二叉樹的結構不變;
8)判斷樣本中的向量是否已全部分類結束,若未結束則轉到步驟3),若樣本分類結束,則整個分類過程結束。
應用實例2、P2P流量分類
對等網絡(Peer to Peer, P2P)通過對等節點之間直接連接而共享、傳遞資源,具有資源利用率高、服務器負載小、消除了服務器瓶頸等優勢,因而在流媒體、即時通訊、文件共享、網絡游戲、搜索引擎和協同工作等方面取得了廣泛應用。但同時,P2P業務也過度消耗了網絡資源,甚至引起網絡擁塞。為了保證網絡 正常有序的運行,需要有效識別各種類型的P2P流量并采取相應的管理策略。本發明方法可部署在網絡中的接入網關、核心路由器或其旁路上,通過多個SVM組織成動態二叉樹對從接入網關或路由器上采集的網絡流量進行分類。假設在局域網的核心路由器上采集了網絡數據流的五元組(源、目的IP地址,源、目的端口號,協議)及其主要的流量統計特征,包括(數據包大小變化的均方差、主被動連接數比值、上下行流量的比值),形成數據流的樣本數據,并應用本發明方法對從局域網的核心路由器上采集到的樣本數據流進行分類,識別出非P2P流量和BitT0rrent、PPLive、UUsee、Thunder、MSN以及Skype六種常用的P2P流量,共需要建立七個SVM。P2P流量分類的具體過程如下
I、SVM的學習階段
I)對P2P數據流進行數據預處理,提取五元組及其主要屬性特征,形成訓練樣本,用所得到的訓練樣本對一個SVM進行訓練,生成一個可以分類出P2P流量的SVM。2)重復上述過程,對BitTorrent流量、PPLive流量、UUsee流量、Thunder流量、MSN流量和Skype流量分別得到一個能判斷數據流是否為該種類型流量的SVM。2、基于動態二叉樹的SVM多分類階段
1)將七個SVM的調整因子都初始化為0;
2)按照訓練得到SVM的順序,構造初始二叉樹,根節點為P2P流量分類SVM,其孩子節點為BitTorrent流量分類SVM,以此類推分別為PPLive流量分類SVM、UUsee流量分類SVM、Thunder流量分類SVM、MSN流量分類SVM和Skype流量分類SVM ;
3)將測試樣本中的下一個樣本通過該二叉樹,向量首先通過P2P流量分類SVM;
4)判斷當前節點是否為空節點,若為空節點,則當前樣本分類結束,轉步驟7),否則轉步驟5);
5)用當前節點對應的SVM對該樣本進行二分類,并修改當前SVM的調整因子的值;
6)判斷當前SVM的輸出結果是否為+1,若為+1,表明當前樣本已成功分類,轉步驟7),若為-1,則當前樣本繼續通過當前節點的孩子節點,轉步驟4);
7)計算二叉樹節點中最大調整因子與最小調整因子的比值,與閾值£ 進行比較,若比值大于4則重新調整七個SVM在二叉樹中的位置,將調整因子最大的作為根節點,次大的作為根節點的孩子節點,以此類推,形成新的二叉樹,若比值小于4則保持二叉樹的結構不變;
8)判斷樣本是否已全部分類結束,若未結束則轉到步驟3),若樣本分類結束,則整個分類過程結束。
應用實例3、圖像語義分類
圖像是多媒體的一種主要表現形式,將圖像數據庫劃分為有意義的語義類別是基于內容的圖像檢索中的一個重要內容。SVM算法由于需要的訓練樣本少,分類效果好,被廣泛應用在圖像語義分類中。本應用實例對Corel image Datasets的圖片(http ://corel.digitalriver. com/)進行語義分類,Corel數據集包括土著居民、大海、建筑、大巴車、恐龍、大象、花、草原上的馬、雪山、食物10個類別。應用本發明方法先用每一類別中的已標注樣本圖片進行學習建立一個SVM,再將學習后的SVM建立動態二叉樹對待分類的未標注樣本圖片進行快速分類。分類的圖像特征(即分類器的輸入特征)包括64維顏色特征和18維紋理特征。圖像語義分類的具體過程如下
I、SVM的學習階段
1)對土著居民的樣本圖片集進行預處理,提取圖片的82維圖像特征形成訓練樣本,建立一個SVM并用所形成的訓練樣本進行學習,生成可以分類出土著居民的SVM ;
2)重復上述過程,分別用每一種類別的樣本圖片集訓練一個SVM,對大海、建筑、大巴車、恐龍、大象、花、草原上的馬、雪山、食物九種類型分別得到一個能判斷出圖像是否為某種類型的SVM,共九個SVM。2、基于動態二叉樹的SVM多分類階段
1)將十個SVM的調整因子都初始化為0;
2)按照訓練得到SVM的順序,構造初始二叉樹,根節點為土著居民的分類SVM,其孩子節點為大海的 分類SVM,以此類推分別為建筑、大巴車、恐龍、大象、花、草原上的馬、雪山、食物的分類SVM ;
3)將由未標注圖片的圖像特征構成的測試樣本集中的下一個樣本通過該二叉樹,向量首先通過土著居民的分類SVM ;
4)判斷當前節點是否為空節點,若為空節點,則當前樣本分類結束,轉步驟7),否則轉步驟5);
5)用當前節點對應的SVM對該樣本進行二分類,并修改當前SVM的調整因子的值;
6)判斷當前SVM的輸出結果是否為+1,若為+1,表明當前樣本已成功分類,轉步驟7),若為-1,則當前樣本繼續通過當前節點的孩子節點,轉步驟4);
7)計算二叉樹節點中最大調整因子與最小調整因子的比值,與閾值6進行比較,若比值大于4則重新調整七個SVM在二叉樹中的位置,將調整因子最大的作為根節點,次大的作為根節點的孩子節點,以此類推,形成新的二叉樹,若比值小于4則保持二叉樹的結構不變;
8)判斷樣本是否已全部分類結束,若未結束則轉到步驟3),若樣本分類結束,則整個分類過程結束。
應用實例4、網絡攻擊檢測
在一個網絡的交換機、入口路由器或防火墻內部等數據流的關鍵入口,監聽本網段內的所有數據包并使用本發明方法對捕獲的網絡數據包進行分類,判斷是否發生異常入侵。設已采集到的網絡數據集(如MIT林肯實驗室收集的網絡入侵檢測數據集KDDCUP99)包括涉及基本特征、內容特征、流量特征和主機流量特征四類特征的41維屬性,其中有34個連續屬性和7個分類屬性,需從中檢測出拒絕服務攻擊(Denial of Service, DoS)、探測攻擊(Probing)、用戶獲取超級權限攻擊(User to Root, U2R)和遠程網絡用戶攻擊(Remote toLocal, R2L)四種常見的網絡攻擊。則應用本發明方法先對每一種攻擊數據進行學習建立一個SVM,再將學習后的SVM建立動態二叉樹結構對樣本數據包進行快速分類。網絡入侵檢測的具體過程如下
I、SVM的學習階段
1)對網絡數據集進行數據預處理,提取DoS攻擊數據集中的34個連續屬性形成訓練樣本,建立一個SVM并用所形成的訓練樣本進行學習,生成可以分類出DoS攻擊的SVM ;
2)重復上述過程,分別用每一種攻擊數據集訓練一個SVM,對Probing、U2R和R2L型攻擊分別得到一個能判斷出是否為某種攻擊的SVM。2、基于動態二叉樹的SVM多分類階段
1)將四個SVM的調整因子都初始化為0;
2)按照訓練得到SVM的順序,構造初始二叉樹,根節點為DoS分類SVM,其孩子節點為Probing分類SVM,以此類推分別為U2R分類SVM和R2L分類SVM ;
3)將測試樣本中的下一個樣本通過該二叉樹,向量首先通過DoS分類SVM;
4)判斷當前節點是否為空節點,若為空節點,則當前樣本分類結束,轉步驟7),否則轉步驟5);
5)用當前節點對應的SVM對該樣本進行二分類,并修改當前SVM的調整因子的值;
6)判斷當前SVM的輸出結果是否為+1,若為+1,表明當前樣本已成功分類,轉步驟7),若為-1,則當前樣本繼續通過當前節點的孩子節點,轉步驟4);
7)計算二叉樹節點中最大調整因子與最小調整因子的比值,與閾值0進行比較,若比值大于4則重新調整七個SVM在二叉樹中的位置,將調整因子最大的作為根節點,次大的作為根節點的孩子節點,以此類推,形成新的二叉樹,若比值小于4則保持二叉樹的結構不變;
8)判斷樣本是否已全部分類結束,若未結束則轉到步驟3),若樣本分類結束,則整個分類過程結束。
應用實例5、網頁分類
Internet的迅速普及使網絡成為人們信息獲取的主要來源。而網頁自動分類是一種有效處理海量Web信息的重要技術,可以幫助用戶從海量的網頁中迅速準確地獲取所需信息。它是指對于待分類網頁根據其內容,由計算機根據某種自動分類算法,把網頁分為預先定義好的類別。本發明方法可以對網頁實現快速自動分類。本應用實例從Internet下載一定數量的(如2000個)網頁,手工分為財經、體育、軍事、科技、文化共5個類別。其中,選取一部分網頁(如1500個)作為訓練集,其余網頁(500個)作為樣本集。在用本發明方法進行分 類之前,需首先對網頁進行特征提取,即先對超文本進行網頁過濾,獲得網頁正文、超文本標記和超鏈接信息。再對網頁正文進行分詞處理,并用TF-IDF(term frequency - inversedocument frequency)特征表示法將正文文本表示成由詞條組成的向量形式,設所有網頁文本的全部特征總數是n,則構成一個n維的向量空間,其中每一個網頁文本被表示為一個n維向量^…向量在每一維上的分量對應該特征在這個頁面中的權值。然后,運用本發明方法對每一類別的網頁訓練集進行學習建立一個SVM,再將學習后的SVM建立動態二叉樹結構對網頁樣本集進行快速分類。網頁分類的具體過程如下
I、SVM的學習階段
1)對網頁訓練集進行數據預處理,提取財經類網頁中每一個網頁的n維特征向量形成訓練樣本,建立一個SVM并用所形成的訓練樣本進行學習,生成可以分類出財經類網頁的SVM ;
2)重復上述過程,分別用每一種類別的網頁集訓練一個SVM,對體育、軍事、科技、文化這四個類別分別得到一個能判斷出網頁是否為某種類型的SVM。2、基于動態二叉樹的SVM多分類階段
1)將五個SVM的調整因子都初始化為0;
2)按照訓練得到SVM的順序,構造初始二叉樹,根節點為財經分類SVM,其孩子節點為體育分類SVM,以此類推分別為軍事、科技和文化分類SVM ;
3)將測試樣本中的下一個樣本通過該二叉樹,向量首先通過判斷是否為財經類網頁的
SVM ;
4)判斷當前節點是否為空節點,若為空節點,則當前樣本分類結束,轉步驟7),否則轉步驟5);
5)用當前節點對應的SVM對該樣本進行二分類,并修改當前SVM的調整因子的值;
6)判斷當前SVM的輸出結果是否為+1,若為+1,表明當前樣本已成功分類,轉步驟7),若為-1,則當前樣本繼續通過當前節點的孩子節點,轉步驟4);
7)計算二叉樹節點中最大調整因子與最小調整因子的比值,與閾值^進行比較,若比值大于6,則重新調整七個SVM在二叉樹中的位置,將調整因子最大的作為根節點,次大的作為根節點的孩子節點,以此類推,形成新的二叉樹,若比值小于4則保持二叉樹的結構不變;
8)判斷樣本是否已全部分類結束,若未結束則轉到步驟3),若樣本分類結束,則整個分類過程結束。以上應用實例僅為了便于公眾理解本發明的技術方案, 并非對本發明的限定,本領域技術人員應知,在不脫離本發明的精神和范圍的情況下,還可以作出各種變化或應用于不同領域,因此所有等同的技術方案以及在不同領域的應用均屬于本發明的保護范圍。
權利要求
1.一種基于動態二叉樹的SVM多分類方法,首先利用訓練好的多個二分類SVM構造二叉樹結構的SVM多分類器,然后利用所構造的SVM多分類器對測試樣本集進行分類;其特征在于,所述利用所構造的SVM多分類器對測試樣本集進行分類,具體包括以下步驟步驟I、將測試樣本集中的第一個測試樣本輸入所述SVM多分類器的根節點,并將SVM 多分類器中各二分類SVM的調整因子初始化為O,所述調整因子的定義為該二分類SVM的分類成功次數與分類總次數的比值,分類成功次數為通過該二分類SVM并且輸出結果為+1的測試樣本的個數,分類總次數是指通過該二分類SVM的測試樣本的總數;步驟2、如當前節點為空節點,則分類過程結束,轉到步驟4,否則,轉至步驟3 ;步驟3、用當前二分類SVM對待分類樣本進行分類,如輸出結果為-1,則根據輸出結果動態調整當前二分類SVM的調整因子,并將該測試樣本輸入給當前二分類SVM的子節點所對應的二分類SVM,然后轉步驟2 ;若為+1,則根據輸出結果動態調整當前二分類SVM的調整因子,分類過程結束,轉至步驟4 ;步驟4、判斷SVM多分類器中各二分類SVM的調整因子的最大值與最小值之間的比值是否大于一預設的調整閾值,如是,、則按照以下方法重新調整所述SVM多分類器的二叉樹結構將調整因子值大的SVM向二叉樹的根部位置調整,即調整因子最大的SVM作為根節點, 次大的SVM作為根節點的子節點,以此類推,建立新的二叉樹結構;如否,則保持二叉樹的結構不變;步驟5、將測試樣本集中的下一個測試樣本輸入所述SVM多分類器的根節點,并重復執行步驟2—步驟4,直至測試樣本集中所有測試樣本均完成分類。
2.—種網絡告警預測方法,對告警的時間序列進行分類,分類結果即為預測結果,其特征在于,所述對告警的時間序列進行分類,包括以下步驟步驟A、對一類網絡告警歷史數據進行向量提取并進行預處理,得到該類網絡告警的訓練樣本;步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類網絡告警的二分類SVM ;步驟C、選取多類網絡告警歷史數據分別重復步驟A—步驟B,得到多個訓練好的二分類 SVM ;步驟D、利用得到的多個訓練好的二分類SVM,使用權利要求I所述基于動態二叉樹的 SVM多分類方法對告警的時間序列進行分類,分類結果即為預測結果。
3.—種P2P流量分類方法,用于對P2P流量所屬類型進行識別,其特征在于,包括以下步驟步驟A、對一類P2P流量數據進行特征提取,得到該類P2P流量的訓練樣本;步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類P2P流量的二分類SVM ; 步驟C、選取多類P2P流量數據分別重復步驟A—步驟B,得到多個訓練好的二分類SVM ;步驟D、利用得到的多個訓練好的二分類SVM,使用權利要求I所述基于動態二叉樹的 SVM多分類方法對P2P流量數據進行分類。
4.一種圖像語義分類方法,其特征在于,包括以下步驟步驟A、對一類圖像進行語義特征提取,得到該類圖像的訓練樣本;步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類圖像的二分類SVM ; 步驟C、選取多類圖像分別重復步驟A—步驟B,得到多個訓練好的二分類SVM ; 步驟D、利用得到的多個訓練好的二分類SVM,使用權利要求I所述基于動態二叉樹的 SVM多分類方法對圖像進行語義分類。
5.一種網絡攻擊檢測方法,通過對網絡數據包進行分類,判斷是否發生網絡攻擊,其特征在于,所述對網絡數據包進行分類,包括以下步驟步驟A、對一類網絡攻擊數據進行特征提取,得到該類網絡攻擊的訓練樣本;步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類網絡攻擊的二分類SVM ; 步驟C、選取多類已知的網絡攻擊數據分別重復步驟A—步驟B,得到多個訓練好的二分類SVM ;步驟D、利用得到的多個訓練好的二分類SVM,使用權利要求I所述基于動態二叉樹的 SVM多分類方法對網絡數據包進行分類。
6.一種網頁分類方法,其特征在于,包括以下步驟步驟A、對一類網頁數據進行特征提取,得到該類網頁的訓練樣本;步驟B、利用得到的訓練樣本對二分類SVM進行訓練,得到該類網頁的二分類SVM ; 步驟C、選取多類網頁數據分別重復步驟A—步驟B,得到多個訓練好的二分類SVM ; 步驟D、利用得到的多個訓練好的二分類SVM,使用權利要求I所述基于動態二叉樹的 SVM多分類方法對網頁進行分類。
全文摘要
本發明公開了一種基于動態二叉樹的SVM多分類方法,屬于數據挖掘技術領域。本發明基于動態二叉樹的SVM多分類方法利用多個二分類SVM構成二叉樹結構的SVM多分類器,并在分類過程中根據各二分類SVM的分類結果動態調整二叉樹結構,將分類成功率較高的二分類SVM調整至二叉樹結構的根部,從而提高早期分類成功的概率,并且減少單個樣本所經過的二分類SVM的數量,在保證分類準確率的同時有效提高了分類速度。本發明還公開了一種采用本發明多分類方法的網絡告警預測方法、P2P流量分類方法、圖像語義分類方法、網絡攻擊檢測方法及網頁分類方法。
文檔編號G06K9/62GK102722726SQ201210181550
公開日2012年10月10日 申請日期2012年6月5日 優先權日2012年6月5日
發明者朱紅, 王亞石, 程春玲, 隋宗見, 韋磊 申請人:南京郵電大學, 江蘇省電力公司南京供電公司