<机器学习>(周志华)读书笔记 -- 第六章 支持向量机

支持向量机是当下比较经典的一个算法,其中台湾大学林智仁教授还开发了一个简单快速的svm库--libsvm这个svm的程序在目前各个机器学习包中都有广泛的嵌入式用。但是我们仍然需要对SVM的原理进一步了解。SVM是一个经典的二分类模型。

6.1 间隔与支持向量

对于两类数据来说,有很多种划分的选择可以把这两类数据基于某种维度进行划分,但是,这里出现了一个问题,不同的划分肯定带来的效果不同,那么哪个才是最好的呢?

<机器学习>(周志华)读书笔记 -- 第六章 支持向量机_第1张图片

如图,存在多个可以划分样本数据的平面。

在这里,我们可以把划分的平面用公式表达出来:

<机器学习>(周志华)读书笔记 -- 第六章 支持向量机_第2张图片

因为 w和 b的不同将会导致产生不同的划分平面,这个是毫无疑问的,那么这个问题转换成了如何选择参数w,b,这里引入了一个距离公式,用来表示样本点到划分平面的距离:

为了更好阐述目的可以看一下这个图片:

<机器学习>(周志华)读书笔记 -- 第六章 支持向量机_第3张图片

是的,其实就是要找到一个平面,实现让 γ的值最大,这样,类与类之间的距离就变大了,离得远了,边界自然就清晰了。这就是SVM想做到的事情。这个问题到了这里基本上就是转化为了:

这个就是支持向量机的基本型。

6.2 对偶问题

对于6.6凸二次规划问题的求解,据说有直接计算的计算包,但是,在SVM这里引入了对偶式的方式来求解。据说用对偶式有两个好处:

1、使问题更加容易求解;

2、使求解的过程中出现向量内积的形式,这样就可以使用核函数了。

对偶问题,顾名思义,可以理解成优化等价的问题,更一般地,是将一个原始目标函数的最小化转化为它的对偶函数最大化的问题。对于当前的优化问题,我们先找到对应的拉格朗日函数:

好久没有补充了,这里就说一下吧,这里的推导西瓜书上似乎有问题,得看李航的《统计学习方法》才能推到出来下一步。

你可能感兴趣的:(机器学习,读书)