陳曉平 陳易旺 施建華
降雨對人類生活、國民經(jīng)濟(jì)起著重要的作用,降雨量變化造成洪澇、干旱等極端情況,對農(nóng)業(yè)、水資源、生態(tài)環(huán)境等存在很大影響.準(zhǔn)確的降雨信息對于水資源的規(guī)劃和管理至關(guān)重要,也是水庫抗旱和防洪的關(guān)鍵.然而,由于產(chǎn)生降雨的大氣過程的復(fù)雜性以及在空間和時(shí)間上各種尺度的巨大變化,造成了降雨的預(yù)測具有很大的挑戰(zhàn)性.隨著氣象衛(wèi)星以及天氣雷達(dá)等先進(jìn)設(shè)備、技術(shù)的發(fā)展,人們在天氣預(yù)報(bào)方面取得了許多進(jìn)步,但是要獲得準(zhǔn)確的降雨預(yù)報(bào)仍然面臨著很大的問題.降雨量具有非線性、復(fù)雜性、多樣性和不穩(wěn)定性等特點(diǎn),且受諸多因素的影響,而數(shù)據(jù)采集方面,隨著近年來科技的發(fā)展,衛(wèi)星和天氣雷達(dá)每年提供PB級氣象數(shù)據(jù)與以往的數(shù)據(jù)有著顯著的、本質(zhì)上的差異,故用傳統(tǒng)的技術(shù)、方法預(yù)測降雨存在著模糊性和不確定性,預(yù)測難度大增,往往無法取得很好的預(yù)測效果.
另一方面,隨著信息技術(shù)和計(jì)算科學(xué)的迅猛發(fā)展,計(jì)算機(jī)計(jì)算能力得到大幅度提高,統(tǒng)計(jì)機(jī)器學(xué)習(xí)方法被廣泛應(yīng)用于各個(gè)領(lǐng)域[1-2].該方法具有高度的非線性、靈活性和數(shù)據(jù)驅(qū)動(dòng)學(xué)習(xí)能力,可以應(yīng)用在降雨量的預(yù)測中,也可以得到比傳統(tǒng)方法更好的降雨量預(yù)測結(jié)果.因此,通過統(tǒng)計(jì)機(jī)器學(xué)習(xí)方法分析氣象數(shù)據(jù),發(fā)現(xiàn)其潛在的規(guī)律,從而更準(zhǔn)確地預(yù)測未來的降雨量,是一個(gè)很有意義的課題.
Baik和Hwang基于北太平洋西部熱帶氣旋的31年樣本,利用多元線性回歸方法和BP神經(jīng)網(wǎng)絡(luò)對未來12、24、36、48、60和72 h的氣旋強(qiáng)度進(jìn)行預(yù)測[3].結(jié)果表明,除了對未來12 h的預(yù)測誤差相近,BP神經(jīng)網(wǎng)絡(luò)模型解釋的方差百分比在其他所有時(shí)間間隔內(nèi)均大于回歸模型解釋的方差百分比,BP神經(jīng)網(wǎng)絡(luò)模型對未來其他時(shí)刻的預(yù)測誤差比回歸模型小10%~16%,顯示了BP神經(jīng)網(wǎng)絡(luò)在熱帶氣旋強(qiáng)度預(yù)報(bào)中的應(yīng)用潛力.Guhathakurta[4]首次在利用神經(jīng)網(wǎng)絡(luò)技術(shù)進(jìn)行季風(fēng)降水預(yù)報(bào)時(shí)引入了尺度化的思想,他分析了36個(gè)氣象分區(qū)的月降雨量時(shí)間序列數(shù)據(jù),所用的模型較好地捕捉了輸入-輸出的非線性關(guān)系,較準(zhǔn)確地預(yù)測了獨(dú)立周期內(nèi)的季節(jié)降水.所有印度季風(fēng)降水預(yù)報(bào)都是利用各分區(qū)的面積加權(quán)降水預(yù)報(bào)生成的,結(jié)果表明,向上尺度有助于更好地捕捉全印度降水的變化,有助于預(yù)測極端年份的降雨量,比基于單一時(shí)間序列建立的印度所有降雨量的神經(jīng)網(wǎng)絡(luò)模型都要好.徐曉嶺等[5]給出了全樣本場合下卡帕分布參數(shù)的矩估計(jì),估計(jì)北京、天津、南京、上海、廣州的月降水量.崔玫意等[6]基于1951—2010年河北省21個(gè)氣象站逐日降水觀測資料,擬合逐年日最大降水量序列,借助K-S與A-D方法進(jìn)行擬合優(yōu)度的比較.Sulaiman等[7]利用人工神經(jīng)網(wǎng)絡(luò)對月強(qiáng)降水進(jìn)行預(yù)報(bào),為此收集并使用了1965—2015年地方氣象站的降水?dāng)?shù)據(jù),利用以往降水值的不同組合作為預(yù)測輸入,利用均方誤差和相關(guān)系數(shù)對人工神經(jīng)網(wǎng)絡(luò)模型的性能與ARIMA模型進(jìn)行了比較.結(jié)果表明,該人工神經(jīng)網(wǎng)絡(luò)模型能夠較好地預(yù)測強(qiáng)降水事件.
在技術(shù)設(shè)備方面,雷達(dá)通過發(fā)射電磁波后收到的反饋,獲得物體到雷達(dá)的距離、方位角和物體當(dāng)前的徑向速度、高度等[8],相對于地面測量的優(yōu)勢在于其覆蓋范圍廣、穿透強(qiáng),基本不會(huì)受溫度、風(fēng)等外部因素的影響,因此在各領(lǐng)域被廣泛應(yīng)用.例如,在軍事領(lǐng)域上可以探測復(fù)雜的地形,在環(huán)保領(lǐng)域上可以監(jiān)測空氣質(zhì)量,在地質(zhì)領(lǐng)域上可以勘探石油煤炭等.天氣雷達(dá)每年提供PB級氣象數(shù)據(jù),數(shù)據(jù)量大,傳統(tǒng)的統(tǒng)計(jì)學(xué)方法預(yù)測降雨往往無法取得很好的效果.
本文以浙江省氣象站的降雨數(shù)據(jù)(逐小時(shí))以及雷達(dá)回波數(shù)據(jù)(逐10 min)為基礎(chǔ),對其篩選、整理、預(yù)處理,分別采用隨機(jī)森林、BP神經(jīng)網(wǎng)絡(luò)(BPNN)和卷積神經(jīng)網(wǎng)絡(luò)(CNN)等建模方法對未來1~2 h的降雨量進(jìn)行預(yù)測.
本文使用的雷達(dá)回波數(shù)據(jù)為浙江省雷達(dá)站2016年1—10月反射率因子資料,降雨量數(shù)據(jù)為浙江氣象站的降雨資料.雷達(dá)回波數(shù)據(jù)如圖1所示(縱、橫坐標(biāo)都是像素,6幅分圖是同一區(qū)域每隔10 min的雷達(dá)回波圖),其中心點(diǎn)為氣象站所在的位置,高度為1.5 km,時(shí)間分辨率為10 min,大小為100像素×100像素,回波強(qiáng)度范圍為0到70 dBz.降雨量數(shù)據(jù)的時(shí)間分辨率為1 h.對于每個(gè)時(shí)刻的降雨量預(yù)測,輸入變量為前一個(gè)小時(shí)內(nèi)的6張雷達(dá)圖數(shù)據(jù).通過池化操作[9]和風(fēng)向法(見下面介紹)把原始的100×100的回波強(qiáng)度雷達(dá)數(shù)據(jù)變?yōu)?7×17的數(shù)據(jù),為后面建立的預(yù)測模型提供了數(shù)據(jù)支持.
首先對每一張100×100的回波強(qiáng)度雷達(dá)圖,利用池化操作將其轉(zhuǎn)化為25×25的數(shù)據(jù),然后利用前一時(shí)刻的數(shù)據(jù)和當(dāng)前時(shí)刻的數(shù)據(jù)計(jì)算出風(fēng)向,最后利用風(fēng)向從25×25的數(shù)據(jù)中選取出17×17的數(shù)據(jù).
1)平均池化
對每張100×100的回波強(qiáng)度雷達(dá)圖,以步長為2,對每個(gè)2×2區(qū)域都進(jìn)行平均,最后得到50×50的數(shù)據(jù),如圖2所示.
2)最大池化
對平均池化后得到的50×50的數(shù)據(jù),以步長為2,對每個(gè)2×2區(qū)域都取最大值,最后得到25×25的數(shù)據(jù),如圖3所示.
3)計(jì)算風(fēng)向
首先對上面得到的25×25的數(shù)據(jù),計(jì)算其中最大5個(gè)數(shù)的平均位置.然后根據(jù)前一時(shí)刻的位置和當(dāng)前時(shí)刻的位置決定風(fēng)向,可能的風(fēng)向有12個(gè),分別是:西—東、西—南、西—北、東—西、東—南、東—北、北—南、北—西、北—東、南—北、南—西、南—東.
4)選取區(qū)域
直觀上,陰雨云會(huì)向著風(fēng)的方向運(yùn)動(dòng),這就意味著根據(jù)風(fēng)向選取區(qū)域會(huì)使預(yù)測更加精準(zhǔn),因此本文從25×25的數(shù)據(jù)抽取出17×17的數(shù)據(jù).
對于不同的風(fēng)向,抽取不同的區(qū)域.若風(fēng)向是西—東,則選擇[4:21,0:17]的區(qū)域;若風(fēng)向是西—南,則選擇[6:23,0:17]的區(qū)域;若風(fēng)向是西—北,則選擇[2:19,0:17]的區(qū)域;若風(fēng)向是東—西,則選擇[4:21,8:25]的區(qū)域;若風(fēng)向是東—南,則選擇[6:23,8:25]的區(qū)域;若風(fēng)向是東—北,則選擇[2:19,8:25]的區(qū)域;若風(fēng)向是北—南,則選擇[0:17,4:21]的區(qū)域;若風(fēng)向是北—西,則選擇[0:17,2:19]的區(qū)域;若風(fēng)向是北—東,則選擇[0:17,6:23]的區(qū)域;若風(fēng)向是南—北,則選擇[8:25,4:21]的區(qū)域;若風(fēng)向是南—西,則選擇[8:25,2:19]的區(qū)域;若風(fēng)向是南—東,則選擇[8:25,6:23]的區(qū)域.
隨機(jī)森林模型是由多個(gè)相互獨(dú)立的CART決策樹結(jié)合而成的建模方法,該模型既能被用來解決分類問題,也能被用來解決回歸問題[10],能在運(yùn)算量沒有顯著提高的前提下提高預(yù)測精度.若待預(yù)測的變量為類別變量,則隨機(jī)森林的最終結(jié)果由所有CART決策樹投票決定;若待預(yù)測的變量為數(shù)值變量,則隨機(jī)森林的最終結(jié)果是所有CART決策樹的平均值[11].其中每棵CART決策樹的訓(xùn)練數(shù)據(jù)是由自助法(bootstrap)獲得的,也就是從原始數(shù)據(jù)集中有放回地重復(fù)隨機(jī)抽取數(shù)據(jù)放入訓(xùn)練數(shù)據(jù)集中,因此,每棵決策樹的訓(xùn)練數(shù)據(jù)各不相同[12].隨機(jī)森林算法原理框架如圖4所示.
BP神經(jīng)網(wǎng)絡(luò)[13]是一種按誤差反向傳播(簡稱誤差反傳)訓(xùn)練的多層前饋網(wǎng)絡(luò),其基本思想是梯度下降法,利用梯度搜索技術(shù),以使得網(wǎng)絡(luò)的實(shí)際輸出值和期望輸出值的誤差均方差為最小.而其逆向傳播算法的基本原理是通過迭代處理訓(xùn)練元組的數(shù)據(jù)集,將每一個(gè)元組經(jīng)過神經(jīng)網(wǎng)絡(luò)模型處理后的輸出結(jié)果與訓(xùn)練集中已經(jīng)給定的響應(yīng)變量值進(jìn)行比較,并計(jì)算誤差,從而根據(jù)誤差對每一層的權(quán)重與偏置項(xiàng)進(jìn)行調(diào)整.上述過程循環(huán)進(jìn)行,直到滿足停止條件為止.
假設(shè)訓(xùn)練數(shù)據(jù)集為{(x(1),y(1)),(x(2),y(2)),…,(x(m),y(m))},采用批量更新的方法,這m個(gè)數(shù)據(jù)的相應(yīng)總誤差為
其中L(i)為單個(gè)樣本的誤差,其定義如下:
其中dk(i)為樣本i輸出層節(jié)點(diǎn)k的輸出,而yk(i)為其真實(shí)值.因此有
誤差逆向傳播的每次迭代都是沿著誤差相對權(quán)重值的負(fù)梯度方向來更新:
由于BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)能力太強(qiáng),容易產(chǎn)生過擬合問題.可以采取兩種方法來解決過擬合問題:
1)早停.通過對訓(xùn)練數(shù)據(jù)集進(jìn)行訓(xùn)練,學(xué)習(xí)調(diào)整各個(gè)權(quán)重和偏置項(xiàng),將驗(yàn)證數(shù)據(jù)集輸入模型計(jì)算誤差,如果驗(yàn)證數(shù)據(jù)集的誤差隨著訓(xùn)練數(shù)據(jù)集誤差的降低反而升高,那么就停止訓(xùn)練,返回此時(shí)權(quán)重和偏置項(xiàng).
2)正則化.其基本思想是在誤差函數(shù)中加入反映模型復(fù)雜程度的指標(biāo),使得模型不要任意擬合訓(xùn)練數(shù)據(jù)中的噪聲.
常用的指標(biāo)有兩種,一種是L1范數(shù),其中wi表示權(quán)重:
另一種是L2范數(shù):
卷積神經(jīng)網(wǎng)絡(luò)(CNN)是一種前饋神經(jīng)網(wǎng)絡(luò),人工神經(jīng)元可以響應(yīng)周圍單元,可以進(jìn)行大型圖像處理,其主要是由輸入層、卷積層、池化層、全連接層和輸出層構(gòu)成的,卷積層和池化層是特征提取的關(guān)鍵,并且在前幾層中交替出現(xiàn)[14].
卷積神經(jīng)網(wǎng)絡(luò)具有如下3個(gè)優(yōu)勢特性.
1)局部感知
1962年,Hubel等發(fā)現(xiàn)貓腦皮層的神經(jīng)元有局部感知的特點(diǎn),從而提出了感知野的概念[15].1982年,F(xiàn)ukushima等基于感知野建立了神經(jīng)認(rèn)知機(jī)模型[16],Lecun等[17]受其啟發(fā)建立了有局部連接特性的卷積神經(jīng)網(wǎng)絡(luò),其中所提到的局部連接指的是下一層中的每個(gè)節(jié)點(diǎn)都只與當(dāng)前層的部分節(jié)點(diǎn)相連,從而大幅度地減少了權(quán)重的個(gè)數(shù).
2)權(quán)重共享
雖然通過局部感知能大幅度地減少權(quán)重的個(gè)數(shù),但權(quán)重個(gè)數(shù)仍然過多,于是權(quán)重共享的方法[18]被提出,其原理是:從大尺寸圖像中選取一小部分,從這部分中學(xué)習(xí)到一些有用的特征,這樣就可以把這個(gè)操作在大尺寸圖像中的任何地方使用.
卷積神經(jīng)網(wǎng)絡(luò)利用卷積操作實(shí)現(xiàn)局部感知和權(quán)值共享,而卷積操作則利用卷積核實(shí)現(xiàn),如圖5所示,其計(jì)算公式如下:
其中,f是激活函數(shù),Wi是卷積核的權(quán)重值,b是偏置項(xiàng).
但單個(gè)卷積核只能學(xué)習(xí)到一種特征,因此,卷積神經(jīng)網(wǎng)絡(luò)中每一個(gè)卷積層都會(huì)有多個(gè)卷積核,從而充分提取多種特征.
3)下采樣
實(shí)現(xiàn)局部連接和權(quán)重共享后,即使卷積神經(jīng)網(wǎng)絡(luò)的權(quán)重?cái)?shù)量已經(jīng)降低到合理范圍內(nèi),但卷積神經(jīng)網(wǎng)絡(luò)的特征矩陣往往還會(huì)出現(xiàn)過大問題,這不僅導(dǎo)致計(jì)算量增大,還容易造成過擬合.為此,在卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上又提出了下采樣方法.它一般在卷積層之后,對卷積層的輸出分別通過平均池化或最大池化法進(jìn)行統(tǒng)計(jì),也就是計(jì)算平均值或者最大值這兩種方式進(jìn)行統(tǒng)計(jì),所以下采樣又稱為池化.圖6顯示了2×2的最大池化的過程.
我們首先選取原始雷達(dá)回波數(shù)據(jù)和降雨量數(shù)據(jù)的前90%作為訓(xùn)練數(shù)據(jù)集,后10%作為測試數(shù)據(jù)集.通過控制變量的方法,在分裂節(jié)點(diǎn)抽取的特征數(shù)為總特征數(shù)的10%~90%、CART決策樹的棵數(shù)從0到100變化時(shí),觀察模型均方誤差的變化情況.結(jié)果如圖7—11所示,圖中橫坐標(biāo)為CART決策樹的棵數(shù),縱坐標(biāo)為模型的均方誤差.
從圖7—11中可以看出,對于不同的特征數(shù),模型的均方誤差都是隨著CART決策樹的增加先降低而后趨于平穩(wěn).其中,從圖7可以看到,當(dāng)分裂節(jié)點(diǎn)抽取的特征數(shù)為總特征數(shù)的10%時(shí),CART決策樹的棵數(shù)取25可以使模型的均方誤差達(dá)到最小,最小值為1.78;從圖8可以看到,當(dāng)分裂節(jié)點(diǎn)抽取的特征數(shù)為總特征數(shù)的30%時(shí),CART決策樹的棵數(shù)取15可以使模型的均方誤差達(dá)到最小,最小值為1.82;從圖9可以看到,當(dāng)分裂節(jié)點(diǎn)抽取的特征數(shù)為總特征數(shù)的50%時(shí),CART決策樹的棵數(shù)取15可以使模型的均方誤差達(dá)到最小,最小值為1.89;從圖10可以看到,當(dāng)分裂節(jié)點(diǎn)抽取的特征數(shù)為總特征數(shù)的70%時(shí),CART決策樹的棵數(shù)取97可以使模型的均方誤差達(dá)到最小,最小值為1.89;從圖11可以看到,當(dāng)分裂節(jié)點(diǎn)抽取的特征數(shù)為總特征數(shù)的90%時(shí),CART決策樹的棵數(shù)取55可以使模型的均方誤差達(dá)到最小,最小值為1.93.經(jīng)過綜合,本文隨機(jī)森林模型中節(jié)點(diǎn)分裂時(shí)隨機(jī)抽取特征數(shù)為總特征數(shù)的10%,而模型規(guī)模即CART決策樹的棵數(shù)為25.
使用訓(xùn)練數(shù)據(jù)構(gòu)建完模型后,還需要評估模型的泛化能力.驗(yàn)證模型泛化能力主要是將模型作用于測試數(shù)據(jù)集,比較模型預(yù)測值與測試數(shù)據(jù)實(shí)際值之間的差異,差異越小則說明模型泛化能力越好.我們將構(gòu)建好的隨機(jī)森林模型應(yīng)用于測試數(shù)據(jù)集,得到模型預(yù)測結(jié)果與測試數(shù)據(jù)實(shí)際值的散點(diǎn)圖以及殘差圖分別如圖12和圖13所示.從圖中可以看出,隨機(jī)森林方法雖然對低降雨強(qiáng)度擬合較好,但容易低估較大的降雨強(qiáng)度.
3.2.1 數(shù)據(jù)歸一化
數(shù)據(jù)在輸入BP神經(jīng)網(wǎng)絡(luò)之前必須要進(jìn)行數(shù)據(jù)歸一化,也就是將數(shù)據(jù)映射到[0,1]區(qū)間或更小的區(qū)間.本文采用最小最大法將數(shù)據(jù)映射到[0,1]區(qū)間,轉(zhuǎn)換函數(shù)的定義如下:
3.2.2 BP神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)
1)網(wǎng)絡(luò)層數(shù)的設(shè)計(jì)
具有單隱含層的BP神經(jīng)網(wǎng)絡(luò)可以擬合任意函數(shù),增加隱藏層雖可進(jìn)一步降低誤差,但隨著層數(shù)的增加,會(huì)導(dǎo)致梯度消失和梯度爆炸的問題,模型反而更易得到局部最優(yōu)解.因此經(jīng)多次試驗(yàn)后選用包含兩個(gè)隱含層結(jié)構(gòu)的BP神經(jīng)網(wǎng)絡(luò).
2)輸入層和輸出層的設(shè)計(jì)
輸入層以及輸出層的節(jié)點(diǎn)數(shù)分別由樣本、響應(yīng)變量的特征個(gè)數(shù)決定.本文的目標(biāo)是對氣象站未來1 h累計(jì)降雨量進(jìn)行預(yù)測,所涉及的樣本、響應(yīng)變量的特征個(gè)數(shù)分別為17×17×6=1 774個(gè)以及1個(gè),所以輸入層、輸出層的節(jié)點(diǎn)數(shù)分別為1 774及1.
3)隱含層節(jié)點(diǎn)數(shù)目設(shè)計(jì)
隱含層最佳節(jié)點(diǎn)數(shù)的確定是一個(gè)難點(diǎn),若隱含層節(jié)點(diǎn)數(shù)過少,則會(huì)導(dǎo)致欠擬合問題的出現(xiàn);若隱含層節(jié)點(diǎn)數(shù)過多,則很有可能出現(xiàn)過擬合問題,且訓(xùn)練時(shí)間大大增加.所以本文考慮在一定的范圍內(nèi),先訓(xùn)練包含較少隱含層節(jié)點(diǎn)的BP神經(jīng)網(wǎng)絡(luò),然后逐漸增加,當(dāng)訓(xùn)練誤差達(dá)到最小時(shí)對應(yīng)的節(jié)點(diǎn)數(shù)就是最佳的節(jié)點(diǎn)數(shù).本文對1~50個(gè)隱藏層節(jié)點(diǎn)的神經(jīng)網(wǎng)絡(luò)進(jìn)行均方誤差比較,具體結(jié)果如圖14所示,訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)的均方誤差都是先下降然后趨于平穩(wěn),說明模型性能良好.可以看出,當(dāng)節(jié)點(diǎn)數(shù)大于32時(shí),測試數(shù)據(jù)的均方誤差開始趨于平穩(wěn),因此我們將隱藏層節(jié)點(diǎn)設(shè)置為32.
3.2.3 初始化參數(shù)的選取
1)初始權(quán)重值和偏置項(xiàng)的選取
由于BP神經(jīng)網(wǎng)絡(luò)具有高度非線性,導(dǎo)致其誤差曲面是非凸的,包含局部極小值點(diǎn),故初始權(quán)重值和偏置項(xiàng)的選取要在零點(diǎn)左右.且初始權(quán)重值和偏置項(xiàng)的選取還決定了模型的初始訓(xùn)練誤差及其之后的變化.因此,本文限制初始權(quán)重值和偏置項(xiàng)在標(biāo)準(zhǔn)正態(tài)分布的2倍標(biāo)準(zhǔn)差之內(nèi).
2)學(xué)習(xí)次數(shù)
合適的學(xué)習(xí)次數(shù)能使預(yù)測的精度更高,但是一味地增加學(xué)習(xí)次數(shù)只會(huì)使預(yù)測的精度降低.本文先設(shè)置模型的最優(yōu)隱含層節(jié)點(diǎn)數(shù)為32,然后設(shè)置學(xué)習(xí)次數(shù)從1~500,結(jié)果如圖15所示.
從圖15中可以看出,神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練集數(shù)據(jù)下的均方誤差隨模型學(xué)習(xí)次數(shù)增多而減小,而模型在測試數(shù)據(jù)集下的均方誤差并沒有隨著學(xué)習(xí)次數(shù)增加而一直下降,而是先下降然后緩慢增加,這是由于過擬合導(dǎo)致的.由于均方誤差在170次后開始緩慢增加,因此將BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)次數(shù)設(shè)為170.
3)期望誤差的選取
所謂期望誤差,是根據(jù)當(dāng)前實(shí)際情況對訓(xùn)練誤差給定的閾值,若訓(xùn)練誤差達(dá)到了這個(gè)值就停止訓(xùn)練.這是由于,若是給定的誤差過小使得神經(jīng)網(wǎng)絡(luò)難以達(dá)到,就會(huì)導(dǎo)致訓(xùn)練次數(shù)過多,發(fā)生過擬合現(xiàn)象;若是給定的誤差過大則會(huì)使得神經(jīng)網(wǎng)絡(luò)過早地停止學(xué)習(xí),難以達(dá)到最高的精度.通過多次的實(shí)驗(yàn)觀察,我們將期望誤差設(shè)定為1.1.
4)學(xué)習(xí)步長(速率)與梯度下降方法
由于學(xué)習(xí)步長與梯度下降方法不僅影響著各個(gè)權(quán)重和偏置項(xiàng)的變化,同時(shí)影響著BP神經(jīng)網(wǎng)絡(luò)的收斂速度,所以學(xué)習(xí)步長與梯度下降方法的選擇也尤為重要.學(xué)習(xí)步長設(shè)定過大,則可能會(huì)導(dǎo)致BP神經(jīng)網(wǎng)絡(luò)不穩(wěn)定;而學(xué)習(xí)步長設(shè)定過小,雖能避免出現(xiàn)網(wǎng)絡(luò)不穩(wěn)定的問題,但會(huì)導(dǎo)致訓(xùn)練時(shí)間過長,甚至出現(xiàn)不能收斂的問題.對于復(fù)雜的BP神經(jīng)網(wǎng)絡(luò),好的梯度下降方法應(yīng)該可以自適應(yīng)地設(shè)置學(xué)習(xí)步長,加速收斂進(jìn)度,避免落入局部極小值.根據(jù)多次實(shí)驗(yàn),本文選擇Adam梯度下降方法,并將學(xué)習(xí)步長設(shè)定為0.000 5.
經(jīng)過上述多次實(shí)驗(yàn),對BP神經(jīng)網(wǎng)絡(luò)的參數(shù)進(jìn)行調(diào)整,最終確定模型的隱含層節(jié)點(diǎn)個(gè)數(shù)、學(xué)習(xí)次數(shù)分別為32、170,同時(shí)將初始權(quán)重值和偏置項(xiàng)限制在標(biāo)準(zhǔn)正態(tài)分布的2倍標(biāo)準(zhǔn)差之內(nèi),并將期望誤差、學(xué)習(xí)速率分別確定為1.1、0.000 5,而選Adam方法為梯度下降方法,選擇Relu函數(shù)作為激活函數(shù).據(jù)此構(gòu)建BP神經(jīng)網(wǎng)絡(luò)預(yù)測模型,得到圖16—18.
從圖16可以看到,測試數(shù)據(jù)的均方誤差隨著訓(xùn)練數(shù)據(jù)均方誤差的降低而降低,表明該模型相當(dāng)理想.圖17顯示了降雨量真實(shí)值與預(yù)測值的散點(diǎn)圖,降雨量真實(shí)值與預(yù)測值形成的散點(diǎn)基本分布在y=x周圍,最終降雨量真實(shí)值與預(yù)測值的均方誤差為1.16,表明模型擬合效果較好.結(jié)合散點(diǎn)圖和殘差圖,與隨機(jī)森林模型相比,BP神經(jīng)網(wǎng)絡(luò)模型對較大的降雨強(qiáng)度擬合得更好.
依據(jù)卷積神經(jīng)網(wǎng)絡(luò)原理,可以設(shè)計(jì)如圖19所示的降雨量預(yù)測卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),它包括了一個(gè)輸入層、兩個(gè)卷積層、兩個(gè)池化層、兩個(gè)全連接層和一個(gè)輸出層.
由于每一小時(shí)的累計(jì)降雨量對應(yīng)6個(gè)雷達(dá)回波強(qiáng)度圖像,所以需對每個(gè)雷達(dá)回波強(qiáng)度圖像做如下處理:歸一化的數(shù)據(jù)經(jīng)過輸入層后,傳遞到第一層卷積層,通過卷積操作和激活函數(shù)的處理后再輸出到池化層,池化層下采樣處理后再輸出到下一個(gè)卷積層;繼續(xù)通過卷積操作和激活函數(shù)的處理后再輸出到下一個(gè)池化層,池化層下采樣處理后的結(jié)果拉伸為一維數(shù)據(jù)后再通過第一個(gè)全連接層,經(jīng)激活函數(shù)處理后得到輸出數(shù)據(jù).
6個(gè)二維數(shù)組通過上述操作后,經(jīng)由合并處理后再通過第二個(gè)全連接層,并經(jīng)激活函數(shù)處理,通過輸出層得到一個(gè)預(yù)測值.
本文利用Python與Tensorflow框架編寫代碼,將初始權(quán)重值和偏置項(xiàng)限制在標(biāo)準(zhǔn)正態(tài)分布的2倍標(biāo)準(zhǔn)差之內(nèi),期望誤差、學(xué)習(xí)速率分別設(shè)置為0.7、0.000 5,同時(shí)選擇Adam方法為梯度下降方法,Relu函數(shù)為激活函數(shù).此外,第一卷積層設(shè)置的卷積核尺寸為2×2,個(gè)數(shù)為20個(gè),步長為1;池化層采用的是最大化采樣,核尺寸為2×2,步長為2.第二卷積層的卷積核尺寸設(shè)置為2×2,個(gè)數(shù)為20個(gè),步長為1,其池化層同樣通過最大化采樣,相應(yīng)的核尺寸為2×2,步長為2.此外,所有全連接層節(jié)點(diǎn)個(gè)數(shù)都是125.
據(jù)此構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型得到圖20—22.從圖20可以看出,隨著學(xué)習(xí)次數(shù)的增加,測試數(shù)據(jù)和訓(xùn)練數(shù)據(jù)的均方誤差都是先降低然后趨于平穩(wěn),同樣表明模型相當(dāng)理想.而從圖21可以看出,降雨量真實(shí)值與預(yù)測值形成的散點(diǎn)基本分布在y=x周圍,最終降雨量真實(shí)值與預(yù)測值的均方誤差為0.79,表明模型擬合效果較好.結(jié)合散點(diǎn)圖和殘差圖,與隨機(jī)森林模型和BP神經(jīng)網(wǎng)絡(luò)模型相比,卷積神經(jīng)網(wǎng)絡(luò)模型的預(yù)測值與真實(shí)值更加接近,且對較大的降雨強(qiáng)度擬合較好.
本文基于國內(nèi)外學(xué)者的研究,分別選取了隨機(jī)森林、BP神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型進(jìn)行建模分析.這3種模型各有優(yōu)缺點(diǎn):隨機(jī)森林方法簡單高效,但對某些有特定噪聲的數(shù)據(jù)進(jìn)行建模時(shí)可能會(huì)出現(xiàn)過度擬合;BP神經(jīng)網(wǎng)絡(luò)相對隨機(jī)森林預(yù)測效果較好,但可解釋性差且參數(shù)數(shù)量龐大;卷積神經(jīng)網(wǎng)絡(luò)在回歸預(yù)測方面的應(yīng)用較少,但它能夠極大地減少復(fù)雜模型參數(shù)的數(shù)量,能夠更好地挖掘特征變量之間的關(guān)系,但也有解釋性差的缺點(diǎn).在上述建模分析的基礎(chǔ)上,我們利用上述的3個(gè)模型分別對測試集數(shù)據(jù)進(jìn)行預(yù)測,預(yù)測結(jié)果如表1所示,而部分日期降雨實(shí)際情況和預(yù)測情況如圖23—25所示.
在表1中,從日均方誤差可以看出,隨機(jī)森林降雨量預(yù)測模型和BP神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型的日均方誤差波動(dòng)較大,而卷積神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型的日均方誤差波動(dòng)相對較小.從圖23—25可以更直觀地發(fā)現(xiàn),3個(gè)降雨量預(yù)測模型對于降雨量的趨勢擬合得都較好,其中卷積神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型的預(yù)測精度最高,BP神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型次之,隨機(jī)森林降雨量預(yù)測模型相對最差.
表1 降雨量預(yù)測均方誤差比較Table 1 MSE comparison of rainfall prediction
不過上述3個(gè)模型對較大降雨量的預(yù)測都不是特別好,其中隨機(jī)森林模型最容易低估降雨量,BP神經(jīng)網(wǎng)絡(luò)次之,卷積神經(jīng)網(wǎng)絡(luò)相對好點(diǎn).主要原因有以下幾個(gè):一是數(shù)據(jù)的質(zhì)量,本文中的數(shù)據(jù)是回波強(qiáng)度雷達(dá)拼圖,是由多個(gè)雷達(dá)站的雷達(dá)圖拼接而成,而不同雷達(dá)站的仰角不同,這就會(huì)使得回波強(qiáng)度的數(shù)據(jù)是在不同高度上進(jìn)行拼接的,所以對降雨量的預(yù)測也是有影響的;二是樣本的大小,本文的訓(xùn)練數(shù)據(jù)量為2 181個(gè),遠(yuǎn)遠(yuǎn)達(dá)不到大樣本的要求,而神經(jīng)網(wǎng)絡(luò)需要有大樣本的支撐;三是模型的應(yīng)用,卷積神經(jīng)網(wǎng)絡(luò)模型在回歸預(yù)測方面應(yīng)用很少,相關(guān)研究還不成熟.
降雨作為氣象的重要組成部分,時(shí)刻影響著人們的生活,尤其對農(nóng)業(yè)有著重要的影響,因此,準(zhǔn)確地預(yù)測降雨量具有重要的科學(xué)意義和現(xiàn)實(shí)意義.
本文在國內(nèi)外學(xué)者研究的基礎(chǔ)上,對逐10 min的雷達(dá)回波強(qiáng)度數(shù)據(jù)以及氣象站的逐小時(shí)降雨量數(shù)據(jù),分別研究了隨機(jī)森林、BP神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)在雷達(dá)預(yù)測降水量中的應(yīng)用,從數(shù)據(jù)分析可以得出以下結(jié)論:
1)3個(gè)降雨量預(yù)測模型對于降雨量的趨勢擬合得都較好,其中BP神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型的預(yù)測精度都要高于隨機(jī)森林降雨量預(yù)測模型,卷積神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型相對BP神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型效果要更好.
2)相比于隨機(jī)森林降雨量預(yù)測模型,卷積神經(jīng)網(wǎng)絡(luò)和BP神經(jīng)網(wǎng)絡(luò)降雨量預(yù)測模型每小時(shí)累計(jì)降水量預(yù)測值與實(shí)測值較為吻合,即使降水強(qiáng)度較大時(shí),估測值與實(shí)測值的誤差也相對較小,而隨機(jī)森林降雨量預(yù)測模型對累計(jì)降雨量大于5 mm/h時(shí)會(huì)出現(xiàn)明顯的低估.
3)神經(jīng)網(wǎng)絡(luò)很適合大數(shù)據(jù)的機(jī)器學(xué)習(xí),在數(shù)據(jù)量足夠多的情況下要優(yōu)于隨機(jī)森林.卷積神經(jīng)網(wǎng)絡(luò)由于存在局部感知,相對BP神經(jīng)網(wǎng)絡(luò)更能提取空間信息,因此對具有很強(qiáng)空間關(guān)系的降雨量預(yù)測較好.神經(jīng)網(wǎng)絡(luò)所特有的非線性特性很適合氣象數(shù)據(jù)研究,但其結(jié)構(gòu)和參數(shù)的選取十分關(guān)鍵,若選取不合理,模型的預(yù)測功能就會(huì)大打折扣.