📄 svmclass.m
字号:
function [y,dfce] = svmclass(X,model)
% 支持矢量机分类器
% 说明:
% 在二元情况下nfun=1,二元SVM分类器使用
% y(i)=1,f(X(:,i))>=0
% y(i)=2,f(X(:,i))<0
% 其中f是决策函数,由Alpha [nsv x 1],b [1 x 1],sv.X 决定的
% 输入:
% X [dim x num_data] 要分类的数据向量
%
% model [struct] SVM 分类器:
% .Alpha [nsv x nfun] 支持矢量的拉格朗日乘子
% .b [nfun x 1] 偏差
% .sv.X [dim x nsv] 支持矢量
% .options.ker [string] 识别核函数
% .options.arg [1 x nargs] 核函数变量
%
% 输出:
% y [1 x num_data] 预示标签
% dfce [nfun x num_data] 判别函数的值
%
% 允许参数 model 以单元数组的形式输入,通过函数c2s转化为结构体
model=c2s(model);
dfce = kernelproj(X, model);
nfun = size(dfce,1);
if nfun == 1,
% 二元的情况
%-------------------------------
y = ones(size(dfce));
y( find( dfce < 0 )) = 2;
end
return;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -