胡 坤,羅維平*,2,賈樹林
(1.武漢紡織大學 機械工程與自動化學院,湖北 武漢 430200; 2.湖北省數字化紡織裝備重點實驗室,湖北 武漢 430200)
為了節能減排、減少汽車尾氣排放對大氣環境影響,世界各國都在致力于汽油的清潔化,汽油清潔化的重點是降低汽油中的硫、烯烴含量,同時盡量保持其辛烷值(Research Octane Number, RON)[1]。2013年歐盟實施歐VI標準,規定烯烴含量不高于18%;2019年我國對車用汽油制定的標準為烯烴含量不高于18%,然而,世界燃油規范制定的標準為烯烴含量不超過10%。由于超過70%的汽油是催化裂化生產得到的,因此成品汽油中95%以上的硫和烯烴來自催化裂化汽油,故必須對催化裂化汽油進行精制處理,但是現有的技術在對催化裂化汽油進行脫硫和降烯烴的過程中,普遍降低了汽油辛烷值,降低了經濟效益。辛烷值是反映汽油燃燒性能的最重要指標,是一個國家煉油工業水平的體現。
傳統的汽油辛烷值測定方法是采用ASTM-CFR標準方法[2]對汽油進行分析,此方法費時且機器結構龐大,操作和維護運行費用高,因此測定成本高。也有許多研究者采用紅外光譜[3],此方法具有測定速度快、可用于在線分析、檢測成本低等優點,但是由于得到的操作位點較多,幵且存在許多不確定因素的影響,其應用受到一定的限制。
因此本文提出一種基于BP(Back Propagation)神經網絡的預測模型,對辛烷值進行預測。BP神經網絡是一種按照誤差逆向傳播算法訓練的多層前饋神經網絡,該網絡實質上實現了一個從輸入到輸出的映射功能,具有實現任何復雜非線性映射的功能,且具有自學、推廣的能力,可以很好的對多變量指標影響的汽油辛烷值進行預測。
由于煉油工藝過程的復雜性以及設備的多樣性,在一定程度上增加了數據的采集量,得到的多變量大樣本數據(325個樣本、367個操作變量)雖然對于研究和應用提供了更豐富的信息和更高的精準度,但是造成操作特征變量的維度較大,且在大多數情況下,操作變量之間具有高度非線性和相互強耦聯的關系,會增加計算量和增加分析問題的復雜性,因此需要借助主成分分析法(Principal Component Analysis, PCA)對原始數據進行降維處理,通過提取重要的維度特征,生成一組新的相互無關的綜合指標來代替原指標,從而消除冗余信息[4]。
(1)首先對原始樣本數據進行標準化處理,其次計算協方差矩陣,得到的協方差矩陣,即樣本相關系數矩陣R:
其中和分別表示原始樣本數據矩陣的第i行均值和第j列均值,xkj表示標準化后指標變量。
(2)計算樣本相關系數矩陣R的k個特征值λ和對應的k個單位特征向量α。特征方程如下:

得到p個特征值,其中I表示單位向量。
(3)計算主成分貢獻率和累計貢獻率

λi表示第個i特征值。

將原始樣本數據進行數據預處理之后得到35個主要成分因子,由于此35個主要成分因子的累計貢獻率為92.156%,可以很好的表征原始樣本數據的特征,因此可將該35個主要成分因子作為數據歸一化的輸入數據。
數據歸一化處理是數據挖掘的一項基礎工作,不同評價指標往往具有不同的量綱,會影響到數據分析結果[5]。為了消除指標之間的量綱影響,需要進行數據歸一化處理,以解決數據指標之間的可比性。原始數據經過數據歸一化處理后,各指標處于同一數量級,適合BP神經網絡預測模型進行特征學習[6]。
本文采用Z-score標準化方法對數據進行歸一化處理,Z-score標準化方法也稱為均值歸一化。經過處理的數據符合標準正態分布,即均值為0,標準差為1。具體數學表達關系式如式(5)所示:

其中X*表示經過歸一化后的數據,X表示原始數據,μ表示所有樣本數據的均值,σ表示所有樣本數據的標準差。將上述經過歸一化后的數據作為構建預測模型時的輸入數據特征。
BP神經網絡是一種基于誤差逆傳播算法訓練的多層前饋網絡[7],也稱為反向傳播神經網絡。通過對樣本數據的訓練,不斷調整輸入與隱層節點的連接強度和閾值,使誤差函數沿梯度方向下降,以實現最小化網絡的實際輸出值與期望輸出值之間的誤差均方差。它是應用最為廣泛的神經網絡學習算法之一,多應用于函數逼近、模型識別分類、數據壓縮和時間序列預測等。因其結構簡單,使用方便,具有很強的非線性映射能力和柔性的網絡結構。神經網絡的結構如圖1所示。
一個神經網絡由輸入層(Input Layer)、隱藏層(Hidden Layer)和輸出層(Output Layer)所組成[8]。其中層與層之間連接的為參數權重(如圖1)。因此所有的網絡都可以理解為由這三層和各層之間的權重組成的網絡,只是隱藏層的層數和節點個數不同[9]。

圖1 神經網絡結構圖
輸入層是信息的輸入端,該預測模型的輸入即為可以表征數據特征的變量x。當然,輸入也不僅僅局限于一個變量,也可以是多個變量。
隱藏層是信息的處理端,用于進行數據的處理和計算,也可以進行數據的變換,比如非線性變化。
輸出層是信息的輸出端,也就是我們想要的結果。在本文中即是預測所得產品性質中RON。
權重參數是非常重要的,它連接著層與層之間,神經網絡的學習過程可以看做是權重參數的學習過程。權重參數包括輸入層到隱藏層的權重和偏置以及隱藏層到輸出層的權重和偏置。通過不斷學習,將權重參數不斷進行修改,找到可以使用的最優參數即找到了該模型的最優解。
2.1.1 正向傳播過程
對于隱含層(隱藏層)或輸出層的神經元,神經元的輸出等于將神經元的所有輸入乘上權重后再與偏置求和[10]。依據圖1得到計算方式具體如下:

2.1.2 反向傳播過程
當一次正向傳播結束后神經網絡能獲得輸出iO,如果期望輸出iT與真實輸出存在差距時,就需要修改權重再次進行訓練[11]。神經網絡通過反向傳播來更新權重,反向傳播的最終目的為:修正權重,使神經網絡的輸出結果盡可能地接近期望;更新權重的常用方法是梯度下降法。算法如下:
(1)計算損失函數(代價函數)。損失函數代表了實際輸出與期望輸出的差距,在回歸問題里常用的損失函數是均方誤差。均方誤差損失函數表示為:

其中
其中iT代表期望輸出,iO代表實際輸出,通過損失函數可以判斷模型訓練后是否可用。
(2)梯度下降法就是根據單個權重對誤差的影響程度來對權重進行更新,單個權重對誤差的影響程度的數學計算方式便是計算誤差對相應權重的偏導數:

其中η表示學習速率,學習速率過大會導致代價函數振蕩,迭代過快導致無法找到最優解,學習速率過小會導致訓練速度非常慢。根據前面的正向傳播公式可得:

在計算網絡中,一個節點的激活函數(Activation Function)定義了該節點在給定的輸入或輸入集合下的輸出,即此函數負責將神經元的輸入映射到輸出[12]。如果沒有激活函數,即便有再多的隱藏層,整個網絡也和單層神經網絡一樣,僅能表達線性映射,因此,引入激活函數主要是為了提供網絡的非線性建模能力。常見激活函數有Sigmoid函數、雙曲正切函數(Tanh)、ReLu激活函數(Rectified Linear Units)等。本文中選用的是ReLu激活函數。
如圖2、圖3、圖4所示,分別為Sigmoid、Tanh、ReLu函數。

圖2 Sigmoid函數

圖3 Tanh函數圖

圖4 ReLu函數圖
由圖2、圖3可以看出,Tanh函數和Sigmoid函數的形式相似,均為雙曲型。不同在于:Sigmoid函數可以將任意輸入映射到一個0到1之間的區間內;而Tanh函數能夠將任意輸入數值映射到(-1,1)的區間。
雖然Tanh函數和Sigmoid函數的使用范圍很廣,但是從曲線來看,這兩類激活函數都受到梯度消失問題的困擾,即函數的梯度在兩個邊緣附近接近為0,很容易造成梯度消失,減緩收斂速度,使得訓練和優化變得困難。
由圖4,ReLu是一種后來才出現的激活函數,可以看到,當x<0時,ReLu硬飽和,而當x>0時,則不存在飽和問題。所以,ReLu能夠在x>0時保持梯度不衰減,從而緩解梯度消失問題[13]。因此相比于Sigmoid和Tanh,ReLu激活函數更符合生物神經元的特征。
神經網絡中的連接權重參數值是經過訓練最終得到的。其訓練過程為:首先將網絡權值矩陣和閾值矩陣初始化一組隨機數。分別輸入P個訓練樣本(X1,X2,X3,…,XP),將經過神經網絡模型得到的實際輸出(O1,O2,O3,…,OP)與期望輸出(Y1,Y2,Y3,…,YP)作比較,得到誤差修正函數,誤差沿網絡逆向傳播,幵按BP算法的要求不斷自適應修改網絡的連接權重值和閾值。驗證P個樣本的總訓練誤差,如果得到精度要求,則停止迭代過程,網絡的連接權重值和節點閾值訓練完畢。
將經過數據處理得到的樣本數據按80%、20%的比例切分為訓練集和測試集,經過不斷地迭代訓練,找到模型的最好訓練參數,模型訓練結果曲線如圖5所示。

圖5 模型訓練曲線
由于神經網絡的訓練本質就是尋找模型的最佳參數滿足預測輸出擬合訓練數據的過程,它是一個不斷學習的過程,在不斷學習數據特征的過程中,通過調整超參數使預測結果和真實值不斷逼近。所以隨著模型迭代次數epoch的增加,訓練曲線Train所對應的均方誤差(Mean Squared Error)和測試曲線Test所對應的均方誤差在不斷下降。經過訓練,収現當訓練次數epoch為372時,此時所對應的訓練集均方誤差達到最小,其值為0.0016913,測試集所對應的均方誤差為0.144637,即可停止訓練。此時,神經網絡預測模型的擬合效果最好。
通過模型預測值與其真實值進行線性擬合,對訓練結果進行檢驗,以判斷是否過度擬合,得到如圖6所示訓練集訓練時回歸參數。該擬合系數為R值,R值越接近1,說明模型擬合效果越好,預測精度越高。訓練時預測值與真實值擬合所得的擬合系數R值為0.99922,說明訓練模型效果非常好,預測值與真實值的誤差為0.00078。

圖6 訓練集回歸參數
現對模型進行驗證,確保該模型在測試集上同樣保持較高的準確率。當模型在訓練集和測試集上都保持較高的準確率時,才可認為建立該模型是合理的,該模型具有一定的可行性。如圖7所示為該模型在測試集上進行驗證的結果。

圖7 測試集回歸參數
擬合系數R值為0.91315,該擬合系數R值略低于在訓練集上的擬合系數,同樣證實該模型在測試集上的效果非常好,在測試集上預測值與真實值的誤差為0.08685。
如圖8表示該模型在訓練集和測試集上的綜合驗證回歸參數結果,經過線性擬合所得擬合系數R值為98.63%,證實該模型在訓練集和測試集上的效果較好,在訓練集和測試集上預測值與真實值的誤差為0.01123。

圖8 綜合驗證回歸參數
綜上所述,該神經網絡預測模型在訓練集上的準確率為0.99922,在測試集上的準確率為91.31%,在訓練集和測試集上的整體準確率為97.63%。最終驗證了該神經網絡預測模型的合理性與可行性。
通過神經網絡預測模型得到的輸出為產品性質RON的預測值,將其與產品性質中RON的真實值進行比較,可視化如圖9所示。

圖9 辛烷值預測值與真實值部分數據
大部分預測所得到的RON預測值與真實值數據比較接近,只有少部分離群點,可能是由于數據采集量過大,在進行數據記彔采樣的過程中出現了偏差。從整體來看,此神經網絡的預測模型具有很高的準確性。
本文提出了一種基于BP神經網絡的汽油辛烷值預測模型。首先采用主成分分析法對原始樣本數據進行降維處理,得到35個主要成分因子(即主要變量指標),這有利于忽略次要因素,収現幵分析影響模型的主要變量和指標,同時降低分析問題的復雜度;然后借助數據的歸一化處理,使得得到的主要變量都在同一個數量級范圍內,以消除量綱影響;最后,將樣本集分為訓練集和數據集兩個部分,用于構建BP神經網絡預測模型,幵將得到的RON預測值與真實值進行比較,實驗表明,本文的預測模型不僅可以有效分離出主要成分因子,而且對于RON的預測具有很高的準確性。