支持向量机(SVM)
主要内容
一、支持向量机概述
二、线性支持向量机
1、间隔与支持向量
2、拉格朗日乘子法
3、SMO算法
三、线性不可分支持向量机与核函数
四、线性支持向量机的软间隔最大化模型
五、支持向量回归
一、 支持向量机概述
支持向量机(Support Vector Machines, SVM)是一种机器学习算法。支持向量(Support Vector)就是离分隔超平面最近的那些点。 机(Machine)就是表示一种算法。
二、 线性支持向量机
1.间隔与支持向量
给定训练样本集
,
为第
个特征向量,也称为实例,
为
的类标记。当
时,称
为正例;当
时,称
为负例。
称为样本点。分类学习最基本的想法就是基于训练集
在样本空间中找到一个划分超平面,将不同类别的样本分开
如图所示

在样本空间中,划分超平面可通过如下线性方程来描述:
1.1超平面方程
在二维空间里,一条直线的方程可表示为
三维空间里,平面的方程可以表示为
依次推广,n维空间的超平面方程可以表示为

其中为法向量,决定了超平面的方向,
为位移项,决定了超平面与原点之间的距离。
1.2函数间隔和几何间隔
一般来说,一个点距离分离超平面的远近可以表示分类预测的确信程度。在超平面确定的情况下,
能够相对的表示点x距离超平面的远近。而
的符号与类标记
的符号是否一致能够表示分类是否正确。所以可以用
来表示分类的正确性及确信度。
定义1(函数间隔)对于给定的训练数据集和超平面
,定义超平面
关于样本点
的函数间隔为
定义超平面关于训练数据集
的函数间隔为超平面
关于T中所有样本点
的函数间隔之最小值,即

函数间隔可以表示分类预测的正确性及确信度。但是选择分离超平面时,只有函数间隔还不够。因为只要成比例地改变和
,例如将它们改为
和
,超平面没有改变,但函数间隔却成为原来的2倍。这一事实告诉我们,可以对分离超平面的法向量
加某些约束,如规范化,
,使得间隔时确定的。这时函数间隔成为几何间隔。
下图给出了超平面及法向量
。点
表示某一实例
,其类标记为
。点
与超平面
的距离由线段
给出,记作
。
