劉海姣 秦亮曦* 秦川 蘇永秀
(1.廣西大學(xué)計(jì)算機(jī)與電子信息學(xué)院 廣西壯族自治區(qū)南寧市 530000)
(2.廣西氣候中心 廣西壯族自治區(qū)南寧市 530000 3.廣西氣象科學(xué)研究所 廣西壯族自治區(qū)南寧市 530000)
我國熱帶果樹的水果產(chǎn)量約占世界熱帶果樹水果總產(chǎn)量的28%,種類繁多,品質(zhì)優(yōu)良。但是我國屬于熱帶果樹種植的北緣地帶,受氣候變化影響,每年產(chǎn)量的波動(dòng)較大。
芒果產(chǎn)量信息對(duì)于我國芒果生產(chǎn)、加工、出口、消費(fèi)等都有重要作用,對(duì)我國農(nóng)業(yè)產(chǎn)業(yè)發(fā)展具有重要意義??茖W(xué)、準(zhǔn)確地預(yù)測(cè)芒果產(chǎn)量,可以為相關(guān)部門優(yōu)化熱帶水果生產(chǎn)結(jié)構(gòu)提供良好的參考與借鑒,具有較好的研究?jī)r(jià)值。
本研究旨在利用歷年廣西芒果產(chǎn)量及同期氣象數(shù)據(jù),建立Bi-LSTM 芒果產(chǎn)量預(yù)測(cè)模型,對(duì)廣西的芒果產(chǎn)量進(jìn)行預(yù)測(cè)。
長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)。由于其獨(dú)特的結(jié)構(gòu),LSTM 非常適合于處理時(shí)間序列數(shù)據(jù)的預(yù)測(cè)問題。目前,國內(nèi)對(duì)于農(nóng)作物產(chǎn)量的預(yù)測(cè)方法主要有BP 神經(jīng)網(wǎng)絡(luò)模型及其改進(jìn)方法[1]、灰色預(yù)測(cè)模型[2]和ARIMA 模型等,以及上述方法的組合模型等。其中,BP 神經(jīng)網(wǎng)絡(luò)模型是各種農(nóng)作物產(chǎn)量預(yù)測(cè)的常用方法,但是傳統(tǒng)的BP 神經(jīng)網(wǎng)絡(luò)模型存在學(xué)習(xí)收斂速度慢、易陷入局部極值等問題,其預(yù)測(cè)精度并不理想[3]。灰色預(yù)測(cè)模型對(duì)非平穩(wěn)序列,波動(dòng)較大的數(shù)據(jù)序列預(yù)測(cè)效果較差,水果產(chǎn)量變動(dòng)的隨機(jī)性、非平穩(wěn)性和復(fù)雜性,給水果產(chǎn)量的中長(zhǎng)期預(yù)測(cè)帶來了很大的困難。
芒果產(chǎn)量數(shù)據(jù)屬于波動(dòng)較大的時(shí)間序列。其中1991-1994年呈現(xiàn)上升趨勢(shì),經(jīng)過1994-1996年3年小幅波動(dòng)后,1997年又出現(xiàn)了快速下降趨勢(shì)。后面每年的產(chǎn)量都會(huì)出現(xiàn)小幅或較大的波動(dòng),因此在建立芒果產(chǎn)量預(yù)測(cè)模型時(shí),需要充分考慮其波動(dòng)性大的特點(diǎn),選擇能反映這一特點(diǎn)的模型,而Bi-LSTM 模型正好具有解決此類問題的優(yōu)勢(shì)。
長(zhǎng)短期記憶網(wǎng)絡(luò)是一種時(shí)間循環(huán)神經(jīng)網(wǎng)絡(luò),是為了解決一般的RNN 存在的長(zhǎng)期依賴問題而專門設(shè)計(jì)出來的。其結(jié)構(gòu)就是把循環(huán)神經(jīng)網(wǎng)絡(luò)中隱含層換成LSTM 模塊。LSTM 用細(xì)胞狀態(tài)表示門控制單元狀態(tài)。細(xì)胞狀態(tài)由三個(gè)門來控制,這三個(gè)門分別稱為輸入門(Input Gate)、遺忘門(Forget Gate)和輸出門(Output Gate)。
2.2.1 基于Bi-LSTM 的芒果產(chǎn)量預(yù)測(cè)模型
圖1:基于Bi-LSTM 的芒果產(chǎn)量預(yù)測(cè)模型
圖2:各模型預(yù)測(cè)擬合效果
芒果產(chǎn)量時(shí)間序列數(shù)據(jù)存在影響產(chǎn)量的氣象因素多但積累的歷史數(shù)據(jù)年份少的特點(diǎn),使用單向的LSTM 難免存在由于數(shù)據(jù)較少帶來的問題,而Bi-LSTM 通過正反兩個(gè)方向的訓(xùn)練提高模型的性能[4]。因此,采用了Bi-LSTM 來構(gòu)建廣西芒果產(chǎn)量的預(yù)測(cè)模型(如圖1 所示)。
該模型共由三個(gè)部分組成:數(shù)據(jù)輸入及預(yù)處理層、隱含層和輸出層。隱含層由Bi-LSTM 層和全連接層構(gòu)成。
Bi-LSTM 的訓(xùn)練過程具體如下:
對(duì)歷年芒果產(chǎn)量及相關(guān)的氣象數(shù)據(jù)進(jìn)行預(yù)處理,包括歸一化,利用氣象因素在時(shí)間上的相似性填補(bǔ)缺失值等,同時(shí)將預(yù)處理過的數(shù)據(jù)劃分為訓(xùn)練集和測(cè)試集;
初始化模型參數(shù),不斷嘗試Bi-LSTM 的層數(shù),節(jié)點(diǎn)數(shù),Epoch以及迭代次數(shù);
對(duì)于訓(xùn)練樣本中的每個(gè)<x,y>
自前向后的正向隱藏層更新公式為:
自后向前的反向隱藏層更新公式為:
正反向隱藏層信息的輸出層更新公式為:
利用公式(4)[5]計(jì)算輸出值,并傳給輸出層。
2.2.2 基于Bi-LSTM 的芒果產(chǎn)量預(yù)測(cè)算法
算法的步驟如下:
step 1:數(shù)據(jù)預(yù)處理。對(duì)數(shù)據(jù)進(jìn)行相關(guān)性分析和歸一化處理,并將數(shù)據(jù)劃分為訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集。
step 2:初始化模型參數(shù)。設(shè)置實(shí)驗(yàn)所得到的Bi-LSTM 模型最佳層數(shù),輸入層、隱藏層及輸出層神經(jīng)元數(shù),學(xué)習(xí)步長(zhǎng)初始值,Epoch 以及Dropout 概率等參數(shù)。
step 3:訓(xùn)練階段。利用訓(xùn)練數(shù)據(jù)集,對(duì)Bi-LSTM 模型進(jìn)行訓(xùn)練。包括正向計(jì)算、反向計(jì)算及全連接層計(jì)算、得到模型輸出結(jié)果,使得輸出結(jié)果與實(shí)際值的誤差最小化。
step 4:測(cè)試階段。將測(cè)試數(shù)據(jù)集輸入到訓(xùn)練好的Bi-LSTM 芒果產(chǎn)量預(yù)測(cè)模型中,得到芒果產(chǎn)量預(yù)測(cè)結(jié)果,并進(jìn)行誤差分析。
實(shí)驗(yàn)數(shù)據(jù)是廣西氣象局提供的1991-2014年廣西某地芒果產(chǎn)量及同期氣象要素?cái)?shù)據(jù)。
通過相關(guān)性分析,從9 個(gè)要素24 個(gè)芒果生產(chǎn)周期,共計(jì)324個(gè)要素(特征)中選取了106 個(gè)相關(guān)性顯著的特征作為Bi-LSTM模型的訓(xùn)練特征。
在廣西芒果產(chǎn)量預(yù)測(cè)問題中,需要采用含有氣象要素和產(chǎn)量的訓(xùn)練數(shù)據(jù)集對(duì)Bi-LSTM 模型進(jìn)行訓(xùn)練,本文選取1991-2002年的氣象數(shù)據(jù)和產(chǎn)量作為訓(xùn)練數(shù)據(jù),2003-2014年的氣象數(shù)據(jù)作為測(cè)試數(shù)據(jù),對(duì)訓(xùn)練完成的Bi-LSTM 模型進(jìn)行測(cè)試,預(yù)測(cè)測(cè)試年份的芒果產(chǎn)量并與實(shí)際產(chǎn)量進(jìn)行比較。
為了評(píng)估Bi-LSTM 模型對(duì)廣西芒果產(chǎn)量數(shù)據(jù)預(yù)測(cè)的性能,將把Bi-LSTM 模型與其它幾個(gè)模型進(jìn)行比較。實(shí)驗(yàn)的參數(shù)epochs 表示訓(xùn)練次數(shù),一次訓(xùn)練即所有訓(xùn)練樣本均在神經(jīng)網(wǎng)絡(luò)中經(jīng)過了一次前向傳播和一次后向傳播的過程。
主要設(shè)置4 個(gè)對(duì)比模型,每個(gè)對(duì)比實(shí)驗(yàn)情況均運(yùn)行10 次取平均值。
(1)SVR 模型:支持向量回歸(Support Vector Regression, SVR)模型。
(2)BP 模型:BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)模型。
(3)LSTM 模型:?jiǎn)螌娱L(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)模型。
(4)GRU 模型:GRU(Gated Recurrent Unit, GRU)是LSTM的一種變體,在GRU 中只有更新門和重置門。
采用均方誤差(MSE,Mean Squared Error)和均方根誤差(RMSE,Root Mean Square Error)[5]作為評(píng)價(jià)指標(biāo)對(duì)各模型的性能進(jìn)行評(píng)價(jià)。MSE 和RMSE 值越小,表明預(yù)測(cè)值與實(shí)際值之間偏差越小,預(yù)測(cè)性能越好,反之則預(yù)測(cè)性能越差。
表1:不同模型預(yù)測(cè)值的RMSE、MSE 比較
五個(gè)不同模型的預(yù)測(cè)值及實(shí)際值如圖2 所示,而各模型預(yù)測(cè)的MSE,RMSE 如表1 所示。
在相同實(shí)驗(yàn)參數(shù)設(shè)置下,Bi-LSTM 模型的預(yù)測(cè)值與實(shí)際值更加相近,產(chǎn)量趨勢(shì)也比其它模型更加擬合。Bi-LSTM 模型的RMSE分別比SVR、BPNN、LSTM、GRU 模型的RMSE 降低了26.2%、31.4%、1.3%、9.4%。而MSE 分別比SVR、BPNN、LSTM、GRU模型的MSE 降低了45.6%、52.9%、2.5%、18.0%。
Bi-LSTM 模型的預(yù)測(cè)準(zhǔn)確率明顯優(yōu)于比較的4 個(gè)模型,獲得了較好的預(yù)測(cè)效果。為了了解增加LSTM 層數(shù)對(duì)準(zhǔn)確率的影響,把單層和多層LSTM、Bi-LSTM 預(yù)測(cè)性能進(jìn)行了比較,單層Bi-LSTM模型效果比較好,而雙層Bi-LSTM 模型效果有下降,這也許跟實(shí)驗(yàn)數(shù)據(jù)規(guī)模不夠大有一定關(guān)系,所以復(fù)雜模型的優(yōu)勢(shì)發(fā)揮不出來。
為了更準(zhǔn)確地預(yù)測(cè)芒果產(chǎn)量,設(shè)計(jì)了基于Bi-LSTM 網(wǎng)絡(luò)的芒果產(chǎn)量預(yù)測(cè)模型,并給出了該模型的算法步驟。將廣西某地區(qū)芒果產(chǎn)量及同期相關(guān)性較為顯著的氣象要素?cái)?shù)據(jù)用于構(gòu)建Bi-LSTM預(yù)測(cè)模型,并將訓(xùn)練好的Bi-LSTM 模型與SVR、BPNN、GRU、LSTM 等模型進(jìn)行了性能對(duì)比。實(shí)驗(yàn)結(jié)果表明,Bi-LSTM 模型與上述4 個(gè)模型相比,均方根誤差大幅降低,同時(shí)預(yù)測(cè)產(chǎn)量更加接近于實(shí)際產(chǎn)量。本研究可以為相關(guān)部門優(yōu)化熱帶水果生產(chǎn)和其它農(nóng)作物產(chǎn)量預(yù)測(cè)研究提供較好的參考價(jià)值。