今天小編給大家分享一下matlab如何實(shí)現(xiàn)二元支持向量機(jī)查找多類邊界的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
創(chuàng)新互聯(lián)建站致力于網(wǎng)站建設(shè),網(wǎng)站制作設(shè)計(jì),營(yíng)銷網(wǎng)頁按需規(guī)劃網(wǎng)站,外貿(mào)網(wǎng)站制作,企業(yè)網(wǎng)站建設(shè),小程序定制開發(fā),網(wǎng)站SEO優(yōu)化,網(wǎng)站設(shè)計(jì)制作案例豐富,是成都做網(wǎng)站公司和建站公司,歡迎咨詢。
%% 加載鳶尾花數(shù)據(jù)集
% 使用花瓣的長(zhǎng)度和寬度
load fisheriris
X = meas(:,3:4);
Y = species;
%% 數(shù)據(jù)的散點(diǎn)圖
figure
gscatter(X(:,1),X(:,2),Y);
h = gca;
lims = [h.XLim h.YLim];
title('{\bf Scatter Diagram of Iris Measurements}');
xlabel('Petal Length (cm)');
ylabel('Petal Width (cm)');
legend('Location','Northwest');
% 有三個(gè)類,其中之一是線性可分離的
%%
% 對(duì)每一類進(jìn)行一下操作:
% 創(chuàng)建一個(gè)邏輯向量表示是否為這個(gè)類的一員
% 使用處理好的數(shù)據(jù)和邏輯向量訓(xùn)練SVM分類器
% 將分類器存儲(chǔ)在cell數(shù)組中
% 預(yù)先定義類別順序是比較好的做法
SVMModels = cell(3,1);
classes = unique(Y);
rng(1);
for j = 1:numel(classes)
indx = strcmp(Y,classes(j));
% 為每一類別創(chuàng)建二元分類器
SVMModels{j} = fitcsvm(X,indx,'ClassNames',[false true],'Standardize',true,...
'KernelFunction','rbf','BoxConstraint',1);
end
%%
% |SVMModels|是一個(gè)3X1的cell數(shù)組
% 每個(gè)cell是一個(gè)分類器
% 每個(gè)分類器的正值就是setosa,versicolor和virginica
%% 將訓(xùn)練數(shù)據(jù)的分布坐標(biāo)劃分為網(wǎng)格,并視為新的觀測(cè)
% 使用每個(gè)分類器估計(jì)新觀測(cè)的得分
d = 0.02;
[x1Grid,x2Grid] = meshgrid(min(X(:,1)):d:max(X(:,1)),...
min(X(:,2)):d:max(X(:,2)));
xGrid = [x1Grid(:),x2Grid(:)];
N = size(xGrid,1);
Scores = zeros(N,numel(classes));
for j = 1:numel(classes)
[~,score] = predict(SVMModels{j},xGrid);
Scores(:,j) = score(:,2);
% 第二列包含正值類別得分
end
%% 每一行的得分都有三個(gè),最大的就是這一行對(duì)應(yīng)的類別
[~,maxScore] = max(Scores,[],2);
%% 將每一個(gè)類別對(duì)應(yīng)的網(wǎng)格在圖中顯示出來
figure
h(1:3) = gscatter(xGrid(:,1),xGrid(:,2),maxScore,...
[0.1 0.5 0.5; 0.5 0.1 0.5; 0.5 0.5 0.1]);
hold on
h(4:6) = gscatter(X(:,1),X(:,2),Y);
title('{\bf Iris Classification Regions}');
xlabel('Petal Length (cm)');
ylabel('Petal Width (cm)');
legend(h,{'setosa region','versicolor region','virginica region',...
'observed setosa','observed versicolor','observed virginica'},...
'Location','Northwest');
axis tight
hold off
以上就是“matlab如何實(shí)現(xiàn)二元支持向量機(jī)查找多類邊界”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
分享題目:matlab如何實(shí)現(xiàn)二元支持向量機(jī)查找多類邊界
網(wǎng)頁網(wǎng)址:http://chinadenli.net/article20/poocjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、微信小程序、云服務(wù)器、品牌網(wǎng)站制作、、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)