wk6 Support Vector Machines
最近正在学习MOOC上的经典课程:Machine learning (by Andrew Ng), 具体课程链接:MACHINE LEARNING
根据进度将作业的关键代码部分贴上,仅供交流与讨论。
- gaussianKernel
sim=exp(-sum(norm(x1 - x2).^2)/(2*sigma^2));
- dataset3Params
a=[0.01, 0.03, 0.1, 0.3, 1, 3, 10, 30];
error=zeros(8,8);
for i = 1:8
C=a(i);
for j = 1:8
sigma=a(j);
model= svmTrain(X, y, C, @(x1, x2) gaussianKernel(x1, x2, sigma));
predictions = svmPredict(model, Xval);
error(i,j)=mean(double(predictions ~= yval));
end
end
m=min(error);
mm=min(m);
[r,c]=find(error==mm);
C=a(r);
sigma=a(c);
- processEmail
for i = 1:length(vocabList)
v = strcmp(str, vocabList(i));
if v==1
word_indices = [word_indices ; i];
end
end
- emailFeatures
x(word_indices) = 1;
——转载请注明出处