孟 忍, 董學平, 甘 敏
(1.合肥工業大學 電氣與自動化工程學院,安徽 合肥 230009; 2.福州大學 數學與計算機科學學院,福建 福州 350108)
水泥工業是我國國民經濟建設的重要基礎材料產業。因為分解爐運行狀況的關鍵性能指標是分解爐出口溫度,所以對分解爐出口溫度的研究具有重要意義[1]。近年來,有很多學者對分解爐出口溫度的預測方法進行研究。文獻[2]提出一種出口溫度預測模型基于遺傳算法優化BP神經網絡的方法,進行實驗并驗證其效果;文獻[3]提出一種基于遞推最小二乘和ARMAX的分解爐溫度預測模型。上述2種方法使用傳統神經網絡的方法對分解爐出口溫度進行預測,因為不具備從過去和將來的數據中學習信息的能力,所以影響分解爐出口溫度的預測精度。
上述研究都只在其風、料、煤等主要傳統經驗的基礎上進行研究,具有很大的局限性。因此將數據篩選方法與神經網絡算法相結合的方法,能夠較為準確地把握分解爐出口溫度特性。文獻[4]將核主成分分析(kernel principal component analysis,KPCA)非線性降維應用于財務危機預警模型的建立,并進行實驗驗證其效果,表明KPCA在處理非線性數據方面具有較好的能力;因此文獻[5]應用注意力機制的長短期記憶(long short-term memory,LSTM)神經網絡建立PM2.5預測模型的方法,并驗證其效果;文獻[6]應用雙向長短斯記憶(bidirectional long short-term memory,BiLSTM)神經網絡構建剎車片壽命預測模型,通過對比實驗驗證了模型的優越性。上述方法均體現了神經網絡的優越性,但是由于分解爐出口溫度具有非線性、多干擾、大時滯等特性,僅把神經網絡的方法運用于分解爐出口溫度的預測方面,忽略了出口溫度變化的非線性特征,影響了預測精度。
本文提出一種基于KPCA結合BiLSTM的分解爐出口溫度預測模型。引入KPCA可有效地提取變量的非線性特征,篩選出包含主要信息的主成分,降低影響因素的變量維度;然后將降維所得的主元作為BiLSTM神經網絡的輸入,通過分析不同隱含層和神經元個數對模型的影響,建立分解爐出口溫度預測模型,并進行實驗確定模型精度,從而完成對出口溫度的預測。通過仿真實驗證明,基于KPCA-BiLSTM的分解爐出口溫度預測模型具有良好的預測精度。
模式識別中線性特征的提取和數據表示一般用主成分分析(principal component analysis,PCA),當訓練數據集中的樣本數量相對少時,較難獲得準確的協方差矩陣,并且通常用于非線性數據處理時無法獲得最佳的預期效果[7]。作為減少非線性特征維數的算法,KPCA使用核的思想以線性方式將非線性樣本空間映射到高維特征空間,然后進行線性降維。在解決提取非線性特征的問題方面,KPCA具有比PCA更好的效果,利用核函數可以有效地保留原始數據的特征,并最大限度地提取數據中包含的非線性信息[8]。KPCA具有以下特點:原始數據通過非線性映射函數映射到高維空間,并且空間中的所有樣本都可以線性表示空間中的任何向量。
PCA是一種線性主成分分析方法,對于原始數據構成的矩陣,首先進行標準化處理得到新的樣本集xk(k=1,2,3,…,m;xk∈Rn),再對新的樣本集計算其協方差矩陣,即
(1)
然后求得矩陣C的特征值和特征向量。
KPCA是PCA的非線性間接擴展[9]。KPCA首先對樣本xk進行非線性變換φ(xk),將其映射到高維特征空間F,此時協方差矩陣為:
(2)
上述矩陣的特征值λ和特征向量V滿足以下條件:
λV-CV=0
(3)
引入非線性函數φ(xk),可得:
λφ(xk)V-φ(xk)CV=0
(4)
(4)式中的特征向量V可由φ(xi)線性表示,即
(5)
將(2)式、(4)式代入(3)式,并引入核函數Kij=K(xi,xj)=φ(xi)φ(xj),簡化后得:
mλα-Kα=0
(6)
其中,α為核矩陣K的特征向量。對于任意樣本,在特征空間F中主元φ(x)上的投影為:
(7)
(8)
其中:L為m×m階單位矩陣,其系數為1/m。
LSTM是目前應用比較廣泛,并得到高度認可的神經網絡,它可以克服循環神經網絡(recurrent neural network,RNN)中梯度消失的問題[10]。因為其具有獨特的設計結構,所以LSTM適合處理和預測時間間隔長且時間序列延遲的重要事件。LSTM的單元結構由4個部分組成,每個部分之間存在交互,分別為遺忘門、輸入門、信息更新和輸出門,LSTM內部結構如圖1所示。

圖1 LSTM內部結構
LSTM內部結構的第1部分為遺忘門,如圖1中①所示,即通過sigmoid函數從上一個時刻的輸出和本時刻的輸入值中丟棄部分信息,其表達式為:
ft=σ(Wf[ht-1,xt]+bf)
(9)
第2部分為輸入門,如圖1中②所示,該部分的功能是確定需要更新哪些信息,并通過sigmoid和tanh函數進行過濾,需要更新的信息表達式如下。
經過σ函數過濾后可得:
it=σ(Wi[ht-1,xt]+bi)
(10)
經過tanh 函數過濾后可得:
Ct′=tanh(Wc[ht-1,xt]+bc)
(11)
第3部分為信息更新,如圖1中③所示,它將遺忘門和上一時間點的信息更新值相乘并與輸出門的2個值的乘積相加,細胞狀態的更新公式為:
Ct=ftCt-1+itCt′
(12)
第4部分為輸出門,如圖1中④所示,該輸出值是基于以上的3個步驟。首先利用sigmoid函數選擇部分輸入門的信息;然后利用tanh函數功能用于選擇和過濾更新后的信息;最后將2個選定的信息相乘以獲得此時的細胞輸出值,其表達式如下。
經過σ函數過濾后可得:
ot=σ(Wo[ht-1,xt]+bo)
(13)
ht=ottanh(Ct)
(14)
其中:σ為sigmoid激活函數;xt為時刻t的輸入值;ht-1為t-1時刻的輸出值;Ct為細胞信息更新值;Wc、Wi、Wo、Wf分別為細胞狀態、輸入門、輸出門和遺忘門;bc、bi、bo、bf分別為細胞狀態、輸入門、輸出門、遺忘門的偏置值。
本文選取神經網絡中常用的sigmoid 函數作為σ函數,其表達式為:
s(x)=1/(1+e-x)
(15)
LSTM具有以非常長的時間間隔和時間序列中的延時來處理和預測大型事件的特征,但是它只能根據過去的數據預測信息,BiLSTM具有能夠從過去和將來的數據中學習信息的能力,BiLSTM的結構示意圖如圖2所示,圖2從上到下依次為輸入層、前向層、后向層和輸出層,BiLSTM 的基本思想是每個學習序列分別作為長短期記憶神經網絡的向前和向后的2個神經網絡,并且這2個層分別連接到輸入層和輸出層。輸出值整合了過去(前向)和未來(反向)的信息,分析了不同隱含層和神經元數量對模型的影響,建立了分解爐出口溫度預測模型,并進行仿真實驗以確定模型的準確性。

圖2 BiLSTM神經網絡結構
在BiLSTM中的每一個時間點都有8個唯一的權重值被重復使用,并且每個值對應的8個權重值在前隱藏層和后隱藏層中,輸入的權重值(w1,w4)前向隱藏層到前向隱藏層(w2,w3)、后向隱藏層到后向隱藏層(w6,w7)、前向隱藏層和后向隱藏層到輸出層(w5,w8)。尤其要注意的是前向隱藏層和后向隱藏層之間沒有進行信息傳遞,這樣可以避免2個隱藏層的相鄰2個時間點之間形成死循環。其計算方式為:在前向層從1時刻到t時刻正向計算1次,得到并保存每個時間點向前隱藏層的輸出;在后向層沿著時刻t到時刻1反向計算1次,得到保存每個時間點向后隱藏層的輸出;最后在每個時間點結合前向層和后向層的相應時刻輸出的結果得到最終的輸出,數學表達式為:
ht′=f(w1xt+w2Ct-1′+w3ht-1′)
(16)
ht=f(w4xt+w6Ct-1+w7ht-1)
(17)
ot=g(w5ht′+w8ht)
(18)
模擬數據取自于實際生產的水泥數據。在變量選擇方面,大多數研究者[11-12]圍繞三次風溫、分解爐喂料量、分解爐喂煤量這3個主要變量對分解爐出口溫度進行研究。因為分解爐內部結構復雜且變量眾多,所以難以依靠經驗法選取變量來全面概括分解爐的內部規律。結合分解爐結構與工況,選取包含分解爐喂料量、分解爐喂煤量、三次風壓和出口壓力等在內的22個變量用來對分解爐出口溫度進行分析,并選用KPCA數據降維的方法對22個變量進行參數估計,用來篩選相關變量。
KPCA進行自變量的降維,使用Python編程實現,下面對其關鍵步驟進行說明。
(1)數據預處理。首先對數據進行標準化,處理后均值為0,方差為1。
(2)采用高斯徑向基核函數,求核矩陣。高斯徑向基核函數為:
(19)
其中:x為空間中任一點;xc為核函數中心;σ為函數的寬度參數,控制函數的徑向作用范圍。
(3)對矩陣進行中心化,得到一個新的矩陣。
(4)特征值分解。找到協方差矩陣的特征向量和特征值,將對角線矩陣與主對角線上的特征值轉換為特征值的列向量,并按降序排列特征值。
(5)對主元的貢獻率進行確定。計算每個特征值的貢獻率以及累計貢獻率,并將主元所在特征值向量中的序號記錄下來,同時保存主元序號以及主元的個數。
(6)計算每個主元向量以及各主元所對應的特征向量,并構建主元矩陣。經過KPCA 降維處理之后,分解爐出口溫度的影響因素由22維降至4維,累計貢獻率達到90%以上。KPCA對前4個主成分的單個貢獻率及累計貢獻率見表1所列。

表1 KPCA對22個影響因素的處理結果 %
為了更好地驗證KPCA在數據篩選方面的優越性,引入用PCA數據篩選方法處理主成分的單個貢獻率及累計貢獻率,見表2所列。

表2 PCA對22個影響因素的處理結果 %
因為分解爐出口溫度具有非線性、強耦合性、多干擾、大時滯等特征,所以PCA只能進行線性變化,在非線性數據處理時往往得不到較好的期望效果;而KPCA可以進行非線性變化,能將原數據通過引入隱性非線性映射函數映射到高維空間,然后對此空間執行算法進行線性降維,對數據的篩選效果更好。實驗結果表明,KPCA對主成分的累計貢獻率要高于PCA。
為了得到精確的預測結果,使用KPCA數據降維與BiLSTM神經網絡相結合的方法,從而給出KPCA-BiLSTM的組合模型。KPCA-BiLSTM組合模型的整體流程如圖3所示。

圖3 KPCA-BiLSTM模型的整體流程
仿真實驗采用某公司6 000 t/d水泥生產線的生產數據,利用所測得的1 100組數據進行分析預測,其中:900組作為訓練集;200組作為測試集。由于數據包含溫度、壓強等不同量綱的變量,需要將輸入變量進行歸一化處理,計算公式為:
(20)
為進一步驗證KPCA-BiLSTM分解爐出口溫度預測模型的準確性,將經過歸一化處理和KPCA篩選后得到的數據作為BiLSTM神經網絡的輸入,將得到的預測值與真實值進行對比,通過對比不同的神經網絡算法在分解爐出口溫度預測的精度,來驗證KPCA-BiLSTM模型的有效性。為進一步驗證模型的準確性,選取平均絕對百分比誤差(mean absolute percentage error,MAPE)和均方根誤差(root mean square error,RMSE)作為評價指標對模型的預測精度進行定量分析。計算公式為:
(21)
(22)
其中:n為測試樣本數;yt為測試樣本實際值;yp為模型預測值。
選取1 100組數據,選取其中200組作為測試集,利用前文2.1節KPCA得到的降維結果作為神經網絡的輸入,將BiLSTM的時間步數設置為3,優化算法選擇隨機梯度下降的Adam函數,得到預測值與真實值的變化趨勢如圖4所示。從圖4可以看出,KPCA-BiLSTM模型在真實溫度波動較大的情況下仍可以實現較好的預測,預測結果最接近真實值。同時在40~60、80~140、125~150溫度波動范圍較大的預測點和在25~50溫度變化較快的預測點范圍內,使用KPCA-BiLSTM模型也能實現較好的預測效果。

圖4 KPCA-BiLSTM組合模型擬合曲線
為了更全面地評價模型的有效性與優越性,分別引入不進行數據降維的BiLSTM模型,以及用PCA和KPCA進行數據降維后的KPCA-LSTM組合模型,PCA-BiLSTM組合模型與KPCA-BiLSTM組合模型進行對比,最終預測值和真實值的MAPE和RMSE對比結果見表3所列。

表3 預測結果誤差對比
從表3可以看出,KPCA-BiLSTM組合模型具有最好的預測性能。相較于PCA-BiLSTM模型,KPCA-BiLSTM模型的MAPE降低了0.014,RMSE降低了0.068;相較于KPCA-LSTM模型,KPCA-BiLSTM模型的MAPE降低了0.071,RMSE降低了0.437;相較于BiLSTM模型,KPCA-BiLSTM模型的MAPE降低了0.197,RMSE降低了1.575。因此,本文提出的預測模型是可行的。
使用不同預測模型處理變量的預測結果如圖5所示。

圖5 不同預測模型下的預測值與真實值
從圖5可以看出,僅使用BiLSTM神經網絡預測的結果整體上與實際值偏差較大,尤其是在溫度劇烈變化的預測點處,預測結果均大于真實值。使用KPCA-LSTM組合預測模型,因為LSTM只具備處理和預測時間序列中間隔和延遲比較長的事件,不具備利用過去和未來數據的信息進行學習的能力,所以在經過KPCA降維處理后,預測效果會有提前上升和滯后下降的過程。對比PCA-BiLSTM模型和KPCA-BiLSTM模型,因為BiLSTM具有對過去和未來信息學習的能力,所以相比較而言都有較好的預測精度。因為PCA只能進行線性變化,在非線性數據處理時往往得不到較好的期望效果,而KPCA可以進行非線性變化,所以能將原數據通過引入隱性非線性映射函數映射到高維空間,然后對此空間執行算法進行線性降維,對數據的篩選效果更好。從圖5還可以看出,KPCA-BiLSTM模型的擬合效果更優于PCA-BiLSTM模型的擬合效果。由此可見,基于KPCA-BiLSTM模型的分解爐溫度預測不僅在總體上提高了分解爐溫度預測的精度,而且在各個預測點的值與真實值的差值相對較小。
由于分解爐出口溫度具有非線性、強耦合性、多干擾、大時滯等特征,因此本文提出了使用KPCA進行變量篩選從而來降低影響分解爐出口溫度數據的維度,在此基礎上引入BiLSTM神經網絡,提出一種基于KPCA-BiLSTM的組合預測模型。同時與BiLSTM、KPCA-LSTM、PCA-BiLSTM等組合模型進行對比分析,得到KPCA-BiLSTM組合模型能夠精確地預測分解爐的出口溫度,有效地提高了預測精度。