摘要:隨著電廠智能化的升級改造,生產(chǎn)系統(tǒng)產(chǎn)生了大量的時序數(shù)據(jù)。然而,在數(shù)據(jù)采集、傳輸和存儲等過程中,海量時序數(shù)據(jù)可能會出現(xiàn)異常,影響企業(yè)的后續(xù)分析和決策。針對電廠時序數(shù)據(jù)中常見的異常問題,受自注意機制的啟發(fā),文章設計了一種基于循環(huán)卷積和長短期記憶網(wǎng)絡的體系結(jié)構,用于識別和檢測多維度電力時序數(shù)據(jù)的異常。在基于電廠實際運行中產(chǎn)生的時序數(shù)據(jù)集進行的大量實驗中,驗證了ConvLSTM網(wǎng)絡在電力時序數(shù)據(jù)異常檢測方面的有效性和準確性。
關鍵詞:時序數(shù)據(jù);數(shù)據(jù)異常;注意力機制
中圖分類號:TP391 文獻標識碼:A
文章編號:1009-3044(2024)24-0040-03
開放科學(資源服務)標識碼(OSID)
0 引言
近年來,隨著電廠智能化改造升級,工業(yè)生產(chǎn)過程中產(chǎn)生了大量時間序列數(shù)據(jù)。這些時序數(shù)據(jù)主要用于監(jiān)控機器設備運行狀態(tài)。異常檢測是時間序列分析的重要任務之一,它可以發(fā)現(xiàn)機器運行過程中的故障缺陷,防止?jié)撛谖:Α?/p>
目前,國內(nèi)外學者針對時序異常數(shù)據(jù)檢測方法,主要分為傳統(tǒng)的基于統(tǒng)計方法和基于深度學習的方法。傳統(tǒng)方法通常假設數(shù)據(jù)服從特定分布,但實際的電力時序數(shù)據(jù)往往具有復雜的非線性結(jié)構和時序依賴性。因此,基于傳統(tǒng)統(tǒng)計方法無法準確捕捉電力時序數(shù)據(jù)中的異常,異常檢測模型在處理電力時序數(shù)據(jù)時存在一些局限性。隨著深度學習的發(fā)展,基于深度學習的方法被應用到時序數(shù)據(jù)異常檢測工作中。例如,Hundman等[1]采用RNN循環(huán)神經(jīng)網(wǎng)絡來處理多變量時序數(shù)據(jù)。Vaswani等[2]嘗試采用圖表或Transformer架構來關注變量和數(shù)據(jù)點之間的關系,這些方法考慮了數(shù)據(jù)的時間特性,成功地將深度神經(jīng)網(wǎng)絡應用于時間序列分析領域。然而,大多數(shù)數(shù)據(jù)集并未為該領域的訓練集提供真實數(shù)據(jù)標簽。換言之,一個點在訓練集中是否異常是未知的。因此,以往研究已經(jīng)發(fā)展出了用于異常檢測的無監(jiān)督學習方法。Goodfellow等[3]在其模型中引入了自動編碼器或?qū)咕W(wǎng)絡,以有效理解數(shù)據(jù)分布。國內(nèi),沙朝鋒等[4]設計了基于長短期記憶網(wǎng)絡的電力時間序列數(shù)據(jù)異常檢測方法。張仁斌等[5]提出了一種基于多模態(tài)生成對抗網(wǎng)絡的多元時序數(shù)據(jù)異常檢測方法并進行了驗證。Yang等[6]提出了一種自適應的時序數(shù)據(jù)恢復方法,王子馨等[7]提出了一種基于LSTM的電力時序數(shù)據(jù)恢復方法,并驗證了算法的有效性。然而,在無監(jiān)督情況下,從時間背景中檢測異常仍然是一個困難的問題。
正常情況下,火電廠多傳感器之間相互影響,呈現(xiàn)某種特定形式的關聯(lián)性。因此,在某一時刻發(fā)生異常時,必然會導致某些傳感器發(fā)生突變(有些可能不變),這種異??赡軙憩F(xiàn)在不同傳感器之間的關系上。而當前現(xiàn)有方案多數(shù)針對單傳感器、單時刻點的數(shù)據(jù)異常,未考慮多傳感器數(shù)據(jù)相關性和時間關聯(lián)性。同時,由于火電機組數(shù)據(jù)量較大,通常數(shù)據(jù)缺少異常標記。因此,缺乏一種在數(shù)據(jù)未標記、無監(jiān)督情況下,針對不同工況的多變量時間序列數(shù)據(jù)異常判斷算法模型。
為解決這個問題,本文提出了一種基于ConvLSTM網(wǎng)絡的電力時序數(shù)據(jù)異常檢測模型。ConvLSTM是一種結(jié)合了卷積神經(jīng)網(wǎng)絡和長短期記憶網(wǎng)絡的模型,能夠在無監(jiān)督情況下對火電廠多變量時間序列數(shù)據(jù)異常進行判斷識別,從而實現(xiàn)無監(jiān)督情況下的多變量時間序列數(shù)據(jù)異常檢測。通過仿真實驗證明了該模型的有效性和準確性。
1機組工況
本文提出了一種基于ConvLSTM網(wǎng)絡的電力時序數(shù)據(jù)異常檢測模型。ConvLSTM是一種結(jié)合了卷積神經(jīng)網(wǎng)絡和長短期記憶網(wǎng)絡的模型,能夠捕捉時序數(shù)據(jù)中的時序依賴關系。ConvLSTM網(wǎng)絡與傳統(tǒng)方法的不同之處在于,傳統(tǒng)方法僅考慮單變量(傳感器)的時序異常檢測(單變量檢測偏離正常分布的情況)。而本文提出的方法引入了多傳感器之間的相關性概念,通過相關性來進行異常檢測。同時,為了保留數(shù)據(jù)的時序特征,我們計算某一時刻多個傳感器之間的相似度,并引入該時刻點之前的某段時間,計算這段時間的相似程度。結(jié)合來自火電機組傳感器采集到的負荷、環(huán)境溫度、主蒸汽溫度、主蒸汽壓力、排煙溫度、氧量、再熱蒸汽溫度、給水溫度、背壓等時序傳感數(shù)據(jù),驗證了模型的有效性。
由于電廠機組存在不同的工況穩(wěn)態(tài)和動態(tài),因此量測數(shù)據(jù)可能處于系統(tǒng)不同的運行狀態(tài)下。不同狀態(tài)下的數(shù)據(jù)時序特性不同,所需ConvLSTM網(wǎng)絡模型參數(shù)也不同。因此,針對不同工況構建不同的ConvLSTM網(wǎng)絡,但構建方法與原理相同。其數(shù)據(jù)如圖1所示。
2 ConvLSTM網(wǎng)絡
以機組穩(wěn)態(tài)為例,定義傳感器i和j時間步長為w的時間序列分別為[xwi=(xt-wi,xt-w-1i,...,xti)] [xwj=(xt-wj,xt-w-1j,...,xtj)] ,則相似度矩陣可定義為: [mtij=δ=0w xt-δixt-δjκ] ,其中k是縮放因子k=w。使用一個全卷積編碼器來編碼多傳感器間的相似度矩陣Mt。具體過程為:首先,將Mt展開為張量[Xt,l∈Rn×n×s]將其作為輸入傳入卷積層。經(jīng)過多層卷積,則當前層的輸出可用公式表示為:[Xt,l=f(Wl*Xt,l-1+bl)],其中*表示卷積操作,f表示激活函數(shù)(本模型采用SELU作為激活函數(shù)),[Wl]表示卷積核。步長為1×1、2×2、2×2、2×2進行4次卷積操作,將原有的30個傳感器數(shù)據(jù)結(jié)構為30×30×3(其中3表示不同時間步長)的原始輸入變?yōu)樾碌模?×4×256)結(jié)構。
ConvLSTM網(wǎng)絡主要包含如下3個模塊:輸入、記憶、 輸出,網(wǎng)絡結(jié)構[8-9],如圖2所示。
其公式可表示為:
[zt,l=σ(WlXZ*Xt,l+WlHZ*Ht-1,l+WkCZ°Ct-1,l+blZ) (1)]
[rt,l=σ(WlXR*Xt,l+WlHR*Ht-1,l+WlCR°Ct-1,l+blR) (2)]
[Ct,l=zt,l°tanh (WlXC*Xt,l+WlHC*Ht-1,l+blC)+rt,l°Ct-1,l (3)]
[ot,l=σ(WlXO*Xt,l+WHO*Ht-1,l+WCO°Ct,l+blO) (4)]
[Ht,l=ot,l°tanh (Ct,l) (5)]
式中:[zt,l]為輸入門,[rt,l]為遺忘門,[ot,l]為輸出門,其中[Ht,l]為主線隱藏特征輸出, *表示卷積操作,[σ]為sigmoid 函數(shù)運算,[°]為Hadamard乘積。
本文采用注意力機制的ConvLSTM網(wǎng)絡結(jié)構,如圖3所示:
引入注意力機制,對每個時刻和該時刻前5個時刻點計算注意力權重系數(shù),其公式如下:
[Ht,l=i∈(t-h,t) αiHi,l,αi=exp {Vec(Ht,l)TVec(Hi,l)χ}i∈(t-h,t) exp {Vec(Hi,l)TVec(Hi,l)χ}] (6)
為了對上一步得到的特征映射進行解碼,得到重構后的特征矩陣,設計了一個卷積解碼器,其表達式為:
[χt,l-1={f(Wt,l?Ht,l+bt,l),l=4f(Wt,l?[Ht,l⊕Xt,l]+bt,l),l=3,2,1 ] (7)
其編碼解碼過程和計算損失函數(shù)的過程如圖 4 所示。
定義如下的損失函數(shù):
[L=t c=1s Xt,0:,:,c-Xt,0:,:,c2F] (8)
其中,[Xt,0:,:,c∈ Rn×n ],采用小批量隨機梯度下降法和Adam優(yōu)化器來最小化上述損失。在足夠的訓練時間后,利用學習到的神經(jīng)網(wǎng)絡參數(shù)來推斷驗證和測試數(shù)據(jù)的重構特征矩陣。最后,基于殘差特征矩陣進行異常檢測和診斷。
3 仿真數(shù)據(jù)測試
實驗數(shù)據(jù)分析處理的機器環(huán)境:CPU為Core i7-9700k,主頻為3.6 GHz,內(nèi)存為32 GB,GPU為NVIDIA GTX 2080TI,編程平臺為Python 3.8。選擇某電廠機組的數(shù)據(jù):負荷、環(huán)境溫度、主蒸汽溫度、主蒸汽壓力、排煙溫度、氧量、再熱蒸汽溫度、給水溫度、背壓、煤耗等各3組,采集周期為60 s。穩(wěn)態(tài)共20 000組數(shù)據(jù)(已標記工況)。將0~8 000設置為訓練集,8 001~10 000設置為驗證集,10 001~20 000設置為測試集,測試集中包含10組異常值。動態(tài)共2000組數(shù)據(jù)(已標記工況)。將0~800設置為訓練集,801~1 000設置為驗證集,1 001~2 000設置為測試集,測試集包含10組異常值。
在不同工況下,為了驗證本文所提方法的有效性,基于數(shù)據(jù)集的時間序列特性,引入時間序列模型算法作為對比試驗,分別是傳統(tǒng)的ARMA算法模型、基于深度學習的LSTM-ED算法[10]模型和本文所提出的注意力機制的ConvLSTM網(wǎng)絡模型。其對比試驗結(jié)果見表1:
由于電廠兩種工況均為連續(xù)時間序列,因此在完成工況識別后,可分為穩(wěn)態(tài)和動態(tài)兩種情況分別計算不同算法的準確率和召回率。從表1可以看出,在動態(tài)和穩(wěn)態(tài)兩種情況下LSTM-ED的性能均優(yōu)于ARMA,表明深度學習模型比傳統(tǒng)方法更能捕獲電廠數(shù)據(jù)中的復雜關系。注意力機制的ConvLSTM算法在所有算法中表現(xiàn)最好,因為它可以有效地模擬多變量時間序列的傳感器間相關性和時序性。本文所提出的注意力機制的ConvLSTM算法,在機組穩(wěn)態(tài)、動態(tài)的準確率分別為0.90和0.85,召回率為0.83和0.80,均優(yōu)于傳統(tǒng)的ARMA算法和LSTM-ED,結(jié)果表明了模型的有效性。
4 結(jié)束語
本文提出了一種新的電力時序數(shù)據(jù)異常檢測方法——基于ConvLSTM網(wǎng)絡的電力時序數(shù)據(jù)異常檢測模型。該模型針對電廠不同工況,考慮到多傳感器數(shù)據(jù)相關性和時間關聯(lián)性,采用基于注意力機制的ConvLSTM網(wǎng)絡在無監(jiān)督情況下實現(xiàn)了對多傳感器數(shù)據(jù)的異常檢測。通過仿真實驗在指定電廠的數(shù)據(jù)集上完成了算法模型的驗證,實驗證明了我們提出方法的有效性。本文對于異常值閾值的選擇更多還是依賴于經(jīng)驗值。因此,未來可以在閾值的選擇上進行深入研究,這將是下一步研究工作的重點。
參考文獻:
[1] HUNDMAN K,CONSTANTINOU V,LAPORTE C,et al.Detecting spacecraft anomalies using LSTMs and nonparametric dynamic thresholding[C]//Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining.London United Kingdom.ACM,2018:387-395.
[2] VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need[C]//Advances in Neural Information Processing Systems,2017:30.
[3] GOODFELLOW I, POUGET-ABADIE J, MIRZA M, et al. Generative adversarial nets[C]//Advances in Neural Information Processing Systems,2014:27.
[4] 沙朝鋒,耿同欣,鄭偉杰.基于長短期記憶網(wǎng)絡的電力時間序列數(shù)據(jù)的異常檢測方法:CN112308402B[P].2022-04-12.
[5] 張仁斌,左藝聰,周澤林,等.基于多模態(tài)生成對抗網(wǎng)絡的多元時序數(shù)據(jù)異常檢測[J].計算機科學,2023,50(5):355-362.
[6] YANG Z W,LIU H,BI T S,et al.An adaptive PMU missing data recovery method[J].International Journal of Electrical Power & Energy Systems,2020,116:105577.
[7] 王子馨,胡俊杰,劉寶柱.基于長短期記憶網(wǎng)絡的電力系統(tǒng)量測缺失數(shù)據(jù)恢復方法[J].電力建設,2021,42(5):1-8.
[8] 金枝,張倩,李熙瑩.基于輕量化ConvLSTM的密集道路車輛檢測算法[J].計算機工程與應用,2023,59(8):89-96.
[9] 何毅,姚圣,陳毅等.ConvLSTM神經(jīng)網(wǎng)絡的時序InSAR地面沉降時空預測[J/OL].武漢大學學報(信息科學版),2023:1-21[2023-07-24].https://doi.org/10.13203/j.whugis20220657.
[10] CHO K,VAN MERRIENBOER B,GULCEHRE C,et al.Learning phrase representations using RNN encoder-decoder for statistical machine translation[EB/OL].[2024-01-20].https://arxiv.org/abs/1406.1078v3.
【通聯(lián)編輯:唐一東】