一些好的支持向量机教程指针

48

我一直在尝试理解支持向量机的基础知识,并下载并阅读了很多在线文章。但仍然无法掌握。

我想知道是否有一些

  • 好的教程
  • 可以用来理解的示例代码

或者您认为任何其他东西,可以让我轻松学习SVM基础知识。

附注:我不知怎么地学会了主成分分析(PCA)。顺便说一句,你们可能已经猜到了我正在从事机器学习的工作。


3
关于关闭这个“问题”,我明白它并没有遵循 StackOverflow 的“规则”,但 S.O. 需要认识到它已经变得如此伟大和无处不在,以至于社区将其用于许多目的。没有其他同等质量的论坛可以让 Alphaneo 进行他的询问。也许是 Quora?但实际上,S.O. 是我寻求真正专业知识的首选,而不是 Quora。 - Mike Williamson
机器学习并没有得到任何QA社区的特别关注,但我认为stats.stackexhange.com或metaoptimize.com/qa现在比stackoverflow.com更好用。 - Stompchicken
@MikeWilliamson 交叉验证怎么样?它正好适合这种问题。 - Abhijat Biswas
6个回答

46

一份关于SVM模式识别的教程推荐是Christopher Burges的支持向量机模式识别教程。另一个学习SVM的好地方是斯坦福大学的机器学习课程(SVM在第6-8讲中涵盖)。这两个教程都相当理论化,数学内容较多。

至于源代码,SVMLightlibsvmTinySVM都是开源的,但代码不易理解。我没有仔细研究每个库,但TinySVM的源代码可能是最容易理解的。此外,该论文中还有SMO算法的伪代码实现。


我只希望我能给你两个赞。非常好的教程,我已经在路上了...谢谢。 - Alphaneo
那篇由Christopher Burges撰写的文章的链接已经过期,但StompChicken提供了足够的细节来在搜索中找到它。这是一篇非常棒的文章;既“详细和全面”,又非常易于理解。Christopher Burges做得很好。对于任何对SVM感兴趣的人来说都是一篇很棒的阅读材料。 - Mike Williamson
@MikeWilliamson 感谢您指出链接失效的问题。我已将其指向一个新的、希望更加稳定的URL。 - Stompchicken

18
这是一份关于SVM很好的入门教程: SVM explained 我认为StompChicken推荐的教程有点混乱,直接讲解边界、VC统计和寻找最佳机器等。如果你已经了解了基础知识,那么它还是不错的。

这绝对是新手非常简单和直观的入门材料。 - Ivan Xiao
2
对于那些在“微积分、向量几何和拉格朗日乘数法”方面有很强背景的新手来说,如果你已经具备这些知识,那么任何“数学重度”的入门课程都更适合你。 - Adam Parkin
链接现在已经失效。 - Kaijju
链接已修复。 - Steve

11

9

请问您的回答中的 [1] 和 [3] 是什么意思? - Ashish Negi
@ASHISHNEGI 抱歉,不知道为什么 [1] 和 [3] 失去了链接,我也记不起具体信息了。而且答案可能已经过时了。 - sunqiang

5
假设您已经了解基础知识(例如最大边距分类器、构建内核),请解决斯坦福机器学习课程的问题集2(讲义#5)。有答案和他会一路指导你完成整个过程。使用讲座笔记3视频#7-8作为参考。

如果您不了解基础知识,请观看早期视频。


问题集似乎是一个很好的资源。谢谢! - The Unfun Cat

3
我会获取R的副本,安装e1071包,该包很好地包装了libsvm,并尝试在您喜欢的数据集上获得良好的结果。
如果您刚刚了解PCA,可能会有助于查看具有比案例更多预测因子的数据(例如,微阵列基因表达谱,时间序列,来自分析化学的光谱等),并将PCA的预测因子与原始预测因子上的SVM线性回归进行比较。
其他答案中有很多出色的参考资料,但我认为在阅读内部内容之前玩弄黑匣子是有价值的。

1
我同意,“在探究基础知识之前先玩弄黑盒子”是很好的。 - Alphaneo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接