最小二乘支持向量机(LSSVM)简述

    xiaoxiao2021-03-25  137

    最小二乘支持向量机简述

    前言:偶然间看过July的《支持向量机通俗导论》,受益良多,出于兴趣又看了一些LSSVM(最小二乘支持向量机)的相关文献,在这儿随便贴一点。

    正文:首先,关于支持向量机的基础知识可以戳[http://www.cnblogs.com/v-July-v/archive/2012/06/01/2539022.html],这篇《支持向量机通俗导论》已经把SVM的基本概念讲得很透彻了。

    先说LSSVM分类,LSSVM和SVM的区别就在于,LSSVM把原方法的不等式约束变为等式约束,从而大大方便了Lagrange乘子alpha的求解,原问题是QP问题,而在LSSVM中则是一个解线性方程组的问题。

    对于SVM问题,约束条件是不等式约束:

    minw,b,ξJ(w,ξ)s.t.yk[wTφ(xk)+b]ξk=12wTw+ck=1Nξk1ξk,   k=1,,N0,k=1,,N 对于LSSVM,原问题变为等式约束: minw,b,eJ(w,e)s.t.yk[wTφ(xk)+b]=12wTw+12γk=1Ne2k=1ek,   k=1,,N 原SVM问题中的 ξ 是一个松弛变量,它的意义在于在支持向量中引入离群点。而对于LSSVM的等式约束,等式右侧的 e 和SVM的 ξ 的意义是类似的,最后的优化目标中也包含了 e 。我个人理解成:在LSSVM中,所有的训练点均为支持向量,而误差 e 是我们的优化目标之一。

    另外,在LSSVM中 γ 和SVM中 c 的意义是一样的,一个权重,用于平衡寻找最优超平面和偏差量最小。

    接下来,和SVM类似,采用 Lagrange 乘数法把原问题转化为对单一参数,也就是 α 的求极大值问题。新问题如下:

    L(w,b,e;α)=J(w,e)k=1Nαk{yk[wTφ(xk)+b]1+ek}

    分别对 wbekαk 求导=0,有:

    LωLbLekLαk=0w=k=1Nαkykφ(xk)=0k=1Nαkyk=0=0αk=γek,   k=1,...,N=0yk[wTφ(xk)+b]1+ek=0,   k=1,...,N 接下来,根据这四个条件可以列出一个关于 α b 的线性方程组: [0yyTΩ+I/y][bα]=[01v]

    其中 Ω 被称作核矩阵:

    Ωkl=ykylφ(xk)Tφ(xl)=ykylK(xk,xl),   k,l=1,...,N 解上述方程组可以得到一组 α b

    最后得到LSSVM分类表达式:

    y(x)=sign[k=1NαkykK(x,xk)+b]

    那么对比SVM,LSSVM的预测能力究竟怎么样呢,简单说来,由于是解线性方程组,LSSVM的求解显然更快,但标准基本形式的LSSVM的预测精准度比SVM稍差一些。

    接下来说回归。 如果说分类是用一个超平面将两组数据分开的话,个人理解LSSVM回归就是用一个超平面对已知数据进行拟合,问题如下:

    minw,b,eJ(w,e)s.t.yk=12wTw+12γk=1Ne2k=wTφ(xk)+b+ek,   k=1,,N

    这里的 yk 不再是表明类别的标签,而是我们需要估计函数中 y=f(x) 中的 y ,同样的,首先采用 Lagrange 乘数法:

    L(w,b,e;α)=J(w,e)k=1Nαk{wTφ(xk)b+ekyk}

    进一步推导:

    LωLbLekLαk=0w=k=1Nαkφ(xk)=0k=1Nαk=0=0αk=γek,   k=1,...,N=0wTφ(xk)+b+ekyk=0,   k=1,...,N 最后化为解下列线性方程组: [01v1TvΩ+I/y][bα]=[0y] 有核矩阵如下: Ωkl=φ(xk)Tφ(xl)=K(xk,xl),   k,l=1,...,N 解上述方程组得到LSSVM回归函数: y(x)=k=1NαkK(x,xk)+b

    原文地址:http://blog.csdn.net/u011542413/article/details/46682877

    转载请注明原文地址: https://ju.6miu.com/read-38422.html

    最新回复(0)