郭小萍,馬美卉,李 元
(沈陽化工大學 信息工程學院,沈陽 110142)
科學技術的飛速發展對化工過程提出了更為嚴格的要求。保證過程安全、提高產品質量也逐漸成為化工工業過程追求的目標。在化工過程中,對產品質量進行監測和控制對于安全穩定生產至關重要[1-2]。快速有效地預測產品質量,做出準確及時的判斷,對于提高生產質量有決定性作用[3]。然而,由于環境惡劣、儀器成本昂貴、測量延遲大等原因,大多數關鍵質量變量難以在線測量,無法為過程控制提供實時反饋消息[4]。不同的是,有許多易于測量的常規過程變量,可以通過傳感器輕松測量。因此,為了解決質量變量難以在線獲得的問題,建立預測模型,用各種易于測量的過程變量來估計難以測量的質量變量[5]。近些年來,這逐漸成為解決上述問題最有效的方法之一,并且已成為研究熱點[6]。
然而,化工過程具有非線性、多變量等特征。針對這些特征,X.Yuan等人提出核主成分回歸預測模型(KPCR),之后其基礎上又提出一種局部加權核主成分[7]回歸模型(LWKPCR)。相比之下,該方法對非線性過程的質量預測更加有效。Kaneko曾提出一種基于在線支持向量回歸(SVR)的方法[8],建立了工業過程變量間關系快速變化的預測模型。Chen Lu等人提出一種混合核偏最小二乘(KPLS)方法[9],對參數及權重進行優化選取從而提高質量預測精度。
Shang et al.等人首次利用深度信念網絡構建原油蒸餾裝置的回歸模型[10],討論了深度學習在工業過程中的獨特優勢。He Yuliang等人建立了具有多個輸入、單個輸出的BP神經網絡[11]的預測模型。
化工過程多個變量之間不僅呈現復雜的非線性相關,也避免不了干擾影響,通常伴有噪聲。Liu linyue曾提出基于PCA-BP神經網絡的預測模型[12],基于主成分分析(PCA)去除影響因素間的線性相關,將主成分分析結果作為 BP 神經網絡的輸入。Chen Yan也曾提出SAE-BP神經網絡預測方法[13],其嘗試使用稀疏自編碼器(SAE)進行非線性特征提取,提取到的特征輸入BP神經網絡進行預測。Wan Liang提出的已有的DAE-BP結構[14],其利用深度自編碼器降低數據維度,然后基于BP神經網絡建立了低維編碼序列與預測變量之間的回歸模型。在股票預測領域驗證了該方法的有效性。
基于上述討論,本文提出一種改進的BP神經網絡質量預測方法。通過降噪自編碼器提取原始數據有效特征,降低其存在的噪聲,保證了數據的真實度并提高魯棒性。將提取的有效特征構成新的輸入樣本,BP神經網絡可映射任意非線性關系,用其建立質量預測模型。經過不斷訓練,對網絡參數進行調優,直至獲得期望效果。將本文方法用于脫丁烷塔過程丁烷濃度預測。更進一步地,為了驗證本文方法的優勢與有效性,本文引入BP、PCA-BP、AE-BP進行對比分析。實證分析顯示:本文所使用的DAE-BP神經網絡能夠較好地提取非線性特征并進行預測,其預測精度優于其他方法。
自編碼器(autoencoder, AE)是一種神經網絡,具有相同的輸入和輸出。其借助稀疏編碼的思想,目標是使用稀疏的一些高階特征重新組合完成樣本重構。 AE是一種數據的壓縮算法,屬于無監督學習。
圖1為自編碼器的結構圖,可見,它分為編碼器和解碼器兩部分。編碼器部分將原始數據輸入x映射為隱藏表示h,通常,隱式表示h可以通過非線性映射函數f獲得。
h=fθ(x)=s(Wx+b)
(1)

圖1 自編碼器結構圖

(2)


降噪自編碼器(denoising autoencoder, DAE)是自編碼器的一個變體。在自編碼器基礎上,將噪聲注入輸入信息,然后利用含有噪聲的“腐壞”樣本重構無噪聲的“干凈”輸入。這就是降噪自編碼器(denoising autoencoder, DAE)的原理。降噪編碼器經過人為破壞輸入信號實現兩個目的。首先,避免隱藏單元在傳統編碼器中學習到沒有具體意義的恒等函數。其次,加入噪聲又降低噪聲干擾,迫使網絡學習更具魯棒的不變性特征,以獲得更為有效的輸入表達。
傳統自動編碼器單純依靠最小化輸入與重構信號之間的誤差來得到輸入的隱含層特征表示,但這種訓練策略并不能保證數據的本質特征被提取出來,可能導致編碼器學習到的特征僅僅是原始輸入的復制。而DAE就是通過對比和進行學習,嘗試著去填充缺失的信息,進而學習到的數據結構,使得提取到的特征更能反映原始輸入的特點。

圖2 降噪自編碼結構圖
DAE由編碼器和解碼器兩部分構成,主要原理如下。
對原始輸入數據加入噪聲:

(3)

(4)

(5)

對比圖1與圖2可發現降噪自編碼器與自編碼器對輸入層的處理不同。自編碼器直接將初始信號輸入編碼解碼框架,而降噪自編碼器在原始輸入信息上添加噪聲,將加噪后的數據集當成輸入信息,訓練整個網絡,在模型訓練過程中學習存在噪聲數據的規律,從而把噪聲去掉。
降噪編碼器的目標是使損失函數最小化。
(6)
DAE依據輸入信號和重構信號之間的誤差來調整網絡參數,以最小化誤差。訓練過程不需要額外的標簽信息,使用傳統的基于梯度的方式進行訓練,求得損失函數的最小值得到網絡的最佳參數。由于典型的激活函數是光滑且連續可微的,因此實現起來較容易。
BP神經網絡是一種成熟的、有組織和學習能力的非線性映射方法,可大規模并行處理數據,系統地解決多層神經網絡隱含層連接及權值學習的問題。適用于解決傳統算法或是計算方法難以解決的問題,成為處理復雜問題的有效工具[15]。它能從案例中學習知識,將各種定量或定性的因素盡可能地作為變量加以輸出,建立變量與輸出間的非線性映射[16]。化工過程數據通常表現出為復雜的非線性,并且過程變量較多,線性模型已無法達到預期效果。因此,基于神經網絡的模型開辟了新道路。
BP 神經網絡是一種按誤差逆傳播的多層前向型網絡,學習過程由信號的正向傳播和誤差的反向傳播兩個過程組成。結構由輸入層、隱含層以及輸出層構成,每一層都有N個神經元。每一層與層之間通過權值相互連接,同一層的神經元相互之間并無連接[17]。其權值的調整取決于預期輸出與實際輸出之間的差異。正向傳播時,樣本特征從輸入層輸入,信號由每個隱藏層處理,最后樣本特征從輸出層輸出。針對網絡的實際的輸出與期望輸出之間的誤差,從最后一層逐層傳遞誤差信號,獲得各層的誤差學習信號,然后再根據誤差學習信號來修正各層神經元的權值,各層調整權值的過程是周而復始地進行。
BP神經網絡算法首先對網絡進行初始化設置,然后依據給定的輸入向量與期望的輸出值[18]。可獲得初始預測結果。若輸出與期望值之間誤差較大,無法實現功能,便不斷進行權值修正,網絡不斷學習訓練,達到預期結果,此時便認為模型搭建完成[19-20]。使用BP神經網絡構建回歸模型,對質量變量進行預測。模型包括三層:輸入層,隱含層,輸出層,結構圖如圖3所示。

圖3 BP神經網絡結構圖
輸入層神經網絡接收到歸一化的變量后,向隱含層的方向傳遞,然后經過加權求和并使用激活函數將得到的值傳遞給輸出層,輸出層重復加權求和及激活函數的步驟,最終輸出一個結果。設輸入層、隱含層及輸出層的神經元個數分別為n、m和q則:
輸入層:Xi=xi
(7)

(8)

(9)

由于各個變量的數據范圍在實驗過程中差異較大,取值都不屬于同一個數量級,在神經網絡的訓練的過程中,可能會引起數據收斂過慢或根本無法收斂等問題。數據歸一化的目的就是通過轉換將不同數量級的數據統一到同一數量級,這樣使得比較起來更有意義,能更好地反映數據本身的特點。
Min-max歸一化通過對原始數據進行線性變換,使變換結果落到[0,1]區間,函數為:
(10)

數據歸一化有兩大優點:(1)歸一化可以加快迭代過程中,梯度下降求最優解的速度;(2)歸一化可以提高精度。
均方根誤差(root mean square error,RMSE)和決定系數(R-Square,R2)一般用來評估預測性能,分別描述為:
(11)
(12)

DAE-BP質量預測算法包括離線建模和在線預測兩部分,流程圖如圖4所示。

圖4 DAE-BP神經網絡流程圖
離線建模主要步驟:
1)獲取樣本,按一定比例分割為訓練集與測試集兩部分,為了減少泛化誤差,通過訓練集不斷訓練模型,測試集用來測試模型準確性。分別對數據歸一化處理并添加噪聲。
2)向DAE網絡輸入數據,輸入信號會根據其原理,采用非監督的逐層訓練方法,預訓練各層神經網絡,對網絡的隱藏層逐步訓練,獲取DAE網絡中的權值w和偏置值b,作為初始網絡參數。添加噪聲后的數據作為訓練樣本對整體的網絡進行微調,利用反向傳播算法得到最優網絡參數完成網絡訓練。訓練完成后,便得到去噪后的訓練數據集并將其輸出。
3)構建BP神經網絡,將從DAE輸出的訓練集樣本作為新的輸入,微調網絡參數,訓練模型。利用訓練樣本反復訓練,建立輸入參數與目標輸出之間的非線性關系。若滿足精度要求,將網絡中參數傳輸給測試集;若不滿足,依據真實和期望之間誤差情況修改參數,重新訓練,直到滿足要求。
在線預測主要步驟:
1)對測試集進行歸一化處理,并人為添加噪聲,將最優網絡參數傳輸給測試集,處理后的數據輸入訓練好的DAE模型以獲得去噪后的干凈數據信息,將其輸出。
2)根據離線建模部分確定的預測模型,將測試樣本導入訓練好的網絡模型中,測試神經網絡的預測性能。計算新獲取的測試數據的質量預測值及評價指標,對模型預測結果進行評估。
本文以化工過程案例為基準,使用采集的脫丁烷塔數據來驗證模型的有效性。脫丁烷塔是煉油過程中脫硫和石腦油分離裝置的重要組成部分。其主要任務之一是降低脫丁烷塔底部的丁烷(C4)濃度。然而,C4濃度是通過安裝在順序脫異戊烷塔頂部的氣相色譜儀測量的,該塔與脫丁烷塔相距較遠[21-22]。這樣,C4濃度的測量會有很大的延遲。為了解決這個問題,使用預測模型實時估計脫丁烷塔底部的丁烷濃度。
整個實驗過程共采集到原始數據2 393組,且所有的輸入樣本都有相應的輸出。為了準確預測丁烷濃度,選擇7個與其關系最密切、易于測量的輔助變量完成預測。表1為過程變量的詳細描述:

表1 脫丁烷塔7個過程變量描述
整個模型使用的過程變量的樣本個數和輸出變量的樣本個數都為2 393,即所有的輸入樣本都有相應的輸出。考慮到對多維數據展開實證研究,故將所有的樣本數據按照7:3的權重分為訓練集和測試集。整個數據集分為1 675組和718組,前一部分為訓練數據集,后一部分為測試數據集。
在神經網絡模型中,隱層節點的選擇應考慮兩個要求。選擇的節點太少,網絡傳輸的信息量太少,學習訓練效果達不到要求。節點過多會造成訓練時間的浪費,可能無法提高準確性。
在模型訓練過程中,由于其損失函數中含有正則項,往往需要選取合適的參數進行調整。降噪自編碼器作為一種典型的無監督學習模型,通過引入噪聲來增加編碼的魯棒性。首先對原始數據進行一定程度的破壞,添加噪聲,然后將損壞后的數據輸送到編、解碼框架。編碼框架負責捕捉數據波形特征,據此消除噪聲;解碼框架能夠擴展特征圖,提取數據細節信息,得到重構后的數據。原始數據集總共8個維度,前七列為過程變量,最后一列為質量變量。訓練樣本集為1 675×8的數據矩陣,測試樣本集為718×8的數據矩陣。對其歸一化處理后添加大小相同的噪聲張量,將其范圍限制在0和1之間。一個輸入層,一個隱藏層和一個輸出層構成了整個DAE模型。其中,隱藏層神經元個數設置為六時,誤差最小,因此確定DAE網絡結構為8-6-8,分別為各層的神經元個數。輸入層與隱藏層、隱藏層與輸層之間的傳遞函數選取tanh激活函數,網絡訓練次數及學習率分別設為 600及 0.1。

圖5 方法預測效果
為全面考慮可控參數對丁烷濃度的影響,將塔頂塔底溫度、壓力等7個參數作為BP神經網絡結構的輸入,以丁烷濃度為BP神經網絡的輸出。由于多層神經網絡是一種無需預訓練的有監督學習算法,因此只需使用標記樣本進行訓練。BP神經網絡模型結構同樣包括輸入層、隱含層、輸出層,層數都為一。通過校正各層神經元的權值,達到誤差信號最小化。訓練樣本集為1 675×7的數據矩陣,測試樣本集為718×7的數據矩陣。利用訓練樣本反復訓練,建立輸入參數與目標輸出之間的非線性關系,輸入層與隱藏層、隱藏層與輸出層之間的傳遞函數均采用選取relu激活函數。最終確定模型結構為7-10-1,分別為各層結點個數。網絡訓練次數及學習率分別設為 400及0.2。整個模型通過RMSE及R2的值評判預測結果。
為了進行性能比較,設置了四組對比實驗。預測結果如圖5所示。
基于BP、PCA-BP、AE-BP及DAE-BP方法的預測結果如圖5所示。預測結果主要觀察真實值與預測值兩條曲線之間的差距,差距越小即兩條曲線越吻合,表示預測效果越好。為了公平比較不同的網絡預測性能,所有構建的網絡都具有相同的結構,這可以消除不同網絡結構造成的性能差異。從圖(a)可以看出,采用BP方法時,由于單一的BP網絡沒有考慮數據本身的含噪問題,僅考慮非線性特征,導致真實值與預測值存在一定的差距,沒有很好地捕捉到樣本實際質量變量的總體趨勢,預測效果不佳。結合圖(b)(c)分析得,數據樣本利用PCA或者AE提取有效數據信息,PCA通過將初始變量降低維度又升高維度的原理完成數據重建,尋找新的基坐標減少自由度,也保留了原有數據維度。AE通過將初始變量輸入編碼解碼框架,對原始數據進行重構,學習數據規律,完成基本數據去噪。再將其作為結構相同的BP神經網絡預測模型的輸入,從圖中可看出實際值與預測值大部分吻合,也可以較準確地預測丁烷含量的值,一定程度上也改善了基本的BP存在的問題。綜合分析,圖(d)DAE在AE的基礎上改進了性能,避免了數據簡單重構的問題,使其模仿加噪數據的規律并進行訓練學習將噪聲去除,使用DAE-BP后質量變量即丁烷含量的預測值基本上跟隨實際值的變化而變化,預測性能有顯著提高。綜合所有的結果圖,不難看出,DAE-BP預測更穩定,沒有大的波動,具有比上述3種模型更好的魯棒性。
為了更清晰地衡量預測效果,記錄了每種方法的RMSE和R2的值,如表2所示。越小的RMSE和越接近于1的R2代表預測效果越好的模型。由于BP未經過數據特征提取,4種方法中表現最差。PCA-BP和AE-BP經過了網絡訓練數據處理獲得了合適的初始網絡參數,能夠對復雜數據獲得更好的預測精度。相比之下,明顯優于原來的BP預測模型, 預測精度有了提高,不論在訓練集還是測試集RMSE的值變小了,R2也越來越向1靠攏。DAE-BP通過利用數據信息克服無監督預訓練的限制,可以進一步降低預測RMSE。可以看出,PCA-BP和AE-BP對單一BP模型的預測性能改善低于DAE-BP,三者預測性能顯著優于BP。DAE-BP預測模型的RMSE值是最小的,R2非常接近于1。經過DAE改進后的BP算法預測誤差為1.2%,RMSE相比單一的BP算法提高了3.2%精度,較PCA-BP及AE-BP預測誤差精度分別提高了2.3%、1.9%;決定系數R2為99.5%,相比單一的BP算法提高了8.7%精度,較PCA-BP及AE-BP預測精度分別提高了5.1%、3.9%。相比其他模型預測精度有更好的表現,性能優于其他方法,表現出最好的預測性能。說明該方法在化工過程質量預測的優越性。

表2 不同方法結果比較
鑒于化工過程數據多變量非線性、存在噪聲干擾從而影響預測精度的問題,提出了基于降噪自編碼器和BP神經網絡相結合的混合模型。首先,DAE通過不斷訓練和學習,嘗試著去改善受損的信息,使得提取到的特征更能反映原始輸入的特點,有效地利用數據樣本進行網絡預訓練。不僅提高模型的抗干擾能力,增加噪聲魯棒性約束,而且可以保持輸入數據的保真度。將獲取的干凈信息輸入BP神經網絡預測模型進行有監督學習,建立過程變量與輸出質量變量的非線性關系,克服了單一網絡的局限性,提升了質量預測的準確率。為了驗證其效果,引入了主成分分析和自編碼器對數據進行有效信息提取,并將獲取的數據樣本輸入相同的BP神經網絡實現質量預測,構建相同網絡是為了公平比較每種方法的預測性能。同時引入了均方根誤差、決定系數預測評價指標評價預測效果。實驗表明,降噪自編碼器結合BP神經網絡的預測模型具有相對穩定的預測誤差波動,表現出較小的均方根誤差及接近于1的決定系數,因此,本文提出的方法更能滿足質量預測的需求。
本文實驗應用的數據來源實際化工工業過程,對相似工業情況的研究具有借鑒意義,同時也存在一定的局限性,因此在今后的研究中,將繼續收集具有代表性的樣本數據,采用更多的新案例驗證所建立模型。