, . , .
, . , โโRBF model.Label(1) = 1, ( model.Label(1) = -1, w = -w; b = -b;)
[m,n] = size(model.SVs); % m is the number of support vectors,...
and n is the number of features
w = model.sv_coef; % m*1 weight vector
b = -model.rho; % scalar
v. [1,n] = size(v); i ( ):
for i = 1:m
d(i) = norm(model.SVs(i,:) - v);
t(i) = exp(-gamma* d(i) .^2); % RBF model, t is 1*m vector
end
( ):
s = t * w + b;
.
, โโRBF :
% RBF kernel: exp(-gamma*|u-v|^2)
rbf = @(X,Y) exp(-gamma .* pdist2(X,Y,'euclidean').^2);
% Kernel matrices with sample serial number as first column as required
K_train = [(1:numTrain)' , rbf(trainData,trainData)];
K_test = [(1:numTest)' , rbf(testData,trainData)];
%
model = svmtrain(trainLabel, K_train, '-t 4');
[predLabel, ~, ~] = svmpredict(testLabel, K_test, model);
%
C = confusionmat(testLabel,predLabel);