使用svm(Support Vector Machine)中要获得好的分类器,最重要的是要选对kernel. 常见的svm kernel包括linear kernel, Gaussian kernel, polynomial kernel 和 string kernel. String kernel多用于文本分类,事实上大多数情况下使用linear或Gaussian kernel就能找到好的分类器。以下是几个选择kernel的方法。假设一个数据集,他的属性集为N,数据量为M:

1 当N很大M很小,则使用linear kernel
 2 当N小 (N<10) M大 (M>1000), 则使用Gaussian kernel
 3 当N小 (N<10) M很大 (M>10^7), 则使用linear kernel, 并尝试增加属性。
 4 如果属性中的值存在负值,不要使用polynomial kernel;事实上polynomial kernel方法也很不常用。

设置合适的参数C对svm分类器的精度也很有帮助,如果使用libsvm软件,该参数就是C。libsvm是常用的svm软件,在默认设置下它使用
radial Gaussian kernel. Libsvm开发者主张使用他们的默认kernel,他们指出如果使用model
selection的方法来生成svm分类器,那么就不需要考虑linear kernel, RBF kernel(即gaussian
kernel)的表现不会比之差。

最后如果数据集中存在某个属性值的取值范围比其他属性值大很多,那么可以使用scale来对数据进行预处理,这也有助于提高svm分类器的精度。

对于多类分类问题,svm需使用one-vs-the-rest方法,某些缺陷也可能因此带入。譬如说imbalance data的问题在这种方法下会被放大。

Some References:
1 Standford course, Machine learning -- svm
2 A tutorial on support vector machines for pattern recognition, Christopher J.C. Burges

引用原地址:http://blog.csdn.net/t_safin/article/details/8167815

使用Support Vector Machine的更多相关文章

  1. 6. support vector machine

    1. 了解SVM 1. Logistic regression 与SVM超平面 给定一些数据点,它们分别属于两个不同的类,现在要找到一个线性分类器把这些数据分成两类.如果用x表示数据点,用y表示类别( ...

  2. Support Vector Machine (3) : 再谈泛化误差(Generalization Error)

    目录 Support Vector Machine (1) : 简单SVM原理 Support Vector Machine (2) : Sequential Minimal Optimization ...

  3. Support Vector Machine (2) : Sequential Minimal Optimization

    目录 Support Vector Machine (1) : 简单SVM原理 Support Vector Machine (2) : Sequential Minimal Optimization ...

  4. Support Vector Machine (1) : 简单SVM原理

    目录 Support Vector Machine (1) : 简单SVM原理 Support Vector Machine (2) : Sequential Minimal Optimization ...

  5. 支持向量机 support vector machine

    SVM(support Vector machine) (1) SVM(Support Vector Machine)是从瓦普尼克(Vapnik)的统计学习理论发展而来的,主要针对小样本数据进行学习. ...

  6. A glimpse of Support Vector Machine

    支持向量机(support vector machine, 以下简称svm)是机器学习里的重要方法,特别适用于中小型样本.非线性.高维的分类和回归问题.本篇希望在正篇提供一个svm的简明阐述,附录则提 ...

  7. 支持向量机SVM(Support Vector Machine)

    支持向量机(Support Vector Machine)是一种监督式的机器学习方法(supervised machine learning),一般用于二类问题(binary classificati ...

  8. 机器学习技法:01 Linear Support Vector Machine

    Roadmap Course Introduction Large-Margin Separating Hyperplane Standard Large-Margin Problem Support ...

  9. 支持向量机(Support Vector Machine,SVM)—— 线性SVM

      支持向量机(Support Vector Machine,简称 SVM)于 1995 年正式发表,由于其在文本分类任务中的卓越性能,很快就成为机器学习的主流技术.尽管现在 Deep Learnin ...

随机推荐

  1. linux下的a.out文件

       当然这里,我更重要的是强调这个什么段,什么段.这以前就知道.但其实是对一个可以执行的c语言程序的分析.就好比你分析一篇作文.有标题.有段落. .out文件就是扩展名为out的文件,它本身不代表任 ...

  2. web前端之HTML的前世今生

    一个尖括号   < 一个尖括号能干什么    < ? 你可以编出一顶帽子  <(:-p 或一张笑脸    :-> 或诉说一份爱   <3 或者更直接一些 <!DOC ...

  3. em详解

    最近详细阅读了一下CSS2.2文档,对em单位有了深刻的认识 原文在此:The 'em' unit is equal to the computed value of the 'font-size'  ...

  4. Nexpose下载安装注册一条龙

    附上两个下载链接: Windows版本(64bit) : http://download2.rapid7.com/download/NeXpose-v4/NeXposeSetup-Windows64. ...

  5. 微信小程序-视图条件渲染

    条件渲染 wx:if 在框架中,我们用 wx:if="{{condition}}" 来判断是否需要渲染该代码块: <view wx:if="{{condition} ...

  6. 韩国手机游戏Elf Defense角色场景

    ! [复制链接] CG窝微博 签到天数: 36 天 连续签到: 1 天 [LV.5]常住居民I 22 主题 0 精华 2729 窝币 超级版主 积分 2546 收听TA 发消息 电梯直达 楼主     ...

  7. swift开发学习网站

    1.https://github.com/Aufree/trip-to-iOS#ios- 2.http://www.code4app.com/forum.php?mod=viewthread& ...

  8. 为什么不要使用Response.Close()

    不要使用Response.Close()    不要使用Response.Close()    不要使用Response.Close()        1  因为:Close()方法会调用HttpWo ...

  9. 配置log4j

    Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过配置,可以创建出Log4J的运行环境 ...

  10. python成长之路【第十七篇】:玩转jQuery

    一.jQuery简介 1.1.jQuery是什么 jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team. jQuery是继prototy ...