onevsalltest.m
来自「崭新矢量机SVM源码」· M 代码 · 共 29 行
M
29 行
function [result,vote] = onevsalltest(testsamples,testlabels,samples,labels,kernel,kernelparam,alpha,svi,bias,func)
% multiclass classification using one-against-all
% test function
nlabels = max(labels);
N = size(testsamples,1);
vote = [];
vote = zeros(N,nlabels);
cmatrix = zeros(N,nlabels);
for i=1:nlabels;
index1 = find(labels == i);
index2 = 1:length(labels);
index2(index1) = [];
index2 = index2(:);
sublabels(index1,1) = 1;
sublabels(index2,1) = -1;
switch func
case 'fsals_svm'
subresult = fsals_svmtest(testsamples',(samples(svi{i},:))',sublabels(svi{i}),kernel,kernelparam,alpha{i},bias(i));
case 'pfsals_svm'
subresult = fsals_svmtest(testsamples',(samples(svi{i},:))',sublabels(svi{i}),kernel,kernelparam,alpha{i},bias(i));
end
cmatrix(:,i) = subresult;
i=i+1;
end;
[maxi,result] = max(cmatrix,[],2);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?