張 帥,魏正英,張育斌
(西安交通大學機械制造系統工程國家重點實驗室,西安 710054)
我國是一個干旱缺水的國家,淡水資源非常有限且分布極不均衡,水資源是制約社會經濟發展和生態環境改善的主要因素[1]。我國西北地區農業用水大多都是依靠自然降雨,降雨量對農業生產有著重要的影響,因此對可利用降雨量的預測對于農業灌溉用水管理有著非常重要的作用。
由于氣象參數之間高度復雜的相互作用,降雨量存在不確定性與隨機性,因此降雨量預測是一個嚴峻的任務。目前,國內外有關降雨量預測方法有很多,主要有概率統計法、灰色預測方法、馬爾科夫鏈、時間序列法等,這些技術模型都獲得了一定的準確率,概率統計法、灰色預測方法、馬爾科夫鏈比較適合降雨量呈指數型增長的數據,時間序列法預測值比較趨于平均值[2-4]。然而在實際生活中降雨量是一種具有隨機波動的數據集合,數據不一定呈指數型規律增長,這些模型僅限于固定長度的序列信息,沒有充分考慮降雨量變化的時間序列屬性,所以預測精度不高[5]。
遞歸神經網絡是一類人工神經網絡,用于識別諸如文本、語音等序列數據的模式或者識別傳感器、股票市場產生的數值型時間序列數據[6]。遞歸神經網絡充分考慮了時間序列的動態特性,通過對網絡的學習提高了自學習自適應能力,使其能夠更好地處理序列數據。本文將遞歸神經網絡模型應用到降雨量預測中指導農業灌溉,并且利用其他3種網絡模型進行實驗對比。
遞歸神經網絡是一類由各單位之間連接形成的有向循環的人工神經網絡,這是前饋神經網絡在處理序列數據的自然延伸,所不同的是,其輸入不僅包括當前所見的輸入樣例,還包括網絡在上一個時刻所感知到的信息[7]。利用這一性質,信息可以在網絡內部循環任意長的時間。如圖1所示, 標準網絡包含3個層,輸入層、隱藏層和輸出層。

圖1 遞歸神經網絡Fig.1 Recurrent neural network
工作過程如下:給定輸入向量序列(x1,…,xT),計算隱狀態的一個序列(h1,…,hT),通過迭代下列公式計算t=1至t=T的輸出序列(Y1,…,YT)[8,9]:
ht=tanh(Whxxt+Whhht-1+bh)
(1)
yt=Wohht+bo
(2)
式中:Whx是輸入層到隱藏層的權重矩陣;Whh是隱藏層到隱藏層的權重矩陣;Woh是隱藏層到輸出層權重矩陣;bh和bo是偏值;輸入層是ht-1和xt;ht-1是從初始時刻到t-1的串聯的歷史信息;xt是t時刻輸入層的序列,它與以前的歷史信息ht-1結合產生當前的隱含層ht,基于ht可以預測下一時刻yt。
長短期記憶單元由德國學者Sepp Hochreiter和Juergen Schmidhuber于20世紀90年代中期提出,由一組名為記憶塊的特殊單元組成,這些記憶塊可以記住隱藏層的任意時間狀態,從而解決梯度消失的問題[10]。長短期記憶單元可將誤差保持在更為恒定的水平,用于沿時間和層進行反向傳遞,讓遞歸網絡能夠進行許多個時間步的學習,從而打開建立遠距離因果聯系的通道[11]。
一個記憶塊主要由4個部分組成:輸入門、自連接的神經元、忘記門和輸出門(如圖2所示),這些門用于調制存貯單元本身和環境之間的相互作用,這樣從一個時刻到另一個時刻,存儲單元的狀態可以保持不變[12]。LSTM將信息存放在遞歸網絡正常信息流之外的門控單元中,單元通過門的開關判定存儲哪些信息,以及何時允許讀取、寫入或刪除信息[13]。LSTM網絡通過遞歸使用方程[14]更新網絡單元,激活從輸入序列x到輸出序列y的映射:

圖2 長短期記憶單元Fig.2 LSTM memory cell
it=σ(Wixxt+Wimmt-1+Wicct-1+bi)
(3)
ft=σ(Wfxxt+Wmfmt-1+Wcfct-1+bf)
(4)
ct=ftΘct-1+itΘg(Wcxxt+Wcmmt-1+bc)
(5)
ot=σ(Woxxt+Wommt-1+Wocct+bo)
(6)
mt=otΘh(ct)
(7)
yt=Wymmt+by
(8)
式中:σ是激活函數;i,f,o和c分別表示輸入門、忘記門、輸出門和單元激活向量;m表示t時刻激活函數作用之后單元的值;W表示權重矩陣;b表示偏值矩陣;Wix是輸入門和輸入之間的權重;bi是輸入門偏值;Θ是矢量的逐元素乘積;g和h分別是單元輸入和輸出激活函數。
通過時間反向傳播可以看作是對經典反向傳播算法的一種延伸,如圖3所示,其基本原理就是通過疊加之前權值保留誤差從而通過時間展開遞歸網絡[15],誤差可被進一步反向傳播。誤差后向傳播公式[16]如下:
δpj(t-1)=∑δph(t)uhjf′[spj(t-1)]
(9)
式中:h是t時間步長時隱藏節點的索引;j是t-1時間步長時隱藏節點的索引。
當獲得所有的誤差增量后,權重折回加起來更新每個展開的權重。BPTT往往比一般的優化技術如進化優化訓練網絡更快。

圖3 通過時間反向傳播Fig.3 Back-propagation through time
本文的數據是從中國氣象數據共享服務網獲得的榆林市氣象站降雨量,數據包括2000-2013年的降雨量,如圖4所示。數據包含年降雨量、月降雨量和旬降雨量,對于農業灌溉來說旬降雨量數據的重要性相對大于年度和月度降雨量數據,旬降雨量波動性更大,周期性更明顯,所以本文選用旬降雨量為實驗數據進行建模分析。

圖4 2000-2013年降雨量Fig.4 Precipitation from 2000 to 2013
本研究將數據集分為訓練集和測試集,數據集的統計結果如表1所示,表1中mean、std、min、max和median分別表示平均值、標準差、最小值、最大值和中位數。從圖4和表1可以看出,降雨量是動態的、高變異的時間序列,數據呈散點分布,旬降雨量具有一定的周期性。

表1 數據集統計 mm
隱藏層的大小應該反映訓練數據量,通常是30~500,在本文中選擇300。訓練網絡前,權重初始化為很小的值,學習速率設置為0.001。實驗中其他參數保持不變,對于每一個序列運用BPTT計算誤差梯度,更新權重系數。當模型精度沒有顯著提高時,訓練終止,通常20~50次迭代之后模型收斂。
為了評價模型的精度,本文運用均方根誤差(RMSE)、平均絕對誤差(MAE),Nash-Sutcliffe系數(NS)[17]。RMSE、MAE和NS公式如下:
(12)
式中:pt是預測值;yt是對應目標值。
RMSE、MAE越小,NS系數越高,模型越好。
本文選取3種不同輸入序列,前9個序列數據、前18個序列數據和前36個序列數據,運用模型分別對訓練集和測試集進行試驗,模型的評價指標RMSE、MAE和NS結果如表2所示。

表2 RNN模型的RMSE、MAE、NS統計Tab.2 The RMSE,MAE and NS statistics of RNN
從表2中可以看出,輸入數據和目標數據之間存在明確的關系。輸入的序列數據越大,模型的精度越高。
圖5和圖6分別給出了最好的訓練數據和測試數據結果,其中綠線表示真實值,藍線為預測值。觀察值和預測值是非常接近,同時趨勢具有非常高的相似性,模型對極值點、降雨量出現較大波動處也有較好的擬合。

圖5 遞歸神經網絡對訓練集的預測結果Fig.5 Predictions of RNN for training dataset

圖6 遞歸神經網絡對測試集的預測結果Fig.6 Predictions of RNN for test dataset
為比較模型,運用前饋神經網絡模型、小波神經網絡模型和ARIMA模型分別進行了實驗對比,結果如圖7~圖12所示。

圖7 前饋神經網絡對訓練集的預測結果Fig.7 Predictions of FNN for training dataset

圖8 前饋神經網絡對測試集的預測結果Fig.8 Predictions of FNN for test dataset

圖9 小波神經網絡對訓練集的預測結果Fig.9 Predictions of WNN for training dataset

圖10 小波神經網絡對測試集的預測結果Fig.10 Predictions of WNN for test dataset

圖11 ARIMA對訓練集的預測結果Fig.11 Predictions of ARIMA for training dataset

圖12 ARIMA對測試集的預測結果Fig.12 Predictions of ARIMA for test dataset
表3顯示了4個網絡模型的性能概要。由上述結果可以看出,4種模型預測趨勢與實際降雨量趨勢基本一致,遞歸神經網絡模型預測誤差最小,ARIMA模型預測誤差最大。相比其他模型,遞歸神經網絡模型各種性能指標均優于其他模型,說明遞歸神經網絡模型能夠更好地描述降雨量的動態、非線性變化規律,模型性能更好,適用于降雨量時間序列建模。

表3 不同模型性能比較Tab.3 different model performance comparison
注:“/”左邊為訓練集數據,右邊為測試集數據。
本文以降雨量預測為具體實例,構建了基于遞歸神經網絡的降雨量預測模型,以榆林市降雨量數據進行預測分析,結果表明模型預測精度高、泛化能力好、誤差較小, 能夠有效地預測降雨量,對農業用水管理、合理制定灌溉制度具有一定的參考意義。
遞歸神經網絡適合序列建模任務,相對于以前的方法,它不受傳統神經網絡訓練問題干擾,較好地解決了高維數、非線性和局部極小問題。帶有長短期記憶單元的遞歸神經網絡比其他模型更健壯,BPTT算法比其他方法訓練更快,也更準確。相比其他3個模型,遞歸神經網絡模型表現更優異。
[1] 張 強,趙映東.西北干旱區水循環與水資源問題[J].干旱氣象,2008,26(2):1-8.
[2] Nirmala M, Sundaram S M. A seasonal ARIMA model for forecasting monthly rainfall in Tamilnadu[J]. National Journal on Advances in Building Sciences and Mechanics, 2010,1(2).
[3] Ozgur Kisi, Mesut Cimen.Precipitation forecasting by using wavelet-support vector machine conjunction model[J]. Engineering Applications of Artificial Intelligence,2012,25:783-792.
[4] 常 青,趙曉莉.時間序列模型在降水量預測中的應用研究[J〗.計算機仿真,2011,28(7):204-206.
[5] 陶 猛,徐淑琴.時間序列小波神經網絡組合模型在年降雨量預測中的應用[J].節水灌溉,2013,(12):40-45.
[6] Tomas Mikolov,Martin Karafit, Lukas Burget, et al.Recurrent neural network based language model[C]∥ Eleventh annual conference of the international speech communication association. 2010:1 045-1 048.
[7] Mikael Bodén. A guide to recurrent neural networks and backpropagation[Z],2001.
[8] Alex Graves,Navdeep Jaitly. Towards end-to-end speech recognition with recurrent neural networks[C]∥ Proceedings of the 31 st international conference on machine learning. Beijing, China, JMLR: W&CP, 2014:32.
[9] Shujie Liu, Nan Yang, Mu Li, et al. A recursive recurrent neural network for statistical machine translation[C]∥Proceedings of the 52nd annual meeting of the association for computational linguistics. 2014:1 491-1 500.
[10] S Hochreiter, J Schmidhuber. Long short-term memory[J]. Neural Computation, 1997,9(8):1 735-1 780.
[11] Hochreiter, Y Bengio, P Frasconi, et al. A field guide to dynamical recurrent neural networks[R]. IEEE Press, 2001.
[12] Felix A Gers, Jurgen Schmidhuber,Fred Cummins. Learning to forget: continual prediction with LSTM[C]∥ Technical Report IDSIA-01-99. 1999.
[13] Alex Graves. Supervised sequence labelling with recurrent neural networks[Z]. 2008:31-38.
[14] Hasim Sak, Andrew Senior, Fran?oise Beaufays. Long short-term memory based recurrent neural network architectures for large vocabulary speech recognition[R]. 2014.
[15] Herbert Jaeger. A tutorial on training recurrent neural networks covering BPPT,RTRL,EKF and the “echo state network” approach[R]. 2013.
[16] Werbos P J. Back propagation through time: what it is and how to do it[J].Proceedings of the IEEE, 1990,78(10):1 550-1 560.
[17] J E Nash, J V Sutcliffe. River flow forecasting through conceptual models part I ---- a discussion of principles[J]. Journal of Hydrology,1970,10(3):282-290.