首页 » 机器学习实战 » 机器学习实战全文在线阅读

《机器学习实战》第6章 支持向量机

关灯直达底部

本章内容

  • 简单介绍支持向量机
  • 利用SMO进行优化
  • 利用核函数对数据进行空间转换
  • 将SVM和其他分类器进行对比

“由于理解支持向量机(Support Vector Machines,SVM)需要掌握一些理论知识,而这对于读者来说有一定难度,于是建议读者直接下载LIBSVM使用。”我发现,在介绍SVM时,不止一本书都采用了以上这种模式。本书并不打算沿用这种模式。我认为,如果对SVM的理论不甚了解就去阅读其产品级C++代码,那么读懂的难度很大。但如果将产品级代码和速度提升部分剥离出去,那么代码就会变得可控,或许这样的代码就可以了。

有些人认为,SVM是最好的现成的分类器,这里说的“现成”指的是分类器不加修改即可,直接使用。同时,这就意味着在数据上应用基本形式的SVM分类器就可以得到低错误率的结果。SVM能够对训练集之外的数据点做出很好的分类决策。

本章首先讲述SVM的基本概念,书中会引入一些关键术语。SVM有很多实现,但是本章只关注其中最流行的一种实现,即序列最小优化1(Sequential Minimal Optimization,SMO)算法。在此之后,将介绍如何使用一种称为核函数(kernel)的方式将SVM扩展到更多数据集上。最后会回顾第1章中手写识别的例子,并考察其能否通过SVM来提高识别的效果。

1. 一种求解支持向量机二次规划的算法。——译者注