?

改進LNS和鄰域保持嵌入算法的研究

2021-02-25 08:50黃瑩瑩
計算機應用與軟件 2021年2期
關鍵詞:降維青霉素模態

李 元 黃瑩瑩

(沈陽化工大學信息工程學院 遼寧 沈陽 110142)

0 引 言

隨著自動化技術日新月異的發展和人民生活水平的不斷提高,人們對生產產品的質量要求也越來越高,因此生產過程也趨于復雜化。生產過程的復雜化不可避免地產生大量且維數較高的數據,故障診斷技術就是利用這些可以被采集、存儲、分析和利用的過程數據進行數據建模,進而進行故障診斷。但現實的是在建模時,這些高維數據通常計算量較大并且很難建立監控模型,因而有必要對這些數據進行降維處理。降維后的數據由于包含原始數據大部分特征并且容易進行監控,故而受到很多專家學者的青睞。目前常見的數據降維算法有很多,比較熟知的線性降維技術有主元分析(Principal Component Analysis,PCA)[1]、偏最小二乘(Partial Least Squares,PLS)等[2],非線性降維技術包括局部線性嵌入(Locally Linear Embedding,LLE)[3]、拉普拉斯特征映射(Laplacian Eigenmap,LE)[4]等。上述降維方法所能處理的數據類型和動機都不同,因而彼此的目標函數也有些許差異。PCA是基于數據驅動方法的多元統計過程控制中常用的降維方法[5],它尋找數據分布方差最大的方向,并將該方向作為第一主元方向。PLS可以用于提取與質量變化相關的主元。LLE、LE是近年來比較熱門的非線性降維技術,它們的共同點在于都是利用樣本點的局部近鄰信息來獲知其內部結構信息,但它們有一個缺點就是“樣本外”問題[6]。所謂“樣本外”問題是指它們利用訓練數據建立過程模型,但是新來的測試數據(訓練數據之外)不能直接投影到過程模型上而是需要重新計算,因此給計算帶來困難。He等[7]提出了一種新的流形學習算法-鄰域保持嵌入(Neighbor Preserving Embedding,NPE)算法,NPE算法雖然由LLE算法延伸而來,但與非線性降維技術LLE不同的是,NPE是一種線性降維技術,它除了繼承了LLE算法的鄰域結構保持特性還有效解決了“樣本外”問題,它和LLE算法一樣都是利用訓練數據建立模型,但新來測試數據可通過一個投影矩陣直接投影到過程模型上。

由于NPE算法的簡便性并且降維后原高維空間線性結構依然可以被保持,因此被廣泛應用于人臉識別和故障診斷中。Liu等[8]提出了一種新的特征提取方法-聯合稀疏鄰域保持嵌入(JSNPE)。NPE可以保持局部結構但卻忽略了全局特征,因此趙小強等[9]提出了張量全局-局部鄰域保持嵌入方法(TGNPE)。針對動態過程,楊健等[10]提出了時序約束NPE算法(TCNPE)。針對高維分類數據,寇勃晨等[11]提出了自適應NPE方法(IM-ANPE)。針對多模態數據,宋冰等[12]提出了LSNPE算法。

NPE算法使用z-score方法標準化,z-score方法可以消除量綱但當數據疏密程度不同時標準化后數據的多模態特征依然明顯。因此針對方差差異明顯的多模態數據,引入Ma等[13]提出的局部近鄰標準化(Local Neighbor Standardization,LNS)方法,該方法在消除量綱的同時可以使數據中心平移到原點,且標準化后的數據疏密程度相同。

綜上所述,針對現代生產過程數據多模態和復雜數據分布問題,本文提出MLNS-NPE算法對工業過程進行故障診斷。MLNS方法提高了NPE算法對稀疏多模態數據的故障檢測性能,NPE算法在數據降維的同時提取數據的局部信息,削弱原始空間離群點的影響。最后將該方法用于故障診斷中,取得良好的故障檢測效果。

1 鄰域保持嵌入(NPE)算法

NPE是流形算法的一種,為避免“樣本外”數據問題,它的目標就是尋找一投影矩陣A=(a1,a2,…,ad)將原始數據集X=(x1,x2,…,xn)∈RD映射到特征空間中,特征空間的數據集Y=(y1,y2,…,yn)∈Rd(d

(1) 構造鄰接圖:使用k近鄰法,若xj屬于樣本xi的k近鄰,則兩者之間有一條直接的邊。

(2) 構造權重矩陣:通過最小化重構誤差函數得到局部權重值,重構誤差函數為:

(1)

式中:wij為樣本xi與其近鄰xj之間的權重系數;W為權重矩陣且約束條件∑wij=1。當xj∈xk時,wij≠0;當xj?xk時,wij=0。

式(1)的求解可以引入拉格朗日乘數法,式(1)可以寫成:

(2)

式中:zi=(xi-xj)(xi-xj)T。構造拉格朗日函數:

(3)

(4)

(5)

因此得到的權重矩陣為:

(6)

(3) 構造投影矩陣。NPE的思想是若在原始高維空間權值wij可以線性表示樣本xi,那么它同樣可以在投影空間線性表示yi,以此表示其線性結構得到了保持。投影矩陣A可以通過下式得到。

(7)

q=y-Wy=(I-W)y

(8)

q2=qTq=yT(I-W)T(I-W)y=

aTX(I-W)T(I-W)XTa

(9)

構造拉格朗日函數:

L(a)=aTX(I-W)T(I-W)XTa+λ2(aTXXTa-1)

(10)

(a) 原始數據

(a) LNS

對a求導,得到式(11),其中λ=-λ2。

2X(I-W)T(I-W)XTa+2λ2XXTa=0

(11)

因此式(7)的最優化問題轉化成為XMXTa=λXXTa的廣義特征值求解問題。a0,a1,…,ad-1是特征值λ0≤λ1≤…≤λd-1對應的特征向量,M=(I-W)T(I-W),則投影矩陣A=[a0,a1,…,ad-1]。

得到投影矩陣A后,原始數據被分為特征空間Y和殘差空間E:

X=AY+E

(12)

Y=(ATA)-1ATX=ATX

(13)

E=X-AY

(14)

分別在特征空間和殘差空間建立T2統計量和SPE統計量:

(15)

(16)

式中:Λ為對角矩陣。

2 算法設計

2.1 局部近鄰標準化

使用上述NPE算法時所用的數據標準化方法為z-score標準化方法,z-score方法是針對數據集整體的均值和標準差進行標準化,它可以實現單一模態數據的標準化處理,但在處理方差差異明顯的多模態數據時,只能消除量綱,各模態疏密程度并沒有變化。針對方差差異明顯的多模態數據,近年來出現了種新的數據標準化方法即局部近鄰標準化(LNS)方法,LNS標準化方法如下:

(17)

式中:N(xi)、mean(N(xi))、std(N(xi))分別為樣本xi的近鄰集、均值和標準差。

LNS尋找樣本xi的k近鄰作為近鄰集,對各自模態正常樣本而言,其近鄰集的均值和標準差都源于各自模態,正常樣本與其近鄰集均值的距離較小,因此xi-mean(N(xi))可以使數據中心平移到原點,相比稀疏模態,密集模態更靠近原點。稀疏模態方差較大,xi-mean(N(xi))除以std(N(xi))可以使稀疏模態向內聚攏,密集模態方差較小,作商使密集模態數據向外擴散,因此兩個模態經LNS處理后多中心變為一個中心并且疏密程度大致相同。正常樣本與其近鄰集均值的距離小于故障樣本與其近鄰集均值的距離,因此LNS方法處理后故障樣本偏離原點,遠離正常樣本。

LNS雖然能有效處理稀疏多模態數據,但當故障樣本位于多個模態中間時,它的k個近鄰樣本可能同時位于幾個不同模態中[14],此時故障樣本近鄰集方差波動大,因此LNS方法處理后得到的新樣本同正常樣本一樣接近原點,此時故障樣本混入正常樣本導致LNS無法識別該故障。采用MLNS方法來解決樣本近鄰間跨模態問題。MLNS標準化方式如下:

(18)

MLNS方法尋找樣本第一近鄰的近鄰集,對于正常樣本和非位于模態之間的故障樣本,其作用同LNS方法。對于位于模態之間的故障樣本而言,無論其第一近鄰屬于哪個模態,其近鄰集都全部屬于該模態,均值和標準差也都屬于該模態,此時近鄰集方差波動較小,因此經MLNS方法處理后,該故障樣本遠離數據中心,偏離正常樣本。下面用一數值例子說明:隨機生成一多模態數值例子,兩個模態滿足:

每個模態選取300個訓練樣本,50個測試樣本,共600個訓練樣本,100個測試樣本。并設置5個故障,分別為f1(-40,45,70)、f2(-30,-50,-16)、f3(0,5,6)、f4(-25,-15,-25)、f5(75,0,20)。

如圖1所示,原始數據包含數據中心不重合的兩個模態:模態1密集,模態2稀疏。f1、f5為稀疏模態故障,f2、f4為密集模態故障,f4為密集模態的微弱故障,f3位于兩個模態中間。原始數據經z-score標準化處理后消除了量綱,但數據分布仍為稀疏多模態。如圖2所示,使用LNS方法處理后稀疏多模態數據變為疏密程度大致相同的單一模態數據,數據中心平移到原點附近。此時f1、f2、f4、f5偏離正常樣本,但位于模態間的f3混入正常樣本,被正常樣本覆蓋。使用MLNS方法處理后稀疏多模態數據變為疏密程度大致相同的單一模態數據,多模態數據中心重合并且平移到原點附近,多模態特性消除,f1、f2、f4、f5偏離正常樣本的同時f3遠離正常樣本點。

表1為f3的前13近鄰,f31表示故障樣本f3的前13近鄰,可以看出第9、10、11、12個近鄰屬于第一模態,其余為第二模態,因此f3存在近鄰樣本跨模態問題。f32表示f3第一近鄰的前13個近鄰,可以看出,第一近鄰屬于第二模態,第一近鄰的前13個近鄰全部屬于第二模態,因此采用MLNS方法避免了模態中心故障近鄰集跨模態問題,f3被成功檢測,提高了NPE算法對疏密不同數據的檢測能力。

表1 故障樣本f3的前13近鄰

2.2 故障檢測

傳統NPE算法使用z-score標準化方法,但對于多模態數據而言,經z-score標準化后,數據仍具有多個中心,即仍然是多模態結構。因此NPE算法在處理具有多個中心且疏密程度不同的多模態數據時,其處理效果并不好。針對疏密程度不同的多模態數據的故障檢測,本文提出一種基于MLNS-NPE的故障檢測方法,使用MLNS方法代替原始NPE算法的z-score標準化方法,去除數據的多中心和方差差異特性,然后進行NPE建模?;贛LNS-NPE的多模態故障檢測分為模型建立和在線檢測兩個階段:

1) 正常狀態下的模型建立:

(2) 在高維空間構造鄰接圖,根據式(6)構造權重矩陣。

(3) 根據式(7)構建投影矩陣。

(4) 計算SPE、T2統計量。

2) 在線檢測:

(1) 應用MLNS算法標準化新樣本V。

2.3 算法流程

MLNS-NPE算法流程如圖3所示。

圖3 MLNS-NPE流程圖

3 仿真分析

3.1 數值例子

本節數值例子使用上節的數值實例,分別用NPE、KNPE、KNN、MLNS-NPE四種算法對該多模態過程進行檢測。其中NPE、KNPE、MLNS-NPE算法的重構近鄰數為6,KNN算法的近鄰數為13,MLNS-NPE算法中第一近鄰的k近鄰數為13。檢測結果如圖4所示。

(a) NPE算法

使用上述四種方法檢測:其中NPE和KNPE兩種方法都使用z-score方法進行標準化,檢測效果如圖4(a)和圖4(b)所示。NPE方法的SPE、T2統計量各檢測到一個故障,此時控制限完全由較稀疏模態確定。使用KNPE方法,將數據映射到高維,有效降低了非線性的影響,T2統計量檢測到故障f1、f5,SPE統計量沒有檢測到故障,此時模態間差異仍然存在,控制限仍然由稀疏模態確定,因而故障檢測率較低。

圖4(c)使用了KNN方法,可以有效處理疏密程度相似的多模態數據,但在處理疏密程度差異較大的多模態數據時,控制限依然由稀疏模態確定。由圖4(c)可以看出,雖然D2成功檢測出4個故障,但位于密集模態的微弱故障f4沒有被檢測出來。圖4(d)使用MLNS-NPE方法,兩個模態變為一個模態,消除模態間結構信息,T2、SPE均成功檢測出所有故障。四種方法故障檢測結果如表2所示。

表2 99%控制限下四種算法對數值例子的檢測結果

3.2 青霉素發酵過程

青霉素發酵生產過程是典型的多階段過程,整個生產過程分為三個階段:1) 菌體生長階段:發酵培養基接種后青霉菌在合適的環境中經過短時間的適應開始發育、生長和繁殖,伴隨葡萄糖底料的快速消耗;2) 青霉素合成階段:這個階段主要合成青霉素,青霉素的生產率達到最大;3)菌體自溶階段:這個階段菌體衰老,細胞開始自溶,青霉素合成能力衰退。圖5為青霉素發酵過程工藝流程。

圖5 青霉素發酵工藝流程

本文通過Pensim仿真平臺[16-17]實現青霉素發酵過程的仿真。Pensim仿真平臺可以模仿青霉素發酵生產過程,它有5個輸入變量用來控制發酵過程中各種參數的變化,還有9個過程變量,產生于菌體合成以及生長過程中,另外還有影響青霉素產量的5個質量變量。整個生產過程分為兩個大的階段,前43 h為青霉素菌生長階段,為稀疏模態數據階段;43~400 h為合成青霉素階段,為密集模態數據階段??稍谇叭齻€變量(空氣流量、攪拌功率、底物流速率)上引入階躍和斜坡故障,并且還可以設置兩種故障的幅度、引入和結束時間[18-19]。

選取青霉素發酵過程的12個主要變量作為故障檢測變量,如表3所示。對前三個變量施加的故障類型和幅度如表4所示,其中f1為稀疏模態故障,f2-f6為密集模態故障。實驗時,采取仿真時間為400 h,采樣時間為1 h,各輸入參數全部采取Pensim平臺的默認值運行一次,產生一個批次(400×18)的正常數據作為訓練數據進行建模。

表3 青霉素變量類型

續表3

表4 故障類型

應用NPE、KNPE、KNN、MNPE四種算法依次進行仿真,NPE、KNPE、MNPE的重構近鄰數為6,KNN的近鄰數k=13,MNPE方法第一近鄰的k近鄰數為13。四種算法的故障檢測率如表5所示。由于過程分為兩個模態,且密度顯著不同,不服從多元高斯分布,所以NPE、KNPE方法檢測效率都較低。f3為大尺度故障,因此四種算法的故障檢測效率都很高。KNN方法能夠對一般多模態數據進行檢測,但當數據模態差異明顯時,控制限由稀疏模態確定,因此故障檢測能力較低,f2、f4、f5、f6為這類故障。f1的類型為稀疏模態的微弱故障,其到正常樣本的距離小于正常樣本之間距離,因此故障檢測效率比較低。使用MNPE算法,兩個模態融合成單一模態,消除了多模態特征,與其他三種算法相比,6組實驗MLNS-NPE故障檢測效率最高。

表5 故障檢測率 %

圖6中f4的故障類型為斜坡故障,故障剛引入時,故障樣本與正常樣本間差異很小,存在故障延遲現象,因此四種算法在故障引入初始時刻的故障檢測能力很弱,但所提出的MNPE方法的故障延遲最小,檢測效率也最高。

(a) NPE算法

4 結 語

本文提出一種基于改進LNS和鄰域保持嵌入的算法來提高NPE算法對方差差異明顯的多模態數據的故障檢測能力。MLNS方法可以使疏密程度不同的多模態數據變為單一模態,并近似服從多元高斯分布,從根本上消除多模態數據影響,為后續NPE算法的使用提供先決條件。利用NPE算法降維和特征提取,同時將高維局部信息保留。將二者結合應用在數值例子和青霉素生產過程中。與其他幾種算法相比,所提出的MLNS-NPE算法故障檢測率最高,驗證了該方法的可行性。

猜你喜歡
降維青霉素模態
聯合仿真在某車型LGF/PP尾門模態仿真上的應用
基于數據降維與聚類的車聯網數據分析應用
基于老年駕駛人的多模態集成式交互設計研究
“青霉素皮試”5誤區,你中招了么
降維打擊
細菌為何能“吃”青霉素
青霉素類獸藥在臨床上使用注意事項
模態可精確化方向的含糊性研究
青霉素的發明者—萊明
幾種降維算法的研究及應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合