1 簡介
線性分類器的原理 當樣本通過變換映射為特征向量以後,它就成為了特征空 間中的點。而由于每個類中的樣本會具有某些共性,即特征會 有不同,那麼屬于一個類的樣本集的點集,總是會與别的類的點 集相分離,那麼如果我們可以找到一個函數,能夠把不同的點集 相分離,那我們的任務也就解決了。由于判别函數法不依賴于 機率密度分布的統計學知識,我們可以了解為将樣本通過他們 的特征用幾何方法,将整個空間分解為不同類的子空間。 判别函數法可以根據邊界所代表的函數劃分為線性和非線 性分類器。由于線性分類器涉及數學方法較為簡單,實作更簡 便,我們選取了線性分類器作為本文研究方向。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiI0gTMx81dsQWZ4lmZf1GLlpXazVmcvwFciV2dsQXYtJ3bm9CX9s2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xCMy81dvRWYoNHLwEzX5xCMx8FesU2cfdGLwMzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsQTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cmbw5SNzMDN3UmMxMjNmNGZ2YDOyYzXzIDOxADMwIzLcVDMyIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.png)
編輯
2 部分代碼
function [y1,y2]=pcapro(data)
load template pattern;
mixedsig=[];
sum1=0;
for i=1:10
sum1=sum1+pattern(1,i).num; %sum1為所有樣品類别的總數
mixedsig=[mixedsig pattern(1,i).feature]; %所有樣品特征向量的集合
end
[Dim NumofSampl]=size(mixedsig); %Dim傳回的是行數,NumofSampl傳回的是列數
dsig_cov=cov(mixedsig');
[pc,latent,tspuare]=pcacov(dsig_cov);
temp=0;
con=0;
m=0;
sum2=sum(latent); %協方差矩陣所有特征值的和
for i=1:25
if con<0.9
temp=temp+latent(i);
con=temp/sum2; %累積貢獻率
m=m+1;
else
break; %跳出for循環
end
end
pc(:,m+1:25)=[];%非主成分則為0
x=data*pc;
y=mixedsig'*pc;
y1=y';
y2=x';
en
3 仿真結果
編輯
編輯
編輯
編輯
4 參考文獻
[1]周佳敏. 基于貝葉斯網絡的手寫數字識别的研究與應用[J]. 科技視界, 2013(8):2.
[2]黃旻浩. 基于線性分類器的手寫數字識别[J]. 科學技術創新, 2019(33):2.