




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、模*M C均值聚類算法的實現(xiàn)研究背景模糊聚類分析算法大致可分為三類1)分類數(shù)不定,根據(jù)不同要求對事物進行動態(tài)聚類, 此類方法是基于模糊等價 矩陣聚類的,稱為模糊等價矩陣動態(tài)聚類分析法。2)分類數(shù)給定,尋找出對事物的最佳分析方案, 此類方法是基于目標函數(shù)聚類 的,稱為模糊C均值聚類。3)在攝動有意義的情況下,根據(jù)模糊相似矩陣聚類,此類方法稱為基于攝動的 模糊聚類分析法聚類分析是多元統(tǒng)計分析的一種,也是無監(jiān)督模式識別的一個重要分支,在模 式分類圖像處理和模糊規(guī)則處理等眾多領(lǐng)域中獲得最廣泛的應(yīng)用。它把一個沒 有類別標記的樣本按照某種準則劃分為若干子集,使相似的樣本盡可能歸于一 類,而把不相似的樣本劃
2、分到不同的類中。 硬聚類把每個待識別的對象嚴格的劃 分某類中,具有非此即彼的性質(zhì),而模糊聚類建立了樣本對類別的不確定描述, 更能客觀的反應(yīng)客觀世界,從而成為聚類分析的主流。模糊聚類算法是一種基于函數(shù)最優(yōu)方法的聚類算法,使用微積分計算技術(shù)求 最優(yōu)代價函數(shù),在基于概率算法的聚類方法中將使用概率密度函數(shù),為此要假定合適的模型,模糊聚類算法的向量可以同時屬于多個聚類,從而擺脫上述問題。我所學(xué)習(xí)的是模糊C均值聚類算法,要學(xué)習(xí)模糊C均值聚類算法要先了解慮 屬度的含義,隸屬度函數(shù)是表示一個對象x隸屬于集合A的程度的函數(shù),通常記 做N4x),其自變量范圍是所有可能屬于集合 A的對象(即集合A所在空間中的 所有
3、點),取值范圍是0,1,即0<=N A(x)<=1 。 N&x)=1表示x完全隸屬于集合 A,相當于傳統(tǒng)集合概念上的xCA。一個定義在空間X=x上的隸屬度函數(shù)就定 義了一個模糊集合A,或者叫定義在論域X=x上的模糊子集Ao對于有限個對 象x1, x2,xn模糊集合A可以表示為: A=(A(x)xi)|xi X(6.1)有了模糊集合的概念,一個元素隸屬于模糊集合就不是硬性的了,在聚類的 問題中,可以把聚類生成的簇看成模糊集合,因此,每個樣本點隸屬于簇的隸屬度就是0 ,1區(qū)間里面的值。FCMT法需要兩個參數(shù)一個是聚類數(shù)目 C,另一個是參數(shù) m 一般來講C要 遠遠小于聚類樣本的總
4、個數(shù),同時要保證 C>1。對于m它是一個控制算法的柔 性的參數(shù),如果 m過大,則聚類效果會很次,而如果 m過小則算法會接近HCM 聚類算法。算法的輸出是C個聚類中心點向量和C*N的一個模糊劃分矩陣,這個矩陣表 示的是每個樣本點屬于每個類的隸屬度。根據(jù)這個劃分矩陣按照模糊集合中的最 大隸屬原則就能夠確定每個樣本點歸為哪個類。聚類中心表示的是每個類的平均特征,可以認為是這個類的代表點。從算法的推導(dǎo)過程中我們不難看出,算法對于滿足正態(tài)分布的數(shù)據(jù)聚類效果會很 好,另外,算法對孤立點是敏感的。聚類算法是一種比較新的技術(shù),基于曾次的聚類算法文獻中最早出現(xiàn)的 Single-Linkage 層次聚類算法
5、是1957年在Lloyd的文章中最早出現(xiàn)的,之后 MacQueen蟲立提出了經(jīng)典的模糊C均值聚類算法,F(xiàn)CM#法中模糊劃分的概念最 早起源于Ruspini的文章中,但關(guān)于FCM勺算法的詳細的分析與改進則是由 Dunn 和Bezdek完成的。模本c均值聚類算法因算法簡單收斂速度快且能處理大數(shù)據(jù)集,解決問題范圍廣,易于應(yīng)用計算機實現(xiàn)等特點受到了越來越多人的關(guān)注,并應(yīng)用于各個領(lǐng)域。算法描述模糊C均值聚類算法的步驟還是比較簡單的,模糊C均值聚類(FCM,即眾所周知的模糊ISODATA是用隸屬度確定每個數(shù)據(jù)點屬于某個聚類的程度的一種 聚類算法。1973年,Bezdek提出了該算法,作為早期硬 C均值聚類
6、(HCM方法 的一種改進。FCMf巴n個向量Xi (i=1,2,n)分為c個模糊組,并求每組的聚類中心, 使得非相似性指標的價值函數(shù)達到最小。FCMf HCM勺主要區(qū)別在于FCMffl模糊 劃分,使得每個給定數(shù)據(jù)點用值在0,1間的隸屬度來確定其屬于各個組的程度。 與引入模糊劃分相適應(yīng),隸屬矩陣 U允許有取值在0, 1間的元素。不過,加上 歸一化規(guī)定,一個數(shù)據(jù)集的隸屬度的和總等于1:cuij =1,-j =1,,n(6.9)i =1那么,F(xiàn)CM勺價值函數(shù)(或目標函數(shù))就是式(6.2)的一般化形式:cc nJ(U ,Ci,.,Cc) =£ Ji =£ £ u;di2
7、,(6.10)i=1i W j這里uij介于0, 1問;Ci為模糊組I的聚類中心,dij =|c i-Xj|為第I個聚類中 心與第j個數(shù)據(jù)點問的歐幾里德距離;且 mw 1產(chǎn))是一個加權(quán)指數(shù)。構(gòu)造如下新的目標函數(shù),可求得使(6.10)式達到最小值的必要條件:_c(6.11)J(U ,C1,.,Cc, 1,., n)= J(U ,Ci,.,Cc)八,'jC uij -1) i=1c nnc' umdij2、 j(x uj -1)i W jj W i W這里, j=1到n,是(6.9)式的n個約束式的拉格朗日乘子。對所有輸入?yún)⒘?求導(dǎo),使式(6.10)達到最小的必要條件為:,. mU
8、ij Xjn一 mUijj坦(6.12)(6.13)由上述兩個必要條件,模本C均值聚類算法是一個簡單的迭代過程。 在批處理方 式運行時,F(xiàn)CMffl下列步驟確定聚類中心c和隸屬矩陣U1:步驟1:用值在0, 1間的隨機數(shù)初始化隸屬矩陣 U,使其滿足式(6.9)中 的約束條件步驟2:用式(6.12)計算c個聚類中心Ci, i=1,c。步驟3:根據(jù)式(6.10)計算價值函數(shù)。如果它小于某個確定的閥值,或它 相對上次價值函數(shù)值的改變量小于某個閥值,則算法停止。步驟4:用(6.13)計算新的U矩陣。返回步驟2。上述算法也可以先初始化聚類中心,然后再執(zhí)行迭代過程。由于不能確保FCM 收斂于一個最優(yōu)解。算法
9、的性能依賴于初始聚類中心。 因此,我們要么用另外的 快速算法確定初始聚類中心,要么每次用不同的初始聚類中心啟動該算法,多次運行FCM模糊c均值聚類算法如下:Reapeat for l=1 2 3Step 1:compute the cluseter prototypes(means):和_ £ I一自4Step 2:compete the distance:(4擊)2 = (rt -/(辦-p.) , t 石 i ( j1 W 4 W 71Step 3:Update the partition matrix:For i w k £ NIf (d法)'。for all
10、 i = 1,2£2A產(chǎn)m-D Otherwise= 0 if d&A > 0. and W 0t 1 j with±4n = i « iUntil II U- t/3D II < e算法改進1) 在模糊聚類的目標函數(shù)中 Bezdek引入了加權(quán)指數(shù) m使Dum的聚類準則變成m=2時候的特例,從數(shù)學(xué)上說 m的出現(xiàn)不自然且沒有必要, 但如果不給以慮屬度乘以權(quán)值,那么從硬聚類準則函數(shù)到軟聚類目標 函數(shù)的推廣準則是無效的,參數(shù)m又稱為平滑因子,控制著模式早模 糊類間的分享程度,因此,要實現(xiàn)模糊 c聚類就要選擇一適合的m 然而最佳的m的選取目前還缺乏理論
11、,監(jiān)管存在一些經(jīng)驗值或經(jīng)驗范 圍,但沒有面向問題的優(yōu)選方法,也缺少參數(shù) m的有效性評價準則2) 盡管模糊聚類是一種無監(jiān)督的分類,但現(xiàn)在的聚類算法卻=需要應(yīng)用聚類原型的先驗條件,否則算法會產(chǎn)生誤導(dǎo),從未破壞算法的無監(jiān)督 性和自動化。3) 因為模糊聚類目標是非凸的,而模糊C均值聚類算法的計算過程又是迭代爬山,一次很容易陷入局部極值點,從而得不到最優(yōu)解或滿意解, 同時,大數(shù)據(jù)量下算法耗時也是困擾人們的一大難題,這2個問題目前還不能得到全面的解決。4) FC峨型的聚類算法屬于劃份方法,對于 1組給定的樣本集,不管數(shù)據(jù)中有無聚類結(jié)構(gòu),也不問分類結(jié)果是否有效,總把數(shù)據(jù)劃分到C個 子類中,換言之,現(xiàn)有的聚類
12、分析與聚類趨勢,以及有效分析是隔離 的分離得。5) FCM勺聚類算法是針對特征空間中的點集設(shè)計的,對于特殊類型的數(shù)據(jù),比如在樣本每維特征的賦值不是一個數(shù),而是一個區(qū)間。集合和 模糊數(shù)時,F(xiàn)C滋型的算法無法直接處理模糊C均值聚類算法存在上述缺點,改進的算法正確率能達到更高。Fcm算法在處理小數(shù)據(jù)集的時候是有效的,但隨著數(shù)據(jù)容量和維數(shù)的增加,迭代 步驟會顯著增加,而且在迭代的每一步都要對整個數(shù)據(jù)集進行操作,無法滿 足數(shù)據(jù)挖掘時的需要。改進算法的思想是首先采用隨機抽樣的辦法,從數(shù)據(jù)集中選取多個樣本,對每個樣本應(yīng)用FCMT法,將得到的結(jié)果作為初始群體,然后再利用遺傳算 法對聚類結(jié)果進行優(yōu)化,選取其中的
13、最優(yōu)解做為問題的輸出,由于采樣技術(shù) 顯著的壓縮了問題的規(guī)模,而遺傳又可以對結(jié)果進行全局最優(yōu)化處理,因此 在時間性能和聚類質(zhì)量上都能獲得較滿意的結(jié)果。遺傳算法是美國Michigon大學(xué)的John Holland研究機器學(xué)習(xí)時創(chuàng)立的 一種新型的優(yōu)化算法,它的主要優(yōu)點是:遺傳算法是從一系列點的群體開始 搜索而不是從單個樣本點進行搜索,遺傳算法利用適應(yīng)值的相關(guān)信息,無需 連續(xù)可導(dǎo)或其他輔助信息,遺傳算法利用轉(zhuǎn)移概率規(guī)則,而非確定性規(guī)則進 行迭代,遺傳算法搜索過程中,以對群體進行分化以實現(xiàn)并行運算,遺傳算 法經(jīng)過遺傳變異和雜交算子的作用, 以保證算法以概率1收斂到全局最優(yōu)解 一具有較好的全局特性,其次遺
14、傳算法占用計算機的內(nèi)存小,尤其適用計算 復(fù)雜的非線性問題。遺傳算法的設(shè)計部分(1)種群中個體的確定聚類的關(guān)鍵問題是聚類中心的確定,因此可以選取聚類中心作為種群的個體,由于共有C個聚類中心,而每個聚類中心是一個 S維的實數(shù) 向量,因此每個個體的初始值是一個 c*s維的市屬向量。(2)編碼常用的編碼方式有二進制與實數(shù)編碼,由于二進制編碼的方式搜索 能力最強,且交叉變異操作簡單高效,因此采用二進制的編碼方式,同 時防止在進行交叉操作時對優(yōu)良個體造成較大的破壞,在二進制編碼的 方式中采用格雷碼的編碼形式。每個染色體含c*s個基因鏈,每個基因鏈代表一維的數(shù)據(jù),由于原 始數(shù)據(jù)中各個屬性的取值可能相差很大,
15、因此需首先對數(shù)據(jù)進行交換以 統(tǒng)一基因鏈的長度,可以有以下兩種變換方式。1掃描整個數(shù)據(jù)集,確定每維數(shù)據(jù)的取值范圍,然后將其變換到同 一量級,在保留一定有效位的基礎(chǔ)上取整,根據(jù)有效位的個數(shù)動態(tài)的計 算出基因鏈的長度。2對數(shù)據(jù)進行正規(guī)化處理,即將各維數(shù)據(jù)都變換到相同的區(qū)間,可 以算出此時的基因鏈長度為10。(3)適應(yīng)度函數(shù)由于在算法中只使用了聚類中心 V,而未使用慮屬矩陣u,因此需要 對FCM聚類算法的目標函數(shù)進行改進,以適用算法的要求, 八(尸)=刈士目KIM J和目標函數(shù)是等價的,由于遺傳算法的適用度一般取值極大,因此可取上式的倒數(shù)作為算法的使用度函數(shù)。(4)初始種群的確定初始種群的一般個體由通
16、過采樣后運行 FCM算法得到的結(jié)果給出, 另外的一般個體通過隨機指定的方法給出,這樣既保證了遺傳算法在運 算之初就利用背景知識對初始群體的個體進行了優(yōu)化,使算法能在一個 較好的基礎(chǔ)上進行,又使得個體不至于過分集中在某一取值空間,保證 了種群的多樣性。(5)遺傳操作選擇操作采用保持最優(yōu)的錦標賽法, 錦標賽規(guī)模為2,即每次隨機取 2個個體,比較其適應(yīng)度,較大的作為父個體,并保留每代的最優(yōu)個體 作為下一代,交叉方式一般采用單點交叉或多點交叉法進行,經(jīng)過試驗 表明單點交叉效果較好,因此采用單點交叉法,同時在交叉操作中,應(yīng) 該對每維數(shù)據(jù)分開進行,以保證較大的搜索空間和結(jié)果的有效性,變異 操作采用基本位變
17、異法。(6)終止條件的確定遺傳算法在以下二種情況下終止a最佳個體保持不變的代數(shù)達到設(shè)定的閾值b遺傳操作以到達給定的最大世代數(shù)算法具體步驟如下1確定參數(shù),如聚類個數(shù)樣本集大小種群規(guī)模最大世代數(shù)交叉概率 和變異概率等。2對數(shù)據(jù)集進行多次采樣并運行 FCMB法,得到初始種群的一般個體, 通過隨機制定產(chǎn)生另一半個體。3對數(shù)據(jù)集進行正規(guī)化處理并編碼。4計算初始種群中個體的適應(yīng)度。5對種群進行遺傳操作產(chǎn)生下一代,在操作的過程中,應(yīng)該排除產(chǎn)生的 無效個體。6計算個體的適應(yīng)度,如果滿足終止條件,則算法結(jié)束,否則轉(zhuǎn)到5繼續(xù)在理論上講進行遺傳操作的樣本容量越大,聚類的誤差越小,由 于采樣技術(shù)顯著壓縮了問題規(guī)模,而
18、遺傳算法又可以對全局進行最優(yōu)化 處理,因此改進的算法在時間與性能上都能獲得較滿意的結(jié)果,此算法 利用采樣技術(shù)來提高算法的運行速度,利用遺傳算法對聚類進行優(yōu)化, 避免陷入局部最優(yōu)解,在性能上相比于傳統(tǒng)的模糊 C均值聚類算法獲得 較大提高。算法實現(xiàn)米用VC+進行編寫文檔的讀取#include "data.h"/函數(shù)定義double *DataRead(char*name,int row,int col)double *p=new double* row;ifstream infile;infile.open(name,ios:in);for(int i=0;i<row;i
19、+)pi=new doublecol;for(int j=0;j<col;j+)(infile>>pij;infile.close();cout<<"成功讀取數(shù)據(jù)文件:"<<name<<"!n"return p;/釋放內(nèi)存for(i=0;i<row;i+)(deletepi;deletep;文檔的保存#include "data.h"void DataSave(double*data,int row,int col,char*name) (int i,j;ofstream o
20、utfile;/打開文件,輸出數(shù)據(jù)outfile.open(name,ios:out);outfile.setf(ios:fixed);outfile.precision(4);for(i=0;i<row;i+)(for(j=0;j<col;j+)(outfile<<dataij<<" "outfile<<endl;outfile<<endl<<endl;outfile.close();數(shù)據(jù)標準化處理#include "data.h" double *Standardize(doub
21、le *data,int row,int col) (矩陣每列的最大值 矩陣每列的最小值 矩陣列元素int i,j;double* a=new doublecol; /double* b=new doublecol; /double* c=new doublerow; /for(i=0;i<col;i+)(/取出數(shù)據(jù)矩陣的各列元素 for(j=0;j<row;j+)(cj=Dataji;)ai=c0,bi=c0;for(j=0;j<row;j+)(/取出該列的最大值 if(cj>ai)(ai=cj;)/取出該列的最小值 if(cj<bi)(bi=cj;)/數(shù)據(jù)標準
22、化for(i=0;i<row;i+)(for(j=0;j<col;j+)(dataij=(dataij-bj)/(aj-bj);) )cout<<"完成數(shù)據(jù)極差標準化處理!n"deletea;deleteb;deletec;return data;)生成樣本慮屬矩陣#include "data.h"void Initialize(double *u, int k, int row) (int i,j;/初始化樣本隸屬度矩陣srand(time(0);for(i=0;i<k;i+) (for(j=0;j<row;j+)(
23、uij=(double)rand()/RAND_MAX;/得到一個小于 1 的小數(shù)隸屬度/rand() 函數(shù)返回0和RAND_MAX間的一個偽隨機數(shù) )數(shù)據(jù)歸一化處理#include "data.h"void Normalize(double *u,int k,int col) (int i,j;double *sum=new doublecol;/矩陣U的各列元素之和for(j=0;j<col;j+)(double dj=0;for(i=0;i<k;i+)dj=dj+Uij;sumj=dj;/隸屬度各列之和)for(i=0;i<k;i+)(for(j=0
24、;j<col;j+)(uij=Uij/sumj;)/規(guī)一兒處理(每列隸屬度之和為1)迭代過程#include "data.h"#include "func.h"/ 對模糊C均值進行迭代運算,并返回有效性評價函數(shù)的值 double Update(double*u,double*data,double*center,introw,int col,int k)(int i,j,t;double *p=NULL;for(i=0;i<k;i+) ( for(j=0;j<row;j+) ( 模糊指數(shù)取2 uij=pow(uij,2); )根據(jù)隸屬度
25、矩陣計算聚類中心p=MatrixMul(u,k,row,data,row,col);for(i=0;i<k;i+) (/計算隸屬度矩陣每行之和double si=0;for(j=0;j<row;j+) (si+=uij;for(t=0;t<col;t+)(centerit=pit/si; /類中心)j的距離矩陣dis(i,j)第一個樣本點第二個樣本點中心與樣本之間距離矩陣/計算各個聚類中心i分別到所有點 double* a=new doublecol;/double* b=new doublecol;/double*dis=new double*k; /for(i=0;i&l
26、t;k;i+)(disi=new doublerow;)for(i=0; i<k; i+)(/聚類中心for(t=0; t<col; t+)(at=centerit; /暫存類中心)/數(shù)據(jù)樣本for(j=0; j<row; j+)(for(t=0; t<col; t+)( bt=datajt;/暫存一樣本)double d=0;/中心與樣本之間距離的計算for(t=0; t<col; t+)(d+=(at-bt)*(at-bt); /d為一中心與所有樣本的距離的平方和)disij=sqrt(d);/ 距離)根據(jù)距離矩陣計算隸屬度矩陣for(i=0;i<k;i
27、+)(for(j=0;j<row;j+)(double temp=0;for(t=0;t<k;t+)(/disij依次除以所在列的各元素,加和;一個類中心和模糊指數(shù)為2.0temp+=pow(disij/distj,2/(2.0-1);/一個元素的距離平方與)uij=1/temp;/所有類與該元素距離平方的和的商)/計算聚類有效性評價函數(shù)double func1=0;for(i=0;i<k;i+)(double func2=0;for(j=0;j<row;j+)(func2+=pow(uij,2.0)*pow(disij,2);)func1+=func2;)double
28、 obj_fcn=1/(1+func1);return obj_fcn;/內(nèi)存釋放 deletea;deleteb;for(i=0;i<k;i+)(deletedisi;deletedis;詳細過程#include "data.h"#include "func.h"#include "max.h"/全局變量定義double *Data;/double *Center;/double *U;/int m;/int n;/int k;/數(shù)數(shù)據(jù)矩陣 聚類中心矩陣 樣本隸屬度矩陣樣本總數(shù)樣本屬性數(shù)設(shè)定的劃分類別int main()(in
29、t Lab;int num;/數(shù)據(jù)文件標號算法運行次數(shù)/ cout<<"模糊C均值聚類算法:"<<endl;3-ASD_12_2.txt;cout<<"1-iris.txt;2-wine.txt;4-ASD_14_2.txt"<<endl;cout<<"請選擇數(shù)據(jù)集:Lab二";cin>>Lab;cout<<"設(shè)定運行次數(shù):mum="; cin>>num;/各次運行結(jié)束后的目標函數(shù)double* Index=new do
30、ublenum;/各次運行結(jié)束后的聚類正確率double* R=new double num;/num次運行的平均目標函數(shù)及平均正確率double M_Index=0;double M_R=0;/FCM聚類算法運行num次,并保存記錄與結(jié)果for(int i=0;i<num;i+)int j;double epsilon=1e-4;int e=0;int nx=0;/記錄連續(xù)無改進次數(shù)int E200=0;if(i>0)cout<<endl<<endl;cout<<setfill('#')<<setw(10)<&
31、lt;endl;cout<<"第"<<i+1<<"次運行記錄:"<<endl;/讀取數(shù)據(jù)文件if(Lab=1)m=150;n=4;k=3;Data=DataRead("datasetiris.txt",m,n);else if(Lab=2)m=178; n=13;k=3;Data=DataRead("datasetwine.txt",m,n);)else if(Lab=3)(m=535;n=2;k=12;Data=DataRead("datasetASD_1
32、2_2.txt",m,n);)一 一else if(Lab=4)(m=685;n=2;k=14;Data=DataRead("datasetASD_14_2.txt",m,n);)一 一/數(shù)據(jù)極差標準化處理Data=Standardize(Data,m,n);/聚類中心及隸屬度矩陣,內(nèi)存分配Center=new double*k;U=new double *k;for(j=0;j<k;j+)(Centerj=new doublen;Uj=new doublem;)/隸屬度矩陣的初始化Initialize(U, k, m);/對隸屬度矩陣進行歸一化Normal
33、ize(U,k,m);/歷次迭代過程中的目標函數(shù) double Objfcn100=0;cout<<"第"<<i+1<<"次運行記錄:"<<endl;cout<<"開始迭代過程!"<<endl;cout<<"I*”<<endl;/輸出精度為小數(shù)點后5位 cout.precision(5);/固定格式cout.setf(ios:fixed);/目標函數(shù)連續(xù)20代無改進,停止該次聚類迭代過程while(e<20)nx+;/聚類迭
34、代過程Objfcnnx=Update(U,Data,Center,m,n,k);/統(tǒng)計目標函數(shù)連續(xù)無改進次數(shù) eif(nx>0 && Objfcnnx-Objfcnnx-1<epsilon )e+;elsee=0;Enx=e;/輸出結(jié)果到文件,保存ofstream outfile("運行記錄.txt",ios:app);outfile<<" 第"<<i+1<<"次運行記錄:"<<endl;outfile<<"開始迭代過程!"&l
35、t;<endl;outfile<<”*”<<endl;outfile.precision(5);outfile.setf(ios:fixed);for(int n1=1;n1<=nx;n1+)(cout<<"e"<<setw(2)<<n1<<"="<<setw(2)<<En1<<" Objfcn”<<setw(2)<<n1<<"="<<Objfcnn1<
36、<" n"/保存數(shù)據(jù)文件outfile<<"e"<<setw(2)<<n1<<"="<<setw(2)<<En1<<" Objfcn"<<setw(2)<<n1<<"="<<Objfcnn1<<" n"cout<<endl;outfile<<endl;outfile.close();/本次運行的最大目標函
37、數(shù) Indexi=Objfcnnx;/保存聚類正確率,輸出聚類結(jié)果: Ri=Result(Lab, U, k, m, i);/內(nèi)存釋放 for(j=0;j<k;j+)(deleteCenterj; deleteUj;deleteCenter;deleteU;/double temp1=0, temp2=0;for(i=0;i<num;i+)(temp1+=Indexi;temp2+=Ri;/計算各次結(jié)果的統(tǒng)計平均M_Index=(double)temp1/num;M_R=(double)temp2/num;cout<<"/"<<endl;
38、cout<<num<<"次運行,平均聚類正確率:"<<100*M_R<<"%"<<endl;輸出精度為小數(shù)點后6位cout.precision(6);/固定格式cout.setf(ios:fixed);cout<<”平均目標函數(shù):"<<M_Index<<endl;/統(tǒng)計結(jié)果文件保存ofstream resultfile("聚類結(jié)果.txt",ios二app);resulfile<<"/”<<end
39、l;resultfile<<num<<" 次運行,平均聚類正確率:"<<100*M_R<<"%"<<endl;輸出精度為小數(shù)點后6位resultfile.precision(6);/固定格式resultfile.setf(ios:fixed);resultfile<<"平均目標函數(shù):"<<M_Index<<endl;return 0;采用著名的iris數(shù)據(jù)集對程序進行測試,運算次數(shù)輸入10次輸出笫10次運行的聚類結(jié)果:第陵樣本:000000
40、000000000000000000000000000000000000000 00 0 0 0正確樣本數(shù):r(ght0=50錯誤樣本數(shù):0聚類類別號:s*=0笫1類樣本:21211111111111111111111111121111111121111111111111正確樣本數(shù):right。卜46錯誤樣本數(shù)二4聚類類別號二sx=1第2類樣本:212222122222212222212121221222222112221222122 2 2 2 2 正確樣本數(shù):ight=38錯誤樣本數(shù):12聚類類別號:$x=2聚類正確率:89.3333%IHHHHHHHHIHHHHHIUHnHHHUHIHHHHIHnHI1畋運行,平均聚類正確率:89.抬33%平均目標函藪:0.160435能對數(shù)組實現(xiàn)分類,但是分類正確率不是很理想,沒達到預(yù)期的90%Z上總結(jié)這次綜合實習(xí),首先我學(xué)會了模糊C均值聚類算法,以前沒接觸過,也不知 道何為數(shù)據(jù)集,數(shù)據(jù)集是做啥用的,增加了自己的見解,其次增強了自我學(xué)習(xí)能 力,平時學(xué)習(xí)的學(xué)習(xí)都是老師已經(jīng)安排好得內(nèi)容,看啥知識都已經(jīng)知道,只需要 安心的看就能學(xué)會,都是書本上的知識,沒有聯(lián)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 11856.1-2025烈性酒質(zhì)量要求第1部分:威士忌
- GB 19081-2025飼料加工系統(tǒng)粉塵防爆安全規(guī)范
- 勞動合同范本 派遣
- 養(yǎng)殖場清糞車購銷合同范本
- 區(qū)域銷售協(xié)議合同范本醫(yī)藥
- 包裝印刷公司采購合同范本
- 買宅地合同范例
- 上海住房合同范本
- 個人與團隊提成合同范本
- 線上按摩技師合同范本
- 部編版小學(xué)(2024版)小學(xué)道德與法治一年級下冊《有個新目標》-第一課時教學(xué)課件
- 稅法(第5版) 課件 第13章 印花稅
- 2024-2025學(xué)年廣州市高二語文上學(xué)期期末考試卷附答案解析
- 咖啡店合同咖啡店合作經(jīng)營協(xié)議
- 2025年山東鋁業(yè)職業(yè)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 全套電子課件:技能成就夢想
- 2024年教育公共基礎(chǔ)知識筆記
- 2025年江蘇農(nóng)林職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 異構(gòu)數(shù)據(jù)融合技術(shù)-深度研究
- 北京市朝陽區(qū)2024-2025學(xué)年七年級上學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 2024年湖南汽車工程職業(yè)學(xué)院單招職業(yè)技能測試題庫標準卷
評論
0/150
提交評論