模式識別 最近鄰法和k近鄰法MATLAB實現(xiàn)

模式識別 最近鄰法和k近鄰法MATLAB實現(xiàn)

ID:38923805

大?。?6.51 KB

頁數(shù):9頁

時間:2019-06-21

模式識別 最近鄰法和k近鄰法MATLAB實現(xiàn)_第1頁
模式識別 最近鄰法和k近鄰法MATLAB實現(xiàn)_第2頁
模式識別 最近鄰法和k近鄰法MATLAB實現(xiàn)_第3頁
模式識別 最近鄰法和k近鄰法MATLAB實現(xiàn)_第4頁
模式識別 最近鄰法和k近鄰法MATLAB實現(xiàn)_第5頁
資源描述:

《模式識別 最近鄰法和k近鄰法MATLAB實現(xiàn)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、最近鄰法和k-近鄰法學(xué)號:02105120姓名:吳林一.基本概念:最近鄰法:對于未知樣本x,比較x與N個已知類別的樣本之間的歐式距離,并決策x與距離它最近的樣本同類。K近鄰法:取未知樣本x的k個近鄰,看這k個近鄰中多數(shù)屬于哪一類,就把x歸為哪一類。K取奇數(shù),為了是避免k1=k2的情況。二.問題分析:要判別x屬于哪一類,關(guān)鍵要求得與x最近的k個樣本(當(dāng)k=1時,即是最近鄰法),然后判別這k個樣本的多數(shù)屬于哪一類。可采用歐式距離公式求得兩個樣本間的距離s=sqrt((x1-x2)^2+(y1-y2)

2、^2)三.算法分析:該算法中任取每類樣本的一半作為訓(xùn)練樣本,其余作為測試樣本。例如iris中取每類樣本的25組作為訓(xùn)練樣本,剩余25組作為測試樣本,依次求得與一測試樣本x距離最近的k個樣本,并判斷k個樣本多數(shù)屬于哪一類,則x就屬于哪類。測試10次,取10次分類正確率的平均值來檢驗算法的性能。四.MATLAB代碼:最近鄰算實現(xiàn)對Iris分類clc;totalsum=0;forii=1:10data=load('iris.txt');data1=data(1:50,1:4);%任取Iris-seto

3、sa數(shù)據(jù)的25組rbow1=randperm(50);trainsample1=data1(rbow1(:,1:25),1:4);rbow1(:,26:50)=sort(rbow1(:,26:50));%剩余的25組按行下標大小順序排列testsample1=data1(rbow1(:,26:50),1:4);data2=data(51:100,1:4);%任取Iris-versicolor數(shù)據(jù)的25組rbow2=randperm(50);trainsample2=data2(rbow2(:,1

4、:25),1:4);rbow2(:,26:50)=sort(rbow2(:,26:50));testsample2=data2(rbow2(:,26:50),1:4);data3=data(101:150,1:4);%任取Iris-virginica數(shù)據(jù)的25組rbow3=randperm(50);trainsample3=data3(rbow3(:,1:25),1:4);rbow3(:,26:50)=sort(rbow3(:,26:50));testsample3=data3(rbow3(:,

5、26:50),1:4);trainsample=cat(1,trainsample1,trainsample2,trainsample3);%包含75組數(shù)據(jù)的樣本集testsample=cat(1,testsample1,testsample2,testsample3);newchar=zeros(1,75);sum=0;[i,j]=size(trainsample);%i=60,j=4[u,v]=size(testsample);%u=90,v=4forx=1:ufory=1:iresult=

6、sqrt((testsample(x,1)-trainsample(y,1))^2+(testsample(x,2)-trainsample(y,2))^2+(testsample(x,3)-trainsample(y,3))^2+(testsample(x,4)-trainsample(y,4))^2);%歐式距離newchar(1,y)=result;end;[new,Ind]=sort(newchar);class1=0;class2=0;class3=0;ifInd(1,1)<=25cl

7、ass1=class1+1;elseifInd(1,1)>25&&Ind(1,1)<=50class2=class2+1;elseclass3=class3+1;endifclass1>class2&&class1>class3m=1;ty='Iris-setosa';elseifclass2>class1&&class2>class3m=2;ty='Iris-versicolor';elseifclass3>class1&&class3>class2m=3;ty='Iris-virginica

8、';elsem=0;ty='none';endifx<=25&&m>0disp(sprintf('第%d組數(shù)據(jù)分類后為%s類',rbow1(:,x+25),ty));elseifx<=25&&m==0disp(sprintf('第%d組數(shù)據(jù)分類后為%s類',rbow1(:,x+25),'none'));endifx>25&&x<=50&&m>0disp(sprintf('第%d組數(shù)據(jù)分類后為%s類',50+rbow2(:,x),ty));elseifx>25&&x<=50&&m==0disp(s

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。