蔣星明,曹順安,王民軍,陳東,董畢承
(1.武漢大學 動力與機械學院,湖北 武漢 430072;2.浙江浙能中煤舟山煤電有限責任公司,浙江 舟山 316000)
2014年制定的《煤電節能減排升級與行動計劃》要求,國內火電站實現超低排放[1]。火電站常用的煙氣脫硫技術為濕法煙氣脫硫,其中最為廣泛使用的是石灰石/石灰-石膏法,然而其有容易堵塞管道的缺點[2]。因此,脫硫系統用于監測煙氣排放的設備煙氣連續排放檢測系統(CEMS)也容易產生探頭和傳感器堵塞老化的問題,導致SO2排放濃度無法得到較準確的控制[3]。因此,通過人工智能的方法,建立脫硫系統SO2排放濃度的預測模型,不僅能夠精準預測SO2排放濃度,也能對電廠運行參數的調整起到指導作用,具有重要的實際意義和應用價值。目前,人工智能已經在脫硫系統的參數預測和智能調控方面得到廣泛的應用[4-8]。門控循環神經網絡(GRU)具有結構簡單、參數少、訓練時間短等諸多優點,能同時有效解決由于網格的長期依賴而產生的預測精度不高的問題,已經在交通流量預測[9]、徑流預測[10]以及電力負荷預測等[11]領域廣泛的應用,但尚未見其在脫硫系統參數預測方面的應用。針對脫硫系統的數據具有大慣性,且影響因素多的特點[12],對數據進行簡化并引入逆向信息可以大幅度提高模型的訓練速度和精度。因此,本文提出了一種基于雙向門控循環神經網絡(biGRU)的預測模型,用于預測脫硫系統的SO2排放濃度,以指導生產實際。
GRU中包含更新門zt和重置門rt,見圖1。更新門控制前一時刻的狀態信息保留到當前狀態中的程度,而重置門則確定著當前狀態與先前的信息結合的程度。

圖1 GRU結構示意圖Fig.1 Structure diagram of GRU
GRU的原理是利用門單元控制歷史和當前信息的傳遞,其一次向前傳遞過程如下:
(1)更新門zt和重置門rt同時對t-1時刻的隱藏狀態ht-1做線性變換,然后通過激活函數σ(·)將變換后的數值壓縮到[0,1]的區間范圍內。zt越接近1,則表示現時刻更新信息越多;rt越接近1,則表示過去信息越多。更新門zt和重置門rt對應的數學公式分別為式(1)和式(2)。
zt=σ(Wz·[Xt,ht-1])
(1)
rt=σ(Wr·[Xt,ht-1])
(2)

(3)
(4)
傳統的GRU結構通常沿序列方向進行單向傳播,每次計算只與過去信息相關。但在考慮到脫硫系統的未來數據受現在數據影響,能對實時數據產生反饋,需要利用未來的反饋信息對模型進行修正。因此,所建立的biGRU網絡見圖2,biGRU在每個訓練序列的前向和后向分別建立兩組GRU模型,GRU+為正向網絡模型,GRU-為反向網絡模型,兩組模型的隱藏層節點連接到同一個輸出層。這使得每個時間點輸入序列都能獲取完整的過去和未來信息,進一步分析脫硫系統數據之間的相關性,更加準確、全面地預測排放濃度。

圖2 biGRU結構示意圖Fig.2 Structure diagram of biGRU
biGRU網絡在預測復雜非線性時變序列方面具有明顯的優勢,并且PCA的數據降維方法也可以一定程度上簡化運算。因此,以歸一化和PCA降維后的數據作為biGRU模型的輸入數據。預測模型的結構見圖3。

圖3 SO2預測模型結構圖Fig.3 Structure diagram of SO2 prediction model
模型建立步驟如下:
第一,訓練數據預處理。對歸一化后的數據進行PCA降維操作,構建輸入樣本用以訓練模型。
第二,建立biGRU網絡模型。確定網絡的結構,設置訓練迭代次數、學習率等網絡參數,選擇優化算法和損失函數。
第三,訓練biGRU網絡模型。依據所選的優化算法對網絡模型參數進行優化,建立脫硫系統SO2排放濃度預測模型。
第四,預測SO2排放濃度。對預測輸出數據進行反歸一化處理,并利用評價函數對預測結果進行分析和評價。
2.1.1 原始數據 原始數據集來源于某火力發電廠脫硫系統的SIS數據庫,該數據集包括了進口溫度等15個特征變量在內的7 640組數據,具體數據范圍見表1。將數據集劃分為訓練集和驗證集,兩者比例為8∶2。

表1 原始數據范圍Table 1 Original input data range
2.1.2 數據歸一化 由表1可知,數據集中的變量存在數量級不一致的問題,直接采用原始的訓練集進行訓練,會導致模型的不穩定[13]。因此,在進行后續分析之前,需要對原始的輸入變量做最大最小法歸一化,將數據歸一化至[0,1]區間內。計算歸一化后輸入變量之間的相關系數,部分變量間的相關系數大于0.6,說明這些變量具有較高的重疊信息,需要對數據進行降維簡化。
2.1.3 PCA降維 目前,主成分分析(PCA)法是常用的降維方法,能減少運算數據,保留原始特征信息[14]。該方法通過矩陣變換,將初始的多個特征線性組合成幾個互不相關的特征指標,從而把高維數據低維化。由圖4可知,前7個主成分累計貢獻率已經達到84.59%,以累計貢獻率85%為篩選標準,選擇前7個主成分作為模型的輸入變量。

圖4 主成分分析帕累托圖Fig.4 Pareto diagram of PCA
將降維后的數據作為模型的輸入,SO2排放濃度作為網絡的輸出。輸入層節點個數為7,輸出層節點個數為1,隱藏層神經元個數設置為64,隱藏層層數設置為3,時間步長設為12,初始學習率設為0.001,批處理量設為500。
基于梯度下降的傳統算法中學習率一般保持不變,這將導致模型訓練過慢,運算效率過低。因此,采用了一種自適應學習率的Adam優化算法[15]。Adam優化算法的作用是經過偏置校正之后,會讓參數變得更加的平穩,從而加快訓練的過程。在模型訓練過程中,還采用了dropout技術[16],其原理為:在每一次訓練中,部分神經網絡單元將被隨機隱藏,相當于將原始網格簡化為隱藏節點較小的網格進行訓練,從而在提升訓練速度的同時,防止過擬合現象的發生。dropout模塊設置在biGRU層中,丟棄率設置為0.3。
網格訓練的損失函數選擇均方誤差(MSE),計算方法如式(5):
(5)
按照上述參數設置網絡,并進行不同訓練步長的訓練,得到訓練集和驗證集損失函數的變化趨勢,見圖5。
由圖5可知,模型的訓練集和驗證集的損失函數都在前50次訓練步長中迅速降低。在第100~300次訓練步長中,兩者的損失函數呈緩慢下降趨勢,但未穩定。當訓練步長達到300次之后,模型的訓練集和驗證集的損失函數都趨于穩定。因此,模型的訓練步長設置為300。

圖5 損失函數變化Fig.5 Changes of loss function
為了更好地體現biGRU模型的預測精度以及泛化能力,還建立了傳統的RNN和LSTM模型,與biGRU模型進行比較。模型的評價指標包括對稱平均絕對百分比誤差(eSMAPE)和均方根誤差(eRMSE),用于評價模型的預測精度,計算方法分別如式(6)和(7):
(6)
(7)

biGRU、RNN以及LSTM模型的預測結果分別見圖6~圖8,表2為各模型的部分預測數據及eSMAPE和eRMSE的比較。

圖6 biGRU預測結果Fig.6 Prediction results of biGRU

圖7 RNN預測結果Fig.7 Prediction results of RNN

圖8 LSTM預測結果Fig.8 Prediction results of LSTM

表2 3種模型的預測結果比較Table 2 Comparison of prediction results of the three models
由表2可知,在脫硫系統SO2排放濃度的預測中,biGRU模型的對稱平均絕對百分比誤差為2.604%,均方根誤差為0.674 mg/Nm3。相比于RNN,分別下降了4.235%和1.942 mg/Nm3;相比于LSTM,分別下降了0.718%和0.443 mg/Nm3。說明biGRU模型不僅有效解決了RNN模型存在的記憶力缺失導致的長期預測效果不佳的問題,而且由于考慮了逆向信息對實時數據的影響,進一步提高了模型訓練的精度,預測結果波動更小,穩定性和準確率也更高。
在實際生產中,基于biGRU的脫硫系統SO2排放濃度預測模型完全滿足對SO2排放濃度的實時預測的要求,可以更加準確的將預測數據反饋給工作人員,以便工作人員在SO2排放濃度出現超標趨勢時,及時進行參數調控,保證脫硫系統的穩定運行。
(1)基于biGRU的脫硫系統SO2排放濃度預測模型能夠將火力發電廠脫硫系統信息監測數據同時間序列相關聯,通過對數據的分析和訓練,能夠準確地預測脫硫系統SO2的排放濃度。
(2)相較于傳統RNN和LSTM模型,biGRU模型能夠解決記憶力缺失導致的長期依賴問題,同時引入了逆向信息的反饋,因而預測結果較好,泛化能力較高,其對稱平均絕對百分比誤差和均方根誤差相較于前兩者均有所降低。
(3)biGRU模型對深度學習在工業生產現場的應用具有一定的實用價值,能夠在生產實際中起到有力的指導作用。