您好,欢迎访问三七文档
3.3支持向量回归机SVM本身是针对经典的二分类问题提出的,支持向量回归机(SupportVectorRegression,SVR)是支持向量在函数回归领域的应用。SVR与SVM分类有以下不同:SVM回归的样本点只有一类,所寻求的最优超平面不是使两类样本点分得“最开”,而是使所有样本点离超平面的“总偏差”最小。这时样本点都在两条边界线之间,求最优回归超平面同样等价于求最大间隔。3.3.1SVR基本模型对于线性情况,支持向量机函数拟合首先考虑用线性回归函数bxxf)(拟合niyxii,...,2,1),,(,niRx为输入量,Ryi为输出量,即需要确定和b。图3-3aSVR结构图图3-3b不灵敏度函数惩罚函数是学习模型在学习过程中对误差的一种度量,一般在模型学习前己经选定,不同的学习问题对应的损失函数一般也不同,同一学习问题选取不同的损失函数得到的模型也不一样。常用的惩罚函数形式及密度函数如表3-1。表3-1常用的损失函数和相应的密度函数损失函数名称损失函数表达式()ic噪声密度()ip-不敏感i1exp()2(1)i拉普拉斯i1exp()2i高斯212i21exp()22i鲁棒损失21(),if;2,otherwise;2iii2exp(),2exp(),2iiiifotherwise多项式1pipexp()2(1/)pipp分段多项式11,1,piipiifppotherwisep1exp(),1exp(),piipiifppotherwisep标准支持向量机采用-不灵敏度函数,即假设所有训练数据在精度下用线性函数拟合如图(3-3a)所示,**()()1,2,...,,0iiiiiiiiyfxfxyin(3.11)式中,*,ii是松弛因子,当划分有误差时,,*i都大于0,误差不存在取0。这时,该问题转化为求优化目标函数最小化问题:niiiCR1**)(21),,((3.12)式(3.12)中第一项使拟合函数更为平坦,从而提高泛化能力;第二项为减小误差;常数0C表示对超出误差的样本的惩罚程度。求解式(3.11)和式(3.12)可看出,这是一个凸二次优化问题,所以引入Lagrange函数:*11****111()[()]2[()]()nniiiiiiiinniiiiiiiiiiLCyfxyfx(3.13)式中,,0*i,i,0*i,为Lagrange乘数,ni,...,2,1。求函数L对,b,i,*i的最小化,对i,*i,i,*i的最大化,代入Lagrange函数得到对偶形式,最大化函数:***1,1**111(,)()()()2()()niijjijijnniiiiiiiWxxy(3.14)其约束条件为:*1*()00,niiiiiC(3.15)求解式(3.14)、(3.15)式其实也是一个求解二次规划问题,由Kuhn-Tucker定理,在鞍点处有:****[()]0[()]000iiiiiiiiiiiiyfxyfx(3.16)得出0*ii,表明i,*i不能同时为零,还可以得出:**()0()0iiiiCC(3.17)从式(3.17)可得出,当Ci,或Ci*时,iiyxf)(可能大于,与其对应的ix称为边界支持向量(BoundarySupportVector,BSV),对应图3-3a中虚线带以外的点;当),0(*Ci时,iiyxf)(,即0i,0*i,与其对应的ix称为标准支持向量(NormalSupportVector,NSV),对应图3-3a中落在管道上的数据点;当0=i,0i=时,与其对应的ix为非支持向量,对应图3-3a中管道内的点,它们对w没有贡献。因此越大,支持向量数越少。对于标准支持向量,如果0(0)iiC,此时0i,由式(3.16)可以求出参数b:1()()jlijjjijijjjixSVbyxxyxx同样,对于满足0(0)iiC的标准支持向量,有()jijjjixSVbyxx一般对所有标准支持向量分别计算b的值,然后求平均值,即**0*01{[()(,)][()(,)]}ijjiijjjiCxSVNSVijjjixSVCbyKxxNyKxx(3.18)因此根据样本点),(iiyx求得的线性拟合函数为bxxbxxfniiii1*)()((3.19)非线性SVR的基本思想是通过事先确定的非线性映射将输入向量映射的一个高维特征空间(Hilbert空间)中,然后在此高维空间中再进行线性回归,从而取得在原空间非线性回归的效果。首先将输入量x通过映射HRn:映射到高维特征空间H中用函数bxxf)()(拟合数据),(iiyx,ni,...,2,1。则二次规划目标函数(3.14)式变为:***1,1**111(,)()()(()())2()()niijjijijnniiiiiiiWxxy(3.20)式(3.20)中涉及到高维特征空间点积运算)()(jixx,而且函数是未知的,高维的。支持向量机理论只考虑高维特征空间的点积运算)()(),(jijixxxxK,而不直接使用函数。称),(jixxK为核函数,核函数的选取应使其为高维特征空间的一个点积,核函数的类型有多种,常用的核函数有:多项式核:''(,)(,),,0pkxxxxdpNd;高斯核:2''2(,)exp()2xxkxx;RBF核:''2(,)exp()2xxkxx;B样条核:''21(,)()NkxxBxx;Fourier核:'''1sin()()2(,)1sin()2Nxxkxxxx;因此式(3.20)变成***1,1**111(,)()()()2()()niijjiijnniiiiiiiWKxxy(3.21)可求的非线性拟合函数的表示式为:*1()()()(,)niiiifxxbKxxb(3.22)3.3.2结构改进的支持向量回归机上节所述的SVR基本模型其优化目标为:2*,,1**1min()2..()()00,1,2,...,liiwbiiiiiiiiiwCstywxbwxbyil(3.23)SVR结构改进算法一般在优化目标中增加函数项,变量或系数等方法使公式变形,产生出各种有某一方面优势或者一定应用范围的算法。Suykens提出了最小二乘支持向量机(LS-SVM)[105],与标准SVM相比其优化指标采用了平方项,从而将不等式约束转变成等式约束,将二次规划问题转化成了线性方程组的求解,其优化目标为:2,,11122..()1,2,,libiiiiMinstyxbil(3.24)LS-SVM与标准SVM相比减少了一个调整参数,减少了l个优化变量,从而简化了计算复杂性。然而LS-SVM没有保留解的稀疏性。改进的最小二乘支持向量机有:递推最小二乘支持向量机[106]、加权最小二乘支持向量机[107]、多分辨率LS-SVM[108]及正则化最小二乘方法[109]等。Schölkoph等提出的-SVM方法[110],引入反映超出管道之外样本数据点(即边界支持向量数量)和支持向量数的新参数,从而简化SVM的参数调节。其优化目标为:2*2,,1**11()2..()()001,2,,lTiibiiiiiiiiiminClstyxbxbyil(3.25)l表示边界支持向量机的上限和支持向量机的下限。与标准支持向量机相比优化求解过程不需要设定值。标准SVM方法中,引入惩罚系数C实行对超出-带数据点的惩罚。在实际问题中,某些重要样本数据点要求小的训练误差,有些样本数据点对误差的要求不是很高。因此,在优化问题描述时,对每个样本点应采用不同的惩罚系数C,或对于每个样本数据点应采用不同的-不敏感函数,使回归建模更加准确,这一类结构变化的支持向量机通常称为加权支持向量机(WSVM)[111],加权支持向量机可以通过对惩罚系数C加权实现,也可以通过对加权实现。通过对参数C加权实现时,其优化目标为:(*)2*,,1*()1()2..()()0,1,2,,liiibiiiiiiiiminCsstxbyyxbil(3.26a)通过对加权实现时,其优化目标为:2*,,,1*1min()2..()()0,01,2,liiwbiiiiiiiiiiiwCstywxbwxbyil(3.26b)Friess等提出了一种针对分类问题的SVM变形算法-BSVM算法[112]。与标准SVM相比,BSVM的优化目标多一项,而约束条件少一项等式约束,变为边界约束条件下的二次规划问题,适合迭代求解。同时可以应用矩阵分解技术,每次只需更新Lagrange乘子的一个分量,从而不需要将所有样本载入内存,提高了收敛速度。BSVM算法应用于回归分析,其优化目标为:2*1**11()22..()()001,2,,lTiiiiiiiiiiiMinbCstyxbxbyil(3.27)标准SVM回归算法都是把问题转化为求解凸二次规划。Kecman和Hadzic[113]提出用1L范数替代2L范数,从而通过改造用线性规划(LP)代替凸二次规划,以便于利用非常成熟的线性规划技术求解回归支持向量机。由最优化理论,*1()liiiix,据此考虑把原始目标函数的2l模2用1l模(*)*1()liii替换。则1l模可以改写为:(*)*1()liii,用(*)代替原目标函数中的2;将代入原约束条件;增加约束*,0,1,2,iiil,可得:(*)(*)**,,11*1**1()()1()()..()()()(),0,1,2,,lliiiibiiliiijiiiliiiijiiiiCminllstxxbyyxxbil(3.28)针对实际问题的特殊性,有时可以选择其他形式的更适宜的惩罚函数。惩罚带为任意形式的支持向量回归机[114],通过定义推广的-不敏感损失函数:***()(),()();(,,())0,()()();()(),()();yfxxyfxxcxyfxxyfxxyfxxyfxx其中*(),():xxR,采用推广的-不敏感损失函数构造-SVR问题,将原始最优化问题转化为:(*)(*)****,,1111***()()11()()..()(),0,1,2,,lll
本文标题:支持向量回归机
链接地址:https://www.777doc.com/doc-5010935 .html