日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

聚类算法(3):DBSCAN密度聚类

發布時間:2025/3/21 编程问答 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 聚类算法(3):DBSCAN密度聚类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

1. 基本概念

2. 算法描述

3. 算法實例

4. 算法優缺點


DBSCAN(Density—Based Spatial Clustering of Application with Noise)算法是一種典型的基于密度的聚類方法,即要求聚類空間中的一定區域內所包含對象(點或其他空間對象)的數目不小于某一給定閾值,它將簇定義為密度相連的點的最大集合。該方法能在具有噪聲的空間數據庫中發現任意形狀的簇,可將密度足夠大的相鄰區域連接,能有效處理異常數據,主要用于對空間數據的聚類

1. 基本概念

DBSCAN 算法中有兩個重要參數:Eps 和 MmPtS。

  • Eps:定義密度時的鄰域半徑;
  • MmPts :定義核心點時的閾值,形成簇所需的最小核心點數量

在 DBSCAN 算法中將數據點分為以下 3 類。

1)核心點:稠密區域內部的點

如果一個對象在其半徑 Eps 內含有超過 MmPts 數目的點,則該對象為核心點。

2)邊界點:稠密區域邊緣的點

如果一個對象在其半徑 Eps 內含有點的數量小于 MinPts,但是該對象落在核心點的鄰域內,則該對象為邊界點。

3)噪音點:稀疏區域中的點

如果一個對象既不是核心點也不是邊界點,則該對象為噪音點。

通俗地講,核心點對應稠密區域內部的點,邊界點對應稠密區域邊緣的點,而噪音點對應稀疏區域中的點。

在圖 1 中,假設 MinPts=5,Eps 如圖中箭頭線所示,則點 A 為核心點,點 B 為邊界點,點 C 為噪音點。點 A 因為在其 Eps 鄰域內含有 7 個點,超過了 Eps=5,所以是核心點。

點 E 和點 C 因為在其 Eps 鄰域內含有點的個數均少于 5,所以不是核心點;點 B 因為落在了點 A 的 Eps 鄰域內,所以點 B 是邊界點;點 C 因為沒有落在任何核心點的鄰域內,所以是噪音點。

? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖 1??DBSCAN算法數據點類型示意

進一步來講,DBSCAN 算法還涉及以下一些概念。

名稱說明
Eps 鄰域簡單來講就是與點的距離小于等于 Eps 的所有點的集合
直接密度可達如果點 p 在核心點 q 的 Eps 鄰域內,則稱數據對象 p 從數據對象 q 出發是直接密度可達的。
密度可達如果存在數據對象鏈?是從?關于 Eps 和 MinPts 直接密度可達的,則數據對象?是從數據對象?關于 Eps MinPts 密度可達的。
密度相連對于對象 p 和對象 q,如果存在核心對象樣本 o,使數據對象 p 和對象 q 均從 o 密度可達,則稱 p 和 q 密度相連。顯然,密度相連具有對稱性。
密度聚類簇由一個核心點和與其密度可達的所有對象構成一個密度聚類簇。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖 2??直接密度可達和密度可達示意

在圖 2 中,點 a 為核心點,點 b 為邊界點,并且因為 a 直接密度可達 b。但是 b 不直接密度可達 a(因為 b 不是一個核心點)。因為 c 直接密度可達 a,a 直接密度可達 b,所以 c 密度可達 b。但是因為 b 不直接密度可達 a,所以 b 不密度可達 c。但是 b 和 c 密度相連

2. 算法描述

DBSCAN 算法對簇的定義很簡單,由密度可達關系導出的最大密度相連的樣本集合,即為最終聚類的一個簇

DBSCAN 算法的簇里面可以有一個或者多個核心點。如果只有一個核心點,則簇里其他的非核心點樣本都在這個核心點的 Eps 鄰域里。如果有多個核心點,則簇里的任意一個核心點的 Eps 鄰域中一定有一個其他的核心點,否則這兩個核心點無法密度可達。這些核心點的 Eps 鄰域里所有的樣本的集合組成一個 DBSCAN 聚類簇。

DBSCAN算法的描述如下。

  • 輸入:數據集,鄰域半徑 Eps,鄰域中數據對象數目閾值 MinPts;
  • 輸出:密度聯通簇。

處理流程如下:

(1)從數據集中任意選取一個數據對象點 p; (從數據集中順序掃描還未分簇的樣本點p

(2)計算出p?的 Eps 鄰域,如果對于參數 Eps 和 MinPts,所選取的數據對象點 p 為核心點,則找出所有從 p 密度可達的數據對象點,形成一個簇;

(3)如果選取的數據對象點 p 是邊緣點,選取另一個數據對象點;

(4)重復(2)、(3)步,直到所有點被處理。

DBSCAN 算法的計算復雜的度為 O(n2),n 為數據對象的數目。這種算法對于輸入參數 Eps 和 MinPts 是敏感的。

3. 算法實例

下面給出一個樣本數據集,如表 1 所示,并對其實施 DBSCAN 算法進行聚類,取 Eps=3,MinPts=3。

? ? ??

數據集中的樣本數據在二維空間內的表示如圖 3 所示:

? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?圖 3??直接密度可達和密度可達示意

第一步,順序掃描數據集的樣本點,首先取到 p1(1,2)。

1)計算 p1 的鄰域,計算出每一點到 p1 的距離,如 d(p1,p2)=sqrt(1+1)=1.414。

2)根據每個樣本點到 p1 的距離,計算出 p1 的 Eps 鄰域為 {p1,p2,p3,p13}。

3)因為 p1 的 Eps 鄰域含有 4 個點,大于 MinPts(3),所以,p1 為核心點。

4)以 p1 為核心點建立簇 C1,即找出所有從 p1 密度可達的點。

5)p1 鄰域內的點都是 p1 直接密度可達的點,所以都屬于C1。

6)尋找 p1 密度可達的點,p2 的鄰域為 {p1,p2,p3,p4,p13},因為 p1 密度可達 p2,p2 密度可達 p4,所以 p1 密度可達 p4,因此 p4 也屬于 C1。

7)p3 的鄰域為 {p1,p2,p3,p4,p13},p13的鄰域為 {p1,p2,p3,p4,p13},p3 和 p13 都是核心點,但是它們鄰域的點都已經在 Cl 中。

8)P4 的鄰域為 {p3,p4,p13},為核心點,其鄰域內的所有點都已經被處理。

9)此時,以 p1 為核心點出發的那些密度可達的對象都全部處理完畢,得到簇C1,包含點 {p1,p2,p3,p13,p4}。

第二步,繼續順序掃描數據集的樣本點,取到p5(5,8)。

1)計算 p5 的鄰域,計算出每一點到 p5 的距離,如 d(p1,p8)-sqrt(4+1)=2.236。

2)根據每個樣本點到 p5 的距離,計算出p5的Eps鄰域為{p5,p6,p7,p8}。

3)因為 p5 的 Eps 鄰域含有 4 個點,大于 MinPts(3),所以,p5 為核心點。

4)以 p5 為核心點建立簇 C2,即找出所有從 p5 密度可達的點,可以獲得簇 C2,包含點 {p5,p6,p7,p8}。

第三步,繼續順序掃描數據集的樣本點,取到 p9(9,5)。

1)計算出 p9 的 Eps 鄰域為 {p9},個數小于 MinPts(3),所以 p9 不是核心點。

2)對 p9 處理結束。

第四步,繼續順序掃描數據集的樣本點,取到 p10(1,12)。

1)計算出 p10 的 Eps 鄰域為 {p10,pll},個數小于 MinPts(3),所以 p10 不是核心點。

2)對 p10 處理結束。

第五步,繼續順序掃描數據集的樣本點,取到 p11(3,12)。

1)計算出 p11 的 Eps 鄰域為 {p11,p10,p12},個數等于 MinPts(3),所以 p11 是核心點。

2)從 p12 的鄰域為 {p12,p11},不是核心點。

3)以 p11 為核心點建立簇 C3,包含點 {p11,p10,p12}。

第六步,繼續掃描數據的樣本點,p12、p13 都已經被處理過,算法結束。

4. 算法優缺點

和傳統的 k-means 算法相比,DBSCAN 算法不需要輸入簇數 k 而且可以發現任意形狀的聚類簇,同時,在聚類時可以找出異常點。

優點

1)聚類速度快,可以對任意形狀的稠密數據集進行聚類,而 k-means 之類的聚類算法一般只適用于凸數據集

2)可以在聚類的同時發現異常點,對數據集中的異常點不敏感

3)聚類結果沒有偏倚,而 k-means 之類的聚類算法的初始值對聚類結果有很大影響

4)與K-MEANS比較起來,不需要輸入要劃分的聚類個數。

5)可以在需要時輸入過濾噪聲的參數。

缺點:

1)樣本集的密度不均勻、聚類間距差相差很大時,聚類質量較差,因為這種情況下參數MinPts和Eps選取困難,這時用 DBSCAN 算法一般不適合。

2)樣本集較大時,聚類收斂時間較長,此時可以對搜索最近鄰時建立的 KD 樹或者球樹進行規模限制來進行改進。當數據量增大時,要求較大的內存支持,I/O消耗也很大

3)調試參數比較復雜時,主要需要對距離閾值 Eps、鄰域樣本數閾值 MinPts 進行聯合調參,不同的參數組合對最后的聚類效果有較大影響。

4)對于整個數據集只采用了一組參數。如果數據集中存在不同密度的簇或者嵌套簇,則 DBSCAN 算法不能處理。為了解決這個問題,有人提出了 OPTICS 算法。

5)DBSCAN 算法可過濾噪聲點,這同時也是其缺點,這造成了其不適用于某些領域,如對網絡安全領域中惡意攻擊的判斷。

參考:https://blog.csdn.net/zhouxianen1987/article/details/68945844

總結

以上是生活随笔為你收集整理的聚类算法(3):DBSCAN密度聚类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美一级全黄 | 国产精品成人国产乱一区 | 欧美11一13sex性hd | 精品九九久久 | 国产农村妇女精品一二区 | 一二三四区在线 | 乌克兰极品av女神 | 黄色高清在线观看 | 成人免费毛片男人用品 | 男人舔女人下部高潮全视频 | 国产视频一区在线播放 | 18男女无套免费视频 | 丝袜美腿亚洲一区二区图片 | 日韩和欧美的一区二区 | 91在线视频免费播放 | 加勒比精品在线 | 成人免费xxxxx在线观看 | 在线观看日韩av电影 | 亚洲午夜小视频 | 操碰在线视频 | 欧美 变态 另类 人妖 | 91蝌蚪91九色 | 国产一级片免费观看 | 超污网站在线观看 | 国产精品无码久久久久一区二区 | 超碰免费公开在线 | 欧美国产日韩精品 | 正在播放超嫩在线播放 | 五月婷婷激情综合网 | 日本亚洲色大成网站www久久 | 就操成人网| 一级香蕉视频在线观看 | 国产爱搞 | 成人国产一区二区三区精品麻豆 | 99综合色 | 花房姑娘免费观看全集 | 日本久久久久久久久久 | 国产夫妇交换聚会群4p | 久久国产这里只有精品 | 香港a毛片| 日韩精品第一页 | 亚洲人掀裙打屁股网站 | 久热精品在线 | 69久久久久| 黄网在线看 | 久久加勒比 | 日韩三级在线 | 蝌蚪久久 | 亚洲图片激情小说 | 杏导航aⅴ福利网站 | 久久精品视频6 | 奶水旺盛的女人伦理 | 人妻激情偷乱视频一区二区三区 | 九九五月天| 亚洲欧美在线观看视频 | 成人黄色一区二区三区 | 超碰在线免费观看97 | 婷婷亚洲五月色综合 | 天天爽夜夜爽夜夜爽精品视频 | 欧美一级在线播放 | 偷拍第1页 | 免费看a毛片 | jizz在线观看 | 欧美夜夜爽 | 黄色一级片免费看 | 天堂av亚洲av国产av电影 | 热久久中文字幕 | 国产又粗又猛又爽又黄 | 久久高清毛片 | 国产精品久久久久久久久毛片 | 丰满少妇一区二区三区视频 | 亚洲最新视频 | 亚洲天堂中文字幕在线 | 午夜性生活视频 | 青青免费视频 | 在线免费观看国产 | 在线观看日韩欧美 | cao我| 一对一色视频聊天a | 金鱼妻日剧免费观看完整版全集 | 日本肉体xxxx裸体137大胆图 | 日韩黄色视屏 | 欧美 亚洲 另类 激情 另类 | 91涩涩涩 | av中文在线播放 | 久久久久久久久艹 | 成人手机在线视频 | 亚洲天堂av一区二区三区 | 日本网站在线免费观看 | 婷婷综合另类小说色区 | 色七七视频 | 日本天堂在线观看 | 九九精品视频在线 | 丰满少妇在线观看bd | 久久久久看片 | 尤物视频免费在线观看 | 欧美亚洲在线观看 | 伊人网大香 | 亚洲欧美一二三 |