分类算法----线性可分支持向量机(SVM)算法的原理推导

来源:互联网 发布:mac air 视网膜屏 编辑:程序博客网 时间:2024/06/05 07:50

支持向量机(support vector machines, SVM)是一种二分类模型,它的基本模型是定义在特征空间上的间隔最大的线性分类器,

其目标是在特征空间中找到一个分离超平面,能将实例分到不同的类,分离超平面将特征空间划分为两部分,正类和负类,法向量

指向的为正类,

1.几何间隔和函数间隔

如下图,有红色和绿色两类,假设红色为正,绿色为负类,数据集线性可分,这是有许多直线将两类数据正确分开,线性可分支持向量机

对应着将两类数据正确划分并且间隔最大的直线


函数间隔

对于给定的训练数据集T和超平面(w,b)定义函数间隔为


函数间隔可以表示分类预测的正确性及确信度,但是选择分离超平面时只有函数间隔是不够的,

因为只要成比例的改变w和b,超平面并没有改变,但是函数间隔却相应改变,因此需要对分离超平面进行约束,

使得间隔是确定的,这时函数间隔就变成几何间隔。

则定义超平面(w,b)关于训练数据T的几何间隔为超平面(w,b)关于T中所有样本点(xi,yi)的几何间隔之最小值,即


由上面式子可得函数间隔和几何间隔存在如下关系式

2.间隔最大化

对于线性可分支持向量机,线性可分分离超平面有无穷多个,但集合间隔最大的分离超超平面是唯一的

1.最大间隔分离超平面


2 拉格朗日对偶算法解最优化问题


到此线性可分支持向量机基本推到完毕,总计其过程如下

(1)构造并求解约束最优化问题


(2)计算w*和b*


(3)求得分离超平面和分离决策函数

后续线性支持向量机和线性不可分支持向量机以及SMO算法


阅读全文
0 0