支持向量机(理论篇)

Posted 蟹先森爱学习

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了支持向量机(理论篇)相关的知识,希望对你有一定的参考价值。

今天介绍传说中的支持向量机(Support VectorMachine,SVM),SVM是在1995年首次被Vapnik和Cortes提出的。支持向量机简称为SVM,是机器学习的一个重要分支,简单的来说,支持向量机是一种简单的二类分类模型,一般是1和-1两种类别。


SVM的基本模型可以认为是待分类的样本空间中的间隔最大的线性分类器,或者称为分类超平面。SVM的具体学习策略是使得分类超平面和样本的间隔最大化,这样一来,复杂的分类问题就可以最终可转化为一个凸的二次规划问题,该问题易于求解,已经有许多成熟的解法。解决该凸而次规划问题相当于解决复杂的分类问题。


SVM的核心思想其实就是找到一个分类超平面,利用该超平面将待分类的样本进行分离,从而达到分类效果。SVM已经经过详细而严谨的理论证明,具有很强的理论性,而且大量的实验结果已经验证了该理论的正确性。


接下来我们简要推导一下,首先关我们看下分类样本和分类超平面的示意图



图中gamma就是几何间隔,对于分类超平面,样本 x可以表示为:

支持向量机(理论篇)


因此,要使得分类效果好就需要使得每个点离分类超平面尽可能远,也就是间隔尽可能大,假设分类超平面的表达式为y = wx + b,则上述描述可以转为表达式

支持向量机(理论篇)

进一步可以简化为:


支持向量机(理论篇)


上式等价于:


支持向量机(理论篇)


引入Lagrange乘子,上式转化为:

支持向量机(理论篇)

 根据Lagrange对偶性原理:


支持向量机(理论篇)


对L求偏导得


支持向量机(理论篇)


反带入上式得


支持向量机(理论篇)


问题进一步转化为:


支持向量机(理论篇)

这种优化问题是传统意义上的优化问题,可以使用传统的方法解决,得到最优的alpha ,再根据下式


支持向量机(理论篇)

可以求得最优的w和b,从而可以确定最优的分类超平面以及分类决策函数。这是支持向量机的核心部分。


最后再说一下支持向量的由来,下图中实线所表示的就是我们最终要寻找的最优的分类超平面(Optimal Hyper Plane),分类超平面到两条虚线边界上的距离便是几何间隔gamma,这两个几何间隔是相等的,因此,很容易得出两条虚线间之间的距离为, 落在虚线(或者称为间隔边界超平面)上的样本就被称为支持向量。有种说法是因为这些样本支撑起了分类超平面,并且唯一确定分类超平面,所以将这些样本点形象地称为支持向量(每个样本都可以认为是一个向量,维数随意)。由于这些支持向量刚好落在虚线上,因此这些样本均满足的关系式。




今天推出我们的LOGO,以后就用它了。


以上是关于支持向量机(理论篇)的主要内容,如果未能解决你的问题,请参考以下文章

python实现支持向量机之非线性支持向量机和核函数(理论五)

支持向量机

支持向量机优缺点?

什么是支持向量机?

支持向量机原理篇之手撕线性SVM

独家 | 支持向量机背后的数学 -对于SVM背后的数学和理论解释的快速概览及如何实现