《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 一種改進的基于密度的聚類算法
一種改進的基于密度的聚類算法
李 樂1, 陳鴻昶1, 李 鵬2
1. 國家數字交換系統工程技術研究中心,河南 鄭州450002;2. 珠海高凌信息科技有限公司,廣東
摘要: 基于密度的聚類是聚類算法中的一種,其主要優點是可以發現任意形狀的簇,但處理大數據集時效果不佳,為此提出了一種改進的算法M-DBSCAN,保留了基于密度聚類算法的優點,同時克服了以往算法不能處理大數據集的缺點。實驗結果證明,M-DBSCAN聚類算法在聚類質量及速度上都比原DBSCAN有較大提高。
Abstract:
Key words :

摘 要: 基于密度的聚類是聚類算法中的一種,其主要優點是可以發現任意形狀的簇,但處理大數據集時效果不佳,為此提出了一種改進的算法M-DBSCAN,保留了基于密度聚類算法的優點,同時克服了以往算法不能處理大數據集的缺點。實驗結果證明,M-DBSCAN聚類算法在聚類質量及速度上都比原DBSCAN有較大提高。
關鍵詞: 聚類; DBSCAN算法; 在線聚類

  聚類就是把相似的東西歸為一類,有明顯區別的事物分屬在不同的類別中,方便處理的一種數據挖掘的方法。目前,它已成為數據挖掘研究領域中一個非常活躍的研究方向。聚類分析技術在模式識別、數據分析、圖像處理和市場研究等許多領域得到了廣泛的應用。
  迄今為止,人們提出了許多聚類分析的算法,其中基于密度的聚類算法能夠發現任意形狀的簇,應用較為廣泛。其主要思想是:只要臨近區域的密度(對象或數據點的數目)超過某個閾值就繼續聚類。也就是說,對給定類中的每個數據點,在一個給定范圍的區域中必須至少包含某個數目的點。這樣的方法可以用來過濾噪聲和孤立點數據,發現任意形狀的類。
  基于密度的聚類算法主要有:DBSCAN(Density Based Spatial Clustering of Applications with Noise),OPTICS(Ordering Points to Identify the Clustering Structure)等。DBSCAN算法利用類的高密度連通性可以快速發現任意形狀的類,但是當處理的數據量較大時,一般的聚類算法不能滿足在線聚類這一特點,計算復雜度高,速度慢。針對此問題本文提出了一種改進的M-DBSCAN(Modified-DBSCAN)算法,改善了DBSCAN存在的不足,而且對處理大量數據有較好的效果。
1 DBSCAN算法
  MARTIN E等人提出的DBSCAN算法將具有足夠高密度的區域劃分為一類,并可以在帶有噪聲的空間數據庫中發現任意形狀的聚類[1]。
  DBSCAN算法提出了一些新的定義:

  DBSCAN算法是基于密度的聚類算法,它將類看作是數據空間中被低密度區域分割開的高密度對象區域。在該算法中,發現一個聚類的過程是基于這樣的事實:一個聚類能夠被其中的任意一個核心對象所確定。其基本思想是:考察數據庫D中的某一個點P,若P是核心點,則通過區域查詢得到該點的鄰域,鄰域中的點和P同屬于一個類,這些點將作為下一輪的考察對象(即種子點),并通過不斷地對種子點進行區域查詢來擴展它們所在的類,直至找到一個完整的類。然后,依此過程尋找其他的類。最后剩下的不屬于任何類的點即為噪聲。DBSCAN算法可以挖掘任意形狀的聚類,對數據輸入順序不敏感,并且具有處理異常數據(噪音)的能力。對具有N個樣本的數據庫,該算法的時間復雜性為O(NlogN)。
2 M-DBSCAN算法
2.1 在線聚類
  由于處理數據量較大,一次性處理完畢不但運算量大,復雜度高,而且對存儲空間的需求量大,因此本文提出一種在線式聚類算法,可以動態增加聚類數目。
  算法的原理是:隨著輸入樣本數據的不斷增加,實時動態地增加聚類個數或調整聚類中心及聚類半徑,在形成的任意一個聚類中,聚類中心與屬于此聚類的樣本點的相似度都不小于一個閾值dthr,dthr的選取將直接影響到聚類數目。
  將在線式聚類算法引入后,算法的描述如下:
  (1)積累一小段時間內的數據,進行歸一化壓縮,進行相似度計算,得到相似度矩陣;
  (2)通過對相似度矩陣進行比較分析,找出鄰域密度最大的數據點作為第一個初始類的中心c1
  (3)對尚未加入此類的數據點xi,比較與類中心的距離是否大于給定閾值dthr,若是,則加入此類,否則創建一個新類cj
  (4)處理完這一小段數據后,對新到來的一個數據點進行與(3)相同的做法,確定其類別;
  (5)直到沒有數據到來為止,輸出聚類結果。
2.2 改進的算法
  DBSCAN算法在對類的劃分時采用的方法是:比較此數據點到各類中心的距離,若小于某閾值,則屬于此類。可見閾值的選擇直接影響類的劃分及類的數目。但是如圖1所產生的聚類模塊[3]所示,這種方法帶來的問題就是:距離近的不一定屬于同一類,在閾值半徑內的不一定屬于同一類。

  針對此問題,本文提出一種改進的算法M-DBSCAN。首先實現在線聚類,可以動態調整聚類的數目;之后,通過將數據點到類的平均距離與類內平均距離以及新半徑與原半徑作比較進行雙重判決,確定數據點是否可以加入此類中,以實時調整閾值半徑,解決了類劃分錯誤的問題。
  改進后整個算法描述如下:
  (1)積累一小段時間內的數據,得到相似度矩陣
   

  (2)給定閾值dthr,找出鄰域密度最大的數據點作為第一個初始類的中心c1,計算S中每行值大于dthr的個數,個數最多的行號即為第一個類的中心,將第一類中的數據點存放到矩陣S’(n×n+2)的第一行,每行中的第一個為類中心,計算類的平均半徑r,同時計算此類的平均距離d2,放到最后兩位。
  (3)對尚未加入的數據點,計算某一個數據點到類c1中的所有點的平均距離d1,類的平均距離d2
若d1<d2,則判斷加入此數據后類的半徑是否變大;如果變小,將數據點加入此類,同時改變此類的平均半徑;否則尋找下一個聚類,計算同上。
  如果不能加入到任何一個已有聚類,則創建一個新的類,將其存入S’中。直到沒有新數據到來,算法結束。
  部分偽代碼:
  Cluster M-DBSCAN()
  {
     Initialize S(n×n),dthr;
     For i=1:n
        If S(i,j)>=dthr
           sum(i)++;
           count(i,j)=j;
           j++;
    end
  end
  sort(sum(:));
  S’(1,:)=count(,:);
  S’(1,n+1)=meanradius;
  S’(1,n+2)=meandistance2;
  If meandistance1<meandistance2
      If meanradiusnew<meanradius
        Add xj to S’(1);
        S’(1,n+1)=new meanradius;
  Else
      Next class;
  End
  If no class
       Create a new class S’(2);
  End
  …
  Until no data come
     It’s over
  Output S’
  }
3 算法性能及分析
  對M-DBSCAN算法的性能作了測試,并與DBSCAN作了比較。所有的測試都在1臺PC機上進行,配置P4,2.0 GHz CPU,512 MB內存,80 GB硬盤,算法用Matlab7.3實現。
  測試數據集同時使用了真實數據和自行構造的模擬數據,真實數據采用SEQUOIA 2000數據庫,該數據庫也被參考文獻[4]用于對算法的性能測試。
  首先用構造的模擬數據對聚類結果進行驗證。圖2為DBSCAN算法在閾值半徑為20時得到的結果,明顯地將不同的三類作為一類輸出,形成了錯誤的類劃分;而在取同樣的初始閾值半徑時,圖3可以看出M-DBSCAN算法得到更好的聚類結果。

  從圖4中可以看到兩種算法在SEQUOIA 2000數據庫上對不同數據量樣本的執行時間的比較。算法M-DBSCAN比算法DBSCAN快得多,且隨著數據量的不斷增大,這種速度上的差別越來越大。表1為兩種算法的錯誤率比較圖,錯誤率為,N1為算法所得聚類數目,N2為實際聚類數目。表1中可看出,改進的M-DBSCAN算法錯誤概率普遍要小于DBSCAN的,表明改進后的算法減小了錯誤率,對處理大樣本集有較好的性能。

  表2中的測試數據集來自Dr.JSrg Sander提供的仿照DBSCAN 中DataBase2生成的數據集DB2[8]。由表中可以看出,當數據規模為50 000時,雖然SGDO[7]處理噪音點的能力比M-DBSCAN強,但是從錯誤率和運行時間上M-DBSCAN比前兩者都有較大的改善。CURD[6]雖然有較短的運行時間,但是存在大量的噪音點,所以從綜合性能上比較M-DBSCAN更加完善,聚類質量更高。

  本文討論了一種將DBSCAN聚類算法進行改進的M-DBSCAN聚類算法,它克服了DBSCAN聚類算法不能處理大數據集的問題,并實現可以對閾值進行實時更改。試驗結果顯示,M-DBSCAN算法的準確性比DBSCAN算法要好,處理大數據集的速度更快。但是對于聚類數目的確定仍然是判斷是否超過某閾值才可算作某一類的標準,聚類數目與閾值的選擇有很大關系。因此如何自動確定聚類數目將是下一步工作的方向。
參考文獻
[1] ESTER M,KRIEGEL H P,SANDER J,et a1. A densitybased algorithm for discovering cluster in large spatial databases  with noise[A]. In:SIMOUDIS E,HAN J, FAYYAD U. Proeeedins of the 2nd  International Conference Knowledge Discovering in Databases and Data Mining  (KDD-96)[C].Massachusetts:AAAI Press.1996:226-232.
[2] HAN Jia Wei,KAMBER M. Data mining,ovncepts and Techniques[M].CA:Morgan Kaufmann Publishers,2000.
[3] 朱蔚恒,印鑒,謝益煌.基于數據流的任意形狀聚類算法[J].軟件學報,2006,17(3):379-386.
[4] 忻凌,倪志偉,黃玲.基于數據流的BIRCH改進聚類算法[J].計算機工程與應用,2007,43(5):121-123
[5]  田地,王世卿.數據挖掘中基于密度和距離聚類算法設計[J].計算機技術與發展,2006,16(10):254-257.
[6]  陳燕,耿國華,鄭建國.一種改進的基于密度的聚類算法.微機發展,2005,15(3).
[7]  王翠茹,朵春紅.一種改進的基于密度的DBSCAN聚類算法.廣西師范大學學報:自然科學版,2007,25(4).
[8]  周水庚,周傲英,曹晶. 基于數據分區的DBSCAN算法[J].計算機研究與發展,2000,37(10):1153-1159.
 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久久久久999| 欧美日韩日本网| 中国av一区| 亚洲人成网站777色婷婷| 亚洲欧美日韩第一区| 夜夜嗨av色一区二区不卡| 亚洲国产精品悠悠久久琪琪| 韩国成人福利片在线播放| 国产精品午夜在线观看| 欧美日韩在线视频一区| 欧美日本三区| 欧美精品色综合| 老司机精品视频网站| 久久久久久久一区二区三区| 欧美一区二区三区四区夜夜大片| 亚洲欧美日本另类| 亚洲女同在线| 欧美夜福利tv在线| 欧美在线免费一级片| 性欧美在线看片a免费观看| 亚洲欧美日韩国产精品| 亚洲一区二区三| 午夜精品久久99蜜桃的功能介绍| 亚洲欧美另类国产| 久久高清国产| 久久五月婷婷丁香社区| 另类酷文…触手系列精品集v1小说| 久久亚洲午夜电影| 欧美大色视频| 欧美色区777第一页| 国产精品久久久久av| 国产精品嫩草影院av蜜臀| 国产农村妇女精品一区二区| 国产精品永久免费视频| 国产一区二区三区在线观看网站| 国产视频自拍一区| 精品成人国产| 91久久在线观看| 一本色道久久综合亚洲精品小说| 在线中文字幕一区| 香蕉久久一区二区不卡无毒影院| 欧美有码在线视频| 91久久中文| 亚洲影院免费观看| 久久久精品一区| 久久综合影视| 欧美日韩亚洲高清一区二区| 国产精品免费一区二区三区观看| 国产亚洲美州欧州综合国| 在线观看欧美| 一区二区三区波多野结衣在线观看| 亚洲欧美影音先锋| 亚洲人成艺术| 午夜精品偷拍| 米奇777在线欧美播放| 欧美日韩亚洲高清| 国产一区二三区| 日韩视频二区| 欧美一区二区三区在线视频| 亚洲欧洲精品一区二区三区波多野1战4| 亚洲最新中文字幕| 久久精品99国产精品酒店日本| 欧美电影免费观看高清| 国产精品视频1区| 亚洲国产精品嫩草影院| 亚洲一区不卡| 亚洲精品之草原avav久久| 亚洲欧美中日韩| 欧美国产欧美综合 | 99精品国产99久久久久久福利| 亚洲欧美精品suv| 亚洲免费黄色| 久久久久久久久一区二区| 欧美日韩亚洲一区二| 激情av一区| 亚洲一区二区三区免费观看 | 欧美黑人多人双交| 国产色产综合色产在线视频| 亚洲片国产一区一级在线观看| 欧美一级免费视频| 亚洲视频碰碰| 欧美成人免费播放| 国模精品一区二区三区色天香| 夜夜嗨一区二区三区| 亚洲日本国产| 久久久一本精品99久久精品66| 国产精品v欧美精品v日韩| 亚洲精品少妇30p| 亚洲国产成人av在线| 欧美一级艳片视频免费观看| 欧美日本国产精品| 亚洲国产天堂久久国产91| 亚洲国产精品一区制服丝袜| 欧美在线视频不卡| 国产精品久久久久一区二区三区| 亚洲国产综合在线| 91久久国产综合久久蜜月精品| 久久精品日韩欧美| 国产欧美日韩综合一区在线播放 | 欧美国产精品v| **网站欧美大片在线观看| 欧美在线亚洲在线| 欧美一区二区三区在| 国产精品久久久久aaaa樱花| 99视频精品在线| 一区二区国产在线观看| 欧美激情第8页| 最新亚洲一区| 99国内精品久久久久久久软件| 蜜臀久久99精品久久久久久9 | 一本在线高清不卡dvd | 亚洲国产成人久久| 91久久精品一区| 免费亚洲一区| 亚洲福利视频网站| 亚洲黄网站在线观看| 免费观看一级特黄欧美大片| 极品少妇一区二区三区精品视频| 欧美在线观看网站| 久久九九热免费视频| 国产午夜亚洲精品理论片色戒| 亚洲欧美国产日韩中文字幕| 午夜欧美精品| 国产午夜精品一区理论片飘花| 欧美一级淫片aaaaaaa视频| 久久精品视频一| 一区二区三区在线看| 亚洲人成人一区二区三区| 欧美国内亚洲| 日韩视频久久| 午夜一区不卡| 国产一区三区三区| 亚洲黄色片网站| 欧美精品成人| 99国产精品99久久久久久| 亚洲永久字幕| 国产欧美日韩专区发布| 久久精品毛片| 欧美韩日高清| 亚洲香蕉成视频在线观看| 久久国产一区| 在线观看福利一区| 亚洲精品一区二区三区在线观看| 欧美精品aa| 亚洲影视综合| 老司机午夜免费精品视频| 亚洲欧洲美洲综合色网| 亚洲已满18点击进入久久 | 黄色成人在线网址| 亚洲另类黄色| 国产精品毛片a∨一区二区三区| 亚洲欧美制服另类日韩| 久久亚洲精品中文字幕冲田杏梨| 亚洲黄色成人| 午夜欧美精品| 在线免费观看日本欧美| 一区二区三区www| 国产欧美日韩一级| 日韩视频亚洲视频| 国产精品一二一区| 亚洲国产日韩欧美在线图片| 欧美日韩国产小视频| 午夜精品久久久久久久久久久久久| 开心色5月久久精品| 99国产精品一区| 久久久精彩视频| 亚洲伦理久久| 久久精品国亚洲| 亚洲精品中文字幕在线观看| 午夜免费电影一区在线观看| 在线观看日韩av电影| 亚洲主播在线播放| 伊人蜜桃色噜噜激情综合| 亚洲自拍都市欧美小说| 一区二区三区在线视频播放| 亚洲一级黄色| 影音先锋中文字幕一区二区| 亚洲视频在线观看网站| 国产一区二区久久精品| 中文欧美在线视频| 黑人操亚洲美女惩罚| 亚洲一区二区不卡免费| 精品电影一区| 亚洲欧美日韩天堂| 亚洲国产日韩欧美一区二区三区| 性欧美1819性猛交| 亚洲日本va在线观看| 久久精品亚洲精品国产欧美kt∨| 日韩天堂在线视频| 蜜臀久久99精品久久久画质超高清| 亚洲香蕉成视频在线观看| 欧美黄色成人网| 欧美一区二区精品在线| 欧美日韩直播| 亚洲日韩欧美一区二区在线| 国产欧美亚洲视频| 亚洲一区在线观看视频| 亚洲日本成人网| 免费看亚洲片| 欧美一区二区在线播放|