摘 要:介紹了一種基于支持向量機(jī)" title="支持向量機(jī)">支持向量機(jī)的解決傳感器系統(tǒng)非線性特性" title="非線性特性">非線性特性問(wèn)題的新方法。支持向量機(jī)是Vapnik教授提出的基于統(tǒng)計(jì)學(xué)習(xí)理論的新一代機(jī)器學(xué)習(xí)技術(shù),它有效地解決了小樣本學(xué)習(xí)問(wèn)題,因此該方法對(duì)樣本數(shù)量沒(méi)有特殊的要求。實(shí)驗(yàn)證明該方法有效,同時(shí)研究表明該方法也能用于其他系統(tǒng)的非線性校正。
關(guān)鍵詞:非線性校正;神經(jīng)網(wǎng)絡(luò);支持向量機(jī);擬合方法;傳感器
0前言
現(xiàn) 代控制系統(tǒng)對(duì)傳感器的準(zhǔn)確度、穩(wěn)定性和工作條件等方面提出了很高的要求。然而,從嚴(yán)格意義上來(lái)說(shuō),目前絕大多數(shù)傳感器特性都不理想,其輸入輸出特性大多為 非線性關(guān)系。為此,人們通過(guò)一些方法來(lái)進(jìn)行非線性補(bǔ)償和修正。特別是近年來(lái),隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展,有不少學(xué)者提出了基于神經(jīng)網(wǎng)絡(luò)進(jìn)行非線性傳感特性校正的 方法。這些方法一般是用一個(gè)多層的前饋神經(jīng)網(wǎng)絡(luò)去映射傳感器特性曲線的反函數(shù)作為校正環(huán)節(jié),算法相對(duì)簡(jiǎn)單,實(shí)現(xiàn)容易。
但是通過(guò)分析神經(jīng)網(wǎng)絡(luò)的基本工作原理,筆者認(rèn)為該方法依然存在一些不足[1、6]:1)在訓(xùn)練過(guò)程中神經(jīng)網(wǎng)絡(luò)極容易陷入局部最小,而不能得到全局最小;2)神經(jīng)網(wǎng)絡(luò)過(guò)分依賴訓(xùn)練數(shù)據(jù)的質(zhì)量和數(shù)量,但大多數(shù)情況下樣本數(shù)據(jù)十分有限,由于噪聲影響,存在數(shù)據(jù)不一致情況,對(duì)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練結(jié)果影響較大;3)輸入數(shù)據(jù)往往是高維的,而訓(xùn)練結(jié)果僅是輸入空間的稀疏分布,所以大量的高維數(shù)據(jù)必然會(huì)大大增加算法的訓(xùn)練時(shí)間。
支持向量機(jī)SVM[4,5](Support Vector Machine)是基于統(tǒng)計(jì)學(xué)習(xí)理論的一種新的學(xué)習(xí)方法,最早由Vapnik教授及其合作者于上世紀(jì)90年 代中期提出。由于其優(yōu)良特性,最近引起了許多研究者的興趣。支持向量機(jī)主要用于模式識(shí)別,目前在該方面成功的范例較多;與模式識(shí)別相比,支持向量機(jī)用于函 數(shù)擬合的成功應(yīng)用較少。和神經(jīng)網(wǎng)絡(luò)相比,支持向量機(jī)是基于統(tǒng)計(jì)學(xué)習(xí)理論的小樣本學(xué)習(xí)方法,采用結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則,具有很好的泛化性能;而神經(jīng)網(wǎng)絡(luò)是基于 大樣本的學(xué)習(xí)方法,采用經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化原則。
將支持向量機(jī)函數(shù)擬合技術(shù)應(yīng)用于傳感器非線性特性校正的研究剛起步,國(guó)內(nèi)尚無(wú)先例。如何在傳感器非線性特性校正領(lǐng)域充分發(fā)揮支持向量機(jī)函數(shù)擬合的技術(shù)優(yōu)勢(shì),解決神經(jīng)網(wǎng)絡(luò)方法中的缺陷是一個(gè)值得研究的問(wèn)題。
1支持向量機(jī)擬合基本理論
1.1線性函數(shù)擬合問(wèn)題
與支持向量機(jī)的研究最初是針對(duì)模式識(shí)別中的線性可分問(wèn)題[5]相似,先分析線性樣本點(diǎn)的線性函數(shù)擬合問(wèn)題,擬合函數(shù)以線性函數(shù)的特性出現(xiàn),可用形式
=ωTx+b表示。假設(shè)所有訓(xùn)練數(shù)據(jù){xi,yi}能在精度ε下無(wú)誤差地用線性函數(shù)擬合,即
統(tǒng)計(jì)學(xué)理論指出,在這一優(yōu)化目標(biāo)是最小化ωTω/2時(shí)可取得較好的推廣能力。考慮到實(shí)際應(yīng)用中允許擬合誤差的情況,則支持向量機(jī)優(yōu)化目標(biāo)可以表示為[3]
式中c為平衡因子,ζ、ζ*為懲罰因子,懲罰函數(shù)L(·)通常采用如下的離散定義形式(如圖1所示)
n,進(jìn)一步采用對(duì)偶優(yōu)化方法,最大化目標(biāo)函數(shù)
小部分不為0,它們對(duì)應(yīng)在不靈敏區(qū)邊界上或外
式中,偏移量b可由支持向量(xi,yi)及精度ε求得,SVs表示支持向量集。
1.2非線性函數(shù)" title="非線性函數(shù)">非線性函數(shù)擬合問(wèn)題
對(duì)于非線性函數(shù)擬合基本思想是:可以通過(guò)非線性變換x→φ(x)將原擬合問(wèn)題映射到某個(gè)高維特征空間中,然后在該空間中進(jìn)行線性擬合,即
在支持向量機(jī)中,引入核函數(shù)(Kernel function)來(lái)簡(jiǎn)化非線性逼近。在高維特征空間中,線性問(wèn)題中的內(nèi)積運(yùn)算可用核函數(shù)" title="核函數(shù)">核函數(shù)來(lái)代替。核函數(shù)滿足k(x,x′)=〈φ(x),φ(x′)〉,這樣目標(biāo)函數(shù)式(4)就變成了式(6)所示的形式:
2傳感器非線性誤差校正原理[6]
大多數(shù)傳感系統(tǒng)" title="傳感系統(tǒng)">傳感系統(tǒng)都可用y=f(x),x∈(ζα,ζb)表示,其中y表示傳感系統(tǒng)的輸出,x表示傳感系統(tǒng)的輸入,ζα,ζb為輸入信號(hào)的范圍。y信號(hào)可經(jīng)過(guò)電子設(shè)備進(jìn)行測(cè)量,目的是根據(jù)測(cè)得的y信號(hào)求得未知的變量x,即表示為x=y-1(y)。在實(shí)際應(yīng)用過(guò)程中,絕大多數(shù)傳感器傳遞函數(shù)為非線性函數(shù)。
為了消除或補(bǔ)償傳感系統(tǒng)的非線性特性,可使其輸出y通過(guò)一個(gè)補(bǔ)償環(huán)節(jié),如圖2所示。該模型的特性函數(shù)為u=g(y),其中u為非線性補(bǔ)償后的輸出,它與輸入信號(hào)x呈線性關(guān)系。很明顯函數(shù)g(*)也是一個(gè)非線性函數(shù),并使得補(bǔ)償后的傳感器具有理想特性。在實(shí)際應(yīng)用中,非線性補(bǔ)償函數(shù)g(*)的表達(dá)式難以準(zhǔn)確求出,但可以通過(guò)建模來(lái)實(shí)現(xiàn),補(bǔ)償模型的建立就成了校正傳感器非線性特性的關(guān)鍵。
筆者根據(jù)支持向量機(jī)的函數(shù)擬合能力,提出了基于支持向量機(jī)的傳感器非線性特性校正方法。
3仿真與應(yīng)用研究
該文使用支持向量機(jī)對(duì)兩個(gè)非線性傳感系統(tǒng)的非線性誤差進(jìn)行校正,取得了較滿意的效果。
3.1一維傳感器非線性校正
用實(shí)驗(yàn)法得出一組訓(xùn)練樣本(見(jiàn)表1),在表1中x表示傳感系統(tǒng)的輸入量,其值由精度較高的設(shè)備產(chǎn)生,在這里可作為標(biāo)準(zhǔn)量,y值為傳感系統(tǒng)的輸出量。
設(shè)計(jì)支持向量機(jī)對(duì)該傳感系統(tǒng)進(jìn)行非線性校正,傳感器輸出信號(hào)y經(jīng)過(guò)該SVM的處理相當(dāng)于進(jìn)行了一個(gè)逆?zhèn)鞲心P停С窒蛄繖C(jī)的輸出u作為非線性補(bǔ)償后的輸出,它與輸入信號(hào)x的誤差應(yīng)更小。
由此可得到一組訓(xùn)練樣本(yi,xi),其中yi表示支持向量機(jī)的輸入,xi為擬合的目標(biāo)。
設(shè)計(jì)支持向量機(jī)時(shí),精度ε=0.02,核函數(shù)選用多項(xiàng)式k(xi,x)=(xi·x+1)6,傳感器非線性校正曲線如圖3所示,由此可見(jiàn)用該方法提高了傳感器的精度。
3.2二維圖像傳感器非線性校正
有二維圖像傳感器,其校正前的輸出如圖4a所示,而實(shí)際像點(diǎn)應(yīng)在柵格線的交叉點(diǎn)。從圖4a不難看出,該傳感器存在著嚴(yán)重的非線性,且這種非線性不能以解析式表達(dá)。
如式(1)所示,文中介紹的支持向量機(jī)每個(gè)學(xué)習(xí)樣本的輸入數(shù)據(jù)xi是一個(gè)多維向量,樣本輸出yi是一個(gè)數(shù)而非向量。待校正的二維圖像傳感器校正樣本{(xa,xb),(ya,yb)}是二維輸入二維輸出的數(shù)據(jù),因此,不能直接用支持向量機(jī)進(jìn)行校正。
筆者設(shè)計(jì)兩個(gè)SVM來(lái)解決該問(wèn)題,一個(gè)SVMa用于校正a方向上的誤差,其學(xué)習(xí)樣本為{(xa,xb),ya};另一個(gè)SVMb用于校正b方向上的誤差,其學(xué)習(xí)樣本為{(xa,xb),yb}。兩個(gè)SVM設(shè)ε=0.01,核函數(shù)均選用多項(xiàng)式k(xi,x)=(xi·x+1)4。
用SVMa和SVMb分別校正樣本數(shù)據(jù)在a和b方向非線性誤差,校正結(jié)果如圖4b所示。
比較圖4b與圖4a,校正后的二維圖像傳感器的非線性已得到校正,精度令人滿意。
4結(jié)束語(yǔ)
將SVM技術(shù)應(yīng)用于傳感器非線性特性校正的研究剛起步,國(guó)內(nèi)尚無(wú)此 類文獻(xiàn)。畢竟支持向量機(jī)理論和應(yīng)用還是一個(gè)較新的領(lǐng)域,仍處于理論和實(shí)驗(yàn)研究 階段。筆者認(rèn)為支持向量機(jī)今后的研究應(yīng)該集中在以下幾個(gè)方面:①核函數(shù)的構(gòu)造與選擇; ②大樣本條件下SVM算法研究;③懲罰函數(shù)的改進(jìn)。