48

我一直在努力掌握支持向量机的基础知识,并下载并阅读了许多在线文章。但还是没能掌握。

我想知道,如果有一些

  • 不错的教程
  • 可用于理解的示例代码

或者你能想到的东西,这将使我能够轻松地学习 SVM 基础知识。

PS:我以某种方式设法学习了 PCA(主成分分析)。顺便说一句,你们会猜到我正在研究机器学习。

4

6 回答 6

46

支持向量机教程的标准推荐是Christopher Burges 的A Tutorial on Support Vector Machines for Pattern Recognition。另一个了解 SVM 的好地方是斯坦福的机器学习课程(SVM 在第 6-8 课中介绍)。这两个都是相当理论化的,并且在数学上很重。

至于源代码;SVMLightlibsvmTinySVM都是开源的,但是代码不是很容易理解。我没有仔细研究过它们中的每一个,但 TinySVM 的源代码可能是最容易理解的。本文还有一个SMO算法的伪代码实现。

于 2009-07-02T07:28:36.250 回答
18

这是一个非常好的 SVM 初学者教程:

支持向量机解释

我一直认为 StompChicken 推荐的教程有点令人困惑,因为他们直接谈论边界和 VC 统计数据并试图找到最佳机器等。不过,如果您已经了解了基础知识,那就太好了。

于 2009-11-06T16:16:18.270 回答
11

大量关于 SVM 的视频讲座:http:
//videolectures.net/Top/Computer_Science/Machine_Learning/Kernel_Methods/Support_Vector_Machines/

我发现Colin Campbell的那个非常有用。

于 2009-09-07T22:31:01.743 回答
9

libsvm支持向量机分类的实用指南PyML PyML教程
认为1是实用的,3是易于理解的。

于 2009-07-02T05:14:03.790 回答
5

假设您了解基础知识(例如最大边距分类器、构建内核),请解决该斯坦福机器学习课程的问题集 2(讲义 #5)。有答案键,他在整个过程中握着你的手。使用讲义 3视频 #7-8作为参考。

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

于 2009-07-03T02:00:42.610 回答
3

我会获取R的副本,安装很好地包装libsvm的e1071包,并尝试在您最喜欢的数据集上获得良好的结果。

如果您刚刚计算出 PCA,那么查看具有比案例更多的预测变量的数据(例如,微阵列基因表达谱、时间序列、分析化学光谱等)并比较 PCA 预测变量的线性回归可能会提供信息在原始预测变量上使用 SVM。

其他答案中有很多很好的参考资料,但我认为在你阅读里面的内容之前玩弄黑盒子是有价值的。

于 2009-07-09T16:21:37.980 回答