我在课程上学习ML课程并且我的SVM训练代码是正确的,但该图表与pdf中提供的解决方案不匹配。我不明白为什么或我的代码中出现了什么问题。
以下是我的解决方案。我还附上了图表,首先是提供的解决方案,另一个是我的。enter image description here enter image description here
function [C, sigma] = dataset3Params(X, y, Xval, yval)
C = 1;
sigma = 0.3;
vals= [0.01 0.03 0.1 0.3 1 3 10 30];
err=1000000000;
for i=1:8
for j= 1:8
ex_C=vals(i);
ex_sigma=vals(j);
model=svmTrain(X, y, ex_C, @(x1,x2) gaussianKernel(x1,x2,ex_sigma));
predictions = svmPredict(model, Xval);
sam_err= mean(double(predictions ~= yval));
if sam_err <= err
C=ex_C;
sigma=ex_sigma;
err=sam_err;
end
end
end
答案 0 :(得分:1)
轮廓应为contour(X1, X2, vals, [0.5 0.5], 'b');