孫艷梅,劉樹東,陶佰睿
(齊齊哈爾大學(xué)a.通信與電子工程學(xué)院;b.理學(xué)院,黑龍江齊齊哈爾161001)
硅壓阻式壓力傳感器在輸入壓力p數(shù)值不變的情況下,當(dāng)工作溫度t變化時(shí)將引起傳感器輸出發(fā)生變化.為了消除非目標(biāo)參量(溫度)對(duì)傳感器輸出特性的影響,可采用多種智能化技術(shù)[1],本文結(jié)合因子分析(Factor Analysis,F(xiàn)A)和RBF(Radial Basis Function)神經(jīng)網(wǎng)絡(luò)的優(yōu)點(diǎn),將這兩種方法相結(jié)合用于壓力傳感器的溫度補(bǔ)償,并就補(bǔ)償效果進(jìn)行了分析和對(duì)比.
因子分析是從研究變量?jī)?nèi)部相關(guān)的依賴關(guān)系出發(fā),把一些具有錯(cuò)綜復(fù)雜關(guān)系的變量歸結(jié)為少數(shù)幾個(gè)綜合因子的一種多變量統(tǒng)計(jì)分析方法.對(duì)于所研究的問題試圖用最少的不可測(cè)的所謂公共因子的線性函數(shù)與特殊因子之和來描述原來觀測(cè)的每一分量[2].
一般地,設(shè)p個(gè)可觀測(cè)變量(x1,x2,…,xp)與q個(gè)公共因子(其中q≤p)滿足:
此模型稱為因子分析模型.若記:
則因子分析模型的向量矩陣形式為
其中,矩陣A稱為公因子載荷矩陣,aij稱為因子載荷;F稱為公共因子向量;X為原變量向量;ε稱為隨機(jī)誤差.
為確定因子分析模型,即估計(jì)載荷矩陣A,對(duì)可觀測(cè)變量(x1,x2,…,xp)必須獲得1個(gè)觀測(cè)樣本(xi1,xi2,…,xip),i=1,2,…,n,以此樣本出發(fā)估算載荷陣A的估算方法有多種,如主成分法、極大似然法、主因子法等,本文選用主成分法.
1)計(jì)算(x1,x2,…,xp)的相關(guān)系數(shù)矩陣R=(rij)p×p,其中
2)計(jì)算相關(guān)系數(shù)矩陣R的特征根,記為λ1≥λ2≥…≥λp≥0.
3)確定公因子個(gè)數(shù)q的值,以前q個(gè)特征值的累積百分?jǐn)?shù)≥85%選取公因子個(gè)數(shù).
4)計(jì)算特征根λ1,λ2,…,λq對(duì)應(yīng)的單位特征向量,記為γ1,γ2,…,γq.
5)對(duì)特征向量進(jìn)行規(guī)格化,即aj=,j=1,2,…,q.
6)寫出載荷矩陣A,即A=(a1,a2,…,aq)=(aij)p×q,至此得到因子分析模型.
一般地,因子得分模型為f=Bx+ε,即fi=bi1x1+bi2x2+…+bipxp+εi,i=1,2,…,q.如何估計(jì)B=(bij)p×q是關(guān)鍵問題.SPSS統(tǒng)計(jì)軟件提供了3種方法:即回歸法(Regresson)、巴特萊特法(Bartlett)、安德森-魯賓法(Anderson-Rubin)[3],本文采用回歸法計(jì)算因子得分.
這里通過因子分析主要是簡(jiǎn)化系統(tǒng)結(jié)構(gòu),排除補(bǔ)償因子間的相關(guān)因素,找出可用于描述系統(tǒng)變量的公因子,作為新的樣本為神經(jīng)網(wǎng)絡(luò)所用,達(dá)到降維的目的.
RBF神經(jīng)網(wǎng)絡(luò)是前饋神經(jīng)網(wǎng)絡(luò)中的一類特殊的3層神經(jīng)網(wǎng)絡(luò),是典型的局部逼近神經(jīng)網(wǎng)絡(luò),具有學(xué)習(xí)快、不會(huì)陷入局部最優(yōu)的優(yōu)點(diǎn)[4].RBF神經(jīng)網(wǎng)絡(luò)是新穎有效的前饋式神經(jīng)網(wǎng)絡(luò),具有較高的運(yùn)算速度和較強(qiáng)的非線性映射能力,能以任意精度全局逼近某非線性函數(shù).
徑向基函數(shù)網(wǎng)絡(luò)由3層組成,輸入層節(jié)點(diǎn)傳遞輸入信號(hào)到隱層,隱層節(jié)點(diǎn)由類似高斯函數(shù)的輻射狀作用的函數(shù)構(gòu)成,而輸出層節(jié)點(diǎn)通常是簡(jiǎn)單的線性函數(shù).
高斯函數(shù)的一般表達(dá)式為
式中,x是n維輸入向量;Ri(x)為隱層第i單元的輸出;ci為第i個(gè)基函數(shù)的中心,與x具有相同維數(shù)的向量;σi為基函數(shù)圍繞中心點(diǎn)的寬度,m是感知單元的個(gè)數(shù);‖x-ci‖為向量x-ci的歐氏范數(shù),表示x與ci之間的距離.
輸入層實(shí)現(xiàn)從x到Ri(x)的非線性映射,輸出層實(shí)現(xiàn)從Ri(x)到y(tǒng)i的線性映射.即
式中,p為輸出節(jié)點(diǎn)數(shù);ωij為第i個(gè)基函數(shù)與輸出節(jié)點(diǎn)yj的連接權(quán)值.
2個(gè)輸入節(jié)點(diǎn),1個(gè)輸出節(jié)點(diǎn)的RBF網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示[5-6].
圖1 RBF網(wǎng)絡(luò)結(jié)構(gòu)
本文將帶遺忘因子的梯度下降法應(yīng)用于RBF神經(jīng)網(wǎng)絡(luò)的參數(shù)調(diào)整[7].其具體算法如下:
其中,J為誤差函數(shù);Y(k)代表希望的輸出;Y(ω,k)為網(wǎng)絡(luò)的實(shí)際輸出;ω是網(wǎng)絡(luò)所有權(quán)值組成的向量.隱層-輸出層連接權(quán)值矩陣的調(diào)整算法為
隱層中心值矩陣的調(diào)整算法為
隱層標(biāo)準(zhǔn)偏差矩陣的調(diào)整算法
其中,μ(k)為學(xué)習(xí)率;α(k)為動(dòng)量因子.
1)進(jìn)行數(shù)據(jù)預(yù)處理時(shí),為了避免量綱不同而帶來數(shù)據(jù)間無意義的比較,故將數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理:
其中,Xi和pi為標(biāo)定值,Ximin和Ximax為溫度傳感器輸出電壓標(biāo)定的最小值和最大值,pimin和pimax為壓力標(biāo)定的最小值和最大值.
2)將數(shù)據(jù)分為驗(yàn)證數(shù)據(jù)和訓(xùn)練數(shù)據(jù).
3)對(duì)標(biāo)準(zhǔn)化的數(shù)據(jù)運(yùn)用SPSS軟件進(jìn)行因子分析.
4)運(yùn)用Matlab軟件設(shè)計(jì)RBF神經(jīng)網(wǎng)絡(luò),并將因子分析后的所得數(shù)據(jù)通過因子旋轉(zhuǎn)得到的各個(gè)公因子得分,作為輸入層變量輸入神經(jīng)網(wǎng)絡(luò)進(jìn)行網(wǎng)絡(luò)的訓(xùn)練和仿真.
5)將驗(yàn)證樣本通過數(shù)據(jù)標(biāo)準(zhǔn)化代入訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行檢驗(yàn).
實(shí)驗(yàn)采用Honeywell的24PCGF1G型壓力傳感器,把壓力傳感器和溫度傳感器放在恒溫槽中,溫度分別為8,22,35,50℃共4個(gè)溫度點(diǎn),然后測(cè)量出不同溫度下不同壓力標(biāo)定值的電壓測(cè)量值[8].壓力傳感器對(duì)應(yīng)的被測(cè)壓力為p,傳感器的輸出電壓為Up,在數(shù)據(jù)測(cè)量時(shí),外加2mA的恒流源以激勵(lì)壓力傳感器,環(huán)境溫度由集成溫度傳感器AD590測(cè)定,當(dāng)溫度為t時(shí),用AD590的輸出Ut(mV)反映溫度t,數(shù)據(jù)見表1.
運(yùn)用SPSS軟件對(duì)數(shù)據(jù)進(jìn)行因子分析,采用主成分分析方法選取特征值累積≥85%的因子,得到相關(guān)矩陣,見表2.因子特征根、方差貢獻(xiàn)率和方差累計(jì)貢獻(xiàn)率見表3.
由表3可知,前2個(gè)主成分的累積方差貢獻(xiàn)率為97.616%,已超過85%,故提取出了2個(gè)主成分,其因子得分系數(shù)見表4.
表1 傳感器標(biāo)定數(shù)據(jù)
表2 相關(guān)矩陣
表3 總方差解釋
表4 因子得分系數(shù)
通過因子分析系數(shù)計(jì)算數(shù)據(jù)的因子得分,并將其作為RBF網(wǎng)絡(luò)的輸入項(xiàng),網(wǎng)絡(luò)的輸入層引入因子分析抽取的2個(gè)主成份,共2個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)代表樣本對(duì)應(yīng)的主成份;輸出層用1個(gè)節(jié)點(diǎn)表示,采用Matlab語言對(duì)RBF網(wǎng)絡(luò)進(jìn)行設(shè)計(jì)和訓(xùn)練,選取神經(jīng)網(wǎng)絡(luò)的隱層神經(jīng)元個(gè)數(shù)為8,目標(biāo)誤差與基函數(shù)的擴(kuò)展常數(shù)的取值對(duì)網(wǎng)絡(luò)的擬合和泛化能力有很大影響,訓(xùn)練集的擬合程度低,蘊(yùn)含的規(guī)律無法獲?。粩M合程度高,則對(duì)測(cè)試集的泛化能力減弱.初始數(shù)據(jù)中心、擴(kuò)展常數(shù)和輸出權(quán)值均由隨機(jī)函數(shù)產(chǎn)生,通過調(diào)整網(wǎng)絡(luò)中的參數(shù),包括隱層節(jié)點(diǎn)數(shù)、學(xué)習(xí)速率、遺忘因子和網(wǎng)絡(luò)權(quán)值、隱層標(biāo)準(zhǔn)偏差等,進(jìn)行網(wǎng)絡(luò)的訓(xùn)練和測(cè)試,采用均方根計(jì)算其精度,目標(biāo)誤差為0.000 1,擴(kuò)展常數(shù)的學(xué)習(xí)率為0.006時(shí)結(jié)果最好,此時(shí)網(wǎng)絡(luò)的訓(xùn)練精度為0.039%,測(cè)試精度為0.048%.溫度補(bǔ)償后的壓力輸出值如表5所示.
表5 FA-RBF神經(jīng)網(wǎng)絡(luò)溫度補(bǔ)償效果
分別計(jì)算壓力傳感器的零點(diǎn)溫漂和靈敏度溫漂[9].零點(diǎn)溫度漂移:
靈敏度溫度漂移
同理,根據(jù)表2中的數(shù)據(jù),計(jì)算出溫度補(bǔ)償后的性能參數(shù)α0=4.37×10-4,α=5.54×10-4.補(bǔ)償后零點(diǎn)溫度漂移和靈敏度溫度漂移都顯著提高,減小了溫度對(duì)壓力傳感器輸出的影響.
基于因子分析的RBF神經(jīng)網(wǎng)絡(luò)與RBF神經(jīng)網(wǎng)絡(luò)相比,它的訓(xùn)練時(shí)間要比RBF網(wǎng)絡(luò)短,而且迭代的次數(shù)較少,零點(diǎn)溫度漂移和靈敏度溫度漂移都顯著提高.限于篇幅原因,本文將運(yùn)行RBF神經(jīng)網(wǎng)絡(luò)的補(bǔ)償結(jié)果直接給出,如表6所示,利用因子分析對(duì)數(shù)據(jù)降維,減少了網(wǎng)絡(luò)的輸入,利于簡(jiǎn)化網(wǎng)絡(luò)結(jié)構(gòu),進(jìn)而加快收斂,節(jié)省運(yùn)行時(shí)間.
綜上,基于因子分析的RBF神經(jīng)網(wǎng)絡(luò)算法提高了傳感器的穩(wěn)定性和準(zhǔn)確度.
表6 RBF神經(jīng)網(wǎng)絡(luò)與FA-RBF神經(jīng)網(wǎng)絡(luò)比較
針對(duì)硅壓阻式壓力傳感器溫度漂移問題,提出了基于因子分析和RBF神經(jīng)網(wǎng)絡(luò)相結(jié)合的補(bǔ)償方法,并驗(yàn)證了方法的有效性,該方法通過因子分析實(shí)現(xiàn)了對(duì)原始信息的篩選和降維,既減少數(shù)據(jù)冗余,又排除相關(guān)、重復(fù)數(shù)據(jù)的影響,形成新的訓(xùn)練樣本集;結(jié)合RBF神經(jīng)網(wǎng)絡(luò)的非線性映射、自適應(yīng)能力和強(qiáng)容錯(cuò)性對(duì)補(bǔ)償過程進(jìn)行建模,減少了網(wǎng)絡(luò)的輸入,利于簡(jiǎn)化網(wǎng)絡(luò)結(jié)構(gòu),進(jìn)而加快收斂,節(jié)省運(yùn)行時(shí)間,大大提高了網(wǎng)絡(luò)的學(xué)習(xí)速率與泛化能力.結(jié)果證明,基于因子分析的RBF神經(jīng)網(wǎng)絡(luò)有效解決了傳感器在大范圍環(huán)境溫度變化情況下靜態(tài)電壓零點(diǎn)漂移和靈敏度漂移的問題,提高了傳感器的穩(wěn)定性.
[1] 黃曉因,張悅,張麗蓮.壓力傳感器樣本數(shù)據(jù)更新和數(shù)據(jù)融合算法研究[J].電子器件,2005,28(4):882-885.
[2] 蔡建瓊,于慧芳,朱志洪.SPSS統(tǒng)計(jì)分析實(shí)例精選[M].北京:清華大學(xué)出版社,2006.
[3] 蘇金明,傅榮華,周建斌,等.統(tǒng)計(jì)軟件SPSS系列二次開發(fā)篇[M].北京:電子工業(yè)出版社,2003.
[4] 何平,潘國(guó)峰,趙紅東,等.基于RBF網(wǎng)絡(luò)的智能氣敏傳感器溫度補(bǔ)償[J].儀表技術(shù)與傳感器,2008,(7):6-8,42.
[5] Bianchini M,F(xiàn)rasconi P,Gori M.Learning without local minim a in radial basis function networks[J].IEEE Transactions on Neural Networks,1995,6(3):749-756.
[6] Yao Xin.Evolving artificial neural networks[J].Proceedings of the IEEE,1999,87(9):1423-1447.
[7] Catelsni M,F(xiàn)ort A.Fault diagnosis of electronic analog circuits using a radial basis function network classifier[J].Measurement,2000,28(3):147-158.
[8] 魯長(zhǎng)宏,張瑞,李玉蘭.超穩(wěn)定TO-8型壓力傳感器在氣體導(dǎo)熱系數(shù)測(cè)定實(shí)驗(yàn)中的應(yīng)用[J].物理實(shí)驗(yàn),2006,26(11):31-34.
[9] 嚴(yán)家明,毛瑞娟,謝永宜.兩種數(shù)據(jù)融合算法對(duì)擴(kuò)散硅壓力傳感器的溫度補(bǔ)償[J].計(jì)算機(jī)測(cè)量與控制,2008,16(9):1363-1365.
[10] Pramanik C,Islam T,Saha H.Temperature compensation of piezoresistive micro-machined porous silicon pressure sensor by ANN[J].Microelectronics Reliability,2006,46:343-351.