









摘" 要:為提高發電機組設備運行維護管理水平,提出一種基于PCA-Informer方法的發電設備故障預測技術。首先使用主成分分析(PCA)算法降低時間序列數據的特征維度;其次將數據分批次輸入Encoder中,由Encoder執行蒸餾操作,提取長時間序列輸入間的Long-Range依賴,通過蒸餾操作為重要特征賦予更高的權重,并在下一層生成聚焦的Self-Attention Feature Map;最后由Decoder通過一個正向過程一步生成長序列輸出。通過實驗驗證,該方法能夠有效地對發電設備的故障進行預測。
關鍵詞:發電機設備;主成分分析;Informer;故障預測
中圖分類號:TP391;TP183 文獻標識碼:A 文章編號:2096-4706(2024)12-0121-04
Abnormal Analysis of Generator Equipment Based on Time Series
LU Zhao, LONG Faning, CHEN Guonian
(Yulin Normal University, Yulin" 537000, China)
Abstract: To improve the level of maintenance and management of power generation equipment operation, a fault prediction technology for power generation equipment based on PCA-Informer method is proposed. Firstly, it uses Principal Component Analysis (PCA) algorithm to reduce the feature dimension of time series data. Secondly, the data is inputted into the Encoder in batches, and the Encoder performs distillation operations to extract Long-Range dependencies between long time series inputs. The important features are given higher weights through distillation operation, and a focused Self-Attention Feature Map is generated in the next layer. Finally, the Decoder generates a long sequence output by one-step reaction through a forward process. Experimental results show this method can effectively predict the faults of power generation equipment.
Keywords: generator equipment; PCA; Informer; fault prediction
0" 引" 言
由于能源的需求不斷增加,我國持續推動風力、光伏發電場的建設。這些發電場一般位于相對較偏僻的平原、山頂或者海上,不利于對發電機組設備實施運行監測和故障維修。為提高發電機組設備運行維護管理水平,采用智能系統成為故障診斷研究領域的一個重要發展方向和必然趨勢[1]。例如,張李煒等提出了基于Apriori算法和卷積神經網絡的風電機組故障診斷模型[2],周凌等進行了基于FISSA-DBN模型的風電機組運行狀態監測研究[3];劉志剛等進行了基于小波包-神經網絡的電廠發電機組故障診斷研究[4];朱小超提出了基于聚類算法的光伏發電設備故障診斷方法[5];陳萬志等提出了融合LSTM和優化SVM的風力發電機組故障預測方法[6]。這些方法在發電設備的監測與故障診斷方面均取得了一定的成效。本文將基于Informer [7]模型為基礎,對某風電場群一年的SCADA系統數據進行分析,實現對風機短期的故障預測,同時為后續學者研究提供參考。
1" Informer模型
Informer模型是改進后的Transformer網絡模型,通過使用多頭概率稀疏自注意力機制,給重要特征分配更大的權重,降低了網絡模型的時間復雜度[8],同時基于生成式解碼提高預測速度,解決了時間序列數據的長時(Long-Range)依賴問題,對于長時間序列預測具有顯著優勢。Informer模型保留了Transformer的基礎構成,其在整體上是由編碼器(Encoder)以及解碼器(Decoder)兩個部分構成。Informer模型的整體框架如圖1所示。
在Informer模型中,編碼器主要用于獲取原始輸入序列魯棒性的長期依賴,而解碼器則進一步實現序列預測[9]。如圖1所示,圖的左側部分為編碼器(Encoder)部分,它負責接收的是超長的輸入數據(feed_en),然后再將傳統的Self-Attention層替換為ProbSpare Self-Attention層。使用Self-Attention Disilling操作來進行特征壓縮。Encoder模塊通過堆疊上述的兩個操作來提高算法的魯棒性。右側是Decoder部分,它接收一系列的長序列輸入(feed_de),并將預測目標位置填充為0,再通過經過Mask的Attention層,最后一步生成預測輸出。
2" 實驗數據及預處理
所使用的數據來源于微信公眾號“數據如琥珀”,數據主要描述的是某風電場群在2016年和2017年這兩年SCADA真實運行數據,該數據集包含了風機正常運行時的SCADA的實時數據、故障日志、重要的事件日志、風機出廠參數等。從中選取htw-failures-2017.csv(2017年風電場群在運行時出現故障的時間以及故障類型等)和data_wind_prod.csv(2017年風電場群正常運行時的SCADA的實時數據)分別進行預處理,最后合并成4臺風機(Turbine_ID)、82個特征(Timestamp、Gen_RPM_Max等)、1個標簽(Label)和210 235行記錄數據的數據集,如表1所示。
因為Informer模型的時間復雜度為O(LlogL),其中L是序列的長度。特征數量多造成計算量過大,需要進行降維處理。本文采用主成分分析(PCA)算法對特征參數進行訓練,并獲取其中與數據關聯性較高的部分特征。首先需要剔除數值一直沒有波動的列,再對數據進行歸一化處理。其次計算協方差矩陣,求解協方差矩陣的特征值與特征向量[10]。最后,特征值進行排序,獲取前20個最大的特征值。
3" 對比實驗
使用Informer模型進行長序列預測的命令行參數設置和訓練,包括數據選擇、模型參數設置、訓練循環以及額外選項。通過設置不同參數組合,可實現對不同類型數據的預測任務。為了驗證Informer模型對風機故障的預測效果,本文進行三個對比實驗,分別為:基于百度PaddleTs的RNN對比實驗,基于百度PaddleTs的MLP對比實驗,以及基于TensorFlow的LSTM對比實驗。并將均方誤差(MSE)以及平均絕對誤差(MAE)的結果作為模型性能的評價指標。
以下是Informer模型算法的偽代碼:
輸入:序列數據X = {x1,x2,…,xn},序列長度L,嵌入維度d,頭數h,層數N,dropout rate p
輸出:預測標簽?
初始化位置編碼PE
初始化輸入嵌入矩陣E = Embedding(X)
將輸入嵌入矩陣E與位置編碼PE相加得到輸入矩陣Input = E + PE
初始化多頭自注意力機制MultiHeadAttention和前饋神經網絡FeedForward
初始化輸出矩陣Output = Input
for layer in range(N):
1)計算自注意力得分AttentionScores=MultiHeadAttention(Output,Output,Output)
2)對自注意力得分進行dropout操作AttentionScores=Dropout(AttentionScores,p)
3)將自注意力得分轉化為權重矩陣 AttentionWeights=Softmax(AttentionScores)
4)使用權重矩陣對輸入矩陣進行加權求和 WeightedSum = MatMul(AttentionWeights,Input)
5)將加權求和結果通過前饋神經網絡得到輸出矩陣Output = FeedForward(WeightedSum)
6)對輸出矩陣進行dropout操作Output = Dropout(Output,p)
7)將輸出矩陣與輸入矩陣進行殘差連接并歸一化Output = LayerNorm(Output+Input)
通過線性層將輸出矩陣轉化為預測標簽? = Linear(Output)
返回預測標簽?
主Informer源文件(代碼略)提供了訓練和測試模型的過程,包括輸出信息、計算均方誤差和平均絕對誤差、保存結果為列表和DataFrame格式,并將DataFrame保存為CSV文件。主要思路和步驟如下:
1)導入所需的庫,包括argparse(用于處理命令行參數)、os、numpy、pandas、torch等。
2)定義一個名為parser的ArgumentParser對象,這是argparse庫中的一個類,用于存儲所有需要解析的命令行參數信息。
3)使用add_argument()方法向parser對象中添加各種命令行參數,如模型名稱、數據名稱、數據文件路徑、預測任務類型等。每個add_argument()調用都會創建一個新的命令行參數選項。
4)使用parse_args()方法解析命令行參數,并將結果保存在一個名為args的對象中。這個對象包含了所有的命令行參數值。
5)根據args對象中的參數值,執行相應的操作。例如,如果args.model的值為'informerstack',則創建一個Exp_Informer對象;如果args.use_gpu為True且torch.cuda.is_available()也為True,則將args.use_gpu設置為True。
6)在for循環中,根據不同的數據名稱(如'特征-標簽數據')和目標特征(如'M'),從data_parser字典中獲取相應的數據信息,并將其保存在args對象中。然后根據這些參數值執行相應的操作。
首先將訓練結果按模型與特征選取數量進行分組,繪制特征選取數量與MSE、MAE的關系圖,如圖2至圖5所示。
將所有數據繪制于一起,所得結果如圖6、圖7所示。
由上述圖示可以得出,基于Informer算法所訓練的模型,其曲線較為平滑,在各參數訓練所得結果中,并未出現評價指標歸零的情況;而基于其他算法的模型結果,其曲線變化波動異常,不利于對發電設備健康預測的應用。
由上訴圖例中,基于Informer算法的模型,總體在特征選取數量為13時,MSE結果最小,對特征選取數量為13的參數訓練結果進行分析,繪制如圖8所示的關系圖。
由圖8可知,當特征選取數量為13,模型訓練次數為9時,能獲得最小的模型評價指標,即最大的模型性能。當特征選取數據為13,模型訓練次數為9時,獲得的各模型訓練結果如表2所示。
4" 結" 論
綜上所述,基于Informer算法所建立的模型在風機故障預測中取得了平穩的評價結果。對于特征選取部分,本文僅在特征選取數為10~20個、模型訓練次數為1~10次的前提下進行研究,對于特征選取數量為其他值的結果,本文并未得知,存在更優解的可能。同時,本文僅在是否發生故障這一單方面對數據進行訓練與預測,在實際生產過程中,應針對可能出現的多種故障類型進行訓練,精準的預測風機等多種發電設備可能出現的故障的時間節點以及故障類型。
參考文獻:
[1] ZHANG Y,SUN S M,YU P,et al. Research and application of fault diagnostics method for new energy power plant equipment based on big data mining [J/OL].IOP Conference Series: Earth and Environmental Science,2018,188(1):1-9[2023-04-10].https://iopscience.iop.org/article/10.1088/1755-1315/188/1/012115.
[2] 張李煒,李孝忠.基于Apriori算法和卷積神經網絡的風電機組故障診斷模型 [J].天津科技大學學報,2022,37(5):50-55.
[3] 周凌,趙前程,朱岸鋒,等.基于FISSA-DBN模型的風電機組運行狀態監測 [J].振動.測試與診斷,2023,43(1):80-87+199.
[4] 劉志剛,趙曉燕,張濤,等.基于小波包-神經網絡的電廠發電機組故障診斷研究 [J].機械傳動,2018,42(8):179-182.
[5] 朱小超.基于聚類算法的光伏發電設備故障診斷方法 [J].寧夏電力,2022(4):12-18.
[6] 陳萬志,李昊哲,劉恒嘉,等.融合LSTM和優化SVM的風力發電機組故障預測方法 [J].遼寧工程技術大學學報:自然科學版,2022,41(4):379-384.
[7] ZHOU H Y,ZHANG S H,PENG J,et al. Informer: Beyond Efficient Transformer for Long Sequence Time-Series Forecasting [C]//Proceedings of the AAAI Conference on Artificial Intelligence.Palo Alto:AAAI Press,2021,35(12):11106-11115.
[8] 左敏,胡天宇,董微,等.基于Informer神經網絡的農產品物流需求預測分析——以華中地區為例 [J].智慧農業:中英文,2023,5(1):34-43.
[9] 董浩,孫琳,歐陽峰.基于Informer的PM(2.5)濃度預測 [J].環境工程,2022,40(6):48-54+62.
[10] 黎嘉盈.基于并行冪法的分布式主成分分析算法研究及應用 [D].深圳:深圳大學,2022.
作者簡介:陸釗(1978—),男,壯族,廣西南寧人,
副教授,本科,研究方向:數據挖掘;通訊作者:龍法寧(1978—),男,漢族,廣西玉林人,高級工程師,碩士研究生,研究方向:機器學習;陳國年(1999—),男,漢族,廣西欽州人,本科在讀,研究方向:數據科學與大數據技術。