姚啟,繆新穎, 2*
(1.大連海洋大學 信息工程學院,遼寧 大連 116023; 2.遼寧省海洋信息技術重點實驗室,遼寧 大連116023)
水產養(yǎng)殖是一個包括多參數的復雜過程[1]。其中,溶解氧(dissolved oxygen,DO)和氨氮含量是決定水產養(yǎng)殖產量的重要因素[2-3],DO過高或過低都會導致養(yǎng)殖生物死亡[4],氨氮直接反映養(yǎng)殖水質的污染程度,過高直接影響?zhàn)B殖生物的生存狀態(tài)。因此,在水產養(yǎng)殖環(huán)境中對二者進行預測,對水產養(yǎng)殖業(yè)具有重要的意義。
DO和氨氮含量的預測均為非線性問題[5],二者受多種因素影響,且各因素之間存在復雜的耦合關系[6],因此,難以利用統(tǒng)計的方法建立準確的預測模型,故而以神經網絡和支持向量機(support vector machine,SVM)為代表的非線性問題解決工具,被研究者應用于DO和氨氮預測[7-11]。但是,SVM和誤差反向傳播神經網絡(back propagation neural network,BPNN)具有極大的局限性[7-8],易引入冗余數據,且針對復雜問題的泛化能力受到一定的制約[12]。神經網絡的結構很多都是通過試湊法來實現[4,13],導致運行費時。另外,DO和氨氮影響因素復雜,且相互之間存在很大的耦合性,很難確定神經網絡的最佳輸入,若將相關的影響因素全部直接引用,不僅會引入大量冗余數據,而且會由于多重共線性降低網絡的訓練速度和效率,影響預測精度[14]。
Levenberg-Marquardt(LM)神經網絡算法利用高斯-牛頓法可以在最優(yōu)值附近產生一個理想的搜索方向,從而保持較快下降速度的特點,使網絡能夠有效收斂,可以大大提高網絡的收斂速度和泛化能力[5]。遺傳算法(genetic algorithm,GA)是一種模擬自然進化、搜索最優(yōu)解的方法,適合用來優(yōu)化神經網絡的結構[5]。主成分分析(principal component analysis,PCA)方法一方面可以通過提取正交的各主成分,有效避免多重共線性,提高參數估計的準確性;另一方面可以對包含較多變量的影響因子數據集進行降維,使盡可能少的變量包含盡可能多的信息,從而使模型所包含的信息更豐富,建模更有效[15]。
基于以上考慮,本研究中構建了一個綜合GA、LM和PCA算法優(yōu)點的GA-LM-PCA水產養(yǎng)殖環(huán)境DO和氨氮含量預測模型,利用PCA算法確定DO和氨氮含量預測模型的有效影響因子,利用LM算法訓練神經網絡,利用GA優(yōu)化神經網絡結構,以期為水產養(yǎng)殖重要環(huán)境因子的預測提供有效工具。
影響水產養(yǎng)殖環(huán)境DO含量的因素復雜,主要包括水體溫度、水體含氮量和空氣中氧氣組分的分壓力等[7-8],其中一些因素在一定條件下對某一具體養(yǎng)殖環(huán)境和測量點可以認為是不變的[5]。影響水產養(yǎng)殖環(huán)境氨氮含量的因素主要有水溫、pH、DO和電導率等,其中水溫、pH越高,氨氮的毒性就越大,DO也直接關系到氨氮、亞硝酸氮和硝酸氮之間的轉化效果,電導率能體現養(yǎng)殖環(huán)境中離子的量[9]。
本研究中,水產養(yǎng)殖水樣采集自大連獐子島股份有限公司養(yǎng)殖基地。綜合考慮各變量的可測性,選取水溫、鹽度、葉綠素a、電導率、濁度、風速、亞硝酸鹽、氨氮和總氮9個變量作為DO的影響因素;初步選取水溫、pH、DO和電導率4個變量作為氨氮的主要影響因素,在考慮多因素分析時,選取水溫、鹽度、葉綠素a、電導率、濁度、風速、亞硝酸鹽、DO、pH和總氮10個變量作為氨氮的影響因素。采用浮標在線監(jiān)測水溫、鹽度、葉綠素a、電導率、濁度、風速,采用多參數水質監(jiān)測儀(YSI600XLM,美國)現場測定亞硝酸鹽、pH、氨氮和DO含量,采用全自動總氮分析儀測定總氮含量(IL500,美國HACH公司)。
從大連獐子島股份有限公司2011—2012年所收集的監(jiān)測數據中選取其中的1 200組作為建模數據,其中,1 100組作為訓練樣本,100組作為測試樣本。用PCA確定養(yǎng)殖環(huán)境DO和氨氮有效影響因子的基礎上,采用GA-LM方法進行預測。預測流程圖如圖1所示。
圖1 基于GA-LM-PCA模型的水產養(yǎng)殖環(huán)境DO和氨氮含量預測流程圖
1.2.1 基于PCA算法的水產養(yǎng)殖環(huán)境DO和氨氮有效影響因子的確定 考慮到水產養(yǎng)殖環(huán)境DO和氨氮含量影響因素眾多,且相互之間存在著多重共線性,利用主成分分析方法確定DO和氨氮含量的有效影響因子,從而達到去耦合降維的效果。具體步驟如下:
1)對水產養(yǎng)殖環(huán)境DO和氨氮的影響因素進行標準歸一化,以消除不同影響因子數值的平均值和方差大小對變量比較產生的影響。計算公式為
其中:xi為每個樣本的第i個影響因素;xi mean為影響因素的平均值;σ(xi)為影響因素的標準差。
2)求樣本協(xié)方差矩陣,即
i=1,2,…n;j=1,2,…,p。
4)對λi按照降序排列,計算出所有主元的累積貢獻率,并將累積貢獻率大于85%的前m(m
5)計算前m個主元對應的特征向量μi,構建其變換矩陣D,即
D=(μ1,μ2,…,μm)T。
(4)
6)求出前m個主成分表達式,并將其作為GA-LM輸入,主成分Z計算公式為
Z=DX*。
(5)
1.2.2 基于GA的水產養(yǎng)殖環(huán)境DO和氨氮含量預測模型結構的確定 本研究中采用典型的3層神經網絡,隱層節(jié)點數、最優(yōu)權值和閾值等網絡結構因素均由GA來完成。主要步驟如下:
1)初始化種群并編碼。用染色體表示神經網絡結構,在編碼時具體包括結構基因與權重基因。結構基因采用二進制編碼,表示隱層節(jié)點結構(“1”表示存在隱層節(jié)點,“0”表示不存在);連接權值和閾值用權重基因wn(x+y)表示,利用實數進行編碼。當有n個隱層節(jié)點、x個輸入、y個輸出時,染色體編碼的結構如圖2所示。
圖2 染色體編碼結構
本研究中種群初始值設為100,初始隱層節(jié)點設為30。
2)適應度評價,計算公式為
E=∑(S-V)2,F=1/E。
(6)
其中:V是經LM訓練神經網絡得到的預測值;S是所對應的實際測量值;E是誤差平方和(SSE);F是適應度函數。總體向適應度函數F高的方向進化, 誤差逐步減小,結構逐步趨于簡單。
3)確定終止進化條件。本研究中確定了兩個進化終止依據,二者為“或”的邏輯關系。具體為迭代次數達到500,或均方差(MSE)小于0.000 1。
4)遺傳算子。具體包括選擇、交叉和變異算子,本研究中采用不同的策略[5]。選擇算子采用了輪盤賭策略;交叉和變異算子則根據染色體編碼結構采用了不同的策略,其中結構基因采用單點交叉和基本位變異算子;權重基因采用算術交叉和非均勻變異算子。初始交叉率和變異率分別設置為0.6和0.08,可以自適應調整,調整公式為
其中:Fmax為種群的最大適應度值;Favg為種群的平均適應度值;F為要交叉的兩個個體中較大的適應度值;F′為要變異個體的適應度值;k1、k2、k3、k4為常數。
1.2.3 基于LM神經網絡的水產養(yǎng)殖環(huán)境DO和氨氮含量預測算法 LM算法是在BPNN算法基礎上的一種修正算法,能夠克服BP算法容易陷入局部極小、收斂速度慢、泛化能力弱等不足。在修正過程中,權值的調整算法公式為
ΔW=-[JT(w)J(w)+αI]-1·JT(w)e(w)。
(8)
其中:J(ω)為Jacobian矩陣;α為大于零的調整因子,用于控制LM算法的迭代;I為單位矩陣。本研究中α的初始值設為0.01。
對1 100組DO樣本歸一化后的部分水產養(yǎng)殖環(huán)境數據見表1,歸一化后的樣本數據變化范圍變小,可以消除不同影響因子數值的平均值和方差大小對變量比較產生的影響。
表1 歸一化后DO含量的影響因素
對應的水產養(yǎng)殖環(huán)境DO樣本的協(xié)方差見表2,DO的9個影響因素之間具有一定的耦合性,需要去耦。利用GA-LM-PCA模型對DO含量進行預測,得到如表3所示的DO降序特征值和貢獻率。
表2 水產養(yǎng)殖環(huán)境DO樣本的協(xié)方差
從表3可見,前5個主元的累計貢獻率大于85%,且特征值較大,因此,選取主成分數目為5個。
表3 DO的降序特征值和貢獻率
按照式(4)和(5)求出的主成分表達式為
在此基礎上,得到如圖3、4所示的5-10-1水產養(yǎng)殖環(huán)境DO含量預測網絡結構和預測結果。
圖3 5-10-1水產養(yǎng)殖環(huán)境DO含量預測網絡
將文獻[9]中所采用的水溫、pH、DO和電導率4個變量作為影響因素,依然采用1 200組監(jiān)測數據作為樣本,其中1 100組作為訓練樣本,100組作為測試樣本,同樣利用GA-LM-PCA模型對氨氮含量進行預測,得到如表4所示的降序特征值和貢獻率。從表4可見,前3個主元的累計貢獻率大于85%,且特征值較大,因此,選取主成分數為3。在此基礎上,可以得到3-8-1的氨氮含量預測網絡結構(圖略)和預測結果(圖5)。
表4 氨氮的降序特征值和貢獻率
2.3.1 DO含量預測比較 為了驗證GA-LM-PCA的預測效果,將GA-LM-PCA 的預測結果與直接引用影響因素的GA-LM模型進行比較。采用直接引用變量法,將水溫、鹽度、葉綠素a、電導率、濁度、風速、亞硝酸鹽、氨氮和總氮9個變量作為DO的影響因子,采用GA-LM模型對DO含量進行預測,結果如圖6所示。
將圖6與圖4的DO含量預測結果進行比較,可以看出,GA-LM-PCA模型預測結果明顯優(yōu)于未用PCA方法的GA-LM 模型,二者具體性能比較如表5所示。從表5可見,利用GA-LM-PCA預測DO含量,盡管PCA確定有效影響因子需要花費一定的時間,但能夠有效地對影響因素解耦降維,運行耗時反而降低,平均絕對誤差與均方根誤差也均小于GA-LM模型法,提高了預測精度。
圖4 DO含量的GA-LM-PCA模型預測結果
表5 GA-LM-PCA與GA-LM模型預測DO含量的效果比較
圖6 DO含量的GA-LM模型預測結果
2.3.2 氨氮含量預測比較 將水溫、pH、DO和電導率4個變量作為影響因素對氨氮含量進行預測,采用不加PCA的GA-LM模型預測結果如圖7所示。
將圖7與圖5的氨氮含量預測結果進行比較,可以看出,GA-LM-PCA模型預測結果稍好于未用PCA方法的GA-LM 模型,二者具體性能比較如表6所示。從表6可見,兩種模型的輸入量個數相當,而GA-LM模型輸入量本身就是行業(yè)內所認為相關度最高的4個量,所以未用PCA和使用PCA法所確定的GA-LM模型預測的平均絕對誤差和均方根誤差都非常接近,而且在輸入量非常接近的情況下,未用PCA方法的運行反而耗時更短。
表6 GA-LM-PCA與GA-LM模型預測氨氮含量的效果比較
圖7 氨氮含量的GA-LM模型預測結果
對于同期監(jiān)測的1 200組樣本,將氨氮的影響因素從之前的4個增加到10個,具體為水溫、鹽度、葉綠素a、電導率、濁度、風速、亞硝酸鹽、DO、pH和總氮,利用同樣的GA-LM-PCA方法對其預測,得到表7所示的降序特征值和貢獻率。從表7可見,前6個主元的累計貢獻率大于85%,且特征值較大,因此,選取主成分數目為6。在此基礎上,得到6-18-1的氨氮含量預測網絡結構(圖略)和預測結果(圖8)。
表7 增加影響因素數量后氨氮的降序特征值和貢獻率
將圖8與圖5 的氨氮含量預測結果進行比較,可以看出,含有10個影響因素的GA-LM-PCA模型的預測結果明顯好于含有4個影響因素的GA-LM-PCA 模型,二者具體性能比較如表8所示。
圖8 增加影響因素數量后氨氮含量的GA-LM-PCA模型預測結果
從表8可見,將影響因素增加到10個后,影響因素盡可能地被考慮進來,此時采用GA-LM-PCA模型的氨氮含量預測效果明顯提高??梢姡捎肎A-LM-PCA模型不用考慮由于引入大量低相關度甚至無關影響因素對預測效果產生的負面影響,對于有效影響因子難以確定的場合,適當增加影響因素選取范圍,就可以取得較好的預測效果。
表8 不同影響因素數量下氨氮含量的GA-LM-PCA預測模型性能比較
在水產養(yǎng)殖環(huán)境DO與氨氮含量的預測模型中,二者的預測受各因素之間存在復雜的耦合關系的影響,很難確定神經網絡的最佳輸入,冗余影響因素會降低訓練速度和效率,影響預測精度。本研究中,采用GA-LM-PCA模型對水產養(yǎng)殖環(huán)境中的DO和氨氮含量進行預測,即采用PCA確定影響因素,用LM訓練神經網絡。付泰然[16]提出采用SAE-BP神經網絡預測水體氨氮,得到氨氮含量預測結果的均方根誤差為0.140 5,而本研究中GA-LM-PCA模型對氨氮含量預測結果的均方根誤差為0.011 1,預測精度同樣呈倍數提升。曹首啟等[17]提出在傳統(tǒng)遺傳算法神經網絡優(yōu)化模型的基礎上尋找最優(yōu)誤差輸出及遺傳算法優(yōu)化的BP神經網絡預測模型,對DO含量預測結果的平均誤差由0.077 8 mg/L下降至0.0177 mg/L,精度提高了3.4倍,而本研究中GA-LM-PCA預測模型相較于此模型的DO含量預測的精確度提高了27.8%。由此可見,GA-LM-PCA預測模型在同類預測模型應用中處于預測精度較高的水平。
本研究中使用PCA方法的GA-LM模型可以有效避免多重共線性,提高參數估計的準確性,用GA-LM-PCA預測的氨氮值平均絕對誤差較未用PCA方法的GA-LM模型提升了12.7%,而DO值則提升更多,同時大量低相關度影響因素對GA-LM-PCA預測模型的負面影響較小,可以通過增加影響因素的范圍來提升預測精度,應用性較好,本研究結果為水產養(yǎng)殖生產過程中的DO與氨氮參數預測提供了新的方法。
1)本研究中提出的PCA-GA-LM模型預測的DO和氨氮值與實測值吻合度均高于直接引用變量法的GA-LM模型,平均絕對誤差和均方根誤差也均小于直接引用變量法,提高了預測精度,可以作為水產養(yǎng)殖重要環(huán)境因子預測的一種有效工具。
2)PCA-GA-LM模型對于同樣數量的樣本,選取的影響因素越多預測效果越好,這意味著本模型對于相關度低、冗余的影響因素具有自動篩選功能,能使其中相關的影響因素充分發(fā)揮作用,且能去掉影響因素之間的耦合,能夠為機理復雜、影響因素難以確定的非線性系統(tǒng)提供可行的預測方案。