陳劍挺,吳志國,葉貞成,朱遠(yuǎn)明,程 輝
(1.華東理工大學(xué) 化工過程先進(jìn)控制和優(yōu)化技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室,上海 200237;2.安徽海螺集團(tuán)有限責(zé)任公司,安徽 蕪湖 241000)
隨著人工智能和計(jì)算機(jī)技術(shù)的高速發(fā)展,基于數(shù)據(jù)驅(qū)動(dòng)的故障診斷技術(shù)已成為工業(yè)界的熱門研究領(lǐng)域,而極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)的提出,為故障診斷技術(shù)提供了一種新的解決方案。ELM具有訓(xùn)練速度快,泛化精度高的特點(diǎn)[1]。但是在實(shí)際工業(yè)過程中,由于生產(chǎn)環(huán)境的影響,導(dǎo)致采集到的數(shù)據(jù)中帶有噪聲是一種常態(tài)現(xiàn)象,常規(guī)的ELM魯棒性不強(qiáng),容易受到噪聲的干擾。
基于此,Horata等[2]提出了一種基于迭代重加權(quán)最小二乘法(iteratively reweighted least squares,IRWLS)的魯棒ELM,通過對(duì)樣本數(shù)據(jù)添加權(quán)重的方式進(jìn)行迭代訓(xùn)練,提高了算法的魯棒性。在此基礎(chǔ)之上,Chen等[3]在ELM的目標(biāo)函數(shù)中引入正則項(xiàng),提出了基于迭代重加權(quán)最小二乘法的正則化魯棒ELM算法框架,提高了算法的穩(wěn)定性和泛化能力。羅等[4]將該思想應(yīng)用到在線學(xué)習(xí)上,并提出了一種權(quán)重變化和決策融合的極限學(xué)習(xí)機(jī)在線故障檢測(cè)算法模型,并通過集成的方式提高模型的綜合決策能力。Chen等[5]結(jié)合相關(guān)熵準(zhǔn)則提出了一種基于KMPE(kernel mean p-power error)損失的相關(guān)熵正則化極限學(xué)習(xí)機(jī),用KMPE相關(guān)熵?fù)p失代替常規(guī)ELM的平方損失項(xiàng),進(jìn)一步提高了算法的魯棒性。文獻(xiàn)[6]在此之上提出了基于混合相關(guān)熵?fù)p失的魯棒學(xué)習(xí)方法。但是以上的方法針對(duì)的都是標(biāo)簽噪聲問題,對(duì)于帶有特征噪聲的數(shù)據(jù)集,訓(xùn)練出來的算法模型仍存在較大的偏差。鑒于此,Kasun等[7]在分類之前對(duì)特征進(jìn)行提取,提出了一種多層學(xué)習(xí)架構(gòu),利用ELM自編碼器(ELM-AE)來構(gòu)建深層網(wǎng)絡(luò),以提取更好的特征表示。Tang等[8]提出了層級(jí)ELM(HELM)算法,并在其中提出了一種基于ELM的稀疏自編碼器,通過該稀疏自編碼器,HELM可以獲得原始數(shù)據(jù)的更稀疏的特征表示,進(jìn)一步提高多層ELM的分類性能,但是其在對(duì)抗噪聲方面并沒有給出較好的解決方案。
為此,本文針對(duì)特征噪聲問題提出了一種收縮極限學(xué)習(xí)機(jī)(contractive-extreme learning machine,CELM)魯棒算法模型,該方法主要分為兩個(gè)階段,第一個(gè)階段為特征提取層,通過自編碼器對(duì)輸入數(shù)據(jù)進(jìn)行重構(gòu),并將隱層輸出值關(guān)于輸入的雅克比矩陣的F范數(shù)引入到目標(biāo)函數(shù)中,進(jìn)而提取出更具魯棒性的抽象特征表示,該階段的隱層層數(shù)可以調(diào)整,且每一層都是獨(dú)立訓(xùn)練,隱層的參數(shù)訓(xùn)練好之后就不再進(jìn)行調(diào)整。第二個(gè)階段為常規(guī)的ELM層,將第一階段提取出的抽象特征表示作為輸入,對(duì)該層進(jìn)行訓(xùn)練。仿真實(shí)驗(yàn)對(duì)比結(jié)果表明,提出的方法在魯棒性方面和分類準(zhǔn)確率上都有很好的性能。
極限學(xué)習(xí)機(jī)是一種單隱層前饋神經(jīng)網(wǎng)絡(luò)[1]。其模型結(jié)構(gòu)如圖1所示。
圖1 ELM模型結(jié)構(gòu)
hj(xi)=g(aj·xi+bj),aj∈Rn,bj∈R
(1)
(2)
T是訓(xùn)練數(shù)據(jù)集標(biāo)簽
(3)
β∈RL×m是輸出權(quán)重矩陣
β=[β1,β2,…,βL]T
(4)
輸出節(jié)點(diǎn)對(duì)輸入xi的預(yù)測(cè)結(jié)果由下式給出
(5)
取預(yù)測(cè)結(jié)果的最大值作為標(biāo)簽
(6)
其中,c∈(1,2,…,m)。
對(duì)于ELM算法,其輸入權(quán)重矩陣a和偏置量b是隨機(jī)確定的,確定之后即不再改變。
因此,網(wǎng)絡(luò)訓(xùn)練的目標(biāo)函數(shù)為
(7)
采用最小二乘法求解式(7)中的目標(biāo)函數(shù)得到隱層的輸出矩陣
β=H?T
(8)
其中,H?是隱層輸出矩陣H的Moore-Penrose廣義逆矩陣
H?=(HTH)-1HT
(9)
為了進(jìn)一步提高ELM的穩(wěn)定性以及泛化能力,l2范數(shù)正則項(xiàng)被引入到了正則化ELM(RELM)之中,網(wǎng)絡(luò)的目標(biāo)函數(shù)為
(10)
β=(λI+HTH)-1HTT
(11)
文獻(xiàn)[7]和文獻(xiàn)[8]研究結(jié)果表明,如果能夠提取更有效的特征表示,ELM能夠獲得更好的性能。本文中采用自編碼器來提取新特征。
自編碼器[9]的原理:首先對(duì)輸入特征進(jìn)行歸一化,然后使用編碼器將n維輸入x映射到L維隱層h,公式如下
h=f(x)=sh(Wx+bh)
(12)
其中,sh(·) 是一個(gè)激活函數(shù),本文使用的是Sigmoid函數(shù)
(13)
W是一個(gè)dL×dn維的矩陣,bh是dL維的偏置向量,而解碼器g將L維的隱層表示重新映射成y
y=g(h)=sg(W′h+by)
(14)
W′=WT
(15)
自編碼器,通過最小化訓(xùn)練集Dn上的重構(gòu)誤差來訓(xùn)練并找到參數(shù)θ={W,bh,by},其對(duì)應(yīng)于最小化式(15)中的網(wǎng)絡(luò)目標(biāo)函數(shù)
(16)
收縮自編碼器[10](contractive-autoencoder,CAE)以隱層輸出關(guān)于輸入的雅克比矩陣的F范數(shù)作為自編碼器目標(biāo)函數(shù)的懲罰項(xiàng)。并通過最小化重構(gòu)誤差與該雅克比矩陣的F范數(shù)的平方,使得提取出的特征表示圍繞訓(xùn)練樣本的小幅變化具有魯棒性,即該懲罰項(xiàng)使得特征空間的映射在訓(xùn)練樣本的鄰域內(nèi)是緊縮的。網(wǎng)絡(luò)的目標(biāo)函數(shù)如式(17)所示
(17)
其中
(18)
(19)
(20)
文獻(xiàn)[10]中給出了特征表示可采用的標(biāo)準(zhǔn)衡量如下:①可以很好地重構(gòu)輸入數(shù)據(jù);②對(duì)輸入數(shù)據(jù)一定程度下的擾動(dòng)具有魯棒性。
引入l1范數(shù)或者l2范數(shù)作為懲罰項(xiàng)的自編碼器主要符合第一個(gè)標(biāo)準(zhǔn),而當(dāng)以隱層輸出關(guān)于輸入的雅克比矩陣的F范數(shù)作為自編碼器目標(biāo)函數(shù)的懲罰項(xiàng)時(shí)所提取到的特征相對(duì)更符合第二個(gè)標(biāo)準(zhǔn)。
在工業(yè)控制系統(tǒng)中,采集到的數(shù)據(jù)往往會(huì)帶有噪聲,為了提高ELM算法模型的魯棒性,本文提出了一種收縮極限學(xué)習(xí)機(jī)魯棒算法模型。
結(jié)構(gòu)如圖2所示。CELM的模型分為兩個(gè)階段,第一個(gè)階段為無監(jiān)督的特征提取層,該層通過CAE收縮自編碼器從輸入中提取抽象特征表示,挖掘訓(xùn)練樣本之間的隱藏信息。第一個(gè)階段隱層的輸出可以表示為
Hi=g(Hi-1Wi)
(21)
其中,Hi是第i層隱層的輸出,且H0=x。Wi為第i層的輸出權(quán)重矩陣,通過求解式(17)得到Wi,Wi確定之后就不需要再進(jìn)行微調(diào),再利用求得的Wi將第i-1層的特征表示映射到第i層隱層空間。第一階段的每一層都是獨(dú)立的模塊,分開單獨(dú)訓(xùn)練。
圖2 CELM算法模型結(jié)構(gòu)
第二階段采用的是有監(jiān)督的常規(guī)ELM層,將第一階段從輸入數(shù)據(jù)中提取出的抽象特征表示隨機(jī)映射到L維隱層空間得到ELM層的隱層矩陣,再應(yīng)用式(11)訓(xùn)練網(wǎng)絡(luò)。
由于故障診斷問題本質(zhì)上是分類問題。本文首先以Mnist手寫體數(shù)據(jù)集,以及11個(gè)UCI測(cè)試數(shù)據(jù)集為基準(zhǔn)對(duì)本文提出的收縮極限學(xué)習(xí)機(jī)(CELM)算法模型進(jìn)行分類性能分析,并與常規(guī)的HELM,ELM,SVM等算法進(jìn)行對(duì)比。并通過在Mnist數(shù)據(jù)集中添加特征噪聲的方式驗(yàn)證提出的方法的魯棒性,最后再利用TE過程進(jìn)行實(shí)驗(yàn)分析。
本文采用3.6GHz CPU,16G RAM,64位主機(jī),在Python3.5環(huán)境下進(jìn)行測(cè)試。
本實(shí)驗(yàn)的性能評(píng)價(jià)指標(biāo)選用ACC(準(zhǔn)確率)。計(jì)算公式如下
正查準(zhǔn)率:P-Precision=TP/(TP+FP)
(22)
負(fù)查準(zhǔn)率:N-Precision=TN/(TN+FN)
(23)
正查全率:P-Recall=TP/(TP+FN)
(24)
負(fù)查全率:N-Recall=TN/(FP+TN)
(25)
準(zhǔn)確率:
ACC=(TP+TN)/(ALL)
(26)
其中,TP,TN,F(xiàn)P,F(xiàn)N為表1表示分類問題混淆矩陣的元素。
表1 混淆矩陣
Mnist手寫體數(shù)據(jù)集是由60 000個(gè)訓(xùn)練圖像和10 000個(gè)測(cè)試圖像組成,樣本數(shù)字是0-9。Mnist數(shù)據(jù)集測(cè)試結(jié)果見表2。
表2 Mnist數(shù)據(jù)集測(cè)試結(jié)果
圖3為Mnist數(shù)據(jù)集測(cè)試結(jié)果。就分類精度而言,CELM明顯優(yōu)于ELM和HELM算法模型;就中間隱層數(shù)而言,CELM的中間隱層數(shù)為2時(shí)的分類精度高于中間隱層數(shù)為1時(shí)。
圖3 Mnist數(shù)據(jù)集測(cè)試結(jié)果
對(duì)于UCI數(shù)據(jù)集,本文將80%數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù),20%數(shù)據(jù)作為測(cè)試數(shù)據(jù)。對(duì)ELM,HELM,CELM分別測(cè)試20次,取平均結(jié)果。UCI數(shù)據(jù)集測(cè)試結(jié)果見表3。
根據(jù)測(cè)試集的結(jié)果,可以得出除了在Adult數(shù)據(jù)集中,CELM的分類精度會(huì)低于ELM,在其它數(shù)據(jù)集中CELM的分類精度都在ELM之上,且在White_wine_quality,Red_wine_quality,Wine,Seeds,Letter,Glass,Ecoli以及Dermatology中CELM的精度都是最高的,尤其在White_wine_quality數(shù)據(jù)集中,CELM的分類精度要比ELM高出12.8%,在Red_wine_quality數(shù)據(jù)集中,CELM的分類精度比ELM高出11.8%。通過表3可以得出,CELM的分類性能較好。
表3 UCI數(shù)據(jù)集測(cè)試結(jié)果
為了驗(yàn)證所提出的CELM對(duì)特征噪聲數(shù)據(jù)的魯棒性,本文選用Mnist數(shù)據(jù)集,并在其訓(xùn)練樣本中加入混合高斯噪聲。噪聲生成公式如下
(27)
表4 算法魯棒性測(cè)試結(jié)果
在圖4中可以看出,隨著噪聲強(qiáng)度的增加,CELM,ELM和HELM的分類精度也隨之下降。ELM的下降幅度最大,在添加了方差為0.5的高斯噪聲后分類準(zhǔn)確率下降到了81.7%,說明常規(guī)的ELM在抗噪聲方面性能較差。HELM與本文提出的CELM相比較,兩者在方差為0.5的高斯噪聲下分類準(zhǔn)確率都保持在了91%以上,但是隨著噪聲強(qiáng)度的增強(qiáng),HELM下降速率更快,兩者的精度差也逐漸加大。因此,可以得出本文提出的算法模型在較ELM和HELM具有更好的魯棒性。
圖4 添加不同級(jí)別噪聲后的實(shí)驗(yàn)結(jié)果
本小節(jié)中,分別以ELM,HELM以及本文提出的CELM對(duì)TE過程分別進(jìn)行實(shí)驗(yàn)分析。TE過程共有52個(gè)測(cè)量變量,并且可以模擬20種不同的故障類型。
本文中選取其中10種不同故障類型以及正常過程的所有訓(xùn)練數(shù)據(jù)訓(xùn)練出一個(gè)分類模型,并以各種類型的1/3數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù)集,2/3數(shù)據(jù)集作為測(cè)試數(shù)據(jù)集,對(duì)本文提出的CELM算法模型進(jìn)行故障診斷性能分析。測(cè)試結(jié)果見表5。
由表5結(jié)果可得,針對(duì)上述故障類型,CELM較ELM,HELM有7種類型的分類精度最優(yōu),分別是正常類型、故障4、故障5、故障8、故障10、故障12以及故障20。
表5 10種不同故障類型的診斷性能比較(ACC)
表6為算法模型的平均訓(xùn)練時(shí)間。與ELM和HELM相比,CELM模型訓(xùn)練時(shí)間平均值有所增加,但在故障診斷方面的精度更高。
表6 3種算法模型的訓(xùn)練時(shí)間平均值
綜上所述,本文提出的算法模型在準(zhǔn)確率方面有較好的表現(xiàn),且較ELM,HELM具有更好的魯棒性,但是模型訓(xùn)練效率方面較ELM,HELM耗時(shí)要多一些。
本文針對(duì)工業(yè)系統(tǒng)中采集的數(shù)據(jù)變量多,且普遍帶有特征噪聲的現(xiàn)象,提出了一種基于收縮極限學(xué)習(xí)機(jī)的魯棒算法模型。首先本算法模型以多層ELM網(wǎng)絡(luò)模型結(jié)構(gòu)為基礎(chǔ),然后利用自編碼器,并將隱層輸出值關(guān)于輸入的雅克比矩陣的F范數(shù)引入到目標(biāo)函數(shù)中,提取出圍繞輸入的微小變化具有魯棒性的抽象特征表示,最后以常規(guī)的ELM層作為分類器進(jìn)行訓(xùn)練。本文所提出的算法模型CELM在Mnist數(shù)據(jù)集、UCI數(shù)據(jù)集、帶有混合噪聲的Mnist數(shù)據(jù)集以及TE數(shù)據(jù)集上進(jìn)行測(cè)試分析,實(shí)驗(yàn)結(jié)果表明,CELM較ELM、HELM具有更高的分類精度、更好的魯棒性,以及更優(yōu)的故障診斷精度。但是在本文中,CELM相比ELM以及HELM的訓(xùn)練時(shí)間較長,因此后續(xù)筆者下一步的重點(diǎn)在于優(yōu)化隱層權(quán)重矩陣的計(jì)算過程,以提高模型的訓(xùn)練效率。