📄 svmclass.m
字号:
function [Ipred,fpred] = svmclass(Xtst,Xtrn,Itrn,alpha,bias,ker,arg,info)% SVMCLASS classifies patterns using SVM decision rule.% [Ipred,fpred] = svmclass(Xtst,Xtrn,Itrn,Alpha,bias,ker,arg)% % Input:% Xtst [DxN] test points.% Xtrn [DxM] training points.% Itrn [1xM] labels of trainign points.% Alpha [1xM] Lagrange multipliers.% bias [1x1] bias.% ker [string] kernel identifier (see help kernel).% arg [] arguments of given kernel (see help kernel).%% Output:% Ipred [1xN] labels of test points (1,2).% fpred [1xN] value of output function for each point (If greater or% equal to 0 then class is 1 else class is 2).%% See also SVMCLASSM, SVM.%% Statistical Pattern Recognition Toolbox, Vojtech Franc, Vaclav Hlavac% (c) Czech Technical University Prague, http://cmp.felk.cvut.cz% Written Vojtech Franc (diploma thesis) 23.12.1999, 5.4.2000% Modifications% 19-September-2001, V. Franc, comments changed.if nargin < 8, info =0;endif nargin < 7, arg=[];end%inx=find(alpha ~=0);%Itrn=Itrn(inx);%Xtrn=Xtrn(:,inx);Ytrn=itosgn(Itrn);Ipred=zeros(1,size(Xtst,2));fpred=zeros(1,size(Xtst,2));for i = 1:size(Xtst,2), xtst = Xtst(:,i); K=kernel(xtst,Xtrn,ker,arg).*Ytrn; fpred(i) = (K*alpha' + bias)'; if fpred(i) >= 0, Ipred(i) = 1; else Ipred(i) = 2; end if info & mod(i*100/size(Xtst,2),5) == 0, disp(sprintf('Predicted %.2f %%',i*100/size(Xtst,2) )); endendreturn;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -