李 萌,宗學軍,連 蓮,何 戡,楊忠君
(沈陽化工大學信息工程學院,遼寧沈陽 110142)
在當今大數據時代的產業界,深度學習在大數據場景下更能揭示數據內部邏輯關系,進而指導企業決策[1-2]。目前已有學者在電力領域廣泛使用深度學習技術,文獻[3]建立了基于卷積神經網絡(Convolutional Neural Networks,CNN)-門控循環網絡(Gate Recurrent Unit,GRU)的負荷預測模型;文獻[4]基于CNN 對電廠熱能循環進行了預測控制。但深度網絡耗時較長才可達到預期性能。另有部分學者將并行計算技術用于算法優化[5],文獻[6]提出了并行化深度卷積神經網絡,提高收斂速度和并行效率。文獻[7]提出了一種基于Spark 平臺的并行決策樹算法,保持分類精度的同時提高大規模數據的訓練效率。然而電廠運行狀態的并行預測模型仍有深入研究空間。文中在火電廠工業環境下將深度學習引入Hadoop 框架,實現設備健康狀態精準高效預測,與以往數據分析平臺相比,經Hadoop 框架優化的算法處理數據效率和模型的準確度有所提高。
Hadoop 分布式框架主要解決大數據的存儲和挖掘分析問題[8]。分布式文件管理系統(Hadoop Distributed File System,HDFS)將現場工業設備傳感器采集的數據拆分多個數據塊,其中時間序列數據由Spark 引擎調用,采用內存計算的方式實現鍋爐主蒸汽流量的實時預測。
CNN 主要包括卷積和池化兩個組件,它們通常交替出現在CNN的結構中,以實現特征提取[9]。LSTM是循環神經網絡(Recurrent Neural Network,RNN)的改進,以緩解RNN 在訓練時出現梯度消失和梯度爆炸等問題[10]。GRU 處理等量數據時相較于LSTM 網絡,裁汰了部分訓練參數,降低了學習時間要求,并可防止LSTM 網絡經過層層訓練之后因參數過多而產生的過擬合問題[11]。傳統的GRU 結構使用單向傳播,t時刻只與過去的時間相關。為使對輸入信息的分析更加完整,模型的準確性更高,遂構建BiGRU 模型。BiGRU 神經網絡結構如圖1 所示,其具體計算見式(1)-(3)[12]:

圖1 BiGRU神經網絡結構
其中,GRU()函數表示對輸入時間數據的非線性變換,wf和wb分別為正反兩個方向預測過程中輸入層到隱含層的權重,ht為當前時刻的隱含層狀態,wy為隱含層到輸出層的權重,yt為當前時刻的輸出值。
由于某一時間點的過去與未來時刻對當前時刻隱含層狀態都有影響,BiGRU 相較于單向GRU 添加了一層隱含層,使預測過程改良為正向預測與反向預測兩個過程,新模型的輸出結果由正反雙向的隱含層共同決定。因此,BiGRU 網絡有能力學習過去和未來主蒸汽流量影響因素與當前主蒸汽流量之間的關系。
ABC 是D.Karaboga 于2005 年提出的一種基于蜜蜂群體特定智能行為的最優化算法。ABC 算法在每次迭代過程中都會執行全局和局部最優搜索任務,其控制參數較少、魯棒性強、收斂速度快。
文中提出一種基于CNN-ABC-BiGRU 網絡的預測模型,具體步驟為:
1)將實驗數據劃分為訓練數據、驗證數據和測試數據。
2)初始化ABC 參數,確定種群數、最大迭代次數、控制參數等其他參數的初始值。
3)構建CNN-BiGRU 主蒸汽流量預測模型,確定所需尋優的CNN-BiGRU 模型的超參數和尋優范圍,然后在范圍內依據式(4)隨機生成N個初始可行解,并將它們被分配給引領蜂:
其中,xij為第i個可行解的第j個參數。每個初始解xi(i∈(1,2,…,N))為D維向量,D是待優化參數的數目,j∈{1,2,…,D},和分別為第j個參數的最大值與最小值,即待優化參數的可行區間;rand(0,1) 為[0,1] 范圍內的隨機數。
4)針對初始解對CNN-BiGRU 模型展開訓練,根據式(5)尋找初始種群中每個可行解的適應度fit(xi):
其中,f(xi)為可行解的目標函數。
5)引領蜂在每一個可行解鄰域進行搜索,根據式(6)尋找新的可行解vij(t+1),并計算適應度:
其中,i,k∈(1,2,…N),j∈{1,2,…D},k為隨機生成的數值且k≠i,vij為算法對第j個參數計算的新解,φij為[-1,1] 范圍內的隨機數。
6)根據式(7)所示的貪婪算法,比較新解與現有解,保留適應度大的可行解:
7)根據式(8)得出第i個可行解被選擇的概率值Pi:
8)跟隨蜂依據概率值Pi以輪盤賭的方式選定某一個可行解,并根據式(6)在其鄰域隨機搜索新的可行解以及計算新可行解的適應度值。
9)根據式(7)所示的貪婪算法,更新可行解。
10)判斷是否存在因連續未更新次數達到限制而被放棄的可行解,若存在,則由偵查蜂根據式(4)隨機得到一個新的可行解替代它。
11)保留最優可行解。
12)如果滿足終止條件,或者已經用盡迭代次數,返回最優可行解,否則跳轉到步驟5)重新循環。建立該預測模型的流程如圖2 所示。

圖2 CNN-ABC-BiGRU網絡建模流程圖
利用基于逐步回歸的變量選擇方法選擇最優變量,得出相關因素的相關性,然后采用VIF 檢驗排除因具有多重共線性而對算法結果有影響的變量,從而決定輸入模型變量數量。
3.1.1 逐步回歸分析
逐步回歸方程變量較少,且能保留最為顯著的變量[13]。逐步回歸分析變量之間的相關性,逐個引入新變量,每引入一個新變量時考慮模型包含的變量能否被剔除,直至不再引入新的變量,這時回歸模型是最優模型。
3.1.2 基于VIF的多重共線性檢驗
假設存在不全為零的m+1 個數c0,c1,c2,…,cm,使得c0+c1xi1+c2xi2+…+cmxm≈0,i=1,2,…,n,此時自變量x1,x2,…xm有完全共線性。檢驗后若變量與變量出現多重共線性,消去共線性之后計算得到回歸方程系數并可以進行VIF 檢驗[14]。
自變量相關矩陣記為:
主對角線元VIFj=cjj是自變量xj的方差擴大因子(Variance Inflation Factor,VIF),若1≤VIF≤5,則無多重共線性。
3.1.3 特征選擇結果
如表1 所示,對采集的10 組數據進行逐步回歸分析,最終得到六個特征變量,包括給水流量、汽包液位、一次風量、二次風量、爐膛床壓和氧含量,以主蒸汽流量作為因變量建立多元回歸方程組,對模型都進行顯著性和VIF 檢驗。

表1 逐步回歸模型及VIF檢驗結果
檢驗結果顯示,x1,x2,…,x6的VIF 皆小于5,表明該模型無多重共線性。檢驗統計量F=9 501.770,顯著性p<0.05,表明該回歸方程顯著性較強,特征變量對主蒸汽流量影響性很強。將特征變量依次設為x1,x2,…,x6,主蒸汽流量設為y,可得:y=0.424x1+0.030x2+0.042x3-0.071x4-6.986x5+0.447x6+58.385。
實驗總計使用11 萬條電廠運行數據,預測模型中包括被選入訓練集的九萬個數據,和被隨機選入測試集用來評估模型效果的兩萬個數據。Hadoop集群實驗硬件平臺選用三臺主機,包含一臺主節點和兩臺副節點。
根據均方根誤差(RMSE)、平均絕對誤差(MAE)以及平均百分比誤差(MAPE)三種評價指標評價所有模型,定義如下:
為了全面評估CNN-ABC-BiGRU 模型的預測效果,將其與CNN-BiGRU[15]、BiGRU、GRU[16]、LSTM、BP五種常見的預測方法進行預測性能比較。
使用特征篩選后的數據集對提出的組合模型與其他對比模型進行訓練和測試,所得預測結果如圖3、4 所示。

圖3 日期A預測曲線與真實曲線對比
圖3 中的主蒸汽流量波動較大,在21-30 個采樣點區間內,主蒸汽流量值從220.736 16 t/h 增加到236.267 78 t/h 又減少到222.145 31 t/h,只有CNNABC-BiGRU 模型GRU 實現了準確跟蹤變化趨勢。圖4 中的主蒸汽流量值較為平穩,除BP 算法以外,其余五種算法預測曲線都貼合真實值變化趨勢,其中CNN-ABC-BiGRU 模型預測曲線最接近真實值曲線。對比結果表明,自適應CNN-ABC-BiGRU 模型在預測變化范圍較大和近乎穩定的數據時,都具有良好的預測性能。

圖4 日期B預測曲線與真實曲線對比
如表2-3 所示,在兩天的預測結果中,所提組合模型相較于其他模型,具有最小的均方根誤差、平均絕對誤差和平均百分比誤差。

表2 2020年10月8日對比實驗結果

表3 2021年3月8日對比實驗結果
在六種模型的預測誤差對比中,深度學習模型誤差小于機器學習模型誤差,具體表現為深度學習的組合模型誤差最小,單一模型次之,機器學習模型誤差最大。在主蒸汽流量值波動較大的第一天,深度學習模型與機器學習模型誤差結果對比更為明顯,主蒸汽流量值較為平穩的第二天差距較小。產生這種結果的原因是,在處理火電廠大數據時,深度學習模型利用訓練集大量特征數據動態地進行學習,學習動態特征與預測目標之間的內在規律,在解決非線性波動問題時表現效果更好。
分布式訓練與單機訓練用時比較如圖5 所示。

圖5 分布式CNN-ABC-BiGRU算法訓練與單機用時對比
傳統單機CNN-ABC-BiGRU 算法運算用時表現為一次函數趨勢,樣本數量小于60 000 個時,單機運算和通過分布式運算用時相差不大,隨著訓練樣本不斷增加,基于Hadoop 的CNN-ABC-BiGRU 算法用時緩慢增加,二者用時差距隨著樣本數量的增加而增大。實驗結果表明,處理火電廠運行積累的大規模數據時,Hadoop 框架下的分布式運算相較于單機運算有效節省訓練時間,能夠更快得出預測結果,具有更好的可行性和高效性。
文中面向大數據背景下的工業系統數據分析的現實需求,結合火電廠燃燒系統設備監測大數據的特點構建分布式深度學習模型,研究結果表明:
1)將CNN-ABC-BiGRU 網絡用于設備健康預測,避免了單一預測模型難以獲得最優結果的問題。
2)基于Hadoop 框架的算法訓練相較于傳統單機算法有效縮短模型訓練時間,實時處理速度相較于傳統的數據分析平臺顯著提升,對比結果表明了該方法的優越性。
3)該數據分析體系結合深度學習建模方法的提出為電力生產數據的處理提供了研究方向,實時追蹤鍋爐系統的動態運行過程,預測性維護可應用于故障檢測、工業設備評估等方面。在后續的研究中,可通過增加集群數量,對建模方法進行進一步優化研究。