Angrew Machine Learning ex6

gaussianKernel

sim = exp(-sum((x1 - x2) .^ 2) / (2 * sigma ^ 2));

 dataset3Params

rel_vec = [0 0 9999];
val_vec = [0.01 0.03 0.1 0.3 1 3 10 30];
for i = 1:length(val_vec)
  for j = 1:length(val_vec)
    model= svmTrain(X, y, val_vec(i), @(x1, x2) gaussianKernel(x1, x2, val_vec(j)));
    %We would get 8*8 = 64 models, and we could gain the best of them by the cross validation error.
    predictions = svmPredict(model, Xval);
    error = mean(double(predictions ~= yval));
    if error < rel_vec(3)
      rel_vec = [val_vec(i) val_vec(j) error];
    end
  end
end
C = rel_vec(1);
sigma = rel_vec(2);

processEmail

for i=1:length(vocabList)
      if strcmp(vocabList(i), str) == 1
        word_indices = [word_indices; i]; %We choose the same word, so we can get out now.
        break
      end
end

emailFeatures

for i=1:length(word_indices)
  x(word_indices(i)) = 1;
end

这是笔者自己想到一些对吴恩达机器学习课程的编程作业的实现方式,如果你有更好的实现方式,欢迎在评论区讨论。

这里只是部分代码,全部代码在 

https://download.csdn.net/download/ti_an_di/10590380

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值