Fuzzy C Means 算法及其 Python 實現——寫得很清楚,見原文
阿新 • • 發佈:2017-07-24
少包 均值 平均值 劃分 gin 及其 end 5% 指數 就變成了模糊判定矩陣。此時 需滿足:
Fuzzy C Means 算法及其 Python 實現
轉自:http://note4code.com/2015/04/14/fuzzy-c-means-%E7%AE%97%E6%B3%95%E5%8F%8A%E5%85%B6-python-%E5%AE%9E%E7%8E%B0/
1. 算法向 算法的擴展
在 算法中,如果要將數據集合 劃分為 個類,使得任意數據對象 必須屬於並且僅屬於一個類,同時每一個類至少包含一個數據對象,那麽可以用一個 的矩陣 來表示,矩陣中的任意一個元素 可以表示為:
其中 表示第 個類。並且 需要滿足如下條件 :
如果上述矩陣 中的元素 的取值範圍不僅僅是 0 或者 1,那麽就可以推廣到模糊集合上的劃分,
(1)
2. 目標函數與聚類中心
算法在度量數據對象的非相似性(或者說距離)時一般使用歐幾裏得距離,要求每個類的聚類中心與數據對象的距離平方之和最小,目標函數可以表示為:
其中 表示任意聚類中心,而聚類中心一般取類內所有對象在各屬性上的平均值,因此可以表示為:
表示任意一個類。
將算法推廣到模糊集後, 對樣本與類中心之間的距離采用隸屬度的平方來加權, 則進一步引入了隸屬度的加權指數 從而得到了新的目標函數:
(2)
要使得 (2) 式達到最小值則要求聚類中心 和隸屬度 滿足如下條件:
(3)
(4)
3. 算法計算過程
見原文和代碼實現
Fuzzy C Means 算法及其 Python 實現——寫得很清楚,見原文