SVM学习笔记(day1)

来源:互联网 发布:免费淘宝旺铺模板 编辑:程序博客网 时间:2024/06/06 02:56

学习资源:结构之法算法之道(july)

1、基本概念

支持向量机(Support Vector Machine,简称SVM)实质上是一种分类器(二分类)。与传统的logistic regression作为分类器相比,其特点是特征空间上间隔最大,因此效果更好,分类的确信度更高。

2、逻辑回归

传统的logistic regression可以作为线性分类器。使用sigmoid函数将数据x映射到(0,1)这个区间,其值表示y=1的概率。logistic regression分类常用的分类标志为0和1,对于sigmoid函数(g(z)),如果z>0则g(z)>0.5;如果z<0则g(z)<0.5。如果g(z)>0.5可以认为y=1;如果g(z)<0.5可以认为y=0。

而SVM分类器的分类标志为1和-1,与逻辑回归没有本质区别。

3、超平面

想象有一个二维平面,平面上有两种不同的数据,分别用圈和叉表示,如果这些数据是线性可分的,则可以用一条直线把这些数据分开,那么这一条直线就是一个超平面。SVM的目标就是寻找一个超平面,使得这条直线离两边数据的间隔最大。

这个超平面可以用分类函数表示 f(x)=w^{T}*x+b

4、函数间隔Functional Margin与几何间隔Geometrical Margin

当超平面已经确定,即f(x)=w^{T}*x+b,则平面上某一点到超平面的距离可以用 |f(x)|=|w^{T}*x+b| 表示,y*(w^{T}*x+b) 的正负可以用来判断分类的正确性,因此定义函数间隔

\bar{\gamma}=y*(w^{T}*x+b)

对于所有的 x_{i} ,for i=1,2,3,...超平面关于整个训练数据集的函数间隔为min(\bar{\gamma})

函数间隔的问题在于,当w与b成比例发生变化,超平面并不会因此改变,但是函数间隔会相应的成比例改变,因此引入几何间隔来表示真实的点到直线的距离。

\tilde{\gamma}=\frac{1}{||w||}*\bar{\gamma}

5、最大间隔分类器

由于当超平面不变,只是成比例改变w和b的值时,函数间隔会改变,因此应该采用最大化几何间隔的方法来选择最大间隔分类器。

max(\tilde{\gamma}),st. \tilde{\gamma_i}\geq\tilde{\gamma}, for all i

为了方便推导,可以另函数间隔为1,即 \tilde{\gamma}=\frac{1}{||w||}*\bar{\gamma} ,其中 \bar{\gamma}=1 。因此,问题可以简化为

max(\frac{1}{||w||}), st. y_i*(w^{T}x_i+b)\geq1 for all i

这样找到的平面即是最优超平面。

图中虚线上的点即为支持向量。