伍丹華 周禮梅



摘要:利用江蘇省東臺市2009-2018年糧食生產相關影響指標數據,建立了基于Back progagation(BP)神經網絡的東臺市糧食產量預測模型。該模型以糧食種植面積、農藥施用量、化肥施用量、農業機械化總動力、農用排灌動力機械5個指標為神經網絡輸入值,糧食產量為輸出值進行預測,結果表明BP神經網絡應用于糧食產量預測精度高,在糧食產量預測方面符合客觀現實,對政府部門糧食預測具有指導意義。
關鍵詞:BP神經網絡;模型;糧食產量預測
東臺市農業在市場資源配置中決定性不高、人居產量和消費匹配度還有差距,人口增長和耕地保有量存在結構性矛盾,還需要建立增長點、增長極,增強內生發展動力。面對東臺市糧情和生產情況,江蘇省東臺市堅持糧食生產要穩字當頭,穩政策、穩面積、穩產量,堅持“三農”工作優先保障投入,做好糧食產量預測,對決策部門具有現實的指導意義和參照依據。糧食預測產量模型具有多樣性、指標性和全面系統性問題,目前已有的諸多預測方法誤差相對較大,精度不高。隨著人們意識形態的不斷提高,農業大數據智能化的逐步應用, Back progagation(BP)神經網絡彌補了傳統預測和估算方法的缺陷,具有較好的預測特性。本文利用BP神經網絡進行糧食產量預測,目的在于精準預測糧食產量,對東臺市糧食生產進行前瞻性、可見性預測,更符合東臺市糧食生產的實際。
1? ? 東臺市糧食產量模型的建立
1.1? ?神經網絡模型工作原理
BP網絡是一種按誤差正反向互交的網絡,包括前端、中端和后端的幾層反饋的神經網絡,特點就是信號向前不斷反復傳遞,誤差后向反復不斷傳播。在正向傳遞過程中,輸入矢量數據先經過輸入層輻射傳遞到隱含層一步步處理,直到輸出層。每一層的輸出量只會影響下一層的處理層。如果輸出層得不到每一層的預期數據輸出,則再轉入上一層進行反向傳播,在這個過程中不斷修正和調整網絡權限和閾值,最后的BP神經網絡輸出的數據預測不斷跟真實值相近。一般BP網絡必須要求與輸入相對應的希望輸出構成不斷學習訓練,通過訓練使網絡具有記憶和預測的功能。對網絡進行初始化后,確定系統輸入輸出矢量,分別確定網絡輸入層節點數、隱含層節點數、輸出層節點數及輸出層、初始化輸入層、隱含層和輸出層神經元的權限,隱含層及輸出層閾值,再給與學習速率和神經元鼓勵函數。隱含層輸入值,是根據輸入向量,輸入層和隱含層間連權限以及隱含層閾值來計算。BP神經網絡預測輸入值,是根據隱含層輸入值,連接權限和閾值來計算。最后預測誤差根據網絡預測輸出值和期望輸入值計算得出。算法流程如下圖1:
1.2? ?BP神經網絡的糧食產量模型參數確定
現實解決問題過程中,目前在該領域利用實驗軟件,選取大量的計算和試驗指標應用神經網絡算法。為減少大量的研究和計算的工作量,實驗軟件提供了神經網絡工具箱,在實際解決問題過程中減少了時間,也提供了便利的條件。該模型選取糧食種植面積、農藥施用量、化肥施用量、農業機械化總動力、農用排灌動力機械5個指標為神經網絡輸入值,輸出變量為糧食產量,根據模型建立糧食產量BP神經網絡模型。BP神經網絡在確定了輸入量和輸出量以后首先進行變量的規范化處理。本文研究采用Sigmoid函數的取值范圍為[-1,1],采用 神經網絡工具箱中的premnmx專用函數進行規范化處理,然后進行BP神經網絡的建立。本文通過三層BP網絡隱層節點的數目,可確定隱含層節點數為11,這樣就可以構成了一個“5-11-1”的BP神經網絡模型。其隱含層及輸出層傳遞函數分別采用雙曲正切函數(tansig)及線性函數(purelin),采用進一步割線算法(trainoss)。設置最大迭代次數2000,誤差值期望0.01。
2? ? 東臺市糧食產量預測與結果分析
東臺市位于江蘇省中部,鹽城市最南端,東至黃海,南與海安縣接壤,西與泰州市興化市毗鄰,北與鹽城大豐區交界,區域總面積3175.15平方公里。東臺市是鹽城糧食產量豐富的縣級市之一,為鹽城成為江蘇省最大的農業生產市起到舉足輕重的作用,因為,糧食精準預測十分重要,東臺市自然資源豐富,但經濟發展水平還有一定的差異性,對東臺市實際情況做的大量的調查研究后,選取了與糧食產量密切相關的5個指標作為網絡的輸入值,糧食產量作為輸出值[2]。
以2009-2018年的數據為基礎,選取2009-2013年5個年份影響因素和糧食產量數據作為訓練樣本,以2014-2018年的影響因素和糧食產量數據作為檢驗樣本。具體指標數據如表1,數據來源于東臺市統計年鑒。
在MATLAB(R2014a)實驗環境下,調用BP神經網絡工具箱中的函數,進行網絡訓練與檢驗。選取了Trainlm函數,學習函數為Learngdm,傳遞函數Tansig,輸出函數設定為Logsig。網絡層次設計的參數規定如下:隱含神經元素9個,輸出元素1個,學習率0.01,終止參數設最大批次2000次,步長Epochs為1000,精度0.0001層。在以上設計的基礎上,編寫BP預測網絡設計與練習,經過多次驗證,取得了較好的預測結果,如下圖2所示。
通過10個樣本的檢驗,2008-2017年的預測值與真實值的誤差均小于3%,具有高度的精確性,取得了較好的擬合結果。誤差稍大的點出現在2015、2016年糧食產量預測數據圖形中,在2017年預模型中又適時得到了相應的調整,表現出模型較好的自調劑和自適應的特點,預測結果相對穩定,達到與現實比較后的預期結果。根據此模型可以對未來年份的東臺市糧食產量進行預測。再次輸入2010-2018年的數據作為樣本輸入,根據模型預測2019年的糧食產量,仿真結果為64589萬噸,國家統計局公布的2019年的東臺市糧食產量為64896萬噸,數據比對后,二者誤差基本可以忽略,表明BP算法對東臺市糧食產量的預測是匹配的。
3? ? 結 論
針對東臺市糧食產量預測問題,普通統計模型對糧食產量預測準確性不高,將BP神經網絡應用于糧食產量預測,精度高,自適應能力好。本文提出了基于BP算法的模型,以2008-2018年東臺市糧食產量為檢驗樣本進行檢測,結果表明,BP神經網絡模型預測數據較穩定,結果得到預期,有著傳統方法不可代替的優勢。該模型擬合了復雜的非線性系統問題,為東臺市糧食產量預測提供了新的有效方法。但本文中還存在不足的地方,沒有充分考慮到糧食產量與其他更多影響因素之間的關系,預測方法相對宏觀。此外,BP網絡算法中還有神經網絡收斂慢和容易陷入局部極小值的問題,所以,BP網絡算法還有些缺陷,有待進一步優化提高。
參考文獻:
[1]劉星,李壯闊,王文輝.基于BP神經網絡的化肥供應商選擇模型研究[J].湖南農業科學,2007(6):169-170.
[2]朱凱,王正林.精通MATLAB神經網絡[M].北京:電子工業出版社,2010:193-198.