matlab下的LIBSVM的使用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Company Logo
编译
make 命令
– 编译后文件夹中会出现多个svmtrain.mexw32、 svmpredict.mexw32等文件。
– .mexw32文件是加密文件,打开为乱码。 – 运行help对这些函数无效
然后便可使用工具箱
Company Logo
使用
参数设置 主要函数
4
相关参数
-c(默认1,范围(0,+ ))
-n(默认0.5,范围(0,1]) -n(默认0.5,范围(0,1])
-c(默认1,(0, + )) -p(默认0.1,(0, + ))
-c(默认1,(0, + ))
-n(默认0.5,(0,1])
Company Logo
主要参数设置
-t(默认2)——选择核函数
这里要说明matlab自带一个C编译器 Lcc_win32C,但此处需要C++编译器。
matlab支持的编译器列表: http://www.mathworks.cn/support/compi
lers/R2011a/win32.html
Company Logo
选择编译器
mex -setup 命令
w -1 0.5')
标签1的样本惩罚参数为2 标签为-1的样本惩罚参数为0.5
Company Logo
主要参数设置
-v(一般选择5或10)
– 交叉检验,参数必须大于2 – 当使用此参数时,返回的结果不再是一个结构体
model
分类问题,返回的是交叉检验下的平均分类准且率 回归问题,返回的是交叉检验下的平均均方差误差
Company Logo
安装
下载之后设置路径
– FILE——Set Path——Add with subfoders——选择所在 文件夹
Company Logo
选择编译器
libsvm的原始版本使用C++写的,为了在 matlab平台下使用,需要用C++编译器编译, 生成类似于.m文件的.mexw32文件。
Company Logo
主要参数设置
-wi:(默认1)
– 只能在模型C-SVC模型中使用 – 设置第几类的参数C的weight*C(C-SVC中的C) – 当某一类样本数目比较少时,可以给其设置较大的
惩罚参数,提高这一类样本的分类准确率。 – 如model=svmtrain(label,data,'-c 1 -w 1 2 -
Company Logo
分类问题两个主要函数
svmtrain
– model=svmtrain(trainLabel,trainInstance, '参数')
svmpredict
– [predictLabel,accuracy,value]=svmpredict (testLabel,testInstance,model)
Company Logo
测试数据及格式
测试数据集
– libsvm官方提供的测试数据格式是C++版本使用 的,需要使用libsvmread进行格式转换
– UCI数据集 –等
格式
– 标签 属性编号1:属性值1 属性编号2: 属性值2 – 如:+1 1:0.78 2:1 3:1 ........
Company Logo
主要参数设置
-s(默认0)——SVM类型选择
– 0--CSVC
(分类问题)
– 1--nu-SVC
(分类问题,引入一个新的参数nu)
– 2--one-class SVM(做分布估计)
– 3--epsilon-SVR (回归问题)
– 4--nu-SVR
-s参数 0 1 2 3
Company Logo
总结--未来计划
精细的调节各种svm参数以达到更好的实验效 果
加入其他特征,并在试验阶段确定每种特征对 于各个类别的不同的权重,并把此作为先验知 识加入知识库。在后续的训练过程中,应用到 知识库中的这个知识。
Company Logo
Logo
– 且对SVM所涉及的参数调节相对比较少,提供了很 多的默认参数,利用这些默认参数可以解决很多问 题
– 并提供了交互检验(Cross Validation)的功能
Company Logo
该软件包可在 http://www.csie.ntu.edu.tw/~cjlin/ 免费获得。
该软件可以解决C-SVM、ν-SVM、ε-SVR和 ν-SVR等问题,包括基于一对一算法的多类模 式识别问题。
Logo
matlab下的LIBSVM的使用
林子越
Contents
1. 简介 2. 安装 3. 使用 4. 总结
Company Logo
Βιβλιοθήκη Baidu
简介
LIBSVM是台湾大学林智仁(Lin Chih-Jen)副 教授等开发设计的一个简单、易于使用和快速 有效的SVM模式识别与回归的软件包。
– 该软件提供了编译好的可在Windows系列系统的 执行文件,还提供了源代码,方便改进、修改以及 在其它操作系统上应用
– 0--线性核函数:u'*v – 1--多项式核函数:(gamma*u'*v+coef0)^degree
-g gamma(默认为属性数目的倒数) -r coef0(默认0) -d degree(默认3) – 2-- RBF核函数:exp(-gamma*|u-v|^2) -g gamma(默认为属性数目的倒数)——很敏感 – 3--sigmoid核函数:tanh(gamma*u'*v+coef0) -g gamma(默认为属性数目的倒数) -r coef0(默认0) – 4--预定义核函数(指定核矩阵)
相关文档
最新文档