趙豆豆,張 偉
(河南理工大學 電氣工程與自動化學院,河南 焦作454000)
生物需氧量(Biological Oxygen Demand,BOD)是反映水中有機污染物含量的一個綜合指標[1-2]。目前通用的BOD測量方法的操作周期為5天,且無法在線測量,檢測滯后、精度較低[3]。同時,在污水處理過程中,出水BOD影響因素反應機理復雜,具有非線性和不確定性等特點,難以建立機理模型。采用基于數(shù)據(jù)驅動的軟測量建模方法[4]可避免精確數(shù)學模型建立問題,易于實現(xiàn)在線測量。
研究人員對出水BOD的軟測量問題開展了大量研究。文獻[5]建立了基于 PSO-ESN神經網絡的污水處理軟測量模型,并對污水處理關鍵水質參數(shù) BOD進行預測。其仿真結果證明了該模型可有效預測污水處理過程中的關鍵水質參數(shù),但模型的預測精度還有待提高。文獻[6]應用卷積神經網絡(Convolutional Neural Networks,CNN)模型,使用二維輸入數(shù)據(jù)來預測污染負荷并評估CNN模型的適用性。結果表明,水文圖像能夠實現(xiàn)穩(wěn)定的模型學習和泛化,但其收斂速度有待提高。徑向基函數(shù)神經網絡(Radical Basis Function,RBF)是一種性能良好的前饋型人工神經網絡,其非線性映射能力較強,收斂速度快且不易陷入局部最小值。文獻[7]建立了一種基于灰狼算法和RBF神經網絡的污水處理模型,優(yōu)化隱含層到輸出層的權值,避免了過訓練現(xiàn)象,實現(xiàn)了污水處理中出水BOD的預測。但該網絡僅采用高斯函數(shù)作為激活函數(shù),其表達和自適應能力較低,預測精度有待進一步提高。文獻[8]提出了一種IErrCor算法,基于二階的構造機構提高了結構的緊湊性和計算效率。最優(yōu)初始參數(shù)加速了收斂過程,使IErrCor RBF網絡更加穩(wěn)定,但選擇固定的寬度降低了網絡激活函數(shù)的泛化能力。文獻[9]提出一種基于遞歸正交最小二乘算法的結構設計方法,解決了遞歸徑向基函數(shù)神經網絡結構難以自適應的問題。該方法利用梯度下降算法更新網絡的參數(shù),并通過污水處理過程中關鍵水質參數(shù)動態(tài)建模等實驗驗證了結構設計方法的可行性和有效性。但神經網絡參數(shù)學習算法不僅無法達到預期的效果,還影響算法運算精度。
針對污水處理過程中出水BOD難以精確測量的問題,本文提出一種基于變寬度的逆平方根和高斯函數(shù)組合的RBF神經網絡(Variable Width RBF with Inverse Square Root and Gaussian Function,VW-IGRBF)的出水BOD軟測量方法。將開口方向一致的高斯函數(shù)和逆平方根函數(shù)通過線性組合,獲得新的隱層神經元激活函數(shù),提高了函數(shù)表達能力和自適應能力?;瘮?shù)的核寬度表征樣本點對周圍區(qū)域影響范圍的大小,因此對模型的泛化能力有較大的影響。然而最優(yōu)寬度的選擇隨訓練變化有所不同,所以本文將引入變寬度策略來提升網絡的泛化性能。同時,采用LM算法進行參數(shù)學習,控制參數(shù)隨迭代步數(shù)動態(tài)改變,網絡參數(shù)由滑動窗口動態(tài)調整。最后,通過實際污水處理過程BOD的數(shù)據(jù)仿真實驗,驗證其可行性及優(yōu)越性。
RBF神經網絡的基本結構由輸入層、隱含層和輸出層構成[10-11]。定義X=[x1,x2,…,xI]為輸入向量,H是隱含層神經元的個數(shù),隱含層節(jié)點的激活函數(shù)φh(·)是一種局部分布且對中心點徑向對稱衰減的非負非線性函數(shù)。RBF神經網絡通常采用高斯函數(shù)作為激活函數(shù)
(1)
其中,ch表示第h個隱節(jié)點的中心;b0表示隱節(jié)點的寬度,輸出層的表達式為
(2)
其中,ωh表示第h個神經元到輸出節(jié)點的連接權值。
篩選輔助變量可以簡化神經網絡模型的輸入,提高網絡的預測精度。本文通過主元分析[12-13](Principal Component Analysis,PCA)降維,獲得對出水BOD貢獻值大的變量作為主要輸入變量。首先將采集的樣本數(shù)據(jù)進行歸一化處理,然后將歸一化后的變量按列組成原始數(shù)據(jù)矩陣X,得到X的協(xié)方差矩陣
(3)
COV(X)Pi=λIiPi
(4)
其中,COV(X)是X的協(xié)方差矩陣;I是樣本數(shù);Pi是協(xié)方差矩陣的特征向量;λIi是按照降序排列的特征值。
第i個主元的貢獻率為
(5)
前a主元的累計貢獻率為
(6)
前a個主元的累計貢獻率超過85%時就認為反映了過程的主體信息。選擇前a個主元作為VW-IGRBF神經網絡的輔助變量,最終確定的10個輔助變量如表1所示。
表1 選取的輔助變量
基于VW-IGRBF神經網絡建立BOD軟測量模型的整體結構如圖1所示。
圖1 VW-IGRBF結構Figure 1. The structure of VW-IGRBF
激活函數(shù)決定了樣本對全空間的影響規(guī)則[14],不同激活函數(shù)對網絡性能有不同影響。為了提高神經網絡的逼近精度和泛化能力,考慮將具有不同表達能力的逆平方根函數(shù)和高斯函數(shù)通過線性組合的形式形成新的神經元激活函數(shù)。逆平方根函數(shù)和高斯函數(shù)開口方向一致,但具有不同的表達能力,兩個函數(shù)在不同寬度下的函數(shù)值如圖2和圖3所示。對于常用的高斯函數(shù),其在某些區(qū)間梯度接近于零,即函數(shù)飽和,導致參數(shù)無法繼續(xù)更新。當寬度小于0.2時,高斯函數(shù)在[0.5,1]區(qū)間內的梯度接近于零,而逆平方根函數(shù)的梯度仍然存在。當激活函數(shù)的寬度為1時,逆平方根函數(shù)的梯度接近于零,而高斯函數(shù)梯度存在。為了避免出現(xiàn)單一激活函數(shù)在某些區(qū)間存在飽和現(xiàn)象的問題,并提高其表達能力和自適應能力,本文將逆平方根函數(shù)和高斯函數(shù)線性組合,以獲得新的神經元激活函數(shù)。
圖2 不同寬度下的逆平方根函數(shù)Figure 2. The inverse square root function under different widths
圖3 不同寬度下的高斯函數(shù)Figure 3.Gaussian function under different widths
本文采用的逆平方根函數(shù)和高斯函數(shù)表達式分別如式(7)和式(8)所示。
(7)
(8)
由逆平方根函數(shù)和高斯函數(shù)線性組合的新的隱層激活函數(shù)可表示為
φh0(X,ch)=α1φh01(‖X-ch‖)+α2φh02(‖X-ch‖)
(9)
其中,α1是逆平方根函數(shù)的融合權重;α2是高斯函數(shù)的融合權重。
一般情況下,數(shù)據(jù)在輸入空間分布不均勻,由圖2和圖3可以看出,寬度對逆平方根函數(shù)和高斯函數(shù)均有較大影響。最優(yōu)寬度的選擇隨訓練的變化有所不同,固定寬度會導致過度平滑[15-16]??紤]到獨立分布的隨機變量的概率密度函數(shù)估計問題,在核密度估計中,寬度的選擇很重要。本文引入基于核密度的變寬度策略來提高RBF神經網絡的泛化能力。
定義局部密度表達式為
(10)
其中,b0是全局寬度;核函數(shù)K是一個以0為中心,積分為1的高斯函數(shù);指數(shù)d是數(shù)據(jù)空間{xi},i=1,…,I的維度。局部寬度b(xi)更新為
(11)
其中,p(xi)是xi的估計密度;θ是靈敏度參數(shù)(0≤θ≤1,一般取1/2);λ是對局部寬度有影響的比例常數(shù)。
如果p(xi)<λ,b(xi)相對于b0增大,表示點xi更加平滑。如果p(xi)>λ,局域寬度變窄,令λ等于{p(xi)},i=1,…,I的幾何平均數(shù),可以寫為
logλ=n-1∑log(p(xi))
(12)
將式(11)中b替換式(7)和式(8)中b0,則有
(13)
(14)
根據(jù)式(9),基于變寬度策略,新的隱層激活函數(shù)可表示為
φh(X,ch)=α1φh1(‖X-ch‖)+α2φh2(‖X-ch‖)
(15)
設網絡第t個訓練樣本滿足α1(t)+α2(t)=1,有
(16)
(17)
綜合式(15)~式(17),可將VW-IGRBF新的激活函數(shù)定義為
φh(X,ch)=
(18)
VW-IGRBF對第t個樣本輸出為
(19)
定義網絡期望輸出與實際輸出之間的誤差為
e(t)=d(t)-y(t)
(20)
其中,d(t)是網絡期望輸出;y(t)是網絡實際輸出。
LM算法是一種二階算法,相比其它梯度下降法,該算法運算效率較快。訓練VW-IGRBF時,采用LM算法進行參數(shù)學習,參數(shù)更新規(guī)則為[17]
Z(k+1)=Z(k)-[JtTJt+μ(k)E]-1JtTe(t)
(21)
其中,Z(·)表示VW-IGRBF中可調參數(shù)(包括VW-IGRBF隱節(jié)點激活函數(shù)的中心c、寬度b0、網絡隱節(jié)點與輸出節(jié)點的連接權值ω以及融合權重α1和α2);k為迭代步數(shù);Jt表示Jacobian矩陣;μ(k)為組合系數(shù),其作用是保證JtTJt+μ(k)E可逆;E為單位矩陣。
計算Jacobian矩陣第r行元素
(22)
其中,r表示RBF神經網絡中的ω、c、b0、α1、α2這5個可調參數(shù)。記參數(shù)向量為
Z=[ω1…ωh…ωH,c1,1…c1,i…c1,I…ch,1…
ch,i…ch,I…cH,1…cH,i…cH,I,b01…b0h…b0H,α1,α2]
(23)
對于第t個訓練樣本,考慮RBF網絡中可調參數(shù)ω、c、b0、α1、α2,則Jacobian矩陣中的行元素值為
(24)
在LM算法中,當控制參數(shù)μ的取值過大時,誤差曲面梯度較小,算法類似于梯度下降法,收斂速度慢;反之,誤差曲面梯度較大,算法類似于高斯牛頓法,容易導致式(21)不可逆,使算法失效。在訓練初期,μ的取值應相對較小,后期μ的取值應相對較大[18]。
針對以上問題,為了提高算法的運算精度,使LM算法的控制參數(shù)μ隨迭代步數(shù)動態(tài)地非線性增大
(25)
其中,μ1和μ2分別為μ的初值和終值;MaxItr為迭代步數(shù);t為當前迭代步數(shù)。圖4為MaxItr=500時μ隨迭代步數(shù)變化的曲線。
圖4 控制參數(shù)的變化曲線Figure 4. The change curve of control parameters
盡管目前 LM 算法在訓練神經網絡方面的效果較好,但其批處理的方式不適用于需要在線訓練的非線性時變系統(tǒng)。神經網絡進行在線學習時應盡量使用最新的一組動態(tài)樣本對網絡參數(shù)進行調節(jié)。為了解決這一問題,本文采用滑動窗口動態(tài)調節(jié)網絡參數(shù),實現(xiàn)LM算法在線進行。設滑動窗口是一個長度為L的隊列,其所有樣本都是VW-IGRBF中訓練樣本。當一個新樣本產生后,窗口中最前邊一個樣本滑出窗口,最新的樣本進入窗口[19]。
定義VW-IGRBF的學習目標函數(shù)為
e(L)=β(i)(d(i)-y(i))2
(26)
其中,d(i)和y(i)分別為窗口中第i個樣本的期望輸出和實際輸出;β(i)表示遺忘因子,其表達式為式(27)。
(27)
與傳統(tǒng)RBF神經網絡相比,VW-IGRBF神經網絡計算量較大,算法運行時間較長,但該算法在以下3個方面提高了網絡性能:
(1)將開口方向一致的逆平方根函數(shù)和高斯函數(shù)線性地組合在一起形成新的隱含層激活函數(shù),使激活函數(shù)能夠融合兩個不同函數(shù)的優(yōu)點,有效提高了隱層激活函數(shù)表達能力和自適應能力;
(2)引入變寬度的方法,使核寬度隨訓練的變化而變化,保證高斯核之間的自然重疊,并有效提高網絡基函數(shù)的泛化能力及預測精度;
(3)改進LM算法實現(xiàn)了算法的在線進行,使網絡對學習參數(shù)的變化具有更好的魯棒性并易于收斂。
本文所用數(shù)據(jù)來源于北京市某污水處理廠采集的樣本數(shù)據(jù),通過人工剔除異常數(shù)據(jù)后,得到360組數(shù)據(jù),其中260組數(shù)據(jù)作為神經網絡訓練樣本,100組數(shù)據(jù)作為測試樣本。為驗證所提VW-IGRBF方法的性能,分別采用RBF神經網絡、IGRBF神經網絡和VW-IGRBF算法對出水BOD進行預測。仿真實驗基于MATLAB編程實現(xiàn)。
神經網絡初始參數(shù)設置如下:隱節(jié)點個數(shù)H=15,訓練步數(shù)為100,窗口長度L=50,控制參數(shù)μ初值μ1=0.1,終值μ2=1.0。設置IGRBF神經網絡和VW-IGRBF神經網絡中逆平方根函數(shù)和高斯函數(shù)的初始權重比例相同,即α1=α2= 0.5。
仿真測試結果如圖5~圖7所示。圖5給出了3種算法的測試樣本輸出。圖6給出3種算法的測試誤差。圖7為3種不同算法下絕對誤差和相對誤差的折線圖。絕對誤差反映預測值偏離實際數(shù)據(jù)的大小,相對誤差指的是測試所造成的誤差與實際數(shù)據(jù)之比乘100%所得的數(shù)值,能夠客觀地反映預測結果的準確度。
圖5 測試樣本輸出Figure 5. The output results of test samples
圖6 測試樣本誤差Figure 6.The errors of test samples
圖7 測試樣本絕對誤差與相對誤差Figure 7. The absolute errors and relative errors of test samples
實際輸出和3種算法輸出之間的比較如圖5所示。采用VW-IGRBF算法的BOD測試輸出最接近真實輸出,雖然有一些偏差,但相比其它兩種算法,其擬合度較高。由圖6可以看出,3種算法測試階段的極大值處和極小值處的誤差均在一個很小的范圍,相對于RBF,IGRBF和VW-IGRBF的測試精度有所提高,VW-IGRBF存在個別測試樣本誤差較大,但多數(shù)情況下其誤差均小于IGRBF。由圖7可以看出,3種算法中,本文提出的VW-IGRBF的預測值與實際樣本的偏離最小,準確度最高。以上結果說明激活函數(shù)采用逆平方根函數(shù)和高斯函數(shù)線性組合的形式使模型具有較高的軟測量精度,引入基于核密度的變寬度策略可使模型具有較好的泛化能力。
表2為3種不同算法下方差、標準差及平均絕對誤差(Mean Absolute Error,MAE)3種性能指標在10次隨機實驗中的平均值。標準差和方差越小說明數(shù)據(jù)越集中、越穩(wěn)定,反之越離散。MAE避免了出現(xiàn)誤差正負相抵消的情況,與平均誤差相比,MAE能更好地反映預測值誤差的實際情況。LM算法下的RBF、IGRBF和VW-IGRBF的各項性能指標均依次減小。在方差對比中,VW-IGRBF僅是RBF的80.9%,是IGRBF的86.8%。這些結果表明IGRBF中隱層激活函數(shù)采用逆平方根函數(shù)和高斯函數(shù)線性結合的方式,可以提高其表達能力和自適應能力。由二者線性結合的激活函數(shù)逼近能力要強于單個基函數(shù),引入變寬度策略使網絡激活函數(shù)有更好的泛化能力和更高的預測精度,有效驗證了VW-IGRBF在出水BOD預測中的優(yōu)越性。
表2 算法的性能指標
實驗結果表明,在3種模型中,基于VW-IGRBF神經網絡的出水BOD軟測量模型預測精度較為突出,預測數(shù)據(jù)與均值的偏離程度以及預測數(shù)據(jù)的離散程度較小,更適合具有復雜非線性特性的污水處理過程出水BOD的軟測量建模。
表3給出了VW-IGRBF與其它幾個文獻中提到算法的性能指標對比。由表可知,其它算法的測試均方根誤差(Root Mean Square Error,RMSE)是VW-IGRBF的1.6倍以上,測試均方誤差(Mean Square Error,MSE)是VW-IGRBF的2.7倍以上,VW-IGRBF的測試精度較其它算法有大幅度的提高,VW-IGRBF網絡結構更緊湊,表明VW-IGRBF算法在很大程度上提高了出水BOD的測量精度。
表3 VW-IGRBF與其它算法的性能指標對比
針對污水處理過程中難以在線精確測量出水BOD的問題,本文將逆平方根函數(shù)和高斯函數(shù)通過線性組合獲得新的神經元激活函數(shù),避免了常用的高斯函數(shù)在某一區(qū)間出現(xiàn)飽和現(xiàn)象的問題,提高了激活函數(shù)的表達能力和自適應能力。本文采用基于核密度的變寬度策略,使寬度隨訓練的變化而變化,提高了網絡激活函數(shù)的泛化能力。同時,采用LM算法進行參數(shù)學習,使控制參數(shù)隨迭代步數(shù)動態(tài)非線性增大。本文還引入了滑動窗口動態(tài)調節(jié)網絡參數(shù),提高了算法的運算精度,實現(xiàn)了在線建模,使網絡對學習參數(shù)的變化具有更好的魯棒性并易于收斂。最后通過出水BOD仿真實驗驗證了本算法的優(yōu)越性。仿真研究表明,VW-IGRBF出水BOD軟測量模型適應非線性動態(tài)系統(tǒng)的能力較強,預測精度較高,適合污水處理過程中復雜非線性動態(tài)系統(tǒng)建模。