1. 程式人生 > >聚類總結(中)——密度聚類

聚類總結(中)——密度聚類

密度聚類

密度聚類是一種基於密度的聚類方法,基於密度的聚類方法的主要思想是尋找被低密度區域分離的高密度區域。

密度度量

一個點的區域性密度有不同的度量方式:
1. 畫個圈,數圈內其他點個數是一種方法。
2. 用圈內其他點和給點半徑的比值的高斯概率密度形式,對距離核心點距離近的給大權重。
3. 計算圈內距離最小的前n個點到核心點的距離之和。
這裡寫圖片描述

DBSCAN

小時候開玩笑,想要一個人離自己遠一點,會說:“以我為圓心,5米為半徑,畫個圈,圈裡不能有你。”這個規則的後果就是,這個人和我的距離至少有5米,他在我周圍的密度就是極小。
密度距離中衡量一個點的密度,和以上有相似的邏輯。如果給定半徑內包含的點多於給定的閾值,則認為這個點密度大,稱為核心點。而如果這個圈內其他點在同樣的規則下也是核心點,稱這些點密度可達。隨著範圍不斷擴大,不斷判斷出新的核心點,直到遇到給定半徑內,點數小於閾值的點,我們成為邊界點。噪音點是即不能被密度可達有不是核心點的點。

DBSCAN優點是允許帶噪聲,能發現任意形狀,不需要預先給定簇數。文字中特別稀疏資料聚類效果可能不太理想。

密度最大值聚類

高區域性密度點距離

知道衡量一個點密度的不同種方法後,確定一種方法,就可以得到樣本每個點的區域性密度。任選一個點a,設區域性密度比點a高出最小量的點為點b,點b到點a的距離就是點a高區域性密度點距離,記做di。

如果di很大,ρi也很大,說明這點周圍環繞很多其他點,並且比他密度大的點離他距離還很遠,則認為這個點是一個聚類中心。如圖中點10,和點1。
如果di距離很大,ρi很小,說明他離比他密度高的點比較遠,這點離群索居,區域性密度還不高,則認為這樣的點是噪聲。如圖點26,27,28。
這裡寫圖片描述


找到聚類中心後,再用其他聚類演算法聚類。這個演算法主要用在尋找聚類中心。

相關推薦

總結——密度

密度聚類 密度聚類是一種基於密度的聚類方法,基於密度的聚類方法的主要思想是尋找被低密度區域分離的高密度區域。 密度度量 一個點的區域性密度有不同的度量方式: 1. 畫個圈,數圈內其他點個數是一種方法。 2. 用圈內其他點和給點半徑的比值的高斯概率密

總結——劃分

概述 聚類指根據一定的準則,把一份事物按照這個準則歸納成互不重合的幾份。機器學習中,聚類指按照一個標準,這個標準通常是相似性,把樣本分成幾份,使得相似程度高的聚在一起,相似程度低的互相分開。 聚類的方法很多,有基於分層的聚類,基於劃分的聚類,基於密度的聚類。

機器學習總結:常用演算法Kmeans、密度、層次及常見問題

任務:將資料集中的樣本劃分成若干個通常不相交的子集。 效能度量:類內相似度高,類間相似度低。兩大類:1.有參考標籤,外部指標;2.無參照,內部指標。 距離計算:非負性,同一性(與自身距離為0),對稱性

分析 層次及matlab程式

一、層次聚類介紹 1.1 簡介 層次聚類,主要是對給定的待聚類的資料集進行層次化分解。主要分為兩大類: 1.從下到上的凝聚聚類 2.從上到下的分裂聚類 其他演算法大部分是對樣本之間距離度量或者類間凝聚/分裂依據進行改進。 1.2從下到上的凝聚演算法 從下到上的凝聚演算法能夠讓人們較為直觀的觀

演算法演算法的系統性比較

      聚類是試圖將資料集中的樣本劃分為若干個不相交的子集。每個子集稱為一個“簇”(cluster)。聚類既能作為一個單獨的過程,也可以作為分類等其他學習任務的前驅任務、例如,在一些商業應用中,需要對新使用者的型別進行判別,但是定義“使用者l型別”對商家來說可不容易,此時

面試3-java集合總結Map

value val tree bubuko 實現 ble info 集合 dha 1.概述: Java 中的map集合使用鍵值對(key-value)來保持數據,其中值(value)可以重復,鍵(key)必須唯一,但最多只能有一個key為空,它的主要實現類有HashMap

TCP協議學習總結

性能 bsp 復雜 完美 設置 通告 數據回顯 實時推送 實時性 很多人都說TCP協議是一個十分復雜的協議,在學習當中,我對協議每一個問題都分解學習後,每一個分解我都能體會和理解它的要點,並不難理解。但我把這些拆分的細節合並後,確認感覺這樣一個協議相對“臃腫”但又好像不得不

Zookeeper學習總結——Leader選舉

“深入一點,會更快樂。” ——題記 Leader選舉是ZooKeeper最重要的技術之一,也是保證分散式資料一致性的關鍵所在。 1 預備知識 1.1 術語解釋 SID:伺服器ID,唯一標識一臺zk中的伺服器,和myid的值一致。 ZXID:事務ID,標識伺服器狀態

【集合詳解】Java集合總結-常用集合對比

今天我們主要看一張圖。 圖是無意中在網上發現的,個人覺得非常好。(時間久了就忘了出處,請原創原諒~~) 我們還是從左到右分析。 ①所有的類都用到Iterator則說明所有的集合類都有遍歷集合的方法。 ②LinkedList除了繼承AbstractSe

Java基礎總結物件,,屬性,方法

物件,類,屬性,方法的解析: 以人為例。 類:人可以看作一個類。 物件:具體到什麼人(黃種人,白種人,黑種人,中國人等等)這就可以看作是物件,可以根據需求繼續往下區分,比如 男人 女人。 屬性:比如說黃種人的特點:黃面板,黑頭髮,黑眼睛等等,這些就是黃

作業系統第四版期末複習總結

銜接我的上一篇博文,這片從第三章開始第三章:處理機排程與死鎖1、處理機排程的三個層次高階排程(也稱為作業排程、巨集觀排程、長程排程):用於決定外存上處於後備佇列中的哪些作業調入記憶體,併為他們建立程序、分配必要的資源,再將新建立的程序排在就緒佇列上,準備執行。    作業排程

css3屬性總結

CSS3背景 background-origin 設定元素背景圖片的原始起始位置。 background-origin : border-box | padding-box | content-box; 引數分別表示背景圖片是從邊框,還是內邊距(預設值),或者是內容區域開

【集合詳解】Java集合總結-Map家族

接上文,本篇部落格我們接著談論有關集合的內容。 java所有的集合分成三大類。Set類似罐子,把一個物件新增到Set集合時,Set集合無法記住新增這個元素的順序,所以Set裡的元素不能重複。List集合非常想一個數組,可以記住每次新增元素的順序,且List的長

4.1Python數據1之數值

hex upload 進制的轉換 random模塊 mat 四舍五入 dia 形式 操作 返回總目錄 目錄: 1.數據類型的表現形式: 2.數據進制的轉換: 3.數據的常規操作: (一).數據類型的表現形式: (1)整數類型: # 二進制: a = 0b0110 pri

4.5Python數據5之列表

方式 一起 range 愛好者 pre 操作 count() 本科 ref 返回總目錄 目錄: 1.列表的定義 2.列表的常規操作 3.列表的額外操作 (一)列表的定義: 列表的定義 [var1, var2, ……, var n ] # (1)列表的定義 [var1

演算法——基於密度演算法以 DBSCAN 為例

      上一篇部落格提到 K-kmeans 演算法存在好幾個缺陷,其中之一就是該演算法無法聚類哪些非凸的資料集,也就是說,K-means 聚類的形狀一般只能是球狀的,不能推廣到任意的形狀。本文介紹一種基於密度的聚類方法,可以聚類任意的形狀。       基於密度的聚類是

標準C++的string的用法總結

spa 大小 它的 world 包括 文本 語法 ner append() 轉自:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 相信使用過MFC編程的朋友對CString這個類的印象應該

數據分析 第四篇:分析劃分

think trace stat pid 函數返回 around 構建 之前 得出 聚類是把一個數據集劃分成多個子集的過程,每一個子集稱作一個簇(Cluster),聚類使得簇內的對象具有很高的相似性,但與其他簇中的對象很不相似,由聚類分析產生的簇的集合稱作一個聚類。在相同的

演算法1

一聚類演算法簡介 1.聚類和分類的區別 聚類 - 利用演算法將相似或者相近的樣本聚成一簇,這些樣本都是無標籤的,是一種無監督學習演算法。 分類 - 首先需要從有標籤樣本學習出打標籤邏輯,再利用學習出的邏輯對無標籤樣本進行分類,是一種有監督學習演算法。 2.聚類的使用 聚類演

機器學習實戰Machine Learning in Action學習筆記————06.k-均值演算法kMeans學習筆記

機器學習實戰(Machine Learning in Action)學習筆記————06.k-均值聚類演算法(kMeans)學習筆記關鍵字:k-均值、kMeans、聚類、非監督學習作者:米倉山下時間:2018-11-3機器學習實戰(Machine Learning in Action,@author: Pet