基于多核函数自适应融合的支持向量机参数选择方法与流程

文档序号:12721391阅读:1663来源:国知局
基于多核函数自适应融合的支持向量机参数选择方法与流程

本发明涉及数据处理算法领域,尤其涉及一种基于多核函数自适应融合的支持向量机参数选择方法。



背景技术:

支持向量机(Support Vector Machine,SVM)自1995年Corinna Cortes和Vapnik等首先提出以来,吸引了国内外众多学者的关注和研究,它是建立在统计学习理论基础之上,以结构风险最小化为原则的通用学习方法[1]。SVM具有强大的非线性处理能力和泛化能力,特别是在解决非线性、小样本及高维模式识别中表现出明显的优势,已经广泛用于分类和回归问题的处理,如图像识别、文本分类、人脸识别以及入侵检测等多个领域[2,3,4,5]

SVM的核心是核函数的引入,每一种核函数都具有单独的特性,对于不同的应用场合针对性很强,核函数的性能表现差异性也较大,并且核函数的构造与核参数的选择至今没有完备的理论依据。基于单特征空间的单个核函数构建的支持向量机在处理样本分布不均匀等问题时有很大的缺陷,比如,特征是由两个特征融合而成,第一个特征服从多项式分布,而第二个特征服从正态分布。如果采用单一核函数只能刻画数据某一方面的特性就无法对不同分布的特征进行恰当的表示[6]。文献[7-9]提出用处理局部信息强和全局信息能力都很强的混合核函数处理分类问题。这种方法可以弥补单一核函数在处理样本局部和全局信息方面的不足,但是缺乏有效的方法对两个基础核函数的加权系数进行优化。文献[10]基于混合核函数提供了另外一条估计加权系数与核参数的途径,把加权系数、全局核函数参数、局部核函数参数以及惩罚参数结合在一起整体作为混合核函数的参数,将基于混合核函数的支持向量回归机多参数调整看成非线性动态系统的参数识别问题,并用五阶容积卡尔曼滤波对参数进行估计,成功地实现了自适应调整加权系数与核参数。

随着信息技术的发展,当前需要处理的问题数据规模逐步变得更加复杂,而注重小样本统计规律的支持向量机已不足以应对复杂的数据特征。特别地,当数据规模庞大[11]、样本特征含有异构信息[12]、多维数据不规则[13]或者高维特征空间分布不平坦[14]等问题时,如PE过程的复杂性以及故障原因、故障现象和故障机制的多样性、随机性和模糊性,使得其绝缘故障诊断存在许多困难,针对由不同分布的特征融合而成的故障特征,采用混合核函数构建的支持向量机就无法充分利用故障样本的多类特征而且性能主要依赖于主特征,因此只有两个核函数的混合核函数SVM在处理异源特征融合时分类效果不理想。基于此,Lanckriet等提出了多核学习框架,这种多核学习方法在解决上述问题时有很大的优越性[15]。多核模型是一类灵活性更强的基于核的学习模型,近年来的关于多核学习的理论和应用已经证明多核模型比单核模型或混合模型所获得更好的性能,利用多核代替单核能增强决策函数的可解释性[16]。但是,这里最重要的问题就是如何得到这个组合的特征空间,也就是如何学习得到权系数。针对这一问题,近来出现了多种有效的多核学习理论及方法。如早期的基于Boosting的多核组合模型学习方法[17,18],基于半定规划(Semidefinite programming,SDP)的多核学习方法[19],基于二次约束型二次规划(Quadratically constrained quadratic program,QCQP)的学习方法[20],基于半无限线性规划(Semi-in-nitelinear program,SILP)的学习方法[21],基于超核(Hyperkernels)的学习方法[22],以及近来出现的简单多核学习(Simple MKL)方法[23,24]和基于分组Lasso思想的多核学习方法。在权系数与核函数的组合方面,研究人员也对多核方法进行了一些改进,如非平稳的多核学习方法[25],局部多核学习方法[26],非稀疏多核学习方法[27]等。然而,基于这些方法对加权系数及核参数的选择得到的支持向量机分类效果并不是很理想。



技术实现要素:

本发明的目的就在于为了解决上述问题而提供一种基于多核函数自适应融合的支持向量机参数选择方法。

本发明通过以下技术方案来实现上述目的:

本发明包括以下步骤:

(1)由于多种核函数加权融合而成的多核函数是一种新的核函数,把所有的加权融合系数也看成是多核函数的核参数,故将多核函数加权融合系数pt,pr、局部核函数的内部参数、全局核函数的内部参数以及惩罚参数C组合在一起作为支持向量机的核参数γ,进而整个参数的选择问题就可作为一个非线性动态系统的滤波估计问题;令kt为第t个局部核函数的所有核参数,kr为第r个全局核函数的所有核参数,则参数状态向量γ=[p1,...pt,...pm,p1,...pr,...pn,k1,...kt,...km,k1,...kr,...kn,C]T,首先建立如下参数非线性系统

γ(k)=γ(k-1)+w(k) (18)

y(k)=h(γ(k))+v(k) (19)

其中,γ(k)是n维参数状态向量,y(k)是观测输出,过程噪声w(k)和观测噪声v(k)均是均值为零的高斯白噪声,且方差分别为Q和R;

(2)由于待求的最优参数可以看做是固定不变的,所以可以建立式(18)所示的关于参数的线性状态方程,其次对于任何一个状态向量γ(k),经过LIBSVM[22]训练预测之后每一个原始数据都有一个预测输出,故可建立式(19)所示的非线性观测方程;为了五阶CKF滤波算法的运行,需要对系统模型加入人工过程白噪声和观测白噪声;

(3)假设支持向量回归机的原始样本数据集合为D={(xi,yi)|i∈I},其中指标集合I={1,2,...,N},yi为数据的目标向量,运用k-折交叉验证方法将样本数据分成k组,即

Dj={(xi,yi)|i∈Ij} (20)

其中j∈{1,2,...,k},并且所有组的指标集Ij满足I1∪Ij∪…∪Ik=I,所有组的数据集Dj满足D1∪D2∪…∪Dk=D;在每一次支持向量回归的迭代运算中,使用其中任意一组数据Dp用作预测,剩下的k-1组数据作为训练数据库,给定初始的参数γ0利用LIBSVM训练支持向量回归机;设此时训练结果为和则此时的决策函数为

其中,

(4)将数据组Dp代入式(15),即可得到Dp的预测输出值

分别将数据组Di,i∈{1,2,...,k}作为预测数据组,其余的数据组D1,...,Di-1,Di+1,...,Dk作为支持向量回归机训练数据组,经过k-折交叉验证回归预测之后,样本数据集D中的每一个数据有且仅有一个预测输出值;故对于参数向量γ,可定义如下预测输出函数:

其中,

(5)因此针对非线性系统模型(18)(19),基于多核函数及k-折交叉验证法用k个子LIBSVM训练数据集D,并将它的预测输出输入到五阶容积卡尔曼滤波器当中进行参数状态估计;整个基于多核函数自适应融合的支持向量回归机模型参数选择算法同样是包括两个过程,即时间更新过程和测量更新过程:

时间更新:

由于该更新过程是对状态的预测更新,且状态方程是线性已知的,故可根据五阶容积卡尔曼滤波算法的时间更新步骤公式(5)-(7)以及容积规则(46)进行支持向量回归机模型参数选择算法的时间更新;

测量更新:

带入参数状态向量γ(k)到支持向量回归机参数中,利用LIBSVM来训练数据集,再预测输出然后,将预测输出函数(17)嵌入到五阶容积卡尔曼滤波算法的测量更新步骤公式(8)-(14)及容积规则(46)中对各个参数进行估计。

本发明的有益效果在于:

本发明是一种基于多核函数自适应融合的支持向量机参数选择方法,与现有技术相比,本发明分别对局部核函数、全局核函数、混合核函数以及多核函数的特性进行了具体分析。把多核函数的所有融合系数、核函数参数、回归参数组合在一起作为参数状态向量,从而将模型选择问题转换成一个非线性系统的状态估计问题,然后用五阶容积卡尔曼滤波进行参数估计,实现多核函数加权系数的自适应融合及核参数、回归参数的选择。

附图说明

图1是支持向量机结构示意图;

图2是高斯核函数特性图;

图3是多项式核函数特性图;

图4是混合核函数特性图;

图5是两局部一全局三核函数特性图;

图6是一局部两全局三核函数特性图。

具体实施方式

下面结合附图对本发明作进一步说明:

问题描述:

支持向量回归机的结构示意图如图1所示,支持向量机的关键是核函数的引入。核函数巧妙地解决了低维向量映射到高维时所带来的维数灾难问题,提高了机器学习的非线性处理能力。而每一种核函数都有各自的特性,基于不同核函数得到的支持向量回归机具有不同的泛化能力。核函数是支持向量机中最重要的问题之一,如何选择合适的核函数也是支持向量机中未有理论依据的一个难点问题。

令K(xi,xj)表示核函数,其中xi,xj为样本数据。目前的核函数都是在实验中去尝试,常用的核函数有四种[28]

(1)线性核函数

K(xi,xj)=xi·xj (3)

线性核函数是核函数中的一个特例,采用线性核函数,则是在原始空间中寻找最优泛化性的支持向量机。主要特点是参数少,速度快。

(2)多项式核函数

K(xi,xj)=((xi·xj)+c)q (4)

其中,c,q为核参数且满足c≥0,q∈N,基于此核函数得到的是q阶多项式分类器。当c=1时的核函数是常用的一个多项式核。多项式核函数属于全局核函数,具有全局特性,允许相距很远的数据点可以对核函数的值有影响。q值越大,映射的维数越高,计算量也越大。当q过大时,函数集的VC维升高,学习机器的复杂性也提高,支持向量机的推广能力降低,易出现“过拟合”现象。

(3)高斯核函数(RBF核)

K(xi,xj)=exp(-||xi-xj||22) (5)

其中,σ>0为核参数,基于高斯核函数得到的支持向量机是一个径向基函数的学习机,它的每一个基函数中心对应一个支持向量。RBF核函数是局部性强的核函数,其外推能力随参数的增大而减弱。与一般的核函数相比,高斯核函数只需要确定一个参数,建立核函数模型相对简单。因此,RBF核函数是目前被应用最广的一种核函数。

(4)Sigmoid核函数

其中,λ,为核参数且满足λ>0,基于Sigmoid核函数得到的支持向量机是一个包含隐层的多层感知器。支持向量机的理论基础决定了它最终求得的全局最优值而不是局部最小值,也保证了它对于未知样本的良好泛化能力而不会出现过学习现象。

(5)傅里叶(Fourier)核函数

其中,0<q<1,基于傅里叶核函数的支持向量机已经得到了越来越多的应用。

目前,核函数主要分为两大类:全局核函数与局部核函数。局部核函数善于提取样本的局部性,核函数的值只受距离很近的数据点影响,插值能力较强,因此其学习能力强。常用的核函数当中,高斯核函数、傅里叶核函数属于局部核函数。全局核函数善于提取样本的全局特性,核函数的值只受距离很远的数据点影响,因此其泛化能力强[29]。与局部核函数相比,全局核函数插值能力较弱。常用的核函数当中,线性核函数、多项式核函数、和Sigmoid核函数都属于全局核函数。

单一核函数的缺陷难以满足支持向量机获得高性能的要求。每一种核函数都有各自的优缺点,且表现出各不相同的特点,从而基于这些核函数得到的支持向量回归机决策函数分类性能也完全不同。实际样本的特性复杂多变,并不能完全由局部核函数或者全局核函数来刻画反映,当样本特征含有异构信息,数据不规则及空间分布不平坦等情况时,由局部核函数与全局核函数加权组合而成的混合核函数也不能准确描述实际样本特征。而多核学习框架很好的解决了上述问题,为此本发明对多核函数的特性进行分析研究,并将多核函数的构造与核函数参数的选择问题转化成一个非线性滤波问题,基于高性能的五阶容积卡尔曼滤波算法对状态参数进行求解,从而实现对融合系数的自适应调整以及核参数与惩罚参数的估计。

核函数特性分析:

多核函数构造:

核函数主要包括2个方面的内容:核函数的构造和核函数模型的选择。其中,模型的恰当选择是提高支持向量回归机性能的关键。模型选择就是针对一批给定的原始样本数据,在进行训练之前确定比较适用于此数据特点的核函数。核函数的确定主要包括两个步骤:首先确定核函数的类型,然后选择核函数的相关参数。目前的研究,也主要集中于核函数模型的选择。核函数的构造往往比核函数的选择更具有重要意义,由于不同具体的实际应用样本具有不同的特性,一个好核函数的构造仍然是非常困难的。

众所周知,支持向量机的性能的好坏取决于核函数及其参数的选取。而核函数的类型繁多,各有各的特性,且各有利弊,因此如果在求解实际问题时仅仅采用单一的核函数,往往无法令支持向量机的分类性能达到最优,具有一定的局限性。实际上,除了上面提到的几种常见的核函数外,常常需要根据实际问题构造出相应的核函数。因此考虑将不同的核函数组合起来学习,以达到选取合适核函数的目的,M个核函数组成的多核函数Kmk(xi,xj)表达式如下所示

其中,Ks(xi,xj)表示第s个核函数,ps表示第s个核函数的加权系数。

定理1:记分别表示第r个局部核函数与第t个全局核函数,则多核函数Kmk(xi,xj)的表达式为:

其中,m,n为局部核函数和全局核函数的个数,且各核函数的融合系数满足0≤p1,p2…pr…pm≤1,0≤p1,p2…pt…pn≤1,则多核函数仍然是Mercer核。

证明:由于为局部核函数与全局核函数,所以其均满足Mercer条件[21],即,对任意且满足

又由于0≤p1,p2…pr…pm≤1,0≤p1,p2…pt…pn≤1,所以

即,

理论证明函数只要满足Mercer条件都可选为核函数,所以多核函数满足Mercer条件,可选为核函数。多核函数是多种局部核函数与全局核函数的凸组合,它的引入,弥补了单一使用全局核函数和局部核函数以及混合核函数的不足。

很明显,当某个核函数的融合系数为1,其它所有核函数融合系数为0时,多核函数就退化成单一的核函数。基于单个核函数的支持向量回归机的模型选择仅仅是在选择单个核函数内部的参数,而以多核函数为核的支持向量回归机的模型选择既要选择局部核函数内部的参数,还要选择全局核函数内部的参数,同时还要确定这所有核函数的融合系数,使得基于多核函数得到的支持向量回归机的性能最优。支持向量回归机在训练样本之前需要代入具体的加权融合系数值,多核函数(9)式中的加权融合系数pt,pr往往是根据经验而事先设计好的,由于组合后的混合核函数并不定能很好的刻画实际样本的特性,使得回归预测性能降低。

核函数特性分析:

核函数是影响支持向量机的核心因素,核函数不同,函数所表现的特性就不同。因此对核函数的特性进行分析十分必要。图2为高斯核函数核参数σ分别取0.1,0.2,0.3,0.4时的特性曲线图,测试点为0.5。从图上可以看出,局部核函数仅对测试点附近的小范围内的数据有影响,因为在远离测试点的值迅速减小趋于零,因此外推能力弱。随着高斯核函数半径的不断改变,核函数的影响范围也相应改变,且半径越大,影响的范围也就越小,其内推能力随着参数σ的增大而减小。

图3为多项式参数q分别取1,2,3,4时,多项式核函数的曲线,对于不同的多项式阶数采用的是同一个数据测试点0.5。从图中可以发现,多项式的数据点对于所有的待识别数据点都有全局性的影响,全局核函数不仅对测试点附近的小范围数据有影响,对远离测试点的数据也有一定影响。

图4是混合核函数的特性曲线图,其中局部核函数为高斯核函数,全局核函数为多项式核函数。对加权系数分别赋予4组不同的权值得到4条混合函数特性曲线,测试点为0.5。从图中我们可以看到,混合核函数结合了局部核函数与全局核函数的特性,对测试点附近的小范围内的数据有影响,在远离测试点的右端数据仍有影响,在远离测试点的左端迅速趋于0,即对左端数据影响较小,因此混合核函数既能对测试点附近的数据样本有较大影响,对远离测试点的数据也有一定的影响。

图5是两局部一全局三核函数的特性曲线图,三核函数由两个局部核函数与一个全局核函数组成。其中局部核函数为高斯核函数和傅里叶核函数,全局核函数为多项式核函数,测试点为0.5。对三种核函数的加权系数进行不同的取值得到如图所示的特性曲线,从图中可以看出由于具有两局部核函数,三核函数对测试点附近的数据有较大影响,局部特性明显,学习能力强,对远离测试点的数据也有影响。

图6为一局部两全局三核函数的特性图,三核函数由一个局部核函数与两个全局核函数组成。其中局部核函数为高斯核函数,全局核函数分别为多项式核函数、Sigmod核函数,测试点为0.5。对三种核函数给予四种不同的取值得到的特性曲线如图所示,从图中可以看出,三核函数对测试点附近的数据有一定的影响,对远离测试点的数据影响较大,全局特性明显,泛化能力强。

总之,局部核函数学习能力强,而其泛化能力弱;全局核函数泛化能力强,但是其学习能力弱。混合核函数同时具有局部特性和全局特性,具备一定的学习能力和泛化能力。两局部一全局三核函数局部特性明显,同时具备全局能力,拟合能力强。一局部两全局三核函数全局特性明显,同时具备局部能力,外推能力强。因此,将不同的核函数进行组合得到的多核函数具有更加丰富的特性曲线,能够相对准确的描述刻画实际样本的特性,同时不同的多核函数具有不同的函数特性,多核函数的特性跟组成核函数的加权系数密切相关。如何针对具体的实际应用选择多核函数的加权系数是一个难题。

基于多核函数自适应融合的支持向量回归机参数选择方法

多核函数支持向量机

支持向量回归机的最终目的是找到一个回归函数f:RD→R,使得

其中,是一个由多核函数组成,并将数据x从低维映射到高维特征空间的函数。w是一个权重向量,并且b是一个上下平移的数值。标准支持向量回归机采用ε-不灵敏函数,假设所有训练数据在精度ε下用线性函数拟合。这时,把问题转化为求优化目标函数最小化问题[17]

式中,ξi,是松弛因子,当拟合有误差时,ξi,都大于0,误差不存在时为0,优化函数第一项使拟合函数更为平坦,从而提高泛化能力;第二项为减小误差;常数C>0表示对超出误差ε的样本的惩罚程度。支持向量机的性能受误差惩罚参数C的影响,它是用来对样本被错分进行的惩罚度,对算法复杂度和样本错分度进行折中处理,因此,对于实际问题要选择恰当的惩罚系数C。

求解(13)式的凸二次优化问题,引入Lagrange乘子αi,支持向量回归机的原始问题(13)转换成如下对偶形式:

通过求解该对偶问题得到原始问题的解从而构造决策函数。将混合核函数Kmk(xi,xj)代替目标函数(14)中的內积(xi·xj),则得到决策函数为:

其中,按如下方式计算:选择开区间中的或若选到的是则

若选到的是则

基于多核函数自适应融合的支持向量机模型参数选择方法

由于多种核函数加权融合而成的多核函数是一种新的核函数,我们也可以把所有的加权融合系数也看成是多核函数的核参数,故可将多核函数加权融合系数pt,pr、局部核函数的内部参数、全局核函数的内部参数以及惩罚参数C组合在一起作为支持向量机的核参数γ,进而整个参数的选择问题就可作为一个非线性动态系统的滤波估计问题。令kt为第t个局部核函数的所有核参数,kr为第r个全局核函数的所有核参数,则参数状态向量γ=[p1,...pt,...pm,p1,...pr,...pn,k1,...kt,...km,k1,...kr,...kn,C]T,首先建立如下参数非线性系统

γ(k)=γ(k-1)+w(k) (18)

y(k)=h(γ(k))+v(k) (19)

其中,γ(k)是n维参数状态向量,y(k)是观测输出,过程噪声w(k)和观测噪声v(k)均是均值为零的高斯白噪声,且方差分别为Q和R。

由于待求的最优参数可以看做是固定不变的,所以可以建立式(18)所示的关于参数的线性状态方程,其次对于任何一个状态向量γ(k),经过LIBSVM[22]训练预测之后每一个原始数据都有一个预测输出,故可建立式(19)所示的非线性观测方程。为了五阶CKF滤波算法的运行,需要对系统模型加入人工过程白噪声和观测白噪声。

假设支持向量回归机的原始样本数据集合为D={(xi,yi)|i∈I},其中指标集合I={1,2,...,N},yi为数据的目标向量,运用k-折交叉验证方法将样本数据分成k组,即

Dj={(xi,yi)|i∈Ij} (20)

其中j∈{1,2,...,k},并且所有组的指标集Ij满足I1∪Ij∪…∪Ik=I,所有组的数据集Dj满足D1∪D2∪…∪Dk=D。在每一次支持向量回归的迭代运算中,使用其中任意一组数据Dp用作预测,剩下的k-1组数据作为训练数据库,给定初始的参数γ0利用LIBSVM训练支持向量回归机。设此时训练结果为和则此时的决策函数为

其中,

将数据组Dp代入式(15),即可得到Dp的预测输出值

分别将数据组Di,i∈{1,2,...,k}作为预测数据组,其余的数据组D1,...,Di-1,Di+1,...,Dk作为支持向量回归机训练数据组,经过k-折交叉验证回归预测之后,样本数据集D中的每一个数据有且仅有一个预测输出值。故对于参数向量γ,可定义如下预测输出函数:

其中,

因此针对非线性系统模型(18)(19),基于多核函数及k-折交叉验证法用k个子LIBSVM训练数据集D,并将它的预测输出输入到五阶容积卡尔曼滤波器当中进行参数状态估计。整个基于多核函数自适应融合的支持向量回归机模型参数选择算法同样是包括两个过程,即时间更新过程和测量更新过程:

时间更新:

由于该更新过程是对状态的预测更新,且状态方程是线性已知的,故可根据五阶容积卡尔曼滤波算法的时间更新步骤公式(5)-(7)以及容积规则(46)进行支持向量回归机模型参数选择算法的时间更新。

测量更新:

带入参数状态向量γ(k)到支持向量回归机参数中,利用LIBSVM来训练数据集,再预测输出然后,将预测输出函数(17)嵌入到五阶容积卡尔曼滤波算法的测量更新步骤公式(8)-(14)及容积规则(46)中对各个参数进行估计。具体的基于多核函数自适应融合的支持向量回归机模型参数选择算法步骤如表1所示。

表1基于混合核函数自适应融合的支持向量机模型参数选择算法具体步骤

基于多核函数自适应融合的支持向量回归机模型参数选择算法将多合核函数的所有融合系数与核参数及惩罚参数C作为参数状态向量,然后利用k-折交叉验证法基于LIBSVM对数据集进行预测输出,最终用五阶CKF算法迭代计算最优的的参数状态向量。实际上,整个基于混合核函数自适应融合的支持向量回归机模型参数选择算法是在迭代寻找最优的状态向量γ,使得样本真实目标值y(k)与支持向量回归机的预测输出之间的误差方差最小。

结论

本发明提出基于多核函数自适应融合的支持向量回归机参数选择方法,详细分析了局部核函数、全局核函数以及多核函数的特性,说明了进行各种核函数组合的必要性。将多核函数的所有融合系数、核函数参数、回归参数组合在一起作为参数状态向量,基于LIBSVM对原始数据集做预测输出,并用五阶容积卡尔曼滤波对融合系数进行自适应调整,对核函数参数与回归参数进行估计选择。最后以PE过程实验证明了基于本发明所提方法构造的核函数及参数能够使得支持向量机的泛化能力更强,故障分类精度更高。

以上显示和描述了本发明的基本原理和主要特征及本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1