□崔海朋 邢貞相 關長瑜
水稻是我國主要糧食作物之一,不同年景對糧食產量影響較大。經研究證明,水稻生長季節(jié)≥20℃的積溫與產量高低有密切關系。當≥20℃的積溫在2100℃以下時,就會因熱量不足而發(fā)生延遲型或障礙型冷害,最終造成糧食嚴重減產。只有≥20℃的積溫得到基本滿足,且光、水條件適宜時,糧食才能獲得高產。由此可見,≥20℃積溫的多少,對保證糧食產量至關重要。B P神經網絡模型是一種模仿動物神經網絡行為特征,進行分布式并行信息處理的數學模型,具有較強的非線性映射能力,近年來應用B P模型通過積溫對水稻產量進行預報,效果良好。
由于年際積溫變化大,必須按照常規(guī)氣候指標安排生產。作者利用沈陽市統計局1951~1990年水稻單產(k g/畝)與沈陽≥10℃和≥20℃積溫資料進行相關分析,采用5年滑動平均法分解氣象產量,通過與≥10℃和≥20℃積溫的相關計算,得出≥20℃的積溫與水稻產量有密切關系。
表1 1955~1990年分型種類表
上表對各年分型的預報采用的是相關分析法,算法繁瑣,技術復雜,且精度不高。由于B P人工神經網絡有很強的函數映射功能,每一個特定的網絡都能夠表達十分復雜又難以用數學表達式表達的函數關系,尤其是非線性關系。但神經網絡的收斂速度較慢,且由于訓練樣本容量的限制而影響網絡的學習能力和預報準確性。為克服訓練樣本容量不足,本文采用馬爾可夫鏈蒙特卡羅模擬技術模擬足夠多的樣本為B P模型訓練所用,并將其用于各年分型預報中。
在多層前饋B P網絡的應用中,以圖1所示的網絡應用最為普遍。所謂三層包括了輸入層、隱層和輸出層。在三層前饋網絡中,輸入為X=(x1,x2,…,xr)T,再加入x0=1,可為隱層引入閾值;隱層輸出向量為Y=(y1,y2,…ym)T,再加入y0=1,可引入閾值;輸出層的輸出向量為O=(o1,o2,…,ok,ol)T;期望輸出向量為:d=(d1,d2,…,dk,dl)T。輸入層到隱層間的權值矩陣V=(V1,V2,…,Vj,Vm),其中列向量Vj為隱層第j個神經元對應的權向量;隱層到輸出層間的權值矩陣W=(W1,W2,…,Wk,Wl),其中列向量Wk為輸出層第k個神經元對應的權向量。在隱層中的轉移函數多采用S型激活函數,可有效地避免出現過飽和現象,而輸出層多采用線性函數,以適應實際問題的需要。
網絡誤差的定義如下式所示(以三層神經網絡為例,拓撲結構見圖1):
進一步展開至輸入層,得:
由上式可看出,網絡的輸入誤差是各層權值wij、vij的函數,因此不斷調整權值就可以改變誤差使之達到預定的精度。
B P算法的權值調整計算公式為:
式中α為學習速率,其他符號意義同上。
作為隨機模擬方法的馬爾可夫鏈蒙特卡羅(MCMC)方法早已被許多學者應用到物理、天文、氣象、通信等方面。常用的采樣方法有Metropolis-Hastings算法、吉布斯(Gibbs)采樣和Adaptive Metropolis (AM)算法。這三種方法中只有AM算法不依賴于事先確定的推薦分布且能夠考慮多維變量間的相關性,收斂速度快,故本文采用A M算法。
AM (Adaptive Metropolis)算法是Haario于2001年提出的一種改進的MCMC采樣器,相比傳統的M-H與Gibbs采樣,AM不再需要事先確定變量的推薦分布,而是決定于初始抽樣的協方差。將推薦分布定義為參數空間的多維正態(tài)分布形式,其初始協方差可根據先驗信息確定。在抽樣過程中根據馬爾可夫鏈的歷史抽樣信息調整推薦密度(即協方差矩陣),且可并行運算,從而提高了算法的收斂速度。
為獲得B P網絡訓練過程所需的足夠樣本,首先根據實測數據利用MCMC算法模擬出指定容量的訓練樣本,具體作法如下:
由于實測數據在測量過程中存在不可避免的隨機誤差,且觀測數據具有隨機性,故本文假定觀測數據符合以實測數據為均值的白噪聲分布,設方差為實測值的5%。利用MCMC算法從高斯分布中隨機模擬20個樣本,將樣本容量增加20倍,以其中的4/5作為BP網絡訓練樣本,其余作為其驗證樣本。
實驗證明BP網絡收斂的速度與網絡的初始權值和閾值有密切關系,好的初始權值和閾值會大大提高其收斂速度。
神經網絡輸入神經元采用1個,即為該年的積溫值,當輸入值為1時,由于sigmoid轉移函數對[0,1]區(qū)間的輸入比較敏感,故對積溫值進行歸一化處理。將數據變換為[0,1]區(qū)間的值的變換公式為:
式中:xi代表輸入或輸出數據,xmin代表數據變化的最小值,xmax代表數據變化的最大值。
輸出層神經元采用4個,即分別對應高溫型、正常偏高型、正常偏低型、冷害型四種年景分型,和該年的積溫值。當輸入值為1時,表示該年為相應的分型年;當輸入值為0時,則不屬于該分型年,形式分別為(1,0,0,0),(0,1,0,),(0,0,1,0),(0,0,0,1)。
BP算法,經過1868次訓練,最后收斂到總體能量函數值為4.5137×10-4,平均誤差為3.1345×10-6,擬合率達到93%,此時網絡的拓撲結構為1-5-4,訓練結果見表2。
表2 MCMC-BP對年景分型的訓練結果
由表2可看出,用本文提出的MCMC-BP模型對水稻生長季≥20℃積溫進行預報,擬合度較高。利用訓練得到的神經網絡結構預報1991~1994年的年景分型種類,結果見表3。
表3 MCMC-BP對1991~1994年景類型預報表
由表3可以看出,用MCMC-BP訓練收斂后的網絡結構來預報水稻產量年景,預報結果與實際年景完全相同,可見預報精度高,方法切實可行。
(一)MCMC-BP能夠準確地映射水稻生長季≥20℃積溫與相應年景類型之間的非線性關系,且具有較高的預報精度。
(二)本文提出的MCMC-BP模型采用Matlab語言編寫,便于操作、推廣,計算速度快、精度高,適于大量數據的計算。
(三)MCMC-BP模型的訓練不受人為因素的干擾,同時可考慮增加其他影響水稻產量年景因素,使預測結果更準確。
(四)本文提出的MCMC-BP模型還可應用到其他與預報、預測有關的問題中,具有廣闊的應用前景。