首页 > 技术文章 > 支持向量机算法介绍(一)

KnightLaHire 2021-07-18 23:51 原文

一、支持向量机概念

  支持向量机是将特征向量映射为空间中的一些样本点,寻找一个能够实现样本分类的平面,并使得两类样本中离平面最近的两个样本点的距离最大化,从而达到分类性能最大化,提升模型的泛化性。由于在实际应用中样本点可能无法使用一条直线来完美分类,即线性不可分情况,而SVM能够通过相应的技术处理,使得样本可以使用一条直线来实现分类。此外,SVM分类算法对数据集需求不高,相比其他分类模型,对于高维度、稀疏的文本数据的分类性能也能够很高。但核函数的选取相关参数的设置对SVM的性能影响巨大,稳定性较差。

 

二、支持向量机公式推导

  1) 构建平面方程

  给定训练样本D:{(x1,y1),(x2,y2),......(xm,ym)}

  当x为正例时:y = +1

  当x为负例时:y = -1

  构建平面方程:wTx+b=0

  考虑到x'和x''在同一个超平面上,将x'和x''带入构建的平面方程公式中可以得到以下两个结果

  wTx' = -b

  wTx'' = -b

  2) 目标函数求点x到平面的距离

  wT为平面方程的法向量,b为偏移量,超平面到样本点x的距离为r,如公式(2-6)所示。

   当y(xi)>0可知yi = +1;当y(xi)<0可知yi = -1,可推yi·y(xi)>0。由yi·y(xi)>0可将式2-6中的绝对值展开得到共识(2-8)

  

  要优化的目标是使该线离其最近的点能够最远,通过放缩变换使结果|y|≥1,可推出公式(2-9)。

   待优化的目标函数:

由于yi·(wTx+b)的最小值为1,将最小值1带回式(2-10)中得到公式(2-11)。 

 

  为了方便计算将最大极值问题转换为最小极值问题得到公式(2-12)。

   使用拉格朗日法得到其“对偶问题”,向公式(2-12)引入拉格朗日乘子ai≥0,带入其限制条件yi·(wTx+b)≥1,写成拉格朗日函数L(w,b,a)如公式2-13所示。

   令公式(2-13)对w和b求偏导,得到公式(2-14)和(2-15)。

 

   将式(2-14)(2-15)带入(2-13)中使L(w,b,a)中的w和b消去,再考虑式(2-9)的约束条件,得到式(2-13)的对偶问题如公式(2-16)所示,限制条件为

   解出α后,推出w和b即可得到模型如公式(2-17)所示。

推荐阅读