㈠ 聚類演算法有哪些分類
聚類演算法的分類有:
1、劃分法
劃分法(partitioning methods),給定一個有N個元組或者紀錄的數據集,分裂法將構造K個分組,每一個分組就代表一個聚類,K小於N。而且這K個分組滿足下列條件:
(1) 每一個分組至少包含一個數據紀錄;
(2)每一個數據紀錄屬於且僅屬於一個分組(注意:這個要求在某些模糊聚類演算法中可以放寬);
2、層次法
層次法(hierarchical methods),這種方法對給定的數據集進行層次似的分解,直到某種條件滿足為止。具體又可分為「自底向上」和「自頂向下」兩種方案。
例如,在「自底向上」方案中,初始時每一個數據紀錄都組成一個單獨的組,在接下來的迭代中,它把那些相互鄰近的組合並成一個組,直到所有的記錄組成一個分組或者某個條件滿足為止。
3、密度演算法
基於密度的方法(density-based methods),基於密度的方法與其它方法的一個根本區別是:它不是基於各種各樣的距離的,而是基於密度的。這樣就能克服基於距離的演算法只能發現「類圓形」的聚類的缺點。
4、圖論聚類法
圖論聚類方法解決的第一步是建立與問題相適應的圖,圖的節點對應於被分析數據的最小單元,圖的邊(或弧)對應於最小處理單元數據之間的相似性度量。因此,每一個最小處理單元數據之間都會有一個度量表達,這就確保了數據的局部特性比較易於處理。圖論聚類法是以樣本數據的局域連接特徵作為聚類的主要信息源,因而其主要優點是易於處理局部數據的特性。
5、網格演算法
基於網格的方法(grid-based methods),這種方法首先將數據空間劃分成為有限個單元(cell)的網格結構,所有的處理都是以單個的單元為對象的。這么處理的一個突出的優點就是處理速度很快,通常這是與目標資料庫中記錄的個數無關的,它只與把數據空間分為多少個單元有關。
代表演算法有:STING演算法、CLIQUE演算法、WAVE-CLUSTER演算法;
6、模型演算法
基於模型的方法(model-based methods),基於模型的方法給每一個聚類假定一個模型,然後去尋找能夠很好的滿足這個模型的數據集。這樣一個模型可能是數據點在空間中的密度分布函數或者其它。它的一個潛在的假定就是:目標數據集是由一系列的概率分布所決定的。
通常有兩種嘗試方向:統計的方案和神經網路的方案。
(1)多種聚類演算法概述擴展閱讀:
聚類演算法的要求:
1、可伸縮性
許多聚類演算法在小於 200 個數據對象的小數據集合上工作得很好;但是,一個大規模資料庫可能包含幾百萬個對象,在這樣的大數據集合樣本上進行聚類可能會導致有偏的結果。
我們需要具有高度可伸縮性的聚類演算法。
2、不同屬性
許多演算法被設計用來聚類數值類型的數據。但是,應用可能要求聚類其他類型的數據,如二元類型(binary),分類/標稱類型(categorical/nominal),序數型(ordinal)數據,或者這些數據類型的混合。
3、任意形狀
許多聚類演算法基於歐幾里得或者曼哈頓距離度量來決定聚類。基於這樣的距離度量的演算法趨向於發現具有相近尺度和密度的球狀簇。但是,一個簇可能是任意形狀的。提出能發現任意形狀簇的演算法是很重要的。
4、領域最小化
許多聚類演算法在聚類分析中要求用戶輸入一定的參數,例如希望產生的簇的數目。聚類結果對於輸入參數十分敏感。參數通常很難確定,特別是對於包含高維對象的數據集來說。這樣不僅加重了用戶的負擔,也使得聚類的質量難以控制。
5、處理「雜訊」
絕大多數現實中的資料庫都包含了孤立點,缺失,或者錯誤的數據。一些聚類演算法對於這樣的數據敏感,可能導致低質量的聚類結果。
6、記錄順序
一些聚類演算法對於輸入數據的順序是敏感的。例如,同一個數據集合,當以不同的順序交給同一個演算法時,可能生成差別很大的聚類結果。開發對數據輸入順序不敏感的演算法具有重要的意義。
㈡ 什麼是聚類分析聚類演算法有哪幾種
聚類分析又稱群分析,它是研究(樣品或指標)分類問題的一種統計分析方法。聚類分析起源於
分類學,在古老的分類學中,人們主要依靠經驗和專業知識來實現分類,很少利用數學工具進行
定量的分類。隨著人類科學技術的發展,對分類的要求越來越高,以致有時僅憑經驗和專業知識
難以確切地進行分類,於是人們逐漸地把數學工具引用到了分類學中,形成了數值分類學,之後又
將多元分析的技術引入到數值分類學形成了聚類分析。
聚類分析內容非常豐富,有系統聚類法、有序樣品聚類法、動態聚類法、模糊聚類法、圖論
聚類法、聚類預報法等。
聚類分析計算方法主要有如下幾種:分裂法(partitioning methods):層次法(hierarchical
methods):基於密度的方法(density-based methods): 基於網格的方法(grid-based
methods): 基於模型的方法(model-based methods)。
㈢ 聚類演算法
1. 概述
K-means聚類演算法也稱k均值聚類演算法,是集簡單和經典於一身的基於距離的聚類演算法。它採用距離作為相似性的評價指標,即認為兩個對象的距離越近,其相似度就越大。該演算法認為類簇是由距離靠近的對象組成的,因此把得到 緊湊且獨立的簇作為最終目標。
2. 演算法核心思想
K-means聚類演算法是一種迭代求解的聚類分析演算法,其步驟是隨機選取K個對象作為初始的聚類中心,然後計算每個對象與各個種子聚類中心之間的距離,把每個對象分配給距離它最近的聚類中心。聚類中心以及分配給它們的對象就代表一個聚類。每分配一個樣本,聚類的聚類中心會根據聚類中現有的對象被重新計算。這個過程將不斷重復直到滿足某個終止條件。終止條件可以是沒有(或最小數目)對象被重新分配給不同的聚類,沒有(或最小數目)聚類中心再發生變化,誤差平方和局部最小。
3. 演算法實現步驟
1、首先確定一個k值,即我們希望將數據集經過聚類得到k個集合。
2、從數據集中隨機選擇k個數據點作為質心。
3、對數據集中每一個點,計算其與每一個質心的距離(如歐式距離),離哪個質心近,就劃分到那個質心所屬的集合。
4、把所有數據歸好集合後,一共有k個集合。然後重新計算每個集合的質心。
5、如果新計算出來的質心和原來的質心之間的距離小於某一個設置的閾值(表示重新計算的質心的位置變化不大,趨於穩定,或者說收斂),我們可以認為聚類已經達到期望的結果,演算法終止。
6、如果新質心和原質心距離變化很大,需要迭代3~5步驟。
4. 演算法步驟圖解
上圖a表達了初始的數據集,假設k=2。在圖b中,我們隨機選擇了兩個k類所對應的類別質心,即圖中的紅色質心和藍色質心,然後分別求樣本中所有點到這兩個質心的距離,並標記每個樣本的類別為和該樣本距離最小的質心的類別,如圖c所示,經過計算樣本和紅色質心和藍色質心的距離,我們得到了所有樣本點的第一輪迭代後的類別。此時我們對我們當前標記為紅色和藍色的點分別求其新的質心,如圖d所示,新的紅色質心和藍色質心的位置已經發生了變動。圖e和圖f重復了我們在圖c和圖d的過程,即將所有點的類別標記為距離最近的質心的類別並求新的質心。最終我們得到的兩個類別如圖f。
K-means術語:
簇:所有數據的點集合,簇中的對象是相似的。
質心:簇中所有點的中心(計算所有點的中心而來)
5. K-means演算法優缺點
優點:
1、原理比較簡單,實現也是很容易,收斂速度快。
2、當結果簇是密集的,而簇與簇之間區別明顯時, 它的效果較好。
3、主要需要調參的參數僅僅是簇數k。
缺點:
1、K值需要預先給定,很多情況下K值的估計是非常困難的。
2、K-Means演算法對初始選取的質心點是敏感的,不同的隨機種子點得到的聚類結果完全不同 ,對結果影響很大。
3、對噪音和異常點比較的敏感。用來檢測異常值。
4、採用迭代方法,可能只能得到局部的最優解,而無法得到全局的最優解。
㈣ 什麼是聚類分析聚類演算法有哪幾種
聚類分析是分類演算法中的一種,是無監督的,不需要訓練。
聚類演算法分為:硬聚類演算法和軟聚類演算法,硬聚類中最經典的是K均值聚類演算法,就是大家所說的K-means演算法,軟聚類演算法中最經典的是模糊C均值聚類演算法,就是FCM。後續的一些聚類演算法都是在這兩種上改進的
㈤ 聚類演算法概述及比較
其本質是:尋找聯系緊密的事物進行區分,將數據劃分為有意義或有用的簇
目標是:同簇內的數據對象的相似性盡可能大,不同簇間的數據對象的差異性盡可能大。
核心是:相似度計算
回顧一下:無監督學習(Unsupervised learning):是否有監督(supervised),就看輸入數據是否有標簽(label)。輸入數據有標簽,則為有監督學習,沒標簽則為無監督學習。
具體包含:
K-means DIANA OPTICS Spectral STING COBWeb
K-medoids BIRCH DBSCAN CLIQUE CLASSIT
CLARANS Chameleon FDC WAVE-CLUSTER SOM
新發展的方法:
基於約束 基於模糊 基於粒度 量子聚類 核聚類 譜聚類
COD (Clustering
with Ob2structed
Distance) FCM SVDD/SVC 圖論中的譜圖
劃分法(Partitioning methods):
層次法(Hierarchical Clustering):
基於密度的聚類(density-based methods):
基於圖的聚類(Graph-based methods):
基於網格的方法(grid-based methods):
基於模型的方法(model-based methods):
map詳細: http://scikit-learn.org/stable/tutorial/machine_learning_map/
㈥ 聚類演算法有哪幾種
聚類分析計算方法主要有: 層次的方法(hierarchical method)、劃分方法(partitioning method)、基於密度的方法(density-based method)、基於網格的方法(grid-based method)、基於模型的方法(model-based method)等。其中,前兩種演算法是利用統計學定義的距離進行度量。
k-means 演算法的工作過程說明如下:首先從n個數據對象任意選擇 k 個對象作為初始聚類中心;而對於所剩下其它對象,則根據它們與這些聚類中心的相似度(距離),分別將它們分配給與其最相似的(聚類中心所代表的)聚類;然 後再計算每個所獲新聚類的聚類中心(該聚類中所有對象的均值);不斷重復這一過程直到標准測度函數開始收斂為止。一般都採用均方差作為標准測度函數. k個聚類具有以下特點:各聚類本身盡可能的緊湊,而各聚類之間盡可能的分開。
其流程如下:
(1)從 n個數據對象任意選擇 k 個對象作為初始聚類中心;
(2)根據每個聚類對象的均值(中心對象),計算每個對象與這些中心對象的距離;並根據最小距離重新對相應對象進行劃分;
(3)重新計算每個(有變化)聚類的均值(中心對象);
(4)循環(2)、(3)直到每個聚類不再發生變化為止(標准測量函數收斂)。
優點: 本演算法確定的K個劃分到達平方誤差最小。當聚類是密集的,且類與類之間區別明顯時,效果較好。對於處理大數據集,這個演算法是相對可伸縮和高效的,計算的復雜度為 O(NKt),其中N是數據對象的數目,t是迭代的次數。
缺點:
1. K 是事先給定的,但非常難以選定;
2. 初始聚類中心的選擇對聚類結果有較大的影響。
㈦ 聚類演算法有哪幾種
聚類演算法有:聚類分析是通過數據建模簡化數據的一種方法。傳統的統計聚類分析方法包括系統聚類法、分解法、加入法、動態聚類法、有序樣品聚類、有重疊聚類和模糊聚類等。採用k均值、k中心點等演算法的聚類分析工具已被加入到許多著名的統計分析軟體包中,如SPSS、SAS等。
㈧ 常見的幾種聚類方法
作為無監督學習的一個重要方法,聚類的思想就是把屬性相似的樣本歸到一類。對於每一個數據點,我們可以把它歸到一個特定的類,同時每個類之間的所有數據點在某種程度上有著共性,比如空間位置接近等特性。多用於數據挖掘、數據分析等一些領域。
下面簡單介紹一下幾種比較常見的聚類演算法。
K-means聚類方法大家應該都聽說過,在各種機器學習書籍教程中也是無監督學習部分非常經典的例子。其核心主要為兩個部分:其一是K,K在這里代表著類的數目,我們要把數據聚為多少類。其二是means,表示在每一次計算聚類中心的時候採取的是計算平均值。
我們假設樣本總數為n,K-means聚類法可以簡單表示為一下幾個步驟:
1. 在樣本中隨機選取K個點,作為每一類的中心點。
2. 計算剩下 n-K 個樣本點到每個聚類中心的距離(距離有很多種,假設這里採用歐式距離)。對於每一個樣本點,將它歸到和他距離最近的聚類中心所屬的類。
3. 重新計算每個聚類中心的位置:步驟 2 中得到的結果是 n 個點都有自己所屬的類,將每一個類內的所有點取平均值(這里假設是二維空間,即對 x 和 y 坐標分別取平均),計算出新的聚類中心。
4. 重復步驟 2 和 3 的操作,直到所有的聚類中心不再改變。
分析一下,演算法本身的思想並不難。但是K值如何選擇就見仁見智了,這里可以引入類內距離 J,每一類都會對應一個 J 值,其計算就是把類內所有點之間的距離累加起來。我們肯定希望 J 越小越好,因為小的類內間距代表這一類樣本的相似程度更高(離得更近)。
如果 K 很小,則聚類可能不徹底,即隔著很遠的兩波點也被聚為一類,會使 J 變得很大;相反的,過大的 K 雖然會降低類內間距 J ,但有時候分得過細會對數據的泛化性造成損害,沒有必要弄這么多類。因此 K 的選擇應該是具體問題具體分析。
還有一個問題就是初始聚類中心的選擇。不當的初始化會給演算法的收斂帶來更多的計算開銷。試想一下,如果一開始把離得很近的 K 個點都設為聚類中心,那麼演算法的迭代次數會更多一些。
HAC也是一種比較經典的聚類方法,其主要思想是先把每一個樣本點歸為一類,再通過計算類間的距離,來對最相似或者距離最近的類進行歸並,合成位一個新的類。反復循環,直到滿足特定的迭代條件即可。
HAC的核心思想主要分為如下幾個步驟:
1. 將每個樣本點都視作一類,一共有n個類。
2. 計算所有類之間兩兩的類間距離(類間距離計算方式多種多樣,可以取最近、最遠、找重心等等,這里不做詳述),然後把距離最近的兩個類進行合並,組成一個新的更大的類。
3. 重復步驟 2 中的操作,直到達到特定的迭代條件(例如當前類的數目是初始時的 10% ,即 90% 的類都得到了合並;最小的類間距離大於預先設定的閾值等等),演算法結束。
和K-means演算法中的 K 值選取一樣,HAC中如何選擇迭代的終止條件也是一個比較復雜的問題,需要根據一定的經驗,並且具體問題具體分析。
這種方法的核心思想是先計算出聚類中心,再把所有的樣本點按照就近原則,歸到離自身最近的聚類中心所對應的類。最大最小是指在所有的最小距離中選取最大的。其主要的演算法步驟如下:
1. 隨機選擇一個點,作為第一個類的聚類中心 Z1。
2. 選擇與步驟 1 中距離最遠的樣本點,作為第二個類的聚類中心 Z2。
3. 逐個計算每個點到所有聚類中心的距離,並把所有的最短的距離記錄下來。
4. 在這些最短距離中挑選最大的值,如果這個最大值大於 ,其中 ,那麼將這個最大距離所對應的另一個樣本點作為新的聚類中心;否則整個演算法結束。
5. 重復步驟 3 和 4 的操作,直到 4 中不再出現新的聚類中心。
6. 將所有的樣本歸到與他自身最近的聚類中心。
參考:
https://www.jianshu.com/p/4f032dccdcef
https://www.jianshu.com/p/bbac132b15a5
https://blog.csdn.net/u011511601/article/details/81951939
㈨ 聚類演算法有哪些
聚類演算法有:劃分法、層次法、密度演算法、圖論聚類法、網格演算法、模型演算法。
1、劃分法
劃分法(partitioning methods),給定一個有N個元組或者紀錄的數據集,分裂法將構造K個分組,每一個分組就代表一個聚類,K<N。使用這個基本思想的演算法有:K-MEANS演算法、K-MEDOIDS演算法、CLARANS演算法。
2、層次法
層次法(hierarchical methods),這種方法對給定的數據集進行層次似的分解,直到某種條件滿足為止。具體又可分為「自底向上」和「自頂向下」兩種方案。代表演算法有:BIRCH演算法、CURE演算法、CHAMELEON演算法等。
3、密度演算法
基於密度的方法(density-based methods),基於密度的方法與其它方法的一個根本區別是:它不是基於各種各樣的距離的,而是基於密度的。這樣就能克服基於距離的演算法只能發現「類圓形」的聚類的缺點。代表演算法有:DBSCAN演算法、OPTICS演算法、DENCLUE演算法等。
4、圖論聚類法
圖論聚類方法解決的第一步是建立與問題相適應的圖,圖的節點對應於被分析數據的最小單元,圖的邊(或弧)對應於最小處理單元數據之間的相似性度量。因此,每一個最小處理單元數據之間都會有一個度量表達,這就確保了數據的局部特性比較易於處理。圖論聚類法是以樣本數據的局域連接特徵作為聚類的主要信息源,因而其主要優點是易於處理局部數據的特性。
5、網格演算法
基於網格的方法(grid-based methods),這種方法首先將數據空間劃分成為有限個單元(cell)的網格結構,所有的處理都是以單個的單元為對象的。代表演算法有:STING演算法、CLIQUE演算法、WAVE-CLUSTER演算法。
6、模型演算法
基於模型的方法(model-based methods),基於模型的方法給每一個聚類假定一個模型,然後去尋找能夠很好的滿足這個模型的數據集。通常有兩種嘗試方向:統計的方案和神經網路的方案。
(9)多種聚類演算法概述擴展閱讀:
聚類分析起源於分類學,在古老的分類學中,人們主要依靠經驗和專業知識來實現分類,很少利用數學工具進行定量的分類。隨著人類科學技術的發展,對分類的要求越來越高,以致有時僅憑經驗和專業知識難以確切地進行分類,於是人們逐漸地把數學工具引用到了分類學中,形成了數值分類學,之後又將多元分析的技術引入到數值分類學形成了聚類分析。聚類分析內容非常豐富,有系統聚類法、有序樣品聚類法、動態聚類法、模糊聚類法、圖論聚類法、聚類預報法等。
在商業上,聚類可以幫助市場分析人員從消費者資料庫中區分出不同的消費群體來,並且概括出每一類消費者的消費模式或者說習慣。它作為數據挖掘中的一個模塊,可以作為一個單獨的工具以發現資料庫中分布的一些深層的信息,並且概括出每一類的特點,或者把注意力放在某一個特定的類上以作進一步的分析;並且,聚類分析也可以作為數據挖掘演算法中其他分析演算法的一個預處理步驟。
㈩ 聚類演算法(上)06
這篇文章的整體排版主要是根據個人的博客來噠,如果感興趣的話可以去我的自己搭建的個人博客看這篇 文章 。
聚類演算法很多,所以和講回歸演算法一樣,分成了上下,上中主要講了傳統的K-Means演算法以及其相應的優化演算法入K-Means++,K-Means||和Canopy等。下中主要講了另外兩種的思路的聚類演算法,即層次聚類和密度聚類。
聚類算就是懟大量未知標注的數據集,按照數據 內部存在的數據特徵 將數據集 劃分為多個不同的類別 ,使類別內的數據比較相似,類別之間的數據相似度比較小,屬於 無監督學習 。
從定義就可以看出,聚類演算法的關鍵在於計算樣本之間的 相似度 ,也稱為 樣本間的距離 。
說到聚類演算法,那肯定核心就是計算距離的公式了,目前常用的有以下幾種。
閔可夫斯基距離(Minkowski) :公式2.1
KL距離(相對熵) :
思考下條件熵的定義,簡單的來說就是在放生一件事情的時候,發生另一件事的概率。公式如下公式2.7.
註:這里書的概率不是實指概率,而是熵表達的含義。這個公式其實就是條件熵的公式。
傑卡德相似系數(Jaccard) :
這個很好理解,它的核心就是使用兩個集合的交集和並集的比率來代表兩者的相似度,也就是說重合的越多越相似。公式如下,公式2.8.
Pearson相關系數 :
這個就是考研數學中的相關系數,表達就是兩者之間的想關系,所以直接拿來用就好了,公式如下公式2.9。
給定一個有M個對象的數據集,構建一個具有k個簇的模型,其中k<=M。滿足 以下條件:
基本思想:
對於給定的類別數目k,首先給定初始劃分,通過迭代改變樣本和簇的隸屬關系,使的每次處理後得到的劃分方式比上一次的好,即 總的數據集之間的距離和變小了
K-means的核心演算法如下:
再循環中的第二步,我們移動了中心點的位置,把中心點移到了隸屬於該中心點類別的所有樣本的中間,並使用樣本的均值作為位置。這樣子看似是拍腦袋想的移動策略,其實是可以推導出來的。正如聚類演算法思想所指出的,我們要讓所有的點到自己的分類的中心點的歐幾里得距離最小,所以我們設置目標放稱為公式4.1,公式中的1/2是為了之後求導運算方便。我們為了讓目標函數盡可能的小,所以使用了之前一直在使用的思考方式,對其使用梯度下降演算法,求導後得到公式4.2,之後令其等於0,就得到了公式4.3。
最後這個看似不錯的演算法,其實有著不小的缺點,那就是 初值敏感 。我們來仔細想一想,如果兩個不小心隨機生成的初值落到了一個類別中,兩者的距離還特別近,這中情況下就很難正確分類了。除此之外,由於移動策略中使用的是均值,也就是說如果集合中含有非常大的誤差點的話,這樣子會是中心點的設置偏離正確點很遠,所以很多時候我們改用 中值來更新中心點 ,這就是我們說的K-Mediods聚類,即K中值聚類。
總結下K-means演算法
優點:
由於K-Means對初始中心點非常敏感,我們這里就嘗試著通過二分法弱化初始中心點。這種演算法的具體步驟如下:
我們在這個演算法中提到了SSE,這個可以是簇內所有樣本點,到其中心點的距離的總和,代表著簇內的點是不是高度相關。計算公式如下公式4.4。
可以看出在這種演算法下,很好的避開了,兩個中心點都在一起的情況。
K-Means++做的改善,是直接對初始點的生成位置的選擇進行優化的,他的初始點生成策略如下:
Canopy屬於一種「粗略地」聚類演算法,簡單的來說就是,不那麼追求自動獲得最優解,而是引入了一種人為規定的先驗值進行聚類,具體步驟如下:
註:Canopy演算法得到的最終結果的值,聚簇之間是可能存在重疊的,但是不會存在 某個對象不屬於任何聚簇的情況
顯然,這種演算法雖然快,但是很難生成滿足我們應用的模型,所以通常我們將它作為解決K-Means初值敏感的方案,他們合在一起就是Canopy+K-Means演算法。
順序就是先使用Canopy演算法獲得K個聚類中心,然後用這K個聚類中心作為K-Means演算法。這樣子就很好的解決了K-Means初值敏感的問題。
Mini Batch K-Means演算法是K-Means演算法的一種優化變種,採用小規模的數據子集,來減少計算時間。其中採用小規模的數據子集指的是每次訓練使用的數據集是在訓練演算法的時候隨機抽取的數據子集。Mini Batch K-Means演算法可以減少K-Means演算法的收斂時間,而且產生的結果效果只是略差於標准K-Means演算法。
它的演算法步驟如下:
聚類演算法的衡量標准有很多,包括均一性、完整性、V-measure、調整蘭德系數(ARI ,Adjusted Rnd Index)、調整互信息(AMI,Adjusted Mutual Information)以及輪廓系數等等。
均一性:一個簇中只包含一個類別的樣本,則滿足均一性。其實也可以認為就是正確率,即每個聚簇中正確分類的樣本數占該聚簇總樣本數的比例和。其公式如下公式5.1。
完整性:同類別樣本被歸類到相同簇中,則滿足完整性。每個聚簇中正確分類的樣本數占該類型的總樣本數比例的和,通俗的來說就是,我們已分類類別中,分類正確的個數。
其公式如下,公式5.2:
在實際的情況中,均一性和完整性是往往不能兼得的,就好像抓特務時的矛盾一樣,到底是保證每個抓的人都是特務,還是寧可錯抓也不放過一個特務,之間的取捨很難把握。所以再一次貫徹,魚和熊掌不可兼得,我們就加權,於是得到的就是V-measure,其公式如下公式5.3:
蘭德系數(RI,Rand index) ,我用中文看了不少講蘭德系數的博客,其中的文字說明幾乎都是相同的,對個人的理解幫助不是特別大,於是用英文查的。最終理解了這個系數的參數的意思,想看英文說明的,個人覺得還挺好懂的參考 這里 。以下是我個人的講解。
首先,將原數據集中的元素進行兩兩配對形成一個新的數據集,我們稱之為S數據集。這時候,我們將原數據集,根據兩種不同的策略分別劃分成r份和s份,並對這兩個數據集命名為X和Y。在這里我們可以看出,X和Y的元素是相同的,只是他們的劃分方式不同。
接下來我們來思考,S數據集中,每個元素中的兩個樣本,在X和Y中只有兩種可能,就是兩個樣本都在一個子集中,或者不在一個子集中,那麼對於S中的一個元素,只有四種可能性。
接下來引入, 調整蘭德系數(ARI,Adjusted Rnd Index) ,ARI取值范圍 ,值越大,表示聚類結果和真實情況越吻合。從廣義的角度來將,ARI是衡量兩個數據分布的吻合程度的,公式5.5如下:
調整互信息,整體的流程很像ARI,AMI則是對MI進行調整。而MI是使用信息熵來描述的。那麼互信息表示了什麼呢,首先先看下 維基網路的定義 :
之前我們說到的衡量指標都是有標簽的,這里的輪廓系數則是不包含標簽的評價指標。