Coursera_Stanford_ML_ex6_支持向量机(SVM) 作业记录
来源:互联网 发布:管家婆软件那三个 编辑:程序博客网 时间:2024/05/16 05:38
Programming Exercise 6:Support Vector Machines
这周总结一下Week7的作业,利用SVM实现垃圾邮件分类,作业中并未要求实现SVM的训练过程,所以总体上来说难度不大。
首先看一下作业要求(打星号的需要提交):
别看文件多,但是要求提交的只有四个。
一.ex6
gaussianKernel.m要求实现高斯型核函数。
编程无难度。
sim=sim+exp(-(x1-x2)'*(x1-x2)/2/sigma^2);
dataset3Params.m选择使测试误差达到最小时的参数C, sigma。
err=10000;temp=[0.01,0.03,0.1,0.3,1,3,10,30];for i=1:length(temp) for j=1:length(temp) model= svmTrain(X, y, temp(i), @(x1, x2) gaussianKernel(x1, x2,temp(j))); predictions = svmPredict(model, Xval); if(err>mean(double(predictions ~= yval))) err=mean(double(predictions ~= yval)); C=temp(i); sigma=temp(j); end endend
其中svmTrain中使用了SMO算法,结果如下。
二.ex6_spam
processEmail.m在一个单词序列中查找每一个邮件单词,如果含有则将其在单词序列中的位置加 入word_indices。for i=1:length(vocabList) if(strcmp(vocabList(i),str)) word_indices=[word_indices;i]; endend
emailFeatures.m将word_indices中对应位置的单词进行标记。
for i=1:length(word_indices) x(word_indices(i))=1;end
训练误差为99.85,测试误差为98.80。
总结一下,这次作业基本无难度,但是要把整个邮件检测系统搞明白,例如邮件中字符处理,SVM的训练过程等真的需要一段时间。
0 0
- Coursera_Stanford_ML_ex6_支持向量机(SVM) 作业记录
- 支持向量机SVM
- SVM支持向量机
- svm支持向量机
- SVM支持向量机
- [SVM]支持向量机
- SVM 支持向量机
- 支持向量机SVM
- SVM 支持向量机
- svm支持向量机
- 支持向量机SVM
- svm支持向量机
- SVM (支持向量机)
- SVM支持向量机
- SVM支持向量机
- 支持向量机SVM
- 支持向量机(SVM)
- 支持向量机-SVM
- 数组中重复次数最多的元素
- 【每日一点】android 震动
- Opecv Iplimage
- Linux远程备份工具Rsync使用案例
- Linux 上使用 backup-manager 进行系统备份
- Coursera_Stanford_ML_ex6_支持向量机(SVM) 作业记录
- Android Scrollview+Listview 实现不同条目点赞并计数功能及原理分析(1)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(二十)
- flv格式
- 使用ExcelPackage生成Excel2007电子表格
- 基于Irrlicht引擎的3D游戏实例v0.7
- 使用cocoapods管理第三方库RestKit遇到的问题
- linux 软件/库 命令集合
- Linux - Ubuntu14.04 wifi 信号 找不到