FCM演算法與K Means演算法的聚類

2021-09-29 03:06:52 字數 3314 閱讀 6308

模糊c均值(fuzzy c-means)演算法簡稱fcm演算法,是一種基於目標函式劃分的模糊聚類演算法,主要用於資料的聚類分析。它的思想就是使得被劃分到同一簇的物件之間相似度最大,而不同簇之間的相似度最小。

fcm把n個向量xi(i=1,2,…,n)分為c個模糊組,並求每組的聚類中心,使得非相似性指標的價值函式達到最小。fcm使得每個給定資料點用值在0,1間的隸屬度來確定其屬於各個組的程度。隸屬矩陣u允許有取值在0,1間的元素。不過,加上歸一化規定,乙個資料集的隸屬度的和總等於1

那麼,fcm的價值函式(或目標函式)就是式(6.2)的一般化形式:

這裡uij介於0,1間;ci為模糊組i的聚類中心,dij=||ci-xj||為第i個聚類中心與第j個資料點間的歐幾里德距離;且m∈[1,∞)是乙個加權指數。

構造如下新的目標函式,可求得使(6.10)式達到最小值的必要條件:

(1)資料集資訊

每條記錄都是一張手的示例,該手由從52張標準牌組中抽出的五張紙牌組成。每張紙牌使用兩個屬性(西服和等級)進行描述,總共具有10個**屬性。有乙個描述「撲克手」的類屬性。卡的順序很重要,這就是為什麼有480張可能的皇家同花順手而不是4張的原因。

(2)例項數量

25010培訓,1,000,000測試

(3)屬性數量

10個**屬性,1個目標屬性

(4)屬性資訊

1)s1「卡牌#1」

序數(1-4),代表

2)c1「卡片#1的排名」

數值(1-13)代表(ace,2,3,...,queen,king)

3)s2「 2號卡套裝」

序數(1-4),代表

4)c2「卡片2級」

數值(1-13)代表(ace,2,3,...,queen,king)

5)s3「卡牌#3」

序數(1-4),代表

6)c3「卡片#3的排名」

數值(1-13)代表(ace,2,3,...,queen,king)

7)s4「卡牌#4」

序數(1-4),代表

8)c4「卡片4級」

數值(1-13)代表(ace,2,3,...,queen,king)

9)s5「套卡#5」

序數(1-4),代表

10)c5「 5級卡片」

數值(1-13)代表(ace,2,3,...,queen,king)

11)類「撲克手」

序數(0-9)

0:沒有東西;不是公認的撲克手

1:一對;五張牌中一對相等的等級

2:兩對;五張牌內兩對等排名

3:三種 五張牌中的三個相等等級

4:直 五張牌,順序排列,無間隙

5:沖洗 五張相同西裝的卡

6:滿屋子 對+不同等級的三種

7:四種 五張牌中的四個相等等級

8:直衝;平直+齊平

9:同花順 +同花順

(5)訓練集

0:一無所有12493個例項(49.95202%/ 50.117739%)

1:一對10599個例項(42.37905%/ 42.256903%)

2:兩對1206個例項(4.82207%/ 4.753902%)

3:三種例項,共513個例項(2.05118%/ 2.112845%)

4:平直,93個例項(0.37185%/ 0.392465%)

5:同花順,54次,(0.21591%/ 0.19654%)

6:滿屋,36個例項,(0.14394%/ 0.144058%)

7:一種,四個,六個例項(0.02399%/ 0.02401%)

8:直衝5次,(0.01999%/ 0.001385%)

9:皇家同花順5次,(0.01999%/ 0.000154%)

同花順和皇家同花順不能代表

真實域,因為它們已被過度取樣。直衝

在訓練集中發生的可能性是14.43倍,而

皇家同花順的可能性是129.82倍。

311,875,200個域中的25010個例項。

(6)測試集

括號內的值表示測試中的表示形式

與整個域相比設定。1.0是完美的表示,

而<1.0則代表不足,而》 1.0則代表過多。

0:一無所有,501209個例項,(1.000063)

1:一對422498例項(0.999832)

2:兩對47622個例項(1.001746)

3:三種同類的21121個例項(0.999647)

4:直,3885例,(0.989897)

5:同花順,2023年,例項(1.015569)

6:滿屋,1424個例項,(0.988491)

7:四個同類,有230個例項,(0.957934)

8:同花順12例(0.866426)

9:皇家同花順3次,(1.948052)

311,875,200域中的總數為100萬個例項。

(7)統計

撲克手#手的概率#組合的數目

皇家同花順4 0.00000154 480

同花順36 0.00001385 4320

四種624 0.0002401 74880

滿屋子3744 0.00144058 449280

沖洗5108 0.0019654 612960

直式10200 0.00392464 1224000

三類54912 0.02112845 6589440

兩對123552 0.04753902 14826240

一對1098240 0.42256903 131788800

一無所有1302540 0.50117739 156304800

總計2598960 1.0 311875200

組合的數量代表整個域中例項的數量。

K Means演算法與FCM演算法

一 前期準備 1.收集資料 2.描述資料集 二 原理分析 1.k means聚類法 這要從聚類開始說起 聚類 是對於靜態資料分析的一門技術,在許多領域受到廣泛應用,包括機器學習,資料探勘,模式識別,影象分析以及生物資訊。是把相似的物件通過靜態分類的方法分成不同的組別或者更多的子集,讓在同乙個子集中的...

Kmeans演算法與KNN演算法的區別

首先明確一點knn與kmeans的演算法的區別 1.knn演算法是分類演算法,分類演算法肯定是需要有學習語料,然後通過學習語料的學習之後的模板來匹配我們的測試語料集,將測試語料集合進行按照預先學習的語料模板來分類 2kmeans演算法是聚類演算法,聚類演算法與分類演算法最大的區別是聚類演算法沒有學習...

Kmeans演算法與KNN演算法的區別

kmeans演算法的缺陷 1.聚類中心的數量k需要事先給定,但在實際中這個k值的選定是非常難以進行估計的,很多時候,事先並不知道給定的資料集應該分成多少個類別才更合適。2.kmeans需要初始化聚類中心,不同的初始聚類中心可能導致完全不同的聚類效果。針對第2個缺陷,可以使用kmeans 演算法來解決...