




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
實用標準文檔實用標準文檔文案大全文案大全K-Means聚類算法1.算法原理k-means是□□□□□□□□□□□□□□□□□□□□□□□□□,所以在對大規(guī)模數(shù)據(jù)進行聚類時被廣泛應用。目前,許多算法均圍繞著該算法進行擴展和改進。k-means算法以k□□□,□n□□□□□k個簇,使簇內(nèi)具有較高□□□□,□□□□□□□□□□ k-means□□□□□□□□□:□□,□機地選擇k個對象,每個對象初始地代表了一個簇的平均值或中心 ;對剩余的每個對象,根據(jù)其與各簇中心的距離,將它賦給最近的簇 ;然后重新計算每個簇的平均值。這個過程不斷重復,直到準則函數(shù)收斂。通常,采用平方誤差準則,其定義如下:忖二£X1/一岫「。二口pG二這里E是數(shù)據(jù)庫中所有對象的平方誤差的總和,是簇Ci□□□□□□□□□□□□□□□□□□□□□□,□□□□□□量是歐幾里得距離 ,當然也可以用其他距離度量。程如下:p是空間中的點, mik-means□□□□□□□□輸入:包含n個對象的數(shù)據(jù)庫和簇的數(shù)目輸出:k個簇,使平方誤差準則最小。步驟:⑴任意選擇k個對象作為初始的簇中心;repeat;根據(jù)簇中對象的平均值,將每個對象更新簇的平均值,即計算每個簇中對象的平均值;k;(重新)賦予最類似的簇;(5)直到不再發(fā)生變化。2.主要代碼主程序:clc;clear;closeall;%%聚類算法測試nSample=[500,500,500];%3維情況dim=3;coeff={[-20.8;-10.9;20.7;], [10.9;-20.7;-20.8;],...[-20.7;20.8;-10.9;],};data=createSample(nSample,dim,coeff);%%得到訓練數(shù)據(jù)nClass=length(nSample);tlabel=[];tdata=[];fori=1:nClasstlabel=[tlabel;i*ones(nSample(i),1)];tdata=[tdata;data{i}];end%%調(diào)用k-means聚類算法[label]=stpKMeans(tdata,nClass);%%繪圖result=cell(1,nClass);index=0;fori=1:nClassindex=find(label(:,1)==i);result{i}=tdata(index,:);endfigure;subplot(1,2,1);plot3(data{1}(:,1),data{1}(:,2),data{1}(:,3),'*',...data{2}(:,1),data{2}(:,2),data{2}(:,3),'o',...data{3}(:,1),data{3}(:,2),data{3}(:,3),'x');title(初始數(shù)據(jù)');subplot(1,2,2);plot3(result{1}(:,1),result{1}(:,2),result{1}(:,3),'*',result{2}(:,1),result{2}(:,2),result{2}(:,3),'o',.result{3}(:,1),result{3}(:,2),result{3}(:,3),'x');title('K-Means聚類結(jié)果');K-Means核心算法:function[label]=stpKMeans(data,k)%%KMeans聚類算法,參考%/William_Fire/archive/2013/02/09/2909499.html%%%輸入%data 原始數(shù)據(jù)%k 聚多少個簇%%%輸出%label按照data數(shù)據(jù)的順序,每個樣本的口號的列表[n,dim]=size(data);label=zeros(n,1);%任選k個對象作為初始的簇中心seq=stpRandN_K(n,k);nowMeans=data(seq,:);fori=1:klabel(seq(i))=i;enddist=zeros(n,k);while(true)%計算數(shù)據(jù)到每個簇的歐幾里得距離fori=1:ktemp=data;forj=1:dim%先讓數(shù)據(jù)減去第 j個特征temp(:,j)=data(:,j)-nowMeans(i,j);end%點乘后再相加球的距離的平方temp=temp.*temp;dist(:,i)=sum(temp,2);end%從k種距離中找出最小的,并計算修改次數(shù)( label跟上一次不一樣)[~,label2]=min(dist,[],2);editElem=sum(label(:,1)~=label2(:,1));label=label2;% fori=1:n% %根據(jù)均值將當前的每個元素重新分簇% minDist =inf;% index= -1;% %從當前的k個均值中找到離元素 i最近的一個,將其劃分到該簇% forj= 1:k% dist=data(i,:)-nowMeans(j,:);% dist=dot(dist,dist);%% if(dist<minDist)% %修改最近的距離,并記錄測試的簇號% minDist=dist;% index=j;% end% end%% %判斷是該元素是否重新劃分了簇% if(index~=label(i))% editElem=editElem+1;% label(i)=index;% end%% endifeditElem==0%表示本次沒有修改,那么跳出循環(huán)break;end%重新分簇后,重新計算均值fori=1:k%計算第k簇的均值[index]=find(label(:,1)==i);nowMeans(i,:)=mean(data(index,:));endendend從n個元素中隨機抽取 K個元素的代碼:function[out]=stpRandN_K(n,k)%%從1-n中隨機選中k個不同的元素data=1:n;fori=1:kindex=floor((n-i+1)*rand())+i;%交換i和index上的數(shù)據(jù)temp=data(index);data(index)=data(i);data(i)=temp;endout=data(1:k);end圖片聚類測試代碼:closeall;clc;clear;rgbdata=imread('data\\g-1.jpg');labdata=stpRgb2Lab(rgbdata);[sm,sn,~]=size(labdata);sN=sm*sn;nClass=4;labdata=reshape(labdata,sN,3);[label]=stpKMeans(labdata,nClass);label=reshape(label,sm,sn);figure;subplot(1,2,1);imshow(rgbdata);holdon;subplot(1,2,2);TX=1:sn;TY=1:sm;imagesc(TX,TY,label);3.結(jié)果分析針對給定的參數(shù)案類算法則設nSample=[50口,500;500];%3維情況dim=3;coeff={[-20.8;-10.9;20.7;],....[10.9;-20.7;-20.8;],...[-20.7:20.8;-10.9;],};K-Means算□□□□□□□:
圖1初始數(shù)據(jù)和K-Means聚類結(jié)果當初始數(shù)據(jù)給為如下時:%%親類算法則試nSample=[5。。,5QQ,500];%3維情況dim=3;coeff={[-21.3;-11.1;21.2;],..[11.2;-21.3;-21.1;],..[-21.1;20.2;-11.3;],};K-Means□□□□□□□□:圖2初始數(shù)據(jù)和K-MeansODDO□□□□□□,K-Means□□□□□□□□□□□□□□□□□□□□□4.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)環(huán)境風險評估及控制措施
- 電話銷售話術培訓教材
- 專業(yè)求職簡歷設計與修改建議
- 醫(yī)院文化建設現(xiàn)狀調(diào)研分析報告
- 2025-2030光伏制氫項目經(jīng)濟性拐點預測與示范工程選址要素分析
- 2025-2030光伏制氫系統(tǒng)效率提升與離網(wǎng)應用場景經(jīng)濟性論證
- 2025-2030光伏制氫技術經(jīng)濟性分析與示范項目進展評估報告
- 2025-2030兒童營養(yǎng)性貧血糾正與認知功能改善的劑量效應關系及鐵劑產(chǎn)品升級
- 2025-2030兒童腦電圖深度學習分析系統(tǒng)的知識產(chǎn)權(quán)布局研究
- 2025-2030兒童類比推理能力發(fā)展的顳頂聯(lián)合區(qū)功能研究
- 2024年新高考Ⅰ卷英語真題(原卷+答案)
- 2025年注冊安全工程師考試沖刺押題:安全生產(chǎn)管理實務專項訓練試卷
- 外貿(mào)會計自學課件
- 2024年黑龍江哈爾濱工業(yè)大學輔導員招聘真題
- 高質(zhì)量臨床護理服務實施路徑
- 2025年輔警招聘考試試題庫及答案(必刷)
- 煙花爆竹經(jīng)營培訓試題及答案
- 2025年醫(yī)院精神科沖動傷人患者應急預案及演練腳本
- 車位退還協(xié)議書
- 手榴彈教學課件
- 工廠臨時用工方案(3篇)
評論
0/150
提交評論