王 靜, 李曉林
(太原理工大學(xué) 信息工程學(xué)院,山西 太原 030024)
異常數(shù)據(jù)是指在某些特征上明顯偏離自身所在集合其他數(shù)據(jù)的數(shù)據(jù),異常數(shù)據(jù)檢測(cè)就是辨識(shí)這些數(shù)據(jù)的過(guò)程[1]。異常值檢測(cè)的傳統(tǒng)方法是借助圖形化工具進(jìn)行人工檢查,但這樣的方式不適用于長(zhǎng)時(shí)間不間斷生產(chǎn)的過(guò)程工業(yè)。近年來(lái),在這一領(lǐng)域發(fā)展出一些基于統(tǒng)計(jì)理論或機(jī)器學(xué)習(xí)的異常檢測(cè)方法,如最小體積橢圓法[2]、最小協(xié)方差似然估計(jì)器[3]、最近鄰聚類法、支持向量機(jī)分類器等[4,5]。
這些方法各有優(yōu)缺點(diǎn):最小體積橢圓法在收集樣本后進(jìn)行異常檢測(cè), 適合離線分析; 最小協(xié)方差似然估計(jì)器應(yīng)用于非穩(wěn)態(tài)過(guò)程的異常檢測(cè), 仍是一種離線分析方法; 最近鄰聚類法運(yùn)算復(fù)雜度高, 但及時(shí)性不足;支持向量機(jī)需要對(duì)未知情況進(jìn)行預(yù)分類。針對(duì)傳感器數(shù)據(jù)連續(xù)積累、實(shí)時(shí)更新的特點(diǎn),本文提出基于徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)(radial basis function neural network,RBFNN)的異常值濾除。利用前時(shí)刻的數(shù)據(jù)進(jìn)行神經(jīng)網(wǎng)絡(luò)訓(xùn)練,預(yù)估下一時(shí)刻的傳感器測(cè)量值,并根據(jù)實(shí)際測(cè)量值是否落入置信區(qū)間判斷數(shù)據(jù)是否異常。這種方法的優(yōu)勢(shì)在于由數(shù)據(jù)驅(qū)動(dòng),無(wú)須事先建立過(guò)程的機(jī)理模型; 同時(shí),該方法僅利用最近的局部數(shù)據(jù), 運(yùn)算量較小, 具有在線應(yīng)用的潛力[6]。
速度的延滯特性,為基于RBFNN預(yù)估數(shù)據(jù)提供了基礎(chǔ)。由前n時(shí)刻的值去預(yù)估下一時(shí)刻的值,與實(shí)測(cè)值進(jìn)行比較并判斷是否落入由網(wǎng)絡(luò)訓(xùn)練誤差決定的置信區(qū)間,以達(dá)到異常數(shù)據(jù)判別。方法具體步驟如下:
1)在k時(shí)刻選取前N個(gè)數(shù)據(jù)作為訓(xùn)練集,利用其中n個(gè)值Dt(dt-n,dt-n+1,…,dt-1)作為訓(xùn)練輸入,選擇dt為目標(biāo)輸出訓(xùn)練神經(jīng)網(wǎng)絡(luò)。
2)訓(xùn)練結(jié)束后,對(duì)下一時(shí)刻dt+1值做出預(yù)估得出預(yù)估值pdt+1。
3)將dt+1與pdt+1進(jìn)行數(shù)據(jù)比對(duì),如果dt+1落入了以pdt+1為中心的置信區(qū)間,則認(rèn)為數(shù)據(jù)為正常值。置信區(qū)間的選擇由高斯概率函數(shù)確認(rèn),如果沒(méi)有落入置信區(qū)間,則認(rèn)為數(shù)據(jù)異常,并剔除異常數(shù)據(jù)。
4)如果數(shù)據(jù)正常,代入實(shí)測(cè)值dt+1,生成新的Dt+1(dt-n+2,dt-n+3,…,dt+1);如果數(shù)據(jù)異常則以pdt+1代替dt+1;進(jìn)行下一步pdt+2的預(yù)估,并重復(fù)以上步驟(1)~(3)。
具體流程圖如圖1所示。
圖1 實(shí)時(shí)檢測(cè)判斷
工業(yè)速度傳感器包括很多種類:基于紅外測(cè)速、雷達(dá)測(cè)速、超聲波測(cè)速等的非接觸式速度傳感器;此外,還有傳統(tǒng)的接觸式速度傳感器,如礦用皮帶測(cè)速、紙張生產(chǎn)中測(cè)速和塑膠、電池等行業(yè)測(cè)速用傳感器。但無(wú)論是接觸性測(cè)速還是非接觸性測(cè)速,所有的速度值都是一個(gè)遲滯性變量,不會(huì)瞬間突變,這也是徑向基函數(shù)預(yù)估值判斷的原理[7,8]。
本文中以山西某廠家所生產(chǎn)的礦用皮帶秤速度傳感器為例。該速度傳感器利用電磁感應(yīng)原理,將輸入運(yùn)動(dòng)速度轉(zhuǎn)換為感應(yīng)電勢(shì)輸出傳感器。它不需要外接電源、結(jié)構(gòu)簡(jiǎn)單、零位性能穩(wěn)定。
廣義神經(jīng)網(wǎng)絡(luò)模型[9]如圖2所示。
圖2 廣義神經(jīng)網(wǎng)絡(luò)模型
在人工神經(jīng)網(wǎng)絡(luò)中,節(jié)點(diǎn)對(duì)應(yīng)圖中的節(jié)點(diǎn),權(quán)值表示節(jié)點(diǎn)之間的相互關(guān)聯(lián)強(qiáng)度。網(wǎng)絡(luò)將知識(shí)存儲(chǔ)在調(diào)整后的各權(quán)值中,所以,權(quán)值的求取是整個(gè)神經(jīng)網(wǎng)絡(luò)的關(guān)鍵。
預(yù)估計(jì)輸出Yc(y1c,y2c,y3c,…,ymc),其值為
(1)
隱含層基函數(shù)為高斯函數(shù)
(2)
其中,‖xk-xj‖為歐幾里德距離,且
‖xk-xj‖2=
(3)
式中w為RBFNN的權(quán)重,σ為標(biāo)準(zhǔn)差,按照下式選取
(4)
式中dmax為所選取的中心最大距離,n為隱含節(jié)點(diǎn)的個(gè)數(shù)。
神經(jīng)網(wǎng)絡(luò)的訓(xùn)練目的是求取隱含層與輸出層之間的權(quán)重關(guān)系。RBFNN屬于有監(jiān)督學(xué)習(xí)方式,每一個(gè)樣本都對(duì)應(yīng)一個(gè)教師信號(hào)作為期望輸出,訓(xùn)練時(shí)計(jì)算實(shí)際輸出與期望輸出之間的誤差,再根據(jù)誤差的大小和方向?qū)W(wǎng)絡(luò)權(quán)值進(jìn)行調(diào)整,這樣的調(diào)整反復(fù)進(jìn)行,直到誤差達(dá)到預(yù)期的精度為止。整個(gè)網(wǎng)絡(luò)形成了一個(gè)封閉的閉環(huán)系統(tǒng),誤差可以使用各輸出節(jié)點(diǎn)的誤差均方值來(lái)衡量,這樣就建立了一個(gè)以網(wǎng)絡(luò)權(quán)值為自變量,最終誤差性能為函數(shù)值的性能函數(shù),網(wǎng)絡(luò)訓(xùn)練轉(zhuǎn)換為求解函數(shù)最小值的問(wèn)題。
本文利用Matlab神經(jīng)網(wǎng)絡(luò)工具箱中的NEWRB函數(shù)自動(dòng)構(gòu)建的神經(jīng)網(wǎng)絡(luò)[10]。此處取k時(shí)刻前的8個(gè)歷史值作為輸入,故存在8個(gè)輸入。以NEWRB網(wǎng)絡(luò)默認(rèn)構(gòu)建25個(gè)隱含層節(jié)點(diǎn)。如圖3所示。
圖3 RBFNN結(jié)構(gòu)
根據(jù)徑向基函數(shù)中心確定方法的不同,在此處采用隨機(jī)選取固定中心的方式進(jìn)行網(wǎng)絡(luò)訓(xùn)練[11]。這種方式能防止徑向基函數(shù)出現(xiàn)太平或太尖的情況;并且基函數(shù)的中心和標(biāo)準(zhǔn)差都是固定的,唯一需要訓(xùn)練的參數(shù)就是隱含層與輸出層之間的權(quán)值。
在本文中實(shí)驗(yàn)數(shù)據(jù)來(lái)自山西某煤礦主井主皮帶速度傳感器1 min內(nèi)的120組采樣數(shù)據(jù)。表1中列出了部分?jǐn)?shù)據(jù)值,表中數(shù)據(jù)為速度傳感器測(cè)出的速度(m/s)。
表1 1 min內(nèi)采樣數(shù)據(jù)
神經(jīng)網(wǎng)絡(luò)訓(xùn)練結(jié)束后,另取60組未經(jīng)優(yōu)化處理的原始數(shù)據(jù)用來(lái)求取殘差值[12],即由預(yù)估值和真實(shí)值誤差確定置信區(qū)間。誤差服從均值為零的正態(tài)分布。假設(shè)新近測(cè)量值落入預(yù)報(bào)區(qū)間的概率P=100(1-α),則區(qū)間的上下界的表達(dá)式為
(5)
其中,t?/2(n-1)為自由度n-1的t分布P百分位;s為誤差的標(biāo)準(zhǔn)差。采用這種預(yù)報(bào)區(qū)間的優(yōu)勢(shì)在于區(qū)間的寬度只受誤差的影響。
礦用皮帶秤采用接觸式測(cè)速,即皮帶帶動(dòng)摩擦輪轉(zhuǎn)動(dòng)產(chǎn)生電壓脈沖信號(hào),再由稱重儀表轉(zhuǎn)換為相應(yīng)的速度值(m/s)。皮帶運(yùn)行時(shí)由于秤架振動(dòng)、皮帶抖動(dòng)或摩擦輪打滑都會(huì)造成瞬時(shí)速度值的波動(dòng)。取60組數(shù)據(jù)進(jìn)行曲線擬合和異常值剔除測(cè)試,如圖4所示。
圖4 數(shù)據(jù)檢驗(yàn)
由圖4可以看出:當(dāng)皮帶速度數(shù)據(jù)發(fā)生抖動(dòng)產(chǎn)生異常值時(shí),該方法可以有效地剔除異常值。
本文針對(duì)速度傳感器的延滯性提出了以RBFNN預(yù)估為基礎(chǔ),基于歷史數(shù)據(jù)預(yù)估下一時(shí)刻值的方法,來(lái)對(duì)速度值進(jìn)行判定。該方法的優(yōu)點(diǎn)在于數(shù)據(jù)驅(qū)動(dòng)對(duì)速度傳感器模型要求不高,運(yùn)算量小,適用于實(shí)時(shí)性較高的場(chǎng)合。經(jīng)實(shí)驗(yàn)檢驗(yàn),95 %的置信區(qū)間完全能滿足剔除異常數(shù)據(jù)、保留正常數(shù)據(jù)的功能。
參考文獻(xiàn):
[1] Hodge V J,Austin J.A survey of outlier detection methodologie-s[J].Artificial Intelligence Review,2004,22:85-126.
[2] Rousseeuw P J,Leroy A M.Robust regression and outlier detection[M].Hoboken:John Wiley & Sons,2005.
[3] Fauconnier C,Haesbroeck G.Outliers detection with the mini-mum covariance determinant estimator in practice[J].Statistical Methodology,2009,6(4):363-379.
[4] Bulut A,Singh A K,Shin P,et al.Real-time nondestructive structural health monitoring using support vector machines and wavelets[C]∥Nondestructive Evaulation for Health Monitoring and Diagnostics,International Society for Optics and Photonics,2005:180-189.
[5] 潘軼彪,袁景淇,朱 凱,等.基于多層感知器的異常數(shù)據(jù)實(shí)時(shí)檢測(cè)方法[J].上海交通大學(xué)學(xué)報(bào),2011,45(8):1226-1229.
[6] 周桂法,王 堅(jiān).基于神經(jīng)網(wǎng)絡(luò)的機(jī)車速度傳感器故障診斷方法研究[J].機(jī)車電傳動(dòng),2010(1):36-38.
[7] 黃治軍,雷 勇.傳感器故障檢測(cè)的仿真研究[J].計(jì)算機(jī)仿真,2005,22(1):110-112.
[8] 許秀玲,汪曉東.傳感器故障診斷方法研究[J].佛山科學(xué)技術(shù)學(xué)院學(xué)報(bào):自然科學(xué)版,2004,22(3):18-22.
[9] 陳 明.Matlab神經(jīng)網(wǎng)絡(luò)原理與實(shí)例精解[M].北京:清華出版社,2013:196-242.
[10] 李 萍,曾令可,稅安澤,等.基于Matlab的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用與軟件,2008,25(4):149-150.
[11] 張秀玲,張志強(qiáng).四種確定RBFNN中心的新算法[J].工業(yè)儀表與自動(dòng)化裝置,2007(2):6-9.
[12] 陸 南,孫茜茜.基于遺傳粒子濾波器的傳感器故障診斷[J].現(xiàn)代電子技術(shù),2013,36(18):16-19.