駱 楠, 祁佳康, 羅 娜
(華東理工大學化工過程先進控制和優化技術教育部重點實驗室,上海 200237)
間歇過程作為一種重要的生產方式,多用于生產低產量、高附加值的產品。然而,由于原材料成分的不確定性、產品品種的頻繁改變及復雜的工藝過程,間歇過程的產品質量波動較大[1-2]。一方面,大多數間歇生產過程由于產品質量指標的檢測缺乏在線傳感器或難以在線測量,只能通過實驗室化驗分析得到分析值,難以滿足質量指標實時在線控制的需要。另一方面,間歇過程的機理模型很難得到,因而基于數據的模型就成為了研究熱點[3-4]。
與連續過程相比,間歇過程數據除變量和時間兩個維度以外,還包括批次的維度。針對這種特殊性,Nomikos 等[5]提出了多向偏最小二乘法(MPLS),將作為自變量的三維數據按批次展開為二維數據,建立偏最小二乘模型,從而實現了產品質量預測。支持向量機方法較好地解決了小樣本、非線性、高維數、局部極小等實際問題,具有很強的泛化能力,因而被用于復雜非線性間歇過程,特別是生化過程的質量預測問題[6-7],并在青霉素發酵過程中驗證了該算法的有效性。對于間歇過程產生的數據,簡單的非線性特征可以使用傳統的算法進行提取,但其批次間隱含的時序特征[8]仍難以提取。
循環神經網絡(Recurrent Neural Network,RNN)通過將時序的概念引入到網絡結構設計中,在時序數據分析中表現出更強的適應性,為提取時間序列特征提供了更好的解決方案。隨著處理時間序列長度的增加,使用常規激活函數會使得網絡訓練期間容易產生梯度消失等問題,從而導致RNN 網絡預測精度不足。而其變體,如長短期記憶(Long Short-Term Memory,LSTM)、門控循環單元(GRU)以及模型的雙向操作等,通過添加一些閾值門彌補了RNN 的缺陷,這些方法已被廣泛應用于多個序列學習問題中。在工業上,Wang 等[9]提出了深度異構GRU 模型的框架,用于刀具磨損預測;Yu 等[10]利用基于雙向循環神經網絡的自動編碼器方法對渦輪風扇發動機進行了壽命預測;Wang 等[11]采用LSTM 對間歇過程中每個階段的長時間序列進行特征提取,從而得到與質量相關的綜合隱藏特征。來自于不同階段的隱藏特征通過堆疊自動編碼器進一步集成和壓縮,進而實現了間歇過程的質量預測,但該建模方法只考慮批次內數據,并沒有考慮原料的不確定性對不同批次產品質量的影響,因而對于某些復雜的間歇過程難以實現準確的質量預測。
在實際生產中,一方面原料存在一定的不確定性,如作為混合物的原料難以保證所有批次都完全一樣;另一方面為防止產品出現不可挽回的質量損失,通常要求模型的預測值盡可能低于或者高于目標值,從而降低由于模型預測誤差所帶來的生產損失。針對以上問題,本文對雙向門控循環單元(BiGRU)的損失函數進行了改進,并將其用于間歇過程質量指標的預測。雙向循環神經網絡可以整合前后批次數據時序信息,充分挖掘原料不確定性帶來的批次間時序特征。改進的損失函數通過對不同的預測值施加不同的懲罰,使得預測值滿足實際生產中的要求,提高算法的實用性。
間歇過程為多次重復生產[12],與單純的時序數據相比,其數據中還包含了間歇過程的批次,因而一般以三維數據 X(I×J×K)表示,矩陣 Y(I×1)表示最終產品質量變量,其中I 表示間歇過程的批次,J 表示過程變量的維數,K 表示每一次間歇過程的采樣數,如圖1 所示。

圖 1 間歇過程中的數據Fig. 1 Data in batch processes
在實際生產過程中,常常存在外購原料產品質量不確定或自產原料生產過程不穩定而導致的原料供應波動頻繁問題,造成模型輸入變量的不確定,對采用傳統算法進行系統建模與分析造成嚴重困擾[13]。然而這種不確定性最終在各批次生產過程變量中得以表現,即各種不確定性的隱藏信息能夠通過圖1 所示的三維數據間接得到。本文采用雙向門控循環單元神經網絡對序列數據進行特征提取,以期得到足以反映不確定性的隱藏特征,改善模型的預測精度。
循環神經網絡的優勢在于處理時序數據,具體表現為網絡中當前時刻的輸出依賴于網絡對之前信息的記憶,即隱藏層的輸入不再是單純的當前時刻輸入層的輸出,還包括前一時刻的隱藏層的輸出。常見的循環神經網絡的結構主要有3 種,包括兩種多對多結構以及一種多對一結構,如圖2 所示。

圖 2 RNN 結構Fig. 2 RNN structure
圖2 中多對多的結構有兩種,第1 種要求輸入序列與輸出序列等長,因此該結構應用范圍較窄;第2 種結構中輸入、輸出為不等長的序列,是一種Encoder-Decoder 結構,常用于機器翻譯、語音識別等領域[14-15]。而多對一的結構則常用于處理序列分類或者回歸問題,最終只需給定一個輸出結果,因而本文選取多對一的循環神經網絡結構,具體的網絡預測結構如圖3 所示。

圖 3 RNN 網絡預測結構圖Fig. 3 RNN network prediction structure diagram
對于給定序列 x =(x1, x2, ···, xn),RNN 通過對輸入空間和內部狀態空間分別進行操作,計算出隱含層序列 h =(h0, h1, h2, ···, hn),并由 RNN 的終端輸出計算得到最終的預測值,如式(1)、式(2)所示。

其中:xt、ht分別為t 時刻的網絡輸入、網絡輸出;Whh為隱含層到隱含層的權重;Wxh為輸入層到隱含層的權重;bh為隱藏層的偏置;fa為激活函數;g 為預測問題的仿射函數。
RNN 的單層網絡結構以及基于BPTT(Back Propagation Through Time)的網絡參數求解算法決定了RNN 在訓練過程中會存在梯度消失或者梯度爆炸的情況,網絡參數學習困難,很難學到長期的依賴[16]。
由Hochreiter 等[17]提出的LSTM 神經網絡是在RNN 的基礎上發展而來,相對于RNN 的網絡結構更為復雜,在RNN 的基礎上增加了3 個門結構,即3 種不同的網絡結構。每種網絡結構的神經元數目是一致的,通過控制門的開關進而控制信息流的傳遞,在一定程度上緩解了RNN 存在的梯度消失或者梯度爆炸問題。LSTM 的結構單元如圖4 所示。其中sigmoid、tanh 分別為神經網絡的激活函數,具體公式如式(3)、式(4)所示。

圖 4 LSTM 單元結構圖Fig. 4 Structure of LSTM

門控循環單元由Cho 等[15]于2014 年提出,并將其用于機器翻譯領域。GRU 與LSTM 相仿,都是通過引入特殊的門結構來減少梯度彌散,使得誤差得以長距離地傳播,從而有了長期記憶的能力。不同的是,GRU 將LSTM 的門結構減少為更新門和重置門,模型更加簡單,網絡參數更少,收斂更快。GRU 的具體結構如圖5 所示。其中GRU 中的更新門替換了LSTM 中的遺忘門和輸出門,用于控制當前信息中哪些信息需要流入候選狀態。更新門的具體公式如式(5)所示。
門控循環單元

重置門決定了前一時刻隱藏層單元輸出ht-1對候選狀態的影響。具體公式如式(7)所示:

其中:Wr為重置門的權重參數;br為重置門的偏置。
最后GRU 的輸出單元由上一時刻隱藏層輸出、更新門狀態以及當前候選狀態共同決定,如式(8)所示:


圖 5 門控循環單元結構圖Fig. 5 Structure of GRU
Schuster 等[18]于1997 年提出了雙向循環神經網絡(BiRNN)。相較于普通的單向RNN 信息只能在正時間方向上進行傳播,BiRNN 擁有兩組隱藏層信息,一個是用于正時間方向上的輸入序列,另一個是在負時間方向上的輸入序列。因此BiRNN 可以更好地捕獲時間序列中的信息,在語音識別、機器翻譯、情感分類等方面得到廣泛應用[19-20]。具體結構如圖6 所示。

圖 6 BiRNN 結構圖Fig. 6 Structure of BiRNN
BiRNN 的輸出由正向層的隱藏層輸出與反向層的隱藏層輸出構成,如式(9)所示:

其中: ⊕ 為連接運算符; ht表示 t 時刻 BiRNN 的輸出狀態。
傳統算法被廣泛應用于批次內模型的建立,同時傳統的批次間的模型無法充分挖掘到批次間的時序特征信息,而RNN 在時序數據建模中表現優秀。考慮到 RNN 存在長期依賴的問題,而 LSTM 和GRU 可以彌補此問題,同時GRU 相較于LSTM 網絡參數少,便于模型的訓練,因此本文采用BiGRU 作為預測模型的主要部分,從而可以提取到豐富的特征信息,提高模型的精度。
神經網絡中的損失函數,又叫誤差函數,用于刻畫神經網絡中輸出值與真實值之間的誤差程度,損失函數越小,模型的魯棒性越好。神經網絡的訓練是經過前向傳播計算損失函數值,并通過反向傳播不斷更新網絡的權重和偏置,從而使損失函數不斷減小至最低值。均方誤差(Mean Square Error,MSE)是神經網絡中最常見的損失函數之一,用于表征預測值與目標值之間誤差平方的均值,如式(10)所示:

由于MSE 對預測值與目標值的差進行平方操作,僅僅考慮了預測值偏離真實值的程度,當預測值偏高于或者偏低于目標值同一程度時,MSE 給予相同懲罰。
雖然可以使用損失函數評估模型性能,并能提供優化的方向,但沒有哪一種損失函數能滿足所有預測需求。損失函數的選取依賴于選取的算法、參數數量、異常值、導數求取的難易和預測的置信度等若干方面,因此需要根據要處理的實際問題來確定相應的損失函數[21]。
在實際模型預測中,往往期望在滿足預測精度的前提下,預測值盡可能低于或者高于目標值。例如Zhao 等[21]考慮到發動機的維護與更換的實際情況,在利用神經網絡對發動機的壽命進行預測時指出,模型預測的原則是在預測值應該處于發動機即將報廢時,即在保證模型預測精度的同時,預測值應該盡可能低于真實值。而在某些間歇過程中,為了保證效益的最大化,對于最終產品質量的預測有時也會要求預測值高于或者低于真實值,不同的產品要求不同,需要就具體問題而言。本文針對間歇過程最終質量預測的特點,提出了不對稱損失函數(Asymmetric Loss Function,ALF),如式 (11)、式 (12)所示。

式中:ypredict,i為第 i 個樣本的預測值;yactual,i為第 i 個樣本的真實值;di為第i 個樣本的預測值與真實值的差;a 和 b 均為自定義系數。當 a>b 時,期望預測值大于真實值;當a<b 時,期望預測值小于真實值。
為了更好地說明該損失函數的優點,選取a>b 的情況,將其與MSE 進行對比。針對單一樣本,兩個損失函數的對比結果如圖7 所示。

圖 7 損失函數對比圖Fig. 7 Comparison of loss functions
由圖7 可看出,當預測值大于真實值時,ALF 相對于MSE 變化更為平緩,給予的懲罰較小;當預測值小于真實值時,ALF 相較于MSE 增長趨勢明顯加快,給予的懲罰較大。以ALF 作為神經網絡的損失函數對網絡進行訓練,可以有效地調整懲罰值的大小,使預測值盡可能偏高于真實值,滿足期望的預測原則。
樹脂生產是一個多階段間歇過程,其生產過程主要包括縮聚和干燥脫水兩個階段,每個階段都有特定的控制目標、不同的主導變量以及過程特性[22]。在縮聚階段,首先將酚類、醛、催化劑依次加入反應釜中進行縮聚反應,一段時間后切換至干燥脫水階段;在干燥脫水階段,反應釜抽真空,在一定的真空度下樹脂脫水,維持一定時間后,破真空取料,生產過程結束[23]。其中作為反應物的酚類本身為一種混合物,存放于中間罐中,隨著時間的推移,里面的成分也隨之緩慢發生變化,具體可通過色譜分析其組成,但一般情況下不分析,即使分析,也難以分析出所有物質。因而,原料成分的不確定性為準確預測過程最終產品的質量帶來很大難度,同時這種不確定性伴隨著時間的變化,即過程批次本身存在一定的時序性。本文以某類樹脂的生產過程為研究對象,對樹脂的軟化點進行預測。
采集400 批生產過程中的過程變量數據,包括酚類和醛的流量以及反應釜的壓力、溫度和質量,實驗室離線測得的樹脂軟化點作為預測變量。由于樹脂的操作流程通常是固定的,根據生產過程中的操作條件獲取不同操作階段反應釜溫度、質量和壓力的起始值和終止值,將原有的不等長過程數據提取為各批次等長的過程數據,并根據原料的流量得到各批次反應物的質量。根據最大信息系數對過程數據和反應物質量進行特征選擇,選擇出與樹脂軟化點相關性最強的4 個變量,分別為醛的加入量、反應起始的溫度值、反應終止的溫度值以及真空度,得到模型的輸入變量X400×4。為避免各變量的量綱對模型預測結果的影響,利用最大最小值法對樣本進行歸一化處理。
選取均方根誤差(RMSE)、R2來評估模型擬合結果的好壞。其中RMSE 體現模型預測值偏離真實值的平均程度,R2用來評估模型的可靠性。此外,為了更直觀地表示改進損失函數后的優越性,采用可達率(Reachable Ratio,RR)來表征預測值高出真實值的個數。3 個指標的定義如式(13)~ 式(15)所示。

利用樹脂生產過程數據,通過程序自循環尋優的方法進行模型參數設定,主要調節的參數包括時間窗口大小、網絡結構和訓練次數等。通過限定變量法,每次改變一個參數并監測RMSE 值,比較分析確定最優參數,為減小模型訓練中隨機性的影響,重復操作10 次取平均值。
由于BiGRU 神經網絡需要輸入時間序列數據,對400 個批次數據以滑動窗口為5 進行連續采樣,將各滑動窗口的最后一個批次數據對應的質量指標作為模型預測值,得到396 個樣本。為更好地挖掘數據中存在的不確定性,將其中前350 個樣本為訓練數據集,后46 個樣本為測試數據集。最終本文的預測模型結構如圖8 所示,設置BiGRU 神經網絡的隱藏層神經元個數為80,采用Adam 優化器對網絡參數進行訓練,epoch 為 100,batch_size 為 20。

圖 8 模型結構Fig. 8 Model structure
為了證明所提出的損失函數的優越性,分別選取MSE 和ALF 作為神經網絡的損失函數,對模型進行訓練。在樹脂生產過程中,當樹脂的軟化點低于期望值時,可以通過補加醛提升樹脂的軟化點,而樹脂的軟化點高于期望值時,會導致該批次產品價值降低。為了保證生產效益,樹脂軟化點的預測原則與發動機壽命的預測原則恰恰相反,軟化點模型預測的結果應該高于真實軟化點值。針對樹脂軟化點預測模型,ALF 中參數 a、b 分別設為 1.7、0.8。
為了說明本文模型在樹脂質量預測中的有效性,將 MPLS[5]、SVR[6]、NN[24]、損失函數為 MSE 的GRU 模 型[9]( GRU-MSE) 、 損 失 函 數 為 MSE 的BiGRU 模型(BiGRU-MSE)[18]與損失函數為 ALF 的BiGRU 模 型 ( BiGRU-ALF) 進 行 性 能 比 較 。 在SVR 中,利用網絡搜索進行尋優,最終核函數選擇高斯核函數,C 為 3.1,σ 為 0.1;在 NN 中,全連接神經網絡層數設置為3,隱藏層使用sigmoid 激活函數,各層的神經元個數為{80,40,1};GRU-MSE 則由 GRU 以及全連接層構成,神經元個數分別為70 和1,全連接層使用 sigmoid 激活函數;BiGRU-MSE 由 BiGRU 以及全連接層構成,神經元個數為65 和1,全連接層使用sigmoid 激活函數。圖9 為6 個模型對43 個生產批次數據的預測結果對比圖。
由圖9 可以看出,MPLS 的預測效果最差,而SVR 與NN 的預測結果相似,部分批次預測結果偏差較大,都略差于GRU 模型。GRU 模型的預測效果比傳統算法有了極大的提升,說明在對存在原料不確定性的間歇過程進行特征提取時,GRU 憑借著更強的記憶能力,挖掘到時序方面的特征,同時也說明間歇過程最終產品質量指標與原材料成分的變化有著密切關聯。GRU 的擬合程度總體上較優,但是個別批次表現不夠理想。而BiGRU 綜合考慮了正向時序特征與反向時序特征,得到更為深層次的全局特征,預測結果較優于GRU。圖10 為各GRU 預測結果的絕對誤差對比分析圖。

圖 9 6 種算法的軟化點預測結果Fig. 9 Softening point prediction results of six algorithms

圖 10 3 種算法預測結果的絕對誤差對比圖Fig. 10 Absolute error comparison of three algorithm prediction results
從圖 10 可看出,相較于 BiGRU-MSE,BiGRUALF 的絕對誤差(真實值減去預測值)大部分在0 刻度線以上,即BiGRU-ALF 預測結果普遍有所提升,表明改進后的BiGRU-ALF 在滿足預測精度、確保效益最大化方面的效果符合實際需要,進一步說明了改進后的算法具有更好的工業實用性。因為NN 與GRU 這類機器學習算法在預測結果上存在小范圍的波動性,將20 次訓練結果的平均值進行算法性能比較,用于更清晰地說明該網絡結構的有效性。
表1 列出了針對測試樣本計算出的評價指標結果,從表中可看出BiGRU-MSE 模型的預測精度相較于其他模型有了明顯的提高,說明BiGRU 可以獲得原料不確定性帶給批次生產過程的更為準確的時序規律。雖然BiGRU-ALF 的預測精度低于BiGRUMSE,但是其可達率較高,同時BiGRU-ALF 的預測精度也略高于GRU-MSE 的預測結果,即BiGRUALF 模型能夠在保證模型精度的情況下,更好地滿足工業生產中關于最大化經濟效益的要求,也表明改進后的雙向門控循環單元神經網絡更適合用于樹脂軟化點的預測。

表 1 算法性能對比Table 1 Performance comparison of different algorithms
針對傳統算法難以解決原料不確定下間歇過程的建模問題,本文提出了基于BiGRU 模型的間歇過程產品質量預測方法,并在某類樹脂的軟化點質量預測中進行了方法驗證。與MPLS、NN、SVR 以及GRU 算法相比,基于BiGRU 模型的間歇過程產品質量預測方法獲得了比傳統算法更好的預測結果,驗證了雙向門控循環單元神經網絡對工業間歇過程數據有著更好的預測能力。為了提高系統的容差率和預測結果的實用性,本文采用BiGRU-ALF 模型,通過對預測結果的不同偏差,給予不同的懲罰,使得預測結果擁有更大的安全裕度,為間歇過程的建模研究提供了新的思路,也對深度學習在間歇過程中的現場應用提供了一定的指導。