📄 train.m
字号:
function net = train(tutor, x, y, C, kernel, zeta, net)
if size(y, 2) ~= 1 | ~isreal(y)
error('y must be a real double precision column vector');
end
if size(y, 1) ~= size(x, 1)
error('x and y must have the same number of rows');
end
if nargin == 4 & isa(C, 'svc')
net = C;
C = getC(net);
kernel = getkernel(net);
zeta = getzeta(net);
alpha = abs(getw(net));
bias = getbias(net);
else
if nargin < 4
C = Inf;
end
if nargin < 5
kernel = linear;
end
if nargin < 6
zeta = ones(size(y));
end
if nargin < 7
alpha = zeros(size(y));
bias = 0;
else
old_C = getC(net);
alpha = abs(getw(net));
bias = getbias(net);
if C ~= Inf
alpha = alpha*C/old_C;
bias = bias*C/old_C;
end
end
end
net = smosvctrain(tutor, x, y, C, kernel, zeta, alpha, bias);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -