?

BP神經網絡最佳停止法對農機總動力的預測

2017-12-16 07:01何志連王福林董慧英王會鵬
農機化研究 2017年2期
關鍵詞:訓練樣本維數農機

何志連,王福林,董慧英,王會鵬

(東北農業大學 工程學院,哈爾濱 150030)

?

BP神經網絡最佳停止法對農機總動力的預測

何志連,王福林,董慧英,王會鵬

(東北農業大學 工程學院,哈爾濱 150030)

在分析和研究了基于神經網絡的農機總動力預測的基礎上,指出了神經網絡傳統預測方法預測精度低的原因是神經網絡訓練階段和預測階段的矛盾性。通過一系列實驗表明:隨著擬合誤差的逐漸減小,預測誤差出現了先下降后上升的規律,即所謂的“過擬合”問題。為了解決這個問題,應用最佳停止法對農機總動力進行預測,該方法把樣本集分成訓練樣本集、確認樣本集及驗證樣本集3部分。在訓練過程中監測訓練樣本集和確認樣本集的誤差,當確認樣本集的誤差連續20次不減小時,退出訓練,返回最小確認樣本集誤差所對應的網絡數據,并用驗證樣本集來檢驗最佳停止法的預測精度。實驗數據表明:最佳停止法避免了網絡出現的“過擬合”問題,有效提高了預測精度。最后,用這個訓練好的網絡模型預測了黑龍江省2015-2020年的農機總動力。

農機總動力;最佳停止法;神經網絡;時間序列;過擬合

0 引言

農機總動力(農業機械總動力的簡稱)指主要用于農、林、牧、漁業的各種動力機械的動力總和, 包括耕作機械、排灌機械、收獲機械、農用運輸機械、植物保護機械、牧業機械、林業機械、漁業機械和其他農業機械。某地區的農機總動力是衡量該地區農業機械化水平的主要指標,也是該地區政府部門制定農業機械化發展規劃及農機生產企業指定產品結構調整方案的重要參考數據[1]。因此,做好農機總動力的預測具有十分重要的意義。目前,關于農機總動力的預測方法主要有線性回歸模型、移動平均法、指數平滑法、灰色GM(1,1)模型、龔珀茲曲線、組合預測和人工神經網絡等[2],但預測效果都不太理想。BP神經網絡結構簡單,且BP算法易于實現,有很強的非線性函數映射能力,在時間序列預測方面得到了廣泛的應用。但是,傳統的BP神經網絡預測方法的泛化能力不足,預測的精度難以保證。針對這個問題,本文提出最佳停止法來改善BP神經網絡的預測能力。

1 BP神經網絡預測模型分析

1.1 BP算法的分析

BP算法是BP神經網絡的核心,由信息的正向傳遞和誤差的反向傳播兩部分組成。3層的BP神經網絡結構如圖1所示。

圖1 3層BP神經網絡結構

1)信息的正向傳遞:設X=[x0,x1,x2,…,xI]T,V=(vij)I×J,W=(wjk)J×K,Y=[y1,y2,…,yK]T,Z=[z1,z2,…,zj,…,zJ]T。其中,I、J、K分別表示輸入層、隱含層和輸出層神經元的個數;i、j、k分別表示輸入層、隱含層和輸出層任一神經元。

(1)

(2)

ek=dk-yk

(3)

(4)

2)誤差的反向傳播:誤差首先由輸出層傳播到隱含層,計算出誤差對隱含層到輸出層連接權值的梯度矩陣W;再由隱含層傳播到輸入層,計算出誤差對輸入層到隱含層連接權值的梯度矩陣V。調整公式分別為

(5)

wjk(n+1)=wjk(n)+Δwjk(n)

(6)

(7)

vij(n+1)=vij(n)+Δvij(n)

(8)

其中,n表示迭代次數,η表示學習率。

1.2 BP神經網絡傳統預測方法存在的問題

1)BP神經網絡采取的是有導師學習方式,在對訓練樣本進行擬合的時候,理論上如果隱含層神經元個數足夠多,輸出層神經元的輸出信號可以以任意精度逼近導師信號,但是不一定擬合精度越高,預測的精度也越高。擬合精度太高有可能會出現“過擬合”的現象。也就是說,BP神經網絡在學習過程中學習了樣本過多的細節,反而失去了這些樣本中蘊藏的一般規律,這就是所謂的“過學習”現象?!斑^學習”導致“過擬合”,過擬合導致預測精度低,預測的時間序列越多,誤差越大。

2)傳統的預測方法隱含層神經元的傳遞函數采用對數S型函數或者雙曲正切S型函數,輸出層神經元的傳遞函數采用線性函數。這樣的組合雖然能夠提高收斂速度和非線性擬合能力,而且輸出層神經元的輸出信號的取值范圍也不受限;但是,實際上對增長型的時間序列的預測效果并不理想。因為隱含層神經元采用S型函數為傳遞函數時,由于其函數值是受限的,那么在預測階段其函數值已經達到飽和,會導致訓練階段與預測階段的矛盾性。

3)時間序列的預測往往給出的數據有限,如何選擇輸入樣本的維數直接關系著網絡結構的確定,同時也決定了輸入樣本的個數。輸入樣本的維數不宜過多也不宜過少。輸入維數過多則輸入樣本個數會過少,網絡就難以學習到蘊藏在樣本中的一般規律。時間序列預測是一種讓歷史告訴未來的預測方法,輸入樣本維數過少意味著歷史太少,難以預測未來。

2 最佳停止法

2.1 最佳停止法的原理

最佳停止法是一種有效提高網絡泛化能力的方法,解決了傳統方法訓練階段和預測階段的矛盾及網絡的“過擬合”問題。

在最佳停止法中,樣本數據被劃分成3部分:一是訓練樣本集,在網絡訓練過程中用來計算梯度和修正網絡的權值和閾值;二是確認樣本集,在訓練過程中監控確認樣本集的誤差;三是驗證樣本集,是用來檢驗網絡的預測效果的。這部分樣本在網絡訓練中并沒有用到,也就是說事先假設確認樣本集的輸出是不知道的。在訓練的過程中,每訓練一次不僅要計算出訓練樣本集的誤差,同時也要計算出確認樣本集的誤差。訓練樣本集的誤差在BP算法的操作下進行反向傳播,層層修正網絡的權值和閾值。在訓練初期,訓練樣本集和確認樣本集的誤差都會連續減??;在訓練達到一定程度時,訓練樣本集的誤差還在繼續減小,但確認樣本集的誤差可能會增大。以確認樣本集的誤差第1次開始增大為計數點,保留前一次確認樣本集的誤差和網絡的各項數據。網絡繼續訓練,當確認樣本集的誤差連續不減小的次數達到設定次數時,網絡退出訓練,返回最小確認樣本集誤差所對應的網絡數據,即為網絡訓練的最終結果。

2.2 最佳停止法的實現

最佳停止法可以用于MatLab神經網絡工具箱中的各種訓練函數,僅需要將確認樣本集的數據傳送給訓練函數。但在收斂速度太快的算法(如trainlm)中使用最佳停止法要特別謹慎,需要設置訓練參數(如將系數mu設置得相對大一些,如設為1;將mu_dec和mu_inc設為接近1的數值,如分別為0.8和1.5),以減小收斂速度;而對于采用收斂速度較慢的算法的訓練函數(如trainscg和trainrp),通常應用最佳停止法的效果很好。另外,確認樣本集的選擇也是很重要的,確認樣本集應該要有代表性。實現最佳停止法的參數設置如下:

Net.divideFcn=’divideind’; %樣本劃分函數

Net.divideparam.trainind=train_ind; %訓練樣本

Net.divideparam.valind=val_ind; %確認樣本

Net.divideparam.testind=test_ind; %驗證樣本

Net.trainparam.max_fail=20; %最大失敗次數

其中,divideind只是樣本劃分函數的其中一種,除此之外還有dividedblock、dividedint、dividerand和dividetrain函數。

3 農機總動力的預測實驗

根據2015年黑龍江省統計年鑒,黑龍江省1980-2014年農機總動力數據如表1所示。

表1 黑龍江省1980-2014年農機總動力

3.1 BP神經網絡預測模型建立

1)網絡結構的確定。設時間序列數為M=2014-1980=35,樣本輸入的維數I=6,樣本個數為R=M-I=29,隱含層神經元個數J=6,樣本輸出維數為1,建立6-6-1的3層BP神經網絡,如圖1所示。

2) BP算法的選擇。為了觀測在網絡訓練過程中誤差的變化規律,以及考慮到運用最佳停止法進行訓練時觀測訓練樣本和確認樣本的誤差變化規律,選擇收斂速度適中的彈性BP算法。

3) 歸一化。根據輸入維數為6,輸出維數為1,生成樣本原始數據表,再把樣本原始數據按照式(9)歸一化到[0,1]區間,則

(9)

其中,xmin為數據序列中的最小數,xmax為數據序列中的最大數。

3.2 農機總動力的傳統方法預測

以輸出為1986-2010年黑龍江省農機總動力數據對應的樣本作為訓練樣本,以輸出為2011-2014年黑龍江省農機總動力數據對應的樣本作為驗證樣本。為了驗證擬合誤差與預測誤差的關系,設計不同均方誤差精度的網絡訓練仿真實驗得到實驗數據,如表2所示。

表2 擬合誤差與預測誤差關系

表中的數據都是訓練10次取平均值得到的。由表2可見:擬合平均相對誤差隨著均方誤差的減小而減小,預測平均相對誤差隨著擬合平均相對誤差的減小而先減小后增大。這驗證了傳統預測方法訓練階段和預測階段的矛盾性,即所謂的“過擬合”問題。

3.3 農機總動力的最佳停止法預測

以輸出為1986、1987、1989、1990、1992、1993、1995、1996、1998、1999、2001、2002、2004、2005、2007、2008、2010年黑龍江省農機總動力數據所對應的樣本為訓練樣本;以輸出為1988、1991、1994、1997、2000、2003、2006、2009年黑龍江省農機總動力數據所對應的樣本為確認樣本;以2011-2014年數據所對應的樣本為驗證樣本。仿真實驗數據如表3所示。

由表3可見:采用最佳停止法的預測誤差為2.87%,訓練樣本平均相對誤差(即擬合平均相對誤差)為3.37%,確認樣本平均相對誤差為3.59%。采用最佳停止法預測誤差的2.87%比傳統方法預測誤差處于最低時的4.54%還低1.67%,即誤差減小了36.78%。另外,最佳停止法的訓練樣本平均相對誤差和確認樣本平均相對誤差相當,說明了樣本劃分的合理性,有效避免了出現“過擬合”。

為了直觀地看到最佳停止法的誤差變化規律,畫出圖2。圖2中,橫坐標為迭代次數,縱坐標為均方誤差。由圖2可知:網絡訓練開始時,訓練樣本和確認樣本的均方誤差都在持續減小,迭代次數為69后,確認樣本均方誤差持續增大;迭代次數為89次時,到達設定的max_fail=20,網絡退出訓練,返回最小確認樣本誤差對應的網絡。

表3 最佳停止法預測

圖2 最佳停止法誤差曲線

4 結論

1)實驗表明:隨著擬合誤差的逐漸減小,預測誤差出現了先下降后上升的規律,即所謂的“過擬合”現象。

2)實驗表明:采用BP神經網絡最佳停止法進行黑龍江省農機總動力預測解決了采用BP神經網絡傳統預測方法出現的“過擬合”問題,有效提高了預測的精度。最佳停止法的平均預測誤差為2.87%,比傳統方法預測處于最好情況時的4.54%還低1.67%,即預測誤差下降了36.78%。同時,用最佳停止法訓練好的網絡,預測了2015-2020年的黑龍江省農機總動力。

[1] 楊軍強.中國農機總動力預測分析[J].湖南農機,2008(11):19-20.

[2] 朱瑞祥,黃玉祥,楊曉輝.用灰色神經網絡組合模型預測農機總動力發展[J].農業工程學報,2006(2):107-110.

[3] 王吉權,王福林,邱立春. 基于BP神經網絡的農機總動力預測[J].農業機械學報,2011(12):121-126.

[4] 周金勇.混沌時間序列預測模型研究[D].武漢:武漢理工大學,2009.

[5] 宋琿,董欣,王兵.基于BP神經網絡的農機總動力預測模型研究[J].東北農業大學學報,2009(4):116-120.

[6] 張淑娟,趙飛.基于Shapley值的農機總動力組合預測方法[J].農業機械學報,2008(5):60-64.

[7] 鄭建紅.組合預測方法研究及其在農機總動力預測中的應用[D].哈爾濱:東北農業大學,2012.

[8] 嚴磊,毛鳳梅,雷邦軍,等.農機總動力預測的灰色神經網絡新方法[J].中國農機化,2013(3):45-48.

[9] 劉玉靜,李成華,楊升明. 遼寧省農機總動力組合預測與分析[J].農機化研究,2007(5):31-33.

[10] 王笑巖,王石. 基于BP神經網絡的遼寧省農機總動力預測[J].中國農機化,2015(2):314-317.

The Application of the BP Neural Network with the Best Method of Stop in Forecast of Total Power of Agriculture Machinery

He Zhilian , Wang Fulin , Dong Huiying , Wang Huipeng

(Northeast Agricultural University , Engineering College , Harbin 150030, China)

Based on the analysis and research of the application of Neural Network in forecast of total power of agriculture machinery , the reason for the low prediction accuracy is pointed out . That is the contradiction between training period and forecast period . Through a series of related simulation experiments conducted in Matlab , the law that as the error of fitting decreased gradually , the error of forecast decreased firstly and then increased has been proved . This is the “over fitting” problem . In order to solve the problem , the best method of stop which separate the sample set into training sample set , validation sample set and test sample set is put forward to forecast the total power of agriculture machinery . During the training period , the error of training sample set and the error of validation sample set are monitored . When the error of validation sample set begin to increase and cannot decrease in 20 iterations , the training is stopped and the minimum error of validation sample set and its related neural network are saved . Then the test sample set is used to test the forecast error . Experiments prove that the problem of “over fitting” is solved by the best method of stop and forecast accuracy is improved.Finally, the total power of agriculture machinery of Heilongjiang province from 2015 to 2020 is predicted by this trained neural network.

power of agriculture machineny; best method of stop; neural network; time series; over fitting

2016-03-17

國家自然科學基金項目(31071331);黑龍江省教育廳科學技術研究項目(12511049)

何志連(1989-),男,湖南永州人,碩士研究生,(E-mail)295952258@qq.com。

王福林(1959-),男,黑龍江安達人,教授,博士生導師,(E-mail)fulinwang1462@126.com。

S23-01

A

1003-188X(2017)02-0001-05

猜你喜歡
訓練樣本維數農機
沃得農機
β-變換中一致丟番圖逼近問題的維數理論
春來好時節 農機備耕忙
人工智能
不一樣的農機展
實值多變量維數約簡:綜述
基于小波神經網絡的網絡流量預測研究
寬帶光譜成像系統最優訓練樣本選擇方法研究
如何加強農機管理發揮農機作用
具強阻尼項波動方程整體吸引子的Hausdorff維數
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合