【机器学习】求解过程快速又简单的最小二乘支持向量机LSSVM二分类

时间:2022-05-14 13:47:24

  最小二乘支持向量机(LSSVM)是一种简单的支持向量机(SVM)。普通的SVM的表达形式为

argminΦ(w)=12wTw+Ciξisubject to di(wTxi+b)(1ξi)0,ξi0
其中 di 是标准答案,取值为1和-1, xi 是样本。

  LSSVM的表达形式为

argminΦ(w)=12wTw+12γie2isubject to di(wTxi+b)(1ei)=0
需要注意的是,这里的 ei ξi 本质上是一回事,但是没有明确限定 ei 必须大于等于0。我们的约束条件是一个等式,如果 (wTxi+b)>1 ,那么 ei 可以是负数,不过 ei 还是需要被约束的。

  传统SVM中,约束条件是不等式,离分离超平面近的元素向量是支持向量,强烈地影响分离平面的计算,离超平面远的向量影响比较小;因此如果分离集合之间的边界不清晰,会影响计算结果。

  而LSSVM中,约束条件是等式,因此,离分离超平面近和远的元素向量都会对分离平面的计算产生影响,分离平面不如传统SVM精准;而且一旦产生相当数量的大的离群点,会严重影响分离平面的计算。LSSVM的最终结果,近似于将两个分离集合的所有元素到分离平面的距离,都限定在 1±η η 是可接受误差,通过限制 ei 逼近0来实现。LSSVM通过在对偶式中添加一个 ei 的平方来限制 ei 逼近0。

  求解LSSVM比SVM要简单的多。引入拉格朗日算子,有

J=12wTw+12γie2iiαi[di(wTxi+b)(1ei)]
依次求导得到:
Jw=wiαidixi=0w=iαidixi(1)
Jb=iαidi=0(2)
Jei=γeiαi=0(3)
Jαi=di(wTxi+b)(1ei)=0(4)
我们将 w,b,e=[e1...en],α=[α1...αn] 等向量看做整体,由(1)(3)令 zi=dixi,Z=[z1...zn],D=[d1...dn]w=ZαT,e=γ1α ,代入(4)得到:
ZαTzi+bdi+γ1αi=1(5)
由(2)(5)得到矩阵
[0DTDZTZ+γ1I][bαT]=[0I]
用基本的矩阵解法即可解出 α,b 。其中b是一个数字,因此与矩阵向量相乘的位置无所谓; ZTZ 是根据矩阵组成形式来给出的; w 通过(1)计算得到。