耿 波,李青松,潘曙輝,董曉旭
(1.核動力運行研究所,湖北 武漢 430223;2.華中科技大學計算機科學與技術(shù)學院,湖北 武漢 430074;3.華北理工大學冶金與能源學院,河北 唐山 063210)
隨著現(xiàn)代技術(shù)的飛速發(fā)展,工業(yè)生產(chǎn)設(shè)備也正在走向高度機械化、自動化和智能化[1]。工業(yè)設(shè)備的高效生產(chǎn)和穩(wěn)定運行維持著社會的穩(wěn)定發(fā)展。為降低生產(chǎn)設(shè)備的維護成本、提高生產(chǎn)效率,有關(guān)生產(chǎn)設(shè)備異常檢測的研究顯得尤為重要。
生產(chǎn)設(shè)備是指企業(yè)或工廠中產(chǎn)生能源、物質(zhì)產(chǎn)品等的機械、儀器或裝置。例如,電能如今已成為人們工作、生活、娛樂的不可或缺的能源,然而當電廠的生產(chǎn)設(shè)備一旦發(fā)生異常或故障,極易帶來社會的損失和不便[2]。當機組設(shè)備發(fā)生異常時,若不及時處理,容易損壞,進而產(chǎn)生緊急成本和較長的維護時間,情況嚴重時傷亡事故也有可能發(fā)生[3]。直接來說,因生產(chǎn)設(shè)備故障造成工廠停機,會導致每小時產(chǎn)生上萬甚至十萬美元損失,甚至一天可能產(chǎn)生高達上百萬美元經(jīng)濟損失[4]。因此,盡可能在早期檢測出電廠生產(chǎn)設(shè)備的異常情況,給予工作人員排查和診斷的時間更有利于減少不必要的時間和經(jīng)濟損失。
生產(chǎn)設(shè)備的異常檢測是通過一系列傳感器件或智能感知設(shè)備,采集設(shè)備在運行狀態(tài)下的各項參數(shù),利用基于數(shù)據(jù)驅(qū)動的手段和數(shù)據(jù)分析方法,判斷設(shè)備當前是否處于異常狀態(tài)。近數(shù)十年來,出現(xiàn)了很多的異常檢測技術(shù)。其中,針對研究領(lǐng)域的不同可分為專業(yè)領(lǐng)域和普通情景兩類;基于在訓練數(shù)據(jù)時是否帶有標簽信息,又分為無監(jiān)督、半監(jiān)督和有監(jiān)督3類。現(xiàn)有的異常檢測技術(shù)龐雜,而現(xiàn)實應(yīng)用中無監(jiān)督情況較多[5],故無監(jiān)督的異常檢測技術(shù)的研究更具現(xiàn)實意義。異常檢測技術(shù)的廣泛應(yīng)用推進了它的方法優(yōu)化[6-8]。
目前的無監(jiān)督傳統(tǒng)異常檢測技術(shù)分為以下四類:1)基 于 相 似 性 度 量,如K 近 鄰 算 法(K-Nearest Neighbor,KNN)[9]、局部異常因子算法(Local Outlier Factor,LOF)[10]等;2)基于聚類,如基于K-means 算法[11],基于DBSCAN算法[12],基于高斯混合模型[13]等;3)基于降維,主要是使用合適的方法最大程度地保留原始數(shù)據(jù)的關(guān)鍵信息。此類方法包括主成分分析(Principal Component Analysis,PCA)[14]以及基于它的改進算法。4)基于分類,即構(gòu)造出異常檢測的分類器,此類方法通常包括了一類支持向量機(One-Class Support Victor Machine,OCSVM)[15],孤 立 森 林(Isolation Forest,iForest)[16]等。目前,深度學習在學習高維數(shù)據(jù)、時序數(shù)據(jù)和圖片視頻等復(fù)雜數(shù)據(jù)的特征表達上展現(xiàn)出了強大的能力。深度異常檢測(Deep Anomaly Detection,DAD)是通過神經(jīng)網(wǎng)絡(luò)來學習特征表示以便進行異常檢測的方法[17],近幾年,已出現(xiàn)的深度異常檢測技術(shù)、方法、模型有很多,如RandNet[18]、AE-1SVM[19],在處理各種實際使用中存在挑戰(zhàn)的異常檢測問題方面,表現(xiàn)出比傳統(tǒng)異常檢測明顯更好的檢測效果。
高斯混合模型(GMM)是工業(yè)界內(nèi)使用最廣泛的異常檢測技術(shù)之一。深度自編碼高斯混合模型(DAGMM)[20]是基于高斯混合模型改造的深度異常檢測技術(shù),由一個壓縮網(wǎng)絡(luò)和一個估計網(wǎng)絡(luò)構(gòu)成,并且可以進行端到端的訓練,克服了之前部分模型無法在低維空間中保存信息的問題。但DAGMM 仍面臨著GMM 的低維需求和保留高維結(jié)構(gòu)需求之間選擇的兩難境地。
本文針對深度自編碼高斯混合模型存在的異常檢測問題進行改進。首先針對DAGMM,利用UMAP 算法原理將其改造成一個降維網(wǎng)絡(luò),通過在原有損失函數(shù)上增加交叉熵的方式將高維數(shù)據(jù)分布信息補充進去,得到基于均勻流形近似與投影增強的深度自編碼高斯混合模型UMAP-DAGMM,再結(jié)合自組織映射網(wǎng)絡(luò)依靠競爭學習的特性,最終得到自組織映射輔助的增強型深度自編碼高斯混合模型SOM-UMAPDAGMM。
深度自編碼高斯混合模型由于其壓縮網(wǎng)絡(luò)采用的深度自編碼器僅僅是一個基礎(chǔ)的結(jié)構(gòu),主要目的是用于壓縮滿足后續(xù)密度估計的低維需求,所以幾乎不能保留原始數(shù)據(jù)分布和空間拓撲這些高維信息。均勻流形近似與投影(Uniform Manifold Approximation and Projection,UMAP)[21],是一種新的降維可視化技術(shù),由于其是非線性的,可以更好地保留高維空間的全局和局部信息。自組織映射(Self Organizing Map,SOM)[22]方法可以保留輸入空間的拓撲結(jié)構(gòu)。因此本文提出自組織映射輔助的增強型深度自編碼高斯混合模型(Self-Organizing Map assisted Deep Autoencoding Gaussian Mixture Mode with Uniform Manifold Approximation and Projection,SOMUMAP-DAGMM),通過將UMAP算法改為降維網(wǎng)絡(luò)融合進DAGMM中,并借助預(yù)訓練的SOM,以補充高維數(shù)據(jù)分布信息以及空間拓撲結(jié)構(gòu)信息。
由于UMAP算法是以交叉熵為損失函數(shù),利用梯度下降進行迭代更新,嘗試通過將UMAP算法修改為降維網(wǎng)絡(luò),通過新增的交叉熵損失函數(shù)來增強低維表示中的高維數(shù)據(jù)結(jié)構(gòu)信息,提出基于均勻流形近似與投影改進的模型(Deep Autoencoding Gaussian Mixture Model with Uniform Manifold Approximation and Projection,UMAPDAGMM)。
1.1.1 UMAP-DAGMM網(wǎng)絡(luò)結(jié)構(gòu)
UMAP-DAGMM 的網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示,壓縮網(wǎng)絡(luò)保持與原來DAGMM 中不變,UMAP 網(wǎng)絡(luò)是由全連接層組成,輸出特征向量、重構(gòu)誤差和深度編碼器壓縮特征共同組成估計網(wǎng)絡(luò)的輸入特征向量。估計網(wǎng)絡(luò)結(jié)構(gòu)也保持原網(wǎng)絡(luò)結(jié)構(gòu)不變。其中UMAP網(wǎng)絡(luò)使用歐式距離作為度量計算高維分布,利用神經(jīng)網(wǎng)絡(luò)的隨機正態(tài)初始化來代替原本UMAP 低維坐標初始化方法,并利用一些神經(jīng)網(wǎng)絡(luò)中調(diào)參技巧來解決欠擬合和過擬合問題。

圖1 UMAP-DAGMM結(jié)構(gòu)示意圖Fig.1 Schematic diagram of UMAP-DAGMM structure
UMAP-DAGMM 的工作原理如下:1)壓縮網(wǎng)絡(luò)使用深度自編碼網(wǎng)絡(luò),對訓練樣本降維;2)UMAP改編而成的網(wǎng)絡(luò)對訓練樣本降維補充高維信息;3)估計網(wǎng)絡(luò)在GMM框架下預(yù)測樣本的能量。進行異常檢測時,樣本能量超過設(shè)定閾值則為異常,運用異常檢測評價指標對模型性能進行分析。
1.1.2 UMAP-DAGMM損失函數(shù)UMAP-DAGMM的完整損失函數(shù)如公式(1)所示。
式(1)中,等式左側(cè)中,θu、θc、θd、θm分別為UMAP 網(wǎng)絡(luò)、編碼網(wǎng)絡(luò)、解碼網(wǎng)絡(luò)、估計網(wǎng)絡(luò)的參數(shù)。
式(1)等式右側(cè)中,N為樣本數(shù)量,λ0、λ1、λ2為3個超參,分別設(shè)為1、0.1和0.005。
UMAP網(wǎng)絡(luò)使用交叉熵。由于梯度下降算法與梯度有關(guān),為了加快運算速度,忽略包含原始分布P的常數(shù)項,對交叉熵公式優(yōu)化如式(2)所示。
式(2)中,P為原始數(shù)據(jù)高維空間數(shù)據(jù)分布;Q為UMAP降維后的數(shù)據(jù)分布。由此可得,簡化后交叉熵如式(3)所示。
壓縮網(wǎng)絡(luò)的重構(gòu)誤差同自編碼器,計算公式如式(4)所示。
估計網(wǎng)絡(luò)的樣本能量(energy)損失利用GMM 的概率密度函數(shù),盡可能使樣本的概率密度更大,密度估計的輸入z由壓縮網(wǎng)絡(luò)的瓶頸層與重構(gòu)誤差構(gòu)成,估計網(wǎng)絡(luò)的樣本能量損失函數(shù)如式(5)所示。
為防止估計網(wǎng)絡(luò)計算時協(xié)方差矩陣的對角線變?yōu)? 最終導致矩陣不可逆,加入以下正則項如式(6)所示。
式(6)中,d表示低維壓縮特征的維數(shù),Σ?kj表示第k個高斯分量的協(xié)方差矩陣中第j個對角元素。
為了進一步優(yōu)化UMAP-DAGMM,不同于UMAPDAGMM 僅利用一種降維方法,SOM-UMAP-DAGMM同時利用UMAP 和SOM 來補充原始數(shù)據(jù)的不同高維信息,以此改善在實際生產(chǎn)設(shè)備上DAGMM 的性能不足問題。
自組織映射(Self Organizing Map,SOM)是一種基于競爭性學習的無監(jiān)督降維可視化算法,它使用人工映射神經(jīng)網(wǎng)絡(luò)將訓練樣本離散化到低維(通常是二維)空間,因此該技術(shù)廣泛應(yīng)用于數(shù)據(jù)分析或數(shù)據(jù)可視化等[23]。SOM 與使用反向傳播訓練的一般神經(jīng)網(wǎng)絡(luò)不同,它采用競爭學習的策略,依靠神經(jīng)元之間互相競爭逐步優(yōu)化網(wǎng)絡(luò)。SOM強調(diào)生成一個低維、離散的映射空間,并具有輸入空間的拓撲結(jié)構(gòu),故而訓練過程中采用近鄰關(guān)系函數(shù)來維持輸入空間的拓撲結(jié)構(gòu)。因此,SOM 可作為一個獨立的分支,作為輔助工具,獲取低維平面上反映原始數(shù)據(jù)的空間拓撲關(guān)系的數(shù)據(jù)。
1.2.1 SOM-UMAP-DAGMM網(wǎng)絡(luò)結(jié)構(gòu)
如圖2所示,展示了SOM-UMAP-DAGMM 的總體層次結(jié)構(gòu),該圖在UMAP-DAGMM 的基礎(chǔ)上增加了SOM預(yù)訓練輔助。如前所述,通過SOM強大的保持空間拓撲能力進一步加強模型性能。

圖2 SOM-UMAP-DAGMM網(wǎng)絡(luò)結(jié)構(gòu)示意圖Fig.2 Schematic diagram of SOM-UMAP-DAGMM network structure
具體來說,采用分階段訓練方法[24-32]解決梯度下降與無梯度競爭學習之間的沖突。給定原始特征x作為輸入,第一階段首先訓練SOM以生成低維表示zs;第二階段進行UMAP-DAGMM訓練,UMAP用x生成的低維空間為zu,深度自編碼器用x生成的低維碼zc,并用x和x'計算重構(gòu)誤差zr。低維表示定義如式(7)所示。
另外,SOM 及其對應(yīng)的編碼zs在第二階段訓練時保持不變;損失函數(shù)與UMAP-DAGMM相同;決策函數(shù)使用樣本能量,如式(8)所示。
1.2.2 SOM-UMAP-DAGMM訓練策略
如圖3 所示,SOM-UMAP-DAGMM 的訓練過程包括:1)依賴于無梯度的競爭學習規(guī)則的SOM 子過程;2)依賴于梯度的UMAP-DAGMM子過程。

圖3 SOM-UMAP-DAGMM訓練示意圖Fig.3 Schematic diagram of SOM-UMAP-DAGMM training
具體來說,將數(shù)據(jù)集分成訓練集和測試集。鑒于此模型為無監(jiān)督的,訓練集無需標簽,而測試集則保留標簽用于性能評價。訓練數(shù)據(jù)先對依賴競爭學習的特殊神經(jīng)網(wǎng)絡(luò)SOM 進行訓練,訓練結(jié)束后將訓練好的SOM 保存下來。經(jīng)過訓練的SOM 和由此獲得的zs在后續(xù)UMAP-DAGMM訓練期間不參與更新。之后利用神經(jīng)網(wǎng)絡(luò)的反向傳播完成梯度下降的迭代更新。
SOM-UMAP-DAGMM 繼 承了SOM-DAGMM 核心思路和訓練流程,通過預(yù)訓練SOM,更好地完整保留高維空間拓撲信息,從原來的網(wǎng)絡(luò)入侵數(shù)據(jù)集來看,這種做法確實能有效提升模型的性能和穩(wěn)定性。
為了更加清晰地理解整個算法流程,詳細給出SOM-UMAP-DAGMM的偽代碼如圖4所示。

圖4 算法的過程描述Fig.4 Process description of Algorithml
本文中實驗所采用的數(shù)據(jù)集分為公開數(shù)據(jù)集和國內(nèi)某電廠生產(chǎn)設(shè)備數(shù)據(jù)集兩部分。公開數(shù)據(jù)集是采用異常檢測常用的數(shù)據(jù)集Arrhythmia 和Thyroid,如表1所示。Arrhythmia 是心律失常數(shù)據(jù)集,用于區(qū)分是否存在心律失常并分類;Thyroid 是甲狀腺數(shù)據(jù)集,根據(jù)甲狀腺的存在和缺失分布定義為正常和異常。

表1 公開數(shù)據(jù)集Table 1 Public dataset
生產(chǎn)設(shè)備數(shù)據(jù)集來自于國內(nèi)某火電廠,為生產(chǎn)設(shè)備運行時傳感器每分鐘回傳的參數(shù),數(shù)據(jù)共3組,分別來自3 個不同的生產(chǎn)設(shè)備,高壓加熱器(JRQ)、一次風機(FAN)、凝泵電機(NJSB),如表2所示。異常數(shù)據(jù)經(jīng)過人工標記(標記可能存在少量誤差),特征維數(shù)中包含標簽。

表2 國內(nèi)某電廠生產(chǎn)設(shè)備數(shù)據(jù)集Table 2 Dataset of production equipment of a domestic power plant
異常檢測的數(shù)據(jù)集一般都是不平衡數(shù)據(jù)集,因此不能簡單地使用二分類的準確率去評價算法的好壞,對于更加注重異常的這些模型而言評價指標更為復(fù)雜。
對于異常檢測模型,預(yù)測為真真實為真為真陽數(shù)(TP),預(yù)測為真真實為假為假陽數(shù)(FP),預(yù)測為假真實為真為假陰數(shù)(FN),預(yù)測為假真實為假為真陰數(shù)(TN)。
則準確率如式(9)所示:
精確率如式(10)所示
召回率如式(11)所示
計算F1Score如式(12)所示
F1Score是精度與召回率權(quán)衡的指標,能更好地直接評價異常檢測模型的好壞。對于生產(chǎn)設(shè)備而言,精度過低會導致誤報加重維修人員排查工作量,召回率過低會產(chǎn)生漏報導致設(shè)備無法盡早維護產(chǎn)生損失。故而在召回率不差的情況下,精度較高才是符合實際情況的。
在公開數(shù)據(jù)集Arrhythmia 中,UMAP 網(wǎng)絡(luò)、壓縮網(wǎng)絡(luò)、估計網(wǎng)絡(luò)參數(shù)設(shè)置如下:
FC(274,64,tanh)→Dropout(0.5)→FC(64,32,tanh)→Dropout(0.5)→FC(32,2,tanh);
FC(274,10,tanh)→ FC(10,2,none)→FC(2,10,tanh)→FC(10,274,none);
FC(6,10,tanh)→Dropout(0.5)→FC(10,2,softmax)。
在公開數(shù)據(jù)集Thyroid 中,UMAP 網(wǎng)絡(luò)、壓縮網(wǎng)絡(luò)、估計網(wǎng)絡(luò)參數(shù)設(shè)置如下:
FC(6,10,tanh)→Dropout(0.5)→FC(10,5,tanh)→Dropout(0.5)→FC(5,2,tanh);
FC(6,12,tanh)→FC(12,4,tanh)→FC(4,1,none)→FC(1,4,tanh)→FC(4,12,tanh)→FC(12,6,none);
FC(5,10,tanh)→Dropout(0.5)→FC(10,2,softmax)。
其中,F(xiàn)C 指全連接層,數(shù)字表示全連接的節(jié)點數(shù)量;Dropout 表示按照概率將神經(jīng)元在訓練時丟失;tanh、softmax表示對應(yīng)的激活函數(shù);none表示該層無激活函數(shù)。
對于生成設(shè)備的數(shù)據(jù)集,實際參數(shù)可能包括溫度、壓強、氣流等特征參數(shù),這些參數(shù)的量綱存在很大的差別,因此在傳入網(wǎng)絡(luò)之前先使用Z-Score 方法進行預(yù)處理。
對于深度自編碼高斯混合模型,針對數(shù)據(jù)集的維度和大小,設(shè)置參數(shù)如表3所示。

表3 DAGMM默認超參數(shù)設(shè)置Table 3 Default hyperparameter setting in the DAGMM
UMAP 算法有兩個重要的超參數(shù):min_dist 和n_neighbor,用于調(diào)節(jié)最后投影中全局與局部結(jié)構(gòu)間的平衡。其中,min_dist 即在低維空間中點之間的最小距離,用于控制低維點聚集的密集程度,低值緊密,高值松散;n_neighbor 即初始高維空間近似最近鄰居點的數(shù)量,用于控制局部細節(jié)與全局結(jié)構(gòu)平衡。不同的參數(shù)取值對UMAP-DAGMM 模型性能有一定的影響,在實驗中對于兩個公開數(shù)據(jù)集以及四個生產(chǎn)數(shù)據(jù)集,UMAP的超參數(shù)取值如表4所示。

表4 UMAP-DAGMM超參數(shù)設(shè)置Table 4 Hyparameter setting in the UMAP-DAGMM
SOM 可以通過調(diào)整初始學習率(η_SOM)和領(lǐng)域函數(shù)(f_neighborhood)來提高性能。SOM-UMAPDAGMM中SOM的參數(shù)設(shè)置如表5所示。

表5 SOM-UMAP-DAGMM超參數(shù)設(shè)置Table 5 Hyparameter setting in SOM-UMAP-DAGMM
按照以上2.3 節(jié)的超參數(shù)設(shè)置,在公開數(shù)據(jù)集Arrhythmia 上 ,DAGMM、UMAP-DAGMM、SOMUMAP-DAGMM模型的實驗結(jié)果如表6所示。

表6 Arrhythmia數(shù)據(jù)集實驗結(jié)果Table 6 Dataset experimental results of Arrhythmia
在公開數(shù)據(jù)集Thyroid 上、DAGMM、UMAPDAGMM,SOM-UMAP-DAGMM 模型的實驗結(jié)果如表7所示。

表7 Thyroid數(shù)據(jù)集實驗結(jié)果Table 7 Dataset experimental results of Thyroid
在生產(chǎn)數(shù)據(jù)集JRQ 上,DAGMM、UMAP-DAGMM、SOM-UMAP-DAGMM模型效果如表8所示。

表8 JRQ數(shù)據(jù)集實驗結(jié)果Table 8 Dataset experimental results of JRQ
在生產(chǎn)數(shù)據(jù)集FAN上,DAGMM、UMAP-DAGMM、SOM-UMAP-DAGMM模型效果如表9所示。

表9 FAN數(shù)據(jù)集實驗結(jié)果Table 9 Dataset experimental results of FAN
在生產(chǎn)數(shù)據(jù)集NJSB上,DAGMM、UMAP-DAGMM、SOM-UMAP-DAGMM模型效果如表10所示。

表10 NJSB數(shù)據(jù)集實驗結(jié)果Table 10 Dataset experimental results of NJSB
從以上實驗結(jié)果表中,可以看出在Arrhythmia 數(shù)據(jù)集上,UMAP-DAGMM的F1Score比DAGMM提高了0.131 7。在Thyroid 數(shù)據(jù)集上,UMAP-DAGMM 的F1Score比DAGMM提高了0.17。在3個生產(chǎn)數(shù)據(jù)集JRQ、FAN、NJSB 上,UMAP-DAGMM 的F1Score分 別 比DAGMM 提升了0.022 7、0.024 2、0.113 3;這也證實了UMAP 網(wǎng)絡(luò)的加入確實能增加低維表示的高維信息,從而提高DAGMM的性能。
在3 個生產(chǎn)數(shù)據(jù)集JRQ、FAN、NJSB 上,SOMUMAP-DAGMM分別比DAGMM提升了0.146、0.038 4、0.242 4;比UMAP-DAGMM 提高了0.123 3、0.014 2、0.129 1。
同時SOM-UMAP-DAGMM 的性能在2 個公開數(shù)據(jù)集和3 個生產(chǎn)數(shù)據(jù)集中都是最好的,證明了SOM 強大的空間拓撲保存能力可以在UMAP-DAGMM的基礎(chǔ)上進一步提升效果。
本文針對在生產(chǎn)設(shè)備數(shù)據(jù)集上,針對DAGMM 高維信息不足導致性能欠佳問題,提出UMAP-DAGMM,通過在原來的損失函數(shù)上新增交叉熵與DAGMM聯(lián)合訓練,在維持端到端的訓練模式下,補充了低維表達中的高維數(shù)據(jù)分布信息。為了進一步提升效果,提出SOM-UMAP-DAGMM,通過預(yù)訓練SOM,再訓練UMAP-DAGMM,繼續(xù)補充空間拓撲信息。經(jīng)過調(diào)參實驗設(shè)置較優(yōu)的參數(shù)后,UMAP-DAGMM 較DAGMM有所提升,SOM-UMAP-DAGMM性能最優(yōu)。