代码:https://github.com/LiuZhe6/AndrewNGMachineLearning
文章目录
测验:Support Vector Machines
第一题
答案
B
第二题
答案
A
分析:当西格玛平方减少时,图像变陡。
第三题
答案
AB
第四题
答案
AC
第五题
答案
BC
分析:
A:多分类问题当然可以用核函数。
B:线性核函数(不使用核函数)当然绘制出来是一条直线。
C:没错。
D:theta大小依赖于C。
编程作业:Support Vector Machines
作业一:Gaussian Kernel
gaussianKernel.m
sim = exp(-sum((x1 - x2).^2) / (2*sigma^2));
作业二:Parameters (C, sigma) for Dataset 3
吐槽一下,mac贼慢。。。
dataset3Params.m
value = [0.01, 0.03, 0.1, 0.3, 1, 3, 10, 30];
minC = 0;
minSigma = 0;
% 最小值设为交叉验证集的用例数
minError = size(Xval,1);
for i = 1:8,
for j = 1:8,
model= svmTrain(X, y, value(i), @(x1, x2) gaussianKernel(x1, x2, value(j)));
predictions = svmPredict(model,Xval);
error = mean(double(predictions ~= yval));
if minError > error
minError = error;
minC = value(i);
minSigma = value(j);
end;
end;
end;
C = minC;
sigma = minSigma;
作业三:Email Preprocessing
processEmail.m
for i = 1:length(vocabList)
if (strcmp(vocabList{i},str))
word_indices = [word_indices;i];
end;
end;
作业四:Email Feature Extraction
emailFeatures.m
x(word_indices) = 1;