《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 一種K-means聚類算法的改進與應用
一種K-means聚類算法的改進與應用
2015年電子技術應用第1期
張 杰,卓 靈,朱韻攸
國家電網重慶市電力公司信息通信分公司,重慶401121
摘要: K-means算法是基于距離作為相似性度量的聚類算法,傳統的K-means算法存在難以確定中心值個數、受噪聲及孤立點影響較大的缺點。對此,利用類間相異度與類內相異度改進初始值K,以盡量減少人工干預;同時計算數據庫中每一點與剩余點的距離和距離均和,將兩者的大小比較作為識別孤立點和噪聲點的依據,從而刪除孤立點,減少對數據聚類劃分的影響。最后將改進后的K-means算法應用于入侵檢測系統并進行仿真實驗,結果表明,基于改進的K-means算法的入侵檢測系統一定程度上降低了誤報率及誤檢率,提高了檢測的準確率。
中圖分類號: TP301
文獻標識碼: A
文章編號: 0258-7998(2015)01-0125-04
The improvement and application of a K-means clustering algorithm
Zhang Jie,Zhuo Ling,Zhu Yunyou
Information & Communication Branch of State Grid Chongqing Electric Power Company,Chongqing 401121,China
Abstract: K-means algorithm is the clustering algorithm based on the distance as the similarity measure. But the traditional K-means algorithm are difficult to determine the center number, and greatly influenced by the noise and outliers. This paper uses the between class and within class dissimilarity to improve initial value K, so as to reduce the manual intervention. At the of same time, the distances between every point and the remaining points and the average in the database are calculated, which are the recognition gist of an isolated point and noise point to remove outliers and reduce the impact on data clustering partition. Finally, using the improved K-means algorithm in intrusion detection system and doing simulation experiments, the results show that based on the improved K-means algorithm,the detection system can decrease the false alarm rate and false detection rate, and improve the accuracy of detection.
Key words : data mining;clustering algorithm;K-means;intrusion detection

  

0 引言

  聚類分析是將海量的數據劃分為有意義或者有用的組(簇)。在同一簇中的數據相似度較高,不同的簇中數據差別比較大。聚類分析主要基于距離進行分析,它是一種無監視的學習訓練方式。

  K-means聚類算法是基于劃分的經典算法,但存在難以確定初始聚類中心值、受噪聲及孤立點影響較大的缺點[1]。基于此,很多學者研究提出了不同的改進K-means聚類算法的方法。參考文獻[2]把相互距離最遠的K個高密度區域的點作為初始聚類中心點;參考文獻[3]利用密度指針初始化聚類中心,從而從真實聚類中心中選取數據庫初始化聚類中心;參考文獻[4]利用密度和最近鄰的思想來尋找初始聚類中心;參考文獻[5]基于最優劃分初始聚類中心,該算法首先對數據樣本進行劃分,根據劃分樣本的分布特點確定初始聚類中心;參考文獻[6]利用偽隨機數產生初始聚類中心,但聚類數據龐大時,聚類效果不容樂觀。參考文獻[7]通過對樣本數據進行閾值分層快速確定K-means算法的聚類數搜索范圍及其上限,利用新的聚類有效性指標評價聚類后類內與類間的相似性程度,從而在聚類數搜索范圍內獲得最佳聚類數。

1 聚類分析的相似性度量和準則函數

  1.1 相似性度量

  聚類分析是依據對象兩兩之間的相似(或差異)程度來劃分類的,而這相似程度通常是用距離來衡量的[8]。最廣泛使用的距離計算公式是歐氏距離:

  1.png

  其中,i=(xi1,xi2,…,xip),j=(xj1,xj2,…,xjp)。

  1.2 準則函數

  聚類結果的質量可以由聚類準則函數來判斷,若準則函數選的好,質量就會高;反之,質量達不到要求時,則須反復運行聚類過程[9]。一般的聚類準則函數有以下3種:(1)誤差平方和準則;(2)加權平均平方距離和準則;(3)加權類間距離和準則。

2 K-means聚類算法分析

  2.1 K-means算法過程

  K-means聚類的算法流程如下:

  輸入:含有n個對象的數據集X={xi|xi∈Rd,i=1,2,…,n},聚類的個數k。

  輸出:k個類W1,W2,…,Wk。

  (1)從數據集X中隨機選取k個初始聚類中心c1,c2,…,ck。

  (2)依據初始聚類中心c1,c2,…,ck對數據集進行劃分,劃分根據以下原則:若dij(xi,cj)<dim(xi,cm),其中dij(xi,cj)是xi與cj的歐式距離,m=1,2,…,k,j=1,2,…,k,j≠m,i=1,2,…,n,則將xi劃分到類cj。

  (3)依據公式NIZKBK{YV5`)J8C9US~VA(9.jpg,ni為以聚類Ci為中心數據對象的個數,重新計算類的質心19FQF2BQOCQ}B7QX74`%TTW.png

 {`M@E@Q0N0M[}4$0`]GY06L.jpg

  (5)輸出聚類結果。

  K-means聚類算法的流程如圖1所示。

001.jpg

  2.2 K-means算法缺點

  (1)K-means算法需要首先設定K值,而算法運算中K是一個敏感值,不同的K值可能會造成不同的運算結果。

  (2)對于一些噪聲和孤立的數據較為敏感。

  (3)簇的平均值只有被定義才能使用,這不利于處理一些有特殊屬性的數據。

  2.3 K-means算法的改進

  (1)改進初始值K,盡量減少人工干預

  利用類間相異度與類內相異度來確定最終的K值,具體分3步來實現:首先,選取數據集合的中間點即所有數據集合的平均值,利用歐幾里得距離計算公式,計算出距離中間點最遠距離的對象N1,再計算出與N1距離最遠的對象N2,篩選出初始聚類中心。其次計算剩余數據對象與數據中心集合間的距離,取最小距離D,計算聚類中心之間的距離,找出最小距離C,如果D<C,則將對象放入到最小距離的聚合中,否則將其納入初始聚合中心,生成新的聚合中心,后面的數據依次與聚合中心間最小距離與D對比,循環所有數據,最終形成聚類中心集。最后,采用類間相異度與類內相異度來確定最終的聚類個數K值。

  類內的相異程度DOC:

  2.png

  類間相異度DAC:

  3.png

  其中,nc表示聚類的數目,mi表示類Cj中心,xkj表示Cj中的第k個數據對象的第j個屬性值,d(mi,mj)表示Ci與Cj間的歐幾里得距離,5L}8KI021FKQ34BIPGW2PNR.jpg表示類中第j個屬性值。

  改進后的計算方法如下:

  輸入:含有n個對象的數據集X={xi|xi∈Rd,i=1,2,…,n}。

  輸出:k個類W1,W2,…,Wk。

  ①對聚類中心進行初始化,獲得3個聚類中心。根據公式OT9(W]9K{}55DQF(8)D`JYS.jpg計算出第1個聚類中心m0,再根據歐幾里得距離計算出與m0最遠的數據對象作為第2個聚類中心m1,最后計算出與m1距離最遠的數據對象當成第3個聚類中心m2。

  ②根據歐幾里得公式計算數據集和聚類中心的距離,歸類所有數據,重新計算聚類中心。

  ③計算剩余數據對象與聚類中心的最小距離D及聚類中心之間的最小距離C, 計算出此時的類內相異度DOC_old 和此時的類間相異度DAC_old。

  ④如果D>C,則把這個數據對象作為新的聚類中心,并且計算新的類內相異度DOC_new和新的類間相異度DAC_new,運行步驟⑤;否則轉到步驟⑥。

  ⑤如果DOC_new<DOC_old且DAC_new>DAC_old則產生新類,轉到步驟②重復步驟②~⑤;否則恢復狀態,執行步驟⑥。

  ⑥取下一個類Wi,如果沒有新的類,則轉到步驟⑦;否則反復執行步驟②~⑤。

  ⑦輸出聚類結果。

  (2)對噪聲和孤立點處理能力的改進

  有時孤立點或噪聲具有入侵特征,容易干擾 K-means算法的聚類結果,這里改進原始算法來消弱噪聲和孤立點的影響。對于數據集中的所有點i,計算出每一點與剩余點的距離和Si,同時計算出距離均和H,當Si>H時,則點i被當做孤立點處理。其中n為樣本數據,d為數據維數。計算如下:

  45.png

  算法描述如下:

  ①輸入數據集,利用上述公式計算每一Si和H;

  ②對于每一點i,如果Si>H,則將i作為孤立點;

  ③刪除孤立點,獲得新的數據集。

3 改進算法在入侵檢測系統中的應用及仿真分析

  針對于入侵檢測系統的缺陷,給出了基于改進算法的入侵檢測模型流程,如圖2所示。

002.jpg

  系統檢測的對象是網絡日志中的數據。先做標準化處理,再進行聚類分析。通過篩選孤立點和改進聚類中心從而提高聚類的準確性。接著進入決策報警分析系統。根據聚類的結果甄別具有攻擊特征的記錄,一旦發現潛在威脅馬上啟動報警系統,阻止相關攻擊的進一步操作,并報告網絡管理者,與此同時挖掘其他的潛在特征,為以后判斷攻擊提供必要的依據。若沒有發現攻擊行為則繼續監視網絡動態。對網絡日志文件進行標準化的同時,也將其存入歷史數據庫中。并進行標準化處理和特征挖掘,進而數據匹配分類,構建成分類器。在分類器的反復訓練下可從這些記錄中挖掘出正常和非正常行為,并存入到規則庫中,作為今后判斷入侵行為的決策機構。

006.jpg

  表1列出的是20條網絡連接記錄的特征數據。其中,count表示目標主機與當前連接相同的次數;SY_error表示SYN錯誤連接所占的百分數;same_srv表示目標端口相同連接的百分數;Dif_srv表示目標端口不同連接的百分數;Srv_count表示目標主機與當前連接相同的次數;Srv_serror表示SYN連接錯誤的百分數;Rv_dif_host表示目標端口不同連接的百分數[10]。本文主要對三維數組(count,Srv_serror,Srv_count)進行分析。三組特征數據的空間分布圖如圖3所示。

003.jpg

  這個三維數組基本顯示了數據是否具有攻擊特征。通過分析這3個參數可以區分攻擊行為、異常行為和正常行為。當目標端口與當前連接相同的次數大于15次,并且主機出現錯誤SYN連接的百分數大于85%,目標端口與當前連接相同次數大于25次時認為是攻擊行為;若目標端口與當前連接相同的次數大于6次,并且主機出現錯誤SYN連接的百分數大于75%,目標端口與當前連接相同次數大于6次時認為是異常行為;其他則認為是正常行為。

  采用傳統的 K-means 算法聚類分析3組數據后將20條數據信息分為3類:記錄3為攻擊行為(即圖4中圓形區域);記錄4,5,6,12,13,19,20為異常行為(即圖4中橢圓區域);其余的記錄為正常行為(即圖4中矩形區域)。根據上述3種行為的特征,可以將攻擊、異常和正常行為區分開來。傳統K-means 算法卻不能進一步分析異常行為是否有攻擊特征。傳統K-means 算法對實驗數據聚類分析的空間結果如圖4所示。

004.jpg

  改進算法會分離出記錄3(孤立點),并判斷其為攻擊行為,如圖5中圓形區域。改進的K-means 算法將剩余的19條記錄聚類為三部分,記錄4,5,6,12,13,19,20為異常行為(如圖5中橢圓區域),其中5,19接近于攻擊行為(如圖5中正方形區域)。其余的記錄為正常行為。改進算法有效地提高了檢測的準確率。改進的K-means 算法對實驗數據聚類分析的空間結果如圖5所示。

005.jpg

4 總結

  本文簡單介紹了K-means算法,詳細闡述了對算法的改進,針對聚類算法中心個數難以確定的問題,本文改進了傳統K-means聚類算法中心個數確定的方法,提出了一種新的中心個數確定算法。同時對傳統K-means算法進行進一步的改進,以減少數據中噪聲點和孤立點對聚類精度的影響。并將傳統K-means算法和改進的K-means算法應用于入侵檢測系統中。實驗結果發現,基于改進的K-means算法的入侵檢測系統具有更好的入侵檢測效果,改進算法不僅降低了關鍵參數的敏感性,提高了區分精度,還在一定程度上提高了網絡入侵檢測的檢測率,降低了誤檢率。

參考文獻

  [1] 曹永春,蔡正琦,邵亞斌.基于K-means的改進人工蜂群聚類算法[J].計算機應用,2014,34(1):204-207.

  [2] 傅德勝,周辰.基于密度的改進K均值算法及實現[J].計算機應用,2011,31(2):432-434.

  [3] 牛琨,張舒博,陳俊亮.融合網格密度的聚類中心初始化方案[J].北京郵電大學學報,2007,30(2):6-10.

  [4] 張文明,吳江,袁小蛟.基于密度和最近鄰的K-means文本聚類算法[J].計算機應用,2010,30(7):1933-1935.

  [5] 崔斌,盧陽.基于不確定數據的查詢處理綜述[J].計算機應用,2008,28(11):2729-2731.

  [6] KOLEN J F,HNTCHESON T.Redneing the time complexityof the fuzzy c-means algorithm[J].IEEE Transactions on Fuzzy Systems,2002,10(2):263-267.

  [7] 王勇,唐靖,饒勤菲,等.高效率的K-means最佳聚類數確定算法[J].計算機應用,2014,34(5):1331-1335.

  [8] 呂明磊,劉東梅,曾智勇.基于改進的K-means算法的圖像檢索算法[J].計算機應用,2013,33(S1):195-198.

  [9] 雷小鋒,謝昆青,林帆,等.一種基于K-means局部最優性的高效聚類算法[J].軟件學報,2008,19(7):1683-1692.

  [10] 高紅艷,劉飛.基于局部相似性的K-means譜聚類算法[J].小型微型計算機系統,2014,35(5):1133-1134.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
一本色道久久综合亚洲二区三区| 久久久91精品国产一区二区精品| 亚洲女性裸体视频| 亚洲免费av电影| 激情视频亚洲| 国语自产精品视频在线看抢先版结局 | 国产精品福利网站| 欧美视频在线视频| 欧美日产在线观看| 欧美日韩国产欧美日美国产精品| 欧美黄色片免费观看| 欧美大色视频| 欧美高清视频一区二区三区在线观看| 免费成人av在线看| 男同欧美伦乱| 欧美大片在线看免费观看| 欧美成人69| 欧美精品久久久久久久| 欧美日本在线看| 欧美日韩精品在线| 欧美视频日韩视频| 国产精品视频午夜| 国产亚洲aⅴaaaaaa毛片| 国产亚洲免费的视频看| 狠狠色香婷婷久久亚洲精品| 狠狠色噜噜狠狠色综合久| 亚洲电影免费观看高清完整版| 亚洲国产精品尤物yw在线观看| 亚洲精品小视频| 亚洲天堂成人在线观看| 亚洲一区中文| 欧美在线观看视频一区二区| 亚洲国产99| 99re6热只有精品免费观看| 一区二区三区久久| 小黄鸭精品aⅴ导航网站入口| 欧美在线视频免费| 免费日韩av| 欧美视频日韩视频在线观看| 国产精品亚洲综合一区在线观看| 国产一级久久| 亚洲国产日韩一区| 中文av一区特黄| 欧美在线播放一区| 日韩午夜精品视频| 亚洲欧美日韩国产精品 | 欧美精品一区在线观看| 国产精品扒开腿做爽爽爽软件| 国产精品尤物福利片在线观看| 国户精品久久久久久久久久久不卡 | 最新国产の精品合集bt伙计| 正在播放欧美视频| 欧美一区二区三区日韩| 另类天堂视频在线观看| 欧美日韩性生活视频| 国产日产精品一区二区三区四区的观看方式| 国外成人在线视频网站| 亚洲精品久久| 午夜精品久久久久影视| 亚洲精选一区| 午夜精品视频一区| 欧美成人免费网| 国产精品老牛| 亚洲丁香婷深爱综合| 亚洲一区在线直播| 亚洲日本在线观看| 欧美亚洲一区二区三区| 蜜桃精品久久久久久久免费影院| 欧美日韩在线播放三区| 国产一区二区在线免费观看| 亚洲免费观看视频| 亚洲电影观看| 亚洲综合色婷婷| 欧美 日韩 国产一区二区在线视频 | 国产精品你懂的| 亚洲国产导航| 欧美一区二区国产| 一区二区高清在线观看| 久久综合网hezyo| 国产精品女人网站| 最新国产成人在线观看| 久久精品国产精品| 午夜精品亚洲一区二区三区嫩草| 欧美刺激午夜性久久久久久久| 国产精品一区二区三区成人| 亚洲伦理在线| 亚洲经典自拍| 久久久久9999亚洲精品| 国产精品户外野外| 亚洲精品乱码久久久久久黑人| 久久成人资源| 午夜精品福利在线观看| 欧美精品一卡二卡| 亚洲福利视频专区| 久久精品导航| 国产精品一区二区男女羞羞无遮挡 | 亚洲人成在线播放| 91久久精品视频| 欧美视频在线观看| 老司机免费视频一区二区三区| 亚洲丰满少妇videoshd| 影音先锋在线一区| 另类天堂视频在线观看| 亚洲午夜黄色| 亚洲国产精品第一区二区| 一区二区三区视频在线看| 欧美日本精品| 欧美美女视频| 亚洲香蕉网站| 最新亚洲电影| 亚洲天堂免费观看| 影音先锋中文字幕一区二区| 久久在线免费| 亚洲专区一二三| 亚洲免费高清| 亚洲欧美三级在线| 国产一区二区三区在线观看精品| 久久综合电影| 午夜综合激情| 一区二区国产日产| 亚洲欧洲日韩女同| 久久国产综合精品| 日韩视频一区| 极品裸体白嫩激情啪啪国产精品| 欧美视频不卡| 久久在线免费| 亚洲一区二区三区乱码aⅴ| 久久国产精品久久国产精品| 一区二区三区精品视频在线观看 | 欧美一区二区在线免费播放| 亚洲亚洲精品在线观看| 夜夜嗨av一区二区三区四季av| 亚洲黄色一区二区三区| 欧美在线二区| 一本色道久久综合精品竹菊| 国产精品日韩| 国产精品久久久久99| 欧美成人三级在线| 久久精品av麻豆的观看方式 | 亚洲乱码国产乱码精品精可以看| 欧美一区二区三区视频在线观看| 午夜精品久久99蜜桃的功能介绍| 99热精品在线| 一区二区动漫| 99re在线精品| 亚洲在线视频免费观看| 一级日韩一区在线观看| 亚洲人成高清| 一区二区三区在线观看国产| 国产一区二区在线免费观看| 伊人男人综合视频网| 国产伦精品一区二区三区高清版 | 99热这里只有精品8| 亚洲国产欧美日韩| 亚洲国产精品成人一区二区| 亚洲精品免费网站| 亚洲精品一区在线| 亚洲国产美国国产综合一区二区| 午夜精品久久久久99热蜜桃导演| 欧美一区亚洲| 久久国产精彩视频| 亚洲免费综合| 欧美大片一区二区| 欧美a级一区二区| 欧美午夜宅男影院| 国产亚洲成av人在线观看导航| 激情偷拍久久| 在线观看不卡av| 亚洲第一精品久久忘忧草社区| 亚洲国产精品传媒在线观看| 亚洲一区二区三区在线| 欧美一区二视频| 一本到12不卡视频在线dvd| 西瓜成人精品人成网站| 国产精品日韩一区| 亚洲第一区中文99精品| 亚洲激情欧美激情| 欧美一区二区在线视频| 一本色道**综合亚洲精品蜜桃冫 | 亚洲欧美日韩一区在线| 午夜亚洲福利| 亚洲影院色在线观看免费| 久久人人97超碰精品888| 欧美日韩综合精品| 亚洲精品免费在线观看| 亚洲精品一区二区三区婷婷月| 久久九九免费视频| 国产精品久久亚洲7777| 亚洲国产精品久久久久秋霞影院 | 欧美日本一道本在线视频| 国内精品美女av在线播放| 亚洲日本中文字幕区| 亚洲精品永久免费精品| 久热精品在线视频| 亚洲韩国日本中文字幕| 性色av一区二区三区| 久久久久久久久久码影片| 伊人蜜桃色噜噜激情综合| 午夜国产精品影院在线观看| 亚洲天堂久久|