概念:
通过构造一个分类函数或分类器的方法,该方法能把数据库中的数据项映射到给定类别中的某一个,从而可以用于预测未知数据。
**全名:**Support Vector Machine(支持向量机)
支持向量:支持或支撑平面上把两类类别划分开来的超平面的向量点。
机:一个算法
SVM是建立在统计学习理论的VC维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性之间寻求最佳折衷,以期获得最好的推广能力(或泛化能力)。
(下图分别展示的是在二维和三维空间中,对样本点进行线性分类的超平面)
(1.我们首先定义正类、负类)
(2.要将这两类样本点分开,我们发现会有多条线型分割符合条件,我们要从中找到一条最优的分割面)
(3.其中一条满足每个样本点到分割面的距离最小)
(4.还有一条满足每个样本点到分割面的距离最大,这既是我们要求的)
(5.从图中可以看到,落在正类、负类分割面上的点被称为支持向量,顾名思义,由它们支撑起正类、负类分割面)
(6.下图分别展示了正类、负类分割面的抽象表示以及样本点分别属于正类、负类以及无法分类区域(当然我们在分类中要尽量避免样本落在其中的概率)的条件)
那么问题来了:
1. 如何求得最优的超平面g(x)?
2. 超平面最优的标准是什么?
3. 超平面g(x)=wx+b中的法向量w和截距b如何求得?
首先,我们引入两个基础概念作铺垫:函数间隔、几何间隔
不难得到,函数间隔与几何间隔有如下关系:
接下来我们要求得目标函数。
于是问题便转化成了求
很容易看出当||w||=0的时候就得到了目标函数的最小值。反映在图中,就是H1与H2两条直线间的距离无限大,所有样本点都进入了无法分类的灰色地带
所以我们想到了一个解决方法,那就是添加一个约束条件加以限制,也为以后朗格朗日乘子法求条件最优解奠定基础:
机器学习十大经典算法支持向量机SVM(Support Vector Machine)(上篇)
最新推荐文章于 2019-06-13 12:13:00 发布