簡(jiǎn)國(guó)明,朱森華
(韶關(guān)學(xué)院 數(shù)學(xué)與信息科學(xué)學(xué)院,廣東 韶關(guān) 512005)
分類(lèi)問(wèn)題是通過(guò)已知的數(shù)據(jù)建立分類(lèi)模型,對(duì)未知類(lèi)別的數(shù)據(jù)進(jìn)行預(yù)測(cè)判斷.支持向量機(jī)通過(guò)尋找使得兩類(lèi)點(diǎn)集具有最大間隔的思想來(lái)建立分類(lèi)模型,此模型在對(duì)線性可分的點(diǎn)集進(jìn)行求解時(shí)較容易,但是在對(duì)非線性可分的點(diǎn)集時(shí),需要引入核函數(shù)進(jìn)行求解,且分類(lèi)效果依賴核函數(shù)及參數(shù)的選擇,而核函數(shù)及參數(shù)的選擇并沒(méi)有較成熟的算法,只能依靠使用者的先驗(yàn)知識(shí)進(jìn)行選擇并多次試驗(yàn)選取較優(yōu)的核函數(shù)和對(duì)應(yīng)的參數(shù),這個(gè)問(wèn)題在一定程度限制了支持向量機(jī)的使用.
基于這樣的原因,為尋找一種較為簡(jiǎn)便有效的分類(lèi)方法,提出一種近似支持向量機(jī)的分類(lèi)模型,通過(guò)求解線性方程組的近似解來(lái)確定分類(lèi)平面方程,使得求解會(huì)更加簡(jiǎn)潔.最后利用心臟病診斷的13項(xiàng)數(shù)據(jù)對(duì)新模型進(jìn)行檢驗(yàn),并與支持向量機(jī)模型進(jìn)行了對(duì)比,新模型具有不錯(cuò)的分類(lèi)效果.
若有樣本G={(X1,y1),(X2,y2),…,(Xn,yn)},其中Xi∈Rm表示數(shù)據(jù)向量,yi=±1用于標(biāo)識(shí)不同的種類(lèi),若兩類(lèi)點(diǎn)集是線性可分的,如圖1所示.
圖1 樣本線性可分圖
如果存在一線性平面能夠完全把不同的兩類(lèi)點(diǎn)集分開(kāi),建立支持向量的分類(lèi)模型[1-2]為:
作為非線性規(guī)劃問(wèn)題,對(duì)該問(wèn)題的求解,引入Lagrange函數(shù):
其中α=(α1,…,αn)T∈Rn+為L(zhǎng)agrange乘子.通過(guò)對(duì)原問(wèn)題中各個(gè)變量的偏導(dǎo)取零可得:
代入Lagrange函數(shù)化為原問(wèn)題的Lagrange對(duì)偶問(wèn)題:
分類(lèi)函數(shù)為:f(X)=sign(WTX+b).
當(dāng)已知樣本G={(X1,y1),(X2,y2),…,(Xn,yn)}在原空間是非線性可分時(shí),則需要通過(guò)把點(diǎn)集映射到特征空間(或高維或無(wú)窮維空間),使得在特征空間是線性可分的,如圖2所示.
圖2 樣本非線性可分
在原空間是非線性可分的,但是通過(guò)映射到特征空間之后是線性可分的[3-4].則原問(wèn)題轉(zhuǎn)化為:
映射φ(X)不容易通過(guò)顯式形式表示出來(lái),或者有時(shí)需要將原空間中的點(diǎn)集映射到高維或無(wú)窮維空間中,則內(nèi)積(φ(X),φ(y))的計(jì)算量將會(huì)大大增加,而如果不能夠顯式的表示出φ(x),則無(wú)法計(jì)算(φ(x),φ(y)).引入核函數(shù) K(x,y),使得 K(Xi,Xj)=(φ(xi,),φ(xj,)),則對(duì)應(yīng)的 Lagrange問(wèn)題轉(zhuǎn)化為:
若不可分則需引入懲罰參數(shù).
在支持向量機(jī)問(wèn)題中,若兩類(lèi)點(diǎn)集是線性可分的,則一定存在支持向量的點(diǎn),如圖3所示.
圖3 支持向量機(jī)示意圖
若此時(shí)平行直線具有最大距離,則中間的為劃分直線,落在直線上的點(diǎn)稱(chēng)為支持向量的點(diǎn).故對(duì)于問(wèn)題:
總是存在唯一的解WTX+b=0.但是對(duì)于非線性可分的點(diǎn)集,顯然不存在解,于是希望通過(guò)映射,通過(guò)核函數(shù)等一系列的手段來(lái)解決這一問(wèn)題.但是核函數(shù)的參數(shù)的選擇具有一定的困難,需要有一個(gè)簡(jiǎn)單有效的分類(lèi)模型.
支持向量機(jī)的模型是在線性可分的情況下,通過(guò)最大間隔來(lái)確定唯一的解,但是在非線性可分中不適用.對(duì)支持向量機(jī)模型的改進(jìn)是:可以完全分開(kāi)兩類(lèi)點(diǎn)集是直線并不是唯一的,支持向量機(jī)模型則通過(guò)最大間隔確定唯一的一條直線認(rèn)為是最合理的,但是事實(shí)上是不是,并不能確定,如圖3所示.所以顯然一個(gè)對(duì)已知數(shù)據(jù)驗(yàn)證正確率100%的分類(lèi)直線應(yīng)該都具有一定的合理性;且在支持向量機(jī)的模型中,如果全部的點(diǎn)都是支持向量,顯然分類(lèi)的正確率可以達(dá)到100%.
基于這樣的思想,建立新的支持向量機(jī)分類(lèi)模型:
此時(shí)非齊次線性方程組顯然不一定有解,在無(wú)解的情況下,取近似數(shù)值解代替,即求得的解不能夠使得原線性方程組的等式全部成立,最后的結(jié)果可能在1附近.而對(duì)于線性可分的點(diǎn)集,顯然存在直線WTX+b=0使得WTXi+b>0,i=1,2,…,n和WTXi+b<0,i=1,2,…,n.這樣在線性可分的點(diǎn)集中顯然可以做到正確率100%,這樣方程WTX+b=0顯然也是合理的,同樣可以建立對(duì)新數(shù)據(jù)的判別函數(shù)f(x)=sign(WTX+b).
對(duì)非線性可分的點(diǎn)集,不需要如支持向量機(jī)那樣需要引入核函數(shù),只需直接對(duì)方程組求解最接近原方程的近似解即可,使得yi(WTXi+b)>0,i=1,2,…,n成立的點(diǎn)盡可能多,滿足不等式的點(diǎn)都能正確分類(lèi).
為了降低對(duì)心臟病確診的體檢程序及成本,通過(guò)一些較容易獲得的指標(biāo)來(lái)確定心臟病人的患病情況.通過(guò)年齡、性別、胸痛類(lèi)型、靜息血壓、血清中膽固醇含量、空腹時(shí)血糖、靜息時(shí)心電圖結(jié)果、最大心跳速率、運(yùn)動(dòng)是否誘發(fā)心絞痛、運(yùn)動(dòng)心電圖ST下降程度、ST段斜坡、大血管屬性、地中海貧血等13項(xiàng)指標(biāo),利用已獲得的心臟病患者和健康者的數(shù)據(jù)[5],應(yīng)用支持向量機(jī)的分類(lèi)模型,通過(guò)MATLAB軟件進(jìn)行求解,得到多項(xiàng)式核函數(shù)、高斯核函數(shù)、Sigmoid核函數(shù)的計(jì)算結(jié)果(見(jiàn)表1、表2、表3).
表1 多項(xiàng)式核函數(shù)計(jì)算結(jié)果:K(x,xi)=[γ(x·xi)+c]q
表2 高斯核函數(shù)計(jì)算結(jié)果:K(x,xi)=exp(-‖x-xi‖2/σ2)
表3 Sigmoid核函數(shù)計(jì)算結(jié)果:K(x,xi)=tanh(+r)
表3 Sigmoid核函數(shù)計(jì)算結(jié)果:K(x,xi)=tanh(+r)
隨機(jī)取值γ 0.5 0.2 1.41421 r-1-1-1檢驗(yàn)正確率/%55.56 55.56 55.56
近似支持向量機(jī)分類(lèi)模型對(duì)心臟病預(yù)測(cè)的求解結(jié)果:
W=(0.007 69,-0.335 49,-0.194 33,-0.003 79,-0.000 94,0.010 09,-0.045 94,0.005 36,
-0.178 60,-0.088 12,-0.024 647,-0.379 23,-0.101 76),b=1.419 36;
構(gòu)造預(yù)測(cè)函數(shù)f(x)=sign((W,X)+b).檢驗(yàn)正確率為:87.78%.
通過(guò)實(shí)驗(yàn),可以看到隨機(jī)選取核函數(shù)參數(shù)的分類(lèi)效果并不太好,而新模型卻有不錯(cuò)的分類(lèi)效果.目前有的一些利用計(jì)算機(jī)來(lái)尋找最優(yōu)參數(shù)的方法如網(wǎng)格搜索法,但它只能夠找到一個(gè)相對(duì)的最優(yōu)參數(shù),即通過(guò)網(wǎng)格搜索法得到最優(yōu)參數(shù)取決于所給的初始區(qū)間和循環(huán)的步長(zhǎng),初始區(qū)間越大,步長(zhǎng)越小,能夠獲得更好的相對(duì)最優(yōu)值,但同時(shí)計(jì)算量也會(huì)隨之增大.而且參數(shù)個(gè)數(shù)越多,需要循環(huán)的層數(shù)越多,計(jì)算量越大.
[1]鄧乃揚(yáng),田英杰.支持向量機(jī)—理論、算法與拓展[M].北京:科學(xué)出版社,2009.
[2]Nello Cristianini,John Shawe-Taylor.支持向量機(jī)導(dǎo)論[M].李國(guó)正,王猛,曾華軍,譯.北京:電子工業(yè)出版社,2004.
[3]John Shawe-Taylor,Nello Cristianini.模式分析的核方法[M].趙玲玲,翁蘇明,曾華軍,等,譯.北京:機(jī)械工業(yè)出版社,2006.
[4]劉明.支持向量機(jī)中Sigmoid核函數(shù)的研究[D].西安:西安電子科技大學(xué),2009.
[5]數(shù)據(jù)堂.Heart Disease Data Set(UCI)[EB/OL].2010-12-04[2013-8-6].http://down.datatang.com/download.aspx?key= 028433f625 d2cd1adc2fda878d949d1b&url=/datafile/ 100141/dataset.rar&expire=6d8cb0&id=543&filename=dataset_ 100141.rar.
韶關(guān)學(xué)院學(xué)報(bào)2013年12期