李海濤, 茆毓琦
(青島科技大學信息科學與技術學院,山東 青島 266061)
基于啟發式Johnson算法優化BP神經網絡的水產養殖產量預測模型
李海濤, 茆毓琦
(青島科技大學信息科學與技術學院,山東 青島 266061)
針對水產養殖產量預測難的現狀,提出一種基于啟發式Johnson算法優化的反向傳播神經網絡(BPNN)的產量預測模型。該模型在傳統BP神經網絡的基礎上,針對網絡訓練時間長、易陷入局部最優的問題,通過啟發式Johnson算法降低輸入神經元維度,再結合試湊法確定神經網絡隱層個數,構建啟發式Johnson反向傳播神經網絡(HJA-BPNN)學習預測模型。實驗結果表明,該模型在山東省對蝦海水養殖產量預測中,預測的均方根誤差小于傳統BP神經網絡和GM(1,1),且學習效率相比傳統BP神經網絡有所提升。研究表明,該學習預測模型在大量歷史數據的模型構造上有更大的優勢,能夠縮短建模時間,同時獲得良好的預測效果,為水產養殖產量預測提供了一種可行的新方法。
水產養殖產量;預測模型;BP神經網絡;Johnson算法
隨著水產養殖業的飛速發展,水產養殖方式正進行創新型轉變,立體、復合型養殖模式下的水產養殖條件更加復雜;同時,由于自身產業的特點與水產養殖經驗性、專業性的要求,水產養殖產量預測面臨巨大挑戰。科學的水產養殖產量預測可為水產研究人員與養殖工作者預測水產養殖變化趨勢,為水產養殖生產調控和養殖產業結構調整提供科學依據,從而在一定程度上促進水產養殖產業可持續發展。經調研,目前科學的水產養殖產量預測方法大多基于線性回歸、時間序列,包括:基于灰色單變量GM(1,1) 分析歷史產量數據的產量預測模型[1-5];利用馬爾科夫狀態轉移矩陣預判定殘差符號,優化波動影響的灰色馬爾科夫修正模型[6];基于LS分析方法的產量預測模型[7];采用偏最小二乘回歸(PLS)分析建立的機械切片后三文魚產量預測模型[8];ARIMA產量預測模型[9]。上述模型在一定程度上都可以滿足產量預測的精度要求,但需要被研究對象有較強的規律性或線性相關性,對于非平穩序列、相關關系復雜和非線性的水產養殖活動,這些模型存在一定的局限性。
為了解決以上問題,具有良好自學、泛化、容錯能力,非時序化、非周期性的動態數據學習模型——BP神經網絡被選為水產養殖產量預測的核心,最終建立以BP神經網絡為基礎,啟發式Johnson算法優化的水產養殖產量預測模型,以解決傳統神經網絡學習效率低、過擬合和隱層缺乏理論指導的問題,同時以山東對蝦年產量為實例,檢驗模型預測效果。
以山東對蝦海水養殖年產量預測為例。為使結果更加切合實際,數據選擇、參考現有水產研究文獻[10-11],得出對蝦海水養殖產量受氣候、生態環境、漁業資源、國家政策、經濟條件、生產設施和科技水平等多種自然條件和社會因素的影響,以此為基礎建立輸入項,最終選定年平均氣溫(x1)、育苗量(x2)、養殖面積(x3)、專業養殖勞動力(x4)、海洋生產機動漁船年末擁有量(x5)、水產技術推廣人數(x6)、損失水產品數量(x7)和災害經濟損失(x8)為初始條件屬性,水產養殖產量為決策屬性。對蝦海水養殖相關數據取自《中國漁業統計年鑒》[12],氣象數據來自GHCN/CAMS。
采用線性歸一化對水產養殖要素和產量結果進行數據預處理,并在訓練集的選取上囊括最大最小特征值,避免測試集數據越界。將各要素統一到[0,1]區間,減少不同要素取值范圍差異過大而導致小數值數據價值被忽略的情況[13]。經過歸一化后的每一個特征值對于結果影響效果基本相同,減少了由于數據尺度差異帶來的數據傾斜,同時在BP神經網絡中,對數據的歸一化處理可以提高網絡收斂速度。線性歸一化公式和還原公式如下:

(1)
x=x′(xmax-xmin)+xmin
(2)
式中:x,x′為歸一化前、后的值,即某一個水產養殖要素序列中的值;xmax、xmin分別是該要素序列中的最大、最小值。
BP神經網絡[14]是一種含有輸入、隱含、輸出層,以計算機模擬人腦神經和應激行為的多層前饋神經網絡計算系統。神經網絡可以很好地代替人腦模擬水產養殖要素之間的關系,把I/O問題轉化為非線性映射,解決缺乏精確計算公式和先驗經驗的產量預測問題。BP神經網絡算法流程主要分為三個階段:網絡初始化階段、正向傳播階段和權值更新反向傳遞階段。
階段一:初始化網絡權值、閾值;
階段二:把訓練集逐層向目標層傳播獲得激勵響應,最終獲得最終輸出值:
(3)
xj=f(yi)
(4)
式中:yi為i層所有神經元凈輸出值,xi、xj是i、j層神經元,i與j節點間的權值和j節點的閾值分別用wij、bj表示,f函數為激勵函數。
階段三:反向傳遞基于Widrow-Hoff學習規則[15],為取得最小均方差,對誤差公式的推導采用梯度下降算法計算誤差,然后修改、更新神經元間的權值和閾值,其中輸出層誤差計算公式與隱層誤差計算公式不同:
Ei=Oi(1-Oi)(Ti-Oi)
(5)
Ej=Oj(1-Oj)∑kEkwkj
(6)
式中:Ei、Ej分別為輸出、隱層的誤差計算公式;Oj、Tj分別是輸出、目標值,Ek中的下標k指j下一層中的神經元。根據誤差更新網絡權值、閾值。
Wij=wif+ηEjOi
(7)
bj=bj+ηEj
(8)
階段二、三迭代循環,迭代至網絡輸入對應輸出達到目標,整個網絡學習過程結束。
粗糙集理論[16]是無需人為假設和經驗只利用數據本身發現隱含知識、揭示潛在規律的理論方法。由于神經網絡的網絡結構復雜度直接影響網絡學習處理效率,且冗余數據容易造成神經網絡的訓練過度[17],最終導致訓練結果差強人意。一般情況下,有些特征或是可省略因素。為了減少后續神經網絡工作的壓力、提高效率,本研究將利用粗糙集理論在保證不影響產量預測精度的前提下,約簡條件屬性以降低輸入神經元維數,簡化網絡,達到提高BP神經網絡精度、效率和抑制噪聲的效果。
屬性約簡作為粗糙集理論中核心的數據分析概念,目的是在保持信息系統分類或決策能力不變的前提下刪除冗余屬性,獲得信息系統的分類或決策規則[18]。經調研,本文選取基于可分辨矩陣的啟發式算法Johnson算法[19]作為產量影響條件約簡的理論方法。該算法分為6步,用R代表其中一個約簡,A代表可分辨矩陣的子集,Na為屬性ai在A中出現的次數:(1)初始化R、A為空集,初始次數Na=0;(2)計算可分辨矩陣M,A={mij},其中mij≠?;(3)記錄屬性ai在A中出現次數Na;(4)記Max(Na)對應的屬性為a,R=R∪{a};(5)清除A中包含a屬性的子集;(6)重復(3)~(5),直到A=?。通過不斷篩選在可分辨矩陣中出現頻率最高的屬性確定約簡集,某屬性出現頻率越高,則說明其可分辨性越好,且該方法約簡目的明確,可確定唯一約簡集。
為解決BP神經網絡收斂速度慢、網絡訓練過度等問題。在BP神經網絡模型基礎上,利用粗糙集精簡的輸入神經元,在水產養殖產量與影響要素間建模。模型建立過程主要分為3個階段:輸入神經元約簡、數據學習、網絡調整(圖1)。

圖1 水產養殖產量預測模型建立過程
根據已知樣本數據,通過粗糙集方法過濾多余條件要素,取最簡屬性作為神經網絡輸入節點構建神經網絡,通過樣本數據訓練,獲得預測網絡,經測試、調整,便可用于水產養殖產量預測。具體實施步驟如下:(1)初始化BP神經網絡的收斂精度、初始權值、最大迭代次數;(2)訓練樣本離散化,利用等頻離散化算法對樣本數據進行等級劃分;(3)依次獲取可分辨矩陣中出現頻率最高屬性,最終得出最簡條件要素;(4)利用試湊法計算隱層節點個數;(5)確定BP神經網絡結構,并進行網絡訓練;(6)進行網絡測試,檢查訓練是否達到預期精度,若達到預期精度或達到最大迭代次數,停止并獲取網絡的權值。
本例中條件屬性為連續屬性,而粗糙集只能處理離散化屬性,所以先要做離散化預處理,以更好地判斷屬性間依賴關系和要素價值。經過調研,本文利用等頻率離散方法對本文樣本數據離散化,屬性分為3個等級值,部分論域離散化后的決策表見表1。經等頻離散化后的樣本利用Johnson’s algorithm對條件屬性進行約簡,求得最小約簡條件屬性為育苗量(x2)、養殖面積(x3)、海洋生產機動漁船年末擁有量(x5)、損失水產品數量(x7),條件由原先的8個降至4個,減少了輸入維數,降低了后續神經網絡訓練的復雜度。

表1 離散化的決策表
傳遞函數采用可導Sigmoid型轉換函數:

(9)
為提高收斂速度和算法可信度,避免陷入局部最小,本模型加入動態修正項,動態調整連接權值。若權值更新方向與上次的一致,α動量因子起到提高迭代步長的作用,且可以減小誤差曲面部分的靈敏度,即加快了收斂速率,同時可有效抑制BP陷入局部最小:
Δwj+1=ηEijx+aΔwj,α∈(0,1)
(10)
式中:Eij為對權重求導后的最小化誤差;η為學習速率,幫助獲取全局最小;Δwj為上次權值修改量;Δwj+1為本次權值修改量。經過試驗,設:η為0.49,α為0.83,目標誤差為0.000 1,最大迭代次數為500。
網絡輸入、輸出層神經元數由輸入、輸出向量維數確定。輸入維數即為粗糙集理論約簡后的{x2,x3,x5,x7} 4個條件,訓練結果即決策屬性為水產養殖產量,所以輸出神經元為1個。
一個具有無限隱層節點的單隱層BP網絡可以實現任意非線性映射[20],所以本研究以單隱層為前提。而隱層節點數對網絡性能有很大的影響,節點過多將增加訓練時間,同時又可能過擬合;節點不足,容錯性又會降低。隱含層節點數的選擇目前理論上還沒有一種科學的確定方法[21]。本文為了使網絡在確保網絡效率的同時擬合度達到最優,將把符合經驗公式得出的結果,結合試湊法,比較收斂速度和結果誤差,以獲取最優隱層節點數。通過調研選取以下經驗公式來參考隱層節點數:
(1)Kolmogorov定理[22]指出輸入神經元個數與隱層神經元個數的線性相關。
Nh=2Ni+1
(11)
(2)該經驗公式提出輸入、輸出神經元個數N0與1~10的常數α可推算出隱節點個數范圍。

(12)
(3)高大啟歸納出一個初定3層神經網絡隱節點數的經驗公式,擬合后的簡化公式。

(13)
綜合以上三式,得隱層神經元試湊范圍為3~10,可得出不同個數對應網絡性能數據(表2)。
表2不同隱層個數神經元的性能對比
Tab.2 Performance comparison of neurons with different hidden layers

性能345678910均方誤差0 0250 0610 0130 0330 0750 0180 0590 060耗時/ms12175321171816
經驗公式計算后,根據最小均方誤差確定隱層節點個數為5個。經以上過程得出水產養殖產量預測經粗糙集簡化后的網絡結構為4-5-1。
為檢驗HJA-BPNN水產養殖預測模型的性能,選取5組檢驗樣本作為測試數據,代入本文訓練好的模型進行產量預測。同時與優化前的傳統BP網絡模型與水產養殖產量預測常用GM(1,1)預測模型進行對比。為了能更加直觀地展示預測結果數值與真實值的擬合度,繪制實際產量與兩種預測方式計算山東對蝦海水養殖產量值的折線圖表,結果對比見表3。

表3 不同年份預測結果對比表
為了評估HJA-BPNN神經網絡產量預測模型與其他模型,采用均方根誤差(RMSE)評估模型性能。均方根誤差越小,模型的預測準確率越高,即模型能力越強。誤差函數采用均方誤差公式:

(14)
同時比較傳統BP神經網絡和HJA-BPNN產量預測模型在優化學習速度的效果,已驗證本文模型可優化傳統BP神經網絡模型訓練的收斂速度。對比結果見表4。
表4各預測模型性能對比
Tab.4 Comparison of various foreeasting models of aquaculture yield

性能本文模型傳統BP模型GM(1,1)RMSE0 110 180 26平均耗時/ms9146
與傳統BP神經網絡模型相比,本文的預測模型輸入神經元個數減少一半,網絡運算平均耗時更短,且預測模型的均方根誤差小于傳統BP神經網絡模型與灰色模型。由實驗結果可知,本文的水產養殖產量模型能在較短時間內獲取較高精度的產量預測結果,可以應用到實際產量預測中。
利用BP神經網絡結合啟發式Johnson算法對收集到的水產養殖歷史數據進行訓練,形成的網絡用于水產養殖產量預測,預測結果誤差小、耗時低;同時,基于神經網絡的數據學習分析框架可應用于水產養殖水質分類檢測、魚病診斷等研究方向,具有一定的擴展性和延伸性,并且經啟發式Johnson算法優化后的網絡較傳統神經網絡更加高效,準確度更佳。測試表明,HJA-BPNN神經網絡水產養殖產量預測模型是可行的,具有一定推廣價值,可滿足水產養殖產量預測的基本要求。
□
[1] LIU Q,XU B D,REN Y P.forecasting of freshwater aquaculture production of Qingdao city by using a grey forecasting model [J]. South China Fisheries Science,2009,5(5):38-43.
[2] DU X W,LIU Q.forecasting of seawater aquaculture production of qingdao city by using the GM(1,1) model and the verhulst model[J].Journal of Zhejiang Ocean University,2011,30(5):420-425.
[3] 李文閣,劉群.內蒙古赤峰市達里湖漁業產量的灰色預測與分析[J].中國海洋大學學報(自然科學版),2011,41(6):30-34.
[4] 黃松錢,王衛民,曾聰,等.基于灰色新陳代謝GM(1,1)模型的中國水產品年總產量的預測[J].中國農學通報,2012,28(17):126-131.
[5] 陳文河,梁振林.廣東省海洋捕撈產量灰色預測[J].漁業科學進展,2006,27(5):74-78.
[6] 喬松珊,張建軍.基于灰色馬爾可夫修正模型的水產品產量預測[J].中國漁業經濟,2013,31(1):105-109.
[7] 王連龍,塔莉.湖南水產養殖業生產能力探析[J].安徽農業科學,2011,39(29):17950-17952.
[8] ?RNHOLT J,GUDJNSDTTIR M,NIELSEN M E,et al.Analysis of the production of salmon fillet - forecasting of production yield[J].Journal of Food Engineering,2017,204:80-87.
[9] 屈磊磊,程巖.遼寧省水產品產量的分析與預測[J].遼寧工業大學學報(自然科學版),2015(2):138-140.
[10] AMILHAT E,LORENZEN K,MORALES E J,et al.Fisheries production in Southeast Asian Farmer Managed Aquatic Systems(FMAS): II.Diversity of aquatic resources and management impacts on catch rates.[J].Aquaculture,2009,298(1):57-63.
[11] SUN M,HASSAN S G,LI D.Models for estimating feed intake in aquaculture: A review[J].Computers & Electronics in Agriculture,2016,127:425-438.
[12] 農業部漁業局.中國漁業統計年鑒[M].北京:中國農業出版社,1992-2015.
[13] NEUMAIER A.Solving Ill-Conditioned and Singular Linear Systems: A Tutorial on Regularization[J].Siam Review,1998,40(3):636-666.
[14] RUMELHART D E,HINTON G E,WILLIAMS R J.Learning representations by back-propagating errors[J].Nature,1986,323(6088):533-536.
[15] HINTON G E,NOWLAN S J.The Bootstrap Widrow-Hoff Rule as a Cluster-Formation Algorithm[J].Neural Computation,2014,2(3):355-362.
[16] PAWLAK Z.Rough sets and decision tables[C]// Symposium.DBLP,1985:187-196.
[17] HAGAN M T,DEMUTH H B,BEALE M H.Neural network design[M].Beijing: China Machine Press,2002:5-6.
[18] 黃麗萍.基于粗糙集的屬性約簡與規則提取[D].廈門:廈門大學,2007.
[19] HU X.Knowledge discovery in databases: an attribute-oriented rough set approach[M].Canada:University of Regina,1996:65-85.
[20] 孫帆,施學勤.基于MATLAB的BP神經網絡設計[J].計算機與數字工程,2007,35(8):124-126.
[21] 李軍華.云計算及若干數據挖掘算法的MapReduce化研究[D].成都:電子科技大學,2010.
[22] 焦李成.神經網絡系統理論[M].西安:西安電子科技大學出版社,1996:46-179.
[23] 丁永生.計算智能:理論、技術與應用[M].北京:科學出版社,2004:285-350.
[24] 高大啟.有教師的線性基本函數前向三層神經網絡結構研究[J].新能源進展,1997,21(3):31-37.
ForecastingmodelofaquacultureproductionbasedonheuristicjohnsonalgorithmoptimizationandBPneuralnetwork
LIHaitao,MAOYuqi
SchoolofInformationScience&Technology,QingdaoUniversityofScience&Technology,ShandongQingdao266061,China)
In view of the difficulty in forecasting aquaculture production,a forecasting model of aquaculture production based on Heuristic Johnson Algorithm Optimization and BP Neural Network(BPNN)is proposed in this paper,which is based on the traditional BP Neural Network,with the intention to solve the problems of long time network training and easily being trapped into local optimal solution.It uses Hheuristic Johnson Algorithm to reduce input neuron,and the cut-and-try method to determine the number of hidden layers,thus to construct the Heuristic Johnson Back Propagation Neural Network(HJA-BPNN) Forecasting Model of high precision and high efficiency.The forecasting results of shrimp production in Shandong province,by means of the forecasting model showed that the root of mean square error is smaller than that that by means of traditional BP Neural Network and GM(1,1) forecasting method,and the learning efficiency is improved by comparing with the traditional BP neural network.The study showed that this forecasting model has more advantages in the model construction of a large number of historical data,which can shorten the modeling time and achieve good forecasting results so as to provide a new feasible method for forecasting aquaculture production.
aquaculture production;forecasting model;BP Neural Network;Johnson Algorithm
10.3969/j.issn.1007-9580.2017.06.004
2017-09-19
青島市創新創業領軍人才(15-07-03-0030)
李海濤(1978—),男,副教授,碩士生導師,研究方向:智慧水產。E-mail:taohaili@sina.com
TP391.7;S911
A
1007-9580(2017)06-019-06