SVM学习资料

2013-06-21 17:29 by 夜与周公, 227 阅读, 0 评论, 收藏编辑

  SVM(support vector machine),被认为是“off-the-shelf”最好的监督机器学习算法之一,甚至很多人认为可以把“之一”去掉。SVM有着天然的intuition,大量的数学推导和优雅的解形式(有了大量的数学推导,自然就容易发paper啦)。实际上SVM在工业界也有着广泛的应用如,文本分类、图像分类、生物医学诊断和手写字符识别等。有关SVM资源非常之多,本文尝试总结一些比较好的SVM学习资源。

  0.维基百科

  如果想迅速的了解SVM一些基础概念,维基百科是一个不错的选择,SVM在维基百科的地址是:http://en.wikipedia.org/wiki/Support_vector_machine。虽然是一个基础性资源,但维基百科里面的有关SVM知识并不是那么简单,如果能理解维基百科里面的内容,说明你的数学功底还是相当厉害的。

  1.课程资源

  Stanford大学Andrew Ng教授的机器学习公开课,课程地址:http://v.163.com/special/opencourse/machinelearning.html。有关SVM的课程从第6课开始到第8课结束,横跨了3个课时。如果仅仅是视频可能还不够,需要阅读他的课件,课件的地址:http://cs229.stanford.edu/notes/cs229-notes3.pdf。第一次看这个课程视频可能比较吃力,需要反复的观看视频资源。如果能一步步的follow课程的内容,相信对SVM就会有很好的掌握。

  2.博客资源

  经过第一步的课程资源学习后,如果仍然对SVM一知半解,网络上的优秀博客资源将会是一个很好的补充与加强。

  1)第一篇博客资源是leftnoeasy的SVM博文:http://www.cnblogs.com/LeftNotEasy/archive/2011/05/02/basic-of-svm.html

  2)第二篇博客资源是FreeMind的博文:http://blog.pluskid.org/?page_id=683

  3)第三篇博客资源是Leo Zhang:http://www.cnblogs.com/vivounicorn/

  三个博客的难度从易到难,三篇博客都非常精彩,第一篇博客非常适合作为学习SVM入门型资源,第二篇博客由浅入深的阐释了SVM,似有科学小品之感,最后一篇博客理论性非常强,并在博文最后用python实现了一个SVM分类器,如果想深入的理解SVM,第三个博客是不可错过资源。

  3.论文&书籍资源

  1)论文:

J.C. Burges的论文:<<A Tutorial on Support Vector Machines for Pattern Recognition>>;  

Glenn M.Fung的论文:<<knowledge-Based Support Vector Machine Classifiers>>;

               B. E. Boser, I. M. Guyon, and V .Vapnik的论文:<<A Training Algorithm for Optimal Margin Classifiers>>。                    

  2)书籍:

       John Shawe-Taylor & Nello Cristianini 的书:<<Support Vector Machines and other Kernel-based Learning Methods >>;

         机器学习的经典教材,Bishop的书:<<Pattern Recogition and Machine Learing>>,第7章 <<Sparse Kernel Machines>>前面部分是有关SVM的论述;

Vapnik的经典著作:<<The Nature of Statistical Learning Theory>>。

  4.Tooktiks

  本节介绍SVM比较有名的开源工具:libsvm, svmlight, liblinear。

  Libsvm是由台湾大学林智仁(Lin Chih-Jen)教授等开,国内用的较多一点,Svmlight 由卡内基梅隆大学Thorsten Joachims教授开发的工具包,Liblinear也是有台湾大学林智仁教授团队开发的工具包,针对大规模线性分类问题(大规模文本分类)。

  三个工具包有各自的优点:libsvm与liblinear支持多分类问题,而svmlight并不支持多分类;svmlight与liblinear特别是在数据规模比较大的情况下,要比libsvm快;libsvm直接支持样本后验概率输出,但svmlight与liblinear并不直接支持;libliner仅能处理线性可分的问题。在实际过程中,需要依据自己的任务,选择合适的svm工具。

 
 
分类: 机器学习

SVM学习资料的更多相关文章

  1. 近200篇机器学习&深度学习资料分享(含各种文档,视频,源码等)(1)

    原文:http://developer.51cto.com/art/201501/464174.htm 编者按:本文收集了百来篇关于机器学习和深度学习的资料,含各种文档,视频,源码等.而且原文也会不定 ...

  2. 机器学习&深度学习资料(转载)

    转自 飞鸟各投林 <Brief History of Machine Learning> 介绍:这是一篇介绍机器学习历史的文章,介绍很全面,从感知机.神经网络.决策树.SVM.Adaboo ...

  3. 近200篇机器学习&深度学习资料分享【转载】

    编者按:本文收集了百来篇关于机器学习和深度学习的资料,含各种文档,视频,源码等.而且原文也会不定期的更新,望看到文章的朋友能够学到更多. <Brief History of Machine Le ...

  4. 机器学习&深度学习资料分享

    感谢:https://github.com/ty4z2008/Qix/blob/master/dl.md <Brief History of Machine Learning> 介绍:这是 ...

  5. 近200篇机器学习&amp;深度学习资料分享

    编者按:本文收集了百来篇关于机器学习和深度学习的资料,含各种文档,视频,源码等.并且原文也会不定期的更新.望看到文章的朋友能够学到很多其它. <Brief History of Machine ...

  6. 自然语言处理(NLP)相关学习资料/资源

    自然语言处理(NLP)相关学习资料/资源 1. 书籍推荐 自然语言处理 统计自然语言处理(第2版) 作者:宗成庆 出版社:清华大学出版社:出版年:2013:页数:570 内容简介:系统地描述了神经网络 ...

  7. webapi的学习资料

    猿教程_-webapi教程-WebAPI教程 猿教程_-webapi教程-Web API概述 猿教程_-webapi教程-新建Web Api项目 猿教程_-webapi教程-测试Web API 猿教程 ...

  8. netty学习资料

    netty学习资料推荐官方文档和<netty权威指南>和<netty in action>这两本书.下面收集下网上分享的资料 netty官方参考文档 Netty 4.x Use ...

  9. iOS 开发学习资料整理(持续更新)

      “如果说我看得比别人远些,那是因为我站在巨人们的肩膀上.” ---牛顿   iOS及Mac开源项目和学习资料[超级全面] http://www.kancloud.cn/digest/ios-mac ...

随机推荐

  1. 关于WebBrowser.DocumentCompleted事件

    原文:关于WebBrowser.DocumentCompleted事件 今天发现使用WebBrowser时载入一个页面后DocumentCompleted事件会被调用2次,后来发现这两次WebBrow ...

  2. 记录近期小改K-Means至MapReduce上的心得

    背景: 在所有聚类算法中KMeans算是表面上最简单的一种,没有过多恼人的古希腊符号公式,没有过分繁杂的公式嵌套.对于一个初学矩阵或者仅有向量概念的非专业人士的来说,不可不畏是一把踹门利器.这个世界上 ...

  3. Windows Phone 8.1 多媒体(3):音乐

    原文:Windows Phone 8.1 多媒体(3):音乐 Windows Phone 8.1 多媒体(1):相片 Windows Phone 8.1 多媒体(2):视频 Windows Phone ...

  4. Mongodb操作之查询(循序渐进对比SQL语句)

    工具推荐:Robomongo,可自行百度寻找下载源,个人比较推荐这个工具,相比较mongoVUE则更加灵活. 集合简单查询方法 mongodb语法:db.collection.find()  //co ...

  5. linux下的watch命令

    linux下的watch命令 在linux下,watch是周期性的执行下一个命令,并全屏显示执行结果. watch [-dhvt] [-n <seconds>] [--difference ...

  6. Oracle中注意用户的访问权限

    新增表.序列.存储过程等,要注意用户(例如System)的权限.如果在增删改查过程中出现数据库读写权限的报错,则在建表(或者序列.存储过程等)时,在脚本前面加 GRANT CREATE TABLE T ...

  7. rpt水晶报表制作过程

    原文:rpt水晶报表制作过程 最近公司安排一个以前的项目,里面需要用到水晶报表,由于原来做这个项目的同事离职,所在公司的同事报表做成了rdlc类型的,而这类报表在加载的时候很难动态的从数据库加载数据, ...

  8. css技巧--整理(1)

    1.文字描边 -webkit-text-shadow:#be8ef8 2px 0 1px,#be8ef8 0 2px 1px,#be8ef8 -2px 0 1px,#be8ef8 0 -2px 1px ...

  9. 大约ActionContext.getContext()使用体验

    这是我在另一个人的博客看了,原来博客的时间长一点.我把它简化了一下,运营商,以方便它看起来. 为了避免与Servlet API耦合在一起,方便Action类做单元測试,Struts 2对HttpSer ...

  10. unbuntu下的root 用户和 sudo 命令

    参考: http://james23dier.iteye.com/blog/721246 http://blog.csdn.net/shichexixi/article/details/5969993 ...