王文川, 楊靜欣, 臧紅飛
(華北水利水電大學(xué) 水資源學(xué)院, 河南 鄭州 450046)
降水預(yù)測是水文預(yù)報領(lǐng)域的一項重要研究內(nèi)容,降水量異常是誘發(fā)旱災(zāi)、洪澇災(zāi)害的直接因素之一,因此,對其準(zhǔn)確預(yù)測具有重要意義。近年來許多專家學(xué)者對降水量預(yù)測進(jìn)行了大量探索,主要的研究方法有自回歸模型[1-2]、支持向量機[3-5]、神經(jīng)網(wǎng)絡(luò)[6-8]等。其中長短期記憶(long short-term memory,LSTM)神經(jīng)網(wǎng)絡(luò)模型能精準(zhǔn)地預(yù)測時間序列,有效解決了一些神經(jīng)網(wǎng)絡(luò)中出現(xiàn)的梯度爆炸問題,成為近年來的研究熱點。如Kumar等[9]采用遞歸神經(jīng)網(wǎng)絡(luò)(recurrent neural networks,RNN)模型和長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)模型對印度不同區(qū)域降水量進(jìn)行了預(yù)測,結(jié)果表明LSTM模型比RNN模型預(yù)測精度更高;殷兆凱等[10]通過對比分析新安江模型與LSTM模型在不同預(yù)見期下對錦江高安雨量站日降水量的預(yù)測結(jié)果,發(fā)現(xiàn)LSTM模型在不同預(yù)見期下的日降水量預(yù)測精度均優(yōu)于新安江模型;劉新等[11]利用LSTM等5種神經(jīng)網(wǎng)絡(luò)模型分別進(jìn)行中長期降水對比預(yù)測,發(fā)現(xiàn)LSTM模型預(yù)測精度整體優(yōu)于其他幾個神經(jīng)網(wǎng)絡(luò)模型。
雖然LSTM模型在時間序列預(yù)測方面表現(xiàn)出了良好的適用性,但由于降水時間序列的非平穩(wěn)性,以及預(yù)測模型參數(shù)確定困難,使得數(shù)據(jù)驅(qū)動模型推廣應(yīng)用受到限制,因此仍需進(jìn)一步改進(jìn)以提高預(yù)報精度。在以往的研究中,通常有兩種策略來提高預(yù)測精度:一是數(shù)據(jù)預(yù)處理技術(shù),通過數(shù)據(jù)預(yù)處理可以減少時間序列數(shù)據(jù)的非平穩(wěn)特征,提取隱藏在數(shù)據(jù)中的有效信息[12];二是采用優(yōu)化算法對模型的超參數(shù)進(jìn)行優(yōu)化[13]。因此,近年來許多學(xué)者在時序預(yù)處理和模型參數(shù)優(yōu)選方面進(jìn)行了大量探索。小波分解(wavelet decomposition,WD)作為一種數(shù)據(jù)預(yù)處理技術(shù),已在水文預(yù)報中得到廣泛應(yīng)用, Kim等[14]采用小波分解算法對區(qū)域和分類降水量數(shù)據(jù)進(jìn)行分解,并通過與單一的數(shù)據(jù)驅(qū)動模型對比,發(fā)現(xiàn)經(jīng)小波分解后的時間序列對于雨量的預(yù)測精準(zhǔn)度更高;趙然杭等[15]采用基于時間序列分解的神經(jīng)網(wǎng)絡(luò)模型,首先對時序數(shù)據(jù)進(jìn)行預(yù)處理,然后選取隨機率定的神經(jīng)網(wǎng)絡(luò)參數(shù)對降水?dāng)?shù)據(jù)進(jìn)行挖掘和預(yù)測,預(yù)測結(jié)果達(dá)到了精度要求。另外許多研究通過優(yōu)化算法來優(yōu)化LSTM模型的超參數(shù),如Kala等[16]使用人工藻類算法(artificial algae algorithm,AAA)對LSTM模型進(jìn)行參數(shù)尋優(yōu),提高了LSTM模型的預(yù)測精度;胡玉杰等[17]采用經(jīng)粒子群優(yōu)化算法(particle swarm optimization, PSO)參數(shù)率定后的AdaBoost-C4.5模型按降水等級對時序數(shù)據(jù)建立模型,在一定程度上提高了降水量預(yù)測的泛化能力。但上述研究只注重時間序列的分解或模型參數(shù)的優(yōu)化,均屬于單一的研究方法。
基于以上分析,本文將時間序列預(yù)處理與模型參數(shù)優(yōu)化相結(jié)合,首先利用小波分解(WD)方法,將徑流數(shù)據(jù)分解為不同頻率的時間序列,在降低序列非平穩(wěn)性的同時達(dá)到提高數(shù)據(jù)預(yù)測精度的目的,然后運用郊狼優(yōu)化算法(coyote optimization algorithm, COA)篩選出LSTM模型最優(yōu)的超參數(shù),最后,建立WD-COA-LSTM耦合模型。采用LSTM、COA-LSTM、WD-LSTM 3個降水預(yù)測模型對河南省洛陽市欒川縣白土鎮(zhèn)和洛寧縣故縣鎮(zhèn)兩個雨量站進(jìn)行預(yù)測和對比,驗證了WD-COA-LSTM預(yù)測模型的可靠性。
河南省洛陽市欒川縣白土鎮(zhèn)和洛寧縣故縣鎮(zhèn)的兩個雨量站點均位于洛河流域的中上游,該流域起源于龍?zhí)度猍18],流域覆蓋面積近2 000 km2,兩個雨量站點所處地區(qū)四季分明,年均降水量為600 mm。
分別選取白土鎮(zhèn)雨量站和故縣鎮(zhèn)雨量站1966-2016年的月降水實測數(shù)據(jù)作為研究對象,訓(xùn)練樣本均采用前36 a的月降水?dāng)?shù)據(jù),驗證樣本均采用后15 a的月降水?dāng)?shù)據(jù)。LSTM作為數(shù)據(jù)驅(qū)動模型,其時間滯時的選擇對于時間序列的預(yù)測精度具有重要影響,因此運用自相關(guān)系數(shù)法[19]來選取合適的滯時。圖1和圖2分別為白土鎮(zhèn)和故縣鎮(zhèn)原始月降水序列的自相關(guān)函數(shù)(autocorrelation function,ACF)圖和偏相關(guān)函數(shù)(partial autocorrelation function,PACF)圖,由圖1、2可以看出,白土鎮(zhèn)雨量站降水?dāng)?shù)據(jù)的ACF值在11~14時達(dá)到極值, 且在14以后PACF的預(yù)測值落在95%置信帶內(nèi);故縣鎮(zhèn)雨量站降水?dāng)?shù)據(jù)的ACF值在11~13時達(dá)到極值,且在13以后PACF的預(yù)測值落在95%置信帶內(nèi)。通過綜合考慮氣候、水文環(huán)境、地理位置等因素的影響,分別選用14和13作為白土鎮(zhèn)和故縣鎮(zhèn)的時間滯時來對兩個雨量站的降水量進(jìn)行滾動預(yù)測。
圖1 白土鎮(zhèn)月降水序列的ACF與PACF圖 圖2 故縣鎮(zhèn)月降水序列的ACF與PACF圖
2.3.1 小波分解(WD) 小波分解是通過提取原始數(shù)據(jù)內(nèi)的不同信息,將其分解得到高頻、低頻序列兩部分,以此類推,通過多級分解后有效提高了頻率的分辨率[20]。
原始序列與各子序列關(guān)系式為:
(1)
式中:ak為低頻序列;di為高頻序列;k為分解層數(shù)。
2.3.2 郊狼優(yōu)化算法(COA) 郊狼優(yōu)化算法 (COA)[21]是一種基于種群的算法,其靈感來自于郊狼這一犬種[22]。與許多其他MHS(MinHash)[23]方法不同的是,在COA中,狼被分為子群體并組成總?cè)后w,每個狼群由一定數(shù)量的郊狼和一個alpha個體組成。alpha狼代表狼群中最優(yōu)秀的郊狼。此外,COA算法關(guān)注郊狼的社會結(jié)構(gòu)和行為的共享。在第n個時刻,第n個狼群中的第c只狼的社會狀況用向量soccp,t=(x1,x2,…,xDimension)表示。COA優(yōu)化算法步驟如下:
步驟1:計算郊狼的適應(yīng)能力。某個郊狼對環(huán)境的適應(yīng)能力表現(xiàn)為fitcp,t∈R(優(yōu)化過程中目標(biāo)函數(shù)的值),與其他智能算法一樣,初始社會條件是在郊狼種群中隨機設(shè)定的。COA根據(jù)來自郊狼的信息計算狼群的文化傾向,假設(shè)每個郊狼都為狼群的生存做出貢獻(xiàn)。第p組狼的文化傾向(cultjp,t)計算公式為:
(2)
式中:Op,t為第t瞬間第p組狼的社會適應(yīng)能力排名情況。根據(jù)公式(2),狼群的文化傾向是由狼群中狼的社會狀況來表示的。
步驟2:選擇狼群中的alpha郊狼。
alphap,t={socp,t|argc={1,2,…,Nc}minf(soccp,t)}
(3)
步驟3:更新狼群的社會狀況。在COA算法中,族群間的文化相互作用用δ1和δ2表示。δ1和δ2分別為alpha效應(yīng)和pack效應(yīng):
δ1=alphap,t-socp,tcr1
(4)
δ2=cultp,t-socp,tcr2
(5)
式中:cr1和cr2代表隨機選擇的郊狼。利用δ1和δ2更新的新的郊狼社會狀況公式為:
new_soccp,t=soccp,t+r1·δ1+r2·δ2
(6)
式中:new_soccp,t為郊狼新的社會地位(適應(yīng)度值);r1和r2為[0,1]范圍內(nèi)隨機生成的權(quán)重系數(shù),分別表示alpha和pack效應(yīng)。
如公式(7)所示,如果郊狼新的社會地位比以前更好,它將被狼群接受;否則,將被拒絕。
(7)
步驟4:郊狼的誕生和死亡過程。新郊狼的出生是父母與社會環(huán)境的結(jié)合,是隨機選擇的。在這個過程中,環(huán)境影響也被考慮在內(nèi)。新郊狼的出生模型計算公式為:
(8)
式中:w1和w2為隨機選擇的郊狼;j1和j2為隨機選擇的郊狼基因;Ps和Pa為分散和關(guān)聯(lián)的可能性,建立以支持郊狼文化多樣性:Ps=1/Dimension和Pa=(1-p)/2。
步驟5:更新狼群的年齡。
2.3.3 長短期記憶神經(jīng)網(wǎng)絡(luò) 長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)是由Hochreiter等[24]提出的,彌補了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)在處理長時依賴時的不足,解決了長期時間序列中的梯度消失問題,并且對于時間序列當(dāng)中間隔或者延遲很久的關(guān)鍵性事件能夠快速預(yù)測。LSTM記憶單元結(jié)構(gòu)如圖3所示。
圖3 LSTM記憶單元結(jié)構(gòu)示意圖
輸入數(shù)據(jù)通過LSTM記憶單元的具體過程如下:
步驟1: 通過遺忘門篩選出有效信息,剔除無效信息。
ft=σ(Wf·[ht-1,xt]+bi)
(9)
步驟2:經(jīng)輸入門選擇需要儲存在單元中的新信息。
it=σ(Wi·[ht-1,xt]+bi)
(10)
(11)
步驟3:通過輸出門處理更新后的參數(shù)。
(12)
ot=σ(Wo·[ht-1,xt]+bo)
(13)
ht=ot·tanh(Ct)
(14)
式中:ht-1為上一時刻數(shù)據(jù)輸出;xt為當(dāng)前數(shù)據(jù)輸入;ft、it、ot分別為經(jīng)過3個門層的輸出;ct為隱藏層狀態(tài)變量;ht為ot與ct結(jié)合后得到的最終輸出; tanh、σ分別為雙曲正切函數(shù)和Sigmoid函數(shù)。
2.3.4 預(yù)測實現(xiàn)步驟 WD-COA-LSTM模型建立流程如圖4所示,具體步驟如下:
圖4 WD-COA-LSTM模型構(gòu)建流程圖
步驟1:利用小波分解將本文研究的降水序列分解后得到1個低頻子序列a3和3個高頻子序列d1、d2、d3。
步驟2:將4個子序列分別用COA-LSTM模型進(jìn)行預(yù)測,得到4組預(yù)測值A(chǔ)3、D1、D2、D3。
步驟3:將4組預(yù)測值疊加得到最終的預(yù)測結(jié)果。
利用小波分解中db4 小波基函數(shù)[25]對降水量數(shù)據(jù)進(jìn)行分解,根據(jù)本文實際研究序列的變化規(guī)律將降水時間序列分解為a3、d1、d2、d34個子序列,兩個雨量站分解結(jié)果如圖5所示。
圖5 1966-2016年白土鎮(zhèn)和故縣鎮(zhèn)雨量站月降水量小波分解圖
在WD-COA-LSTM模型中,COA優(yōu)化算法中的種群規(guī)模、最大迭代次數(shù)分別設(shè)為100、400;COA優(yōu)化LSTM參數(shù)時隱藏層數(shù)H、最大循環(huán)次數(shù)E以及學(xué)習(xí)率η的尋優(yōu)范圍分別為[0,400]、[200,400]和[0.001,0.1]。
為檢驗WD-COA-LSTM模型的預(yù)測效果,建立LSTM、COA-LSTM、WD-LSTM模型作為對照試驗,并選取4 個評價指標(biāo):均方根誤差RMSE、平均絕對誤差MAE、納什系數(shù)NSE、相關(guān)系數(shù)R對預(yù)測結(jié)果進(jìn)行評價,具體計算公式見文獻(xiàn)[26]。
兩個雨量站2002-2016年驗證期不同模型月降水量預(yù)測結(jié)果對比如圖6 所示,各模型評價指標(biāo)結(jié)果如表1、 2 所示。
表1 白土鎮(zhèn)雨量站降水量預(yù)測模型評價指標(biāo)結(jié)果
由圖6可以看出,在驗證期LSTM、COA-LSTM、WD-LSTM、WD-COA-LSTM 4個模型與實測降水序列的擬合精度依次逐漸提高。單一的LSTM模型的預(yù)測值與實測降水序列相比,離散程度最大,在極值點的預(yù)測值總體大于實測值,預(yù)測效果不佳;經(jīng)COA優(yōu)化后的LSTM模型有效提高了實測降水序列的擬合度,且其預(yù)測的峰值誤差遠(yuǎn)小于單獨LSTM模型預(yù)測的峰值誤差,可見經(jīng)COA算法優(yōu)化后的LSTM模型預(yù)測精度得到了一定程度的提升;經(jīng)WD分解后的LSTM模型與實測降水序列的波動趨勢較為接近,由此可以看出WD分解能精確捕捉降水時間序列的變化趨勢,提取時序數(shù)據(jù)的有效信息,從而提升模型預(yù)測精度。
圖6 白土鎮(zhèn)和故縣鎮(zhèn)雨量站2002-2016年驗證期不同模型月降水量預(yù)測結(jié)果對比
表2 故縣鎮(zhèn)雨量站降水量預(yù)測模型評價指標(biāo)結(jié)果
分析表1、2可以得出:白土鎮(zhèn)雨量站COA-LSTM模型驗證期的RMSE、MAE、NSE和R值較LSTM模型的誤差分別減少了9.22%、16.78%、58.21%和8.25%;WD-LSTM模型驗證期的RMSE、MAE、NSE和R值較COA-LSTM模型的誤差分別減少了37.04%、21.64%、104.03%和42.46%;WD-COA-LSTM模型驗證期的RMSE、MAE、NSE和R值較WD-LSTM模型的誤差分別減少了39.39%、39.59%、21.18%和10.14%。故縣鎮(zhèn)雨量站COA-LSTM模型驗證期的RMSE、MAE、NSE和R值較LSTM模型的誤差分別減少了0.60%、2.59%、2.71%和1.04%;WD-LSTM模型驗證期的RMSE、MAE、NSE和R值較COS-LSTM模型的誤差分別減少了16.66%、3.73%、66.65%和39.03%;WD-COA-LSTM模型驗證期的RMSE、MAE、NSE和R值較WD-LSTM模型的誤差分別減少了60.52%、60.06%、76.81%和21.27%。
上述預(yù)測結(jié)果與分析表明,WD-COA-LSTM模型對于洛河流域月降水量趨勢的擬合程度明顯高于其他幾個單一模型,說明WD-COA-LSTM模型相比于單一的預(yù)測模型具有更好的預(yù)測精度。
本文對洛河流域月降水量的預(yù)測結(jié)果表明,WD-COA-LSTM模型與原始降水序列的擬合程度最高,與實測值的波動趨勢大體一致,WD-COA-LSTM模型整體優(yōu)于與其相比較的其他3個模型。主要原因在于:首先LSTM作為深度學(xué)習(xí)模型可以克服傳統(tǒng)RNN模型面臨的梯度消失和梯度爆炸問題,其次降水時間序列表現(xiàn)出高度非線性,起伏變化較大,應(yīng)用WD分解技術(shù)能夠提取時間序列中隱含的復(fù)雜有效信息,從而降低序列的非線性和降水時間序列預(yù)測的難度,提升預(yù)測的精度。另外,選擇適當(dāng)LSTM模型的超參數(shù)可有效提高模型的預(yù)測精度,郊狼優(yōu)化(COA)算法具有良好的全局搜索能力,應(yīng)用郊狼算法優(yōu)化LSTM模型參數(shù)能夠打破人為參數(shù)選擇的局限性,提升模型參數(shù)選擇的效率和準(zhǔn)確性。因此,經(jīng)過分解技術(shù)與參數(shù)優(yōu)化技術(shù)相結(jié)合的WD-COA-LSTM模型,首先經(jīng)過WD分解將月降水時間序列分解為幾個子序列,并消除月降水時間序列中潛在的多尺度現(xiàn)象。然后每個子序列由LSTM模擬,經(jīng)COA進(jìn)行超參數(shù)優(yōu)化,克服了人為確定參數(shù)的不足。本文提出的WD-COA-LSTM模型相比于前人所采用的單一組合模型泛化能力更加突出,具有更高的預(yù)測精度和穩(wěn)定性,能夠在很大程度上彌補單一模型的缺陷。
(1)本文提出了WD-COA-LSTM月降水量預(yù)測模型,其針對月降水?dāng)?shù)據(jù)的復(fù)雜性和非線性特征,采用小波分解方法進(jìn)行數(shù)據(jù)預(yù)處理,提取實測降水序列中隱含的有效信息,分出低頻和高頻序列,提高了時間序列的平穩(wěn)性,能夠更加全面地捕捉到降序時序數(shù)據(jù)的變化趨勢。并通過運用具有較強全局探索能力和局部開發(fā)能力的COA優(yōu)化算法平衡搜索性能,從而提高了LSTM模型參數(shù)優(yōu)選的效率。
(2)在洛河流域兩個不同雨量站的降水量預(yù)測中,單一的LSTM神經(jīng)網(wǎng)絡(luò)模型的預(yù)測值與實測值之間均存在較大誤差,經(jīng)COA算法優(yōu)化后的LSTM模型的預(yù)測精度雖有所提高,但經(jīng)時間序列預(yù)處理和參數(shù)優(yōu)化后的WD-COA-LSTM模型的預(yù)測結(jié)果在幾個預(yù)測模型中具有更明顯的優(yōu)勢,擬合效果最佳,能夠最大程度降低降水序列的復(fù)雜性,提高模型精度。
(3)本文所提出的WD-COA-LSTM預(yù)測模型,在月降水量預(yù)測中表現(xiàn)出了良好的準(zhǔn)確性和有效性,為月降水量預(yù)測提供了一種新的思路。雖然COA優(yōu)化算法相比其他傳統(tǒng)優(yōu)化算法具有較強的全局探索能力,但有時也會陷入局部最優(yōu),因此未來可嘗試將COA優(yōu)化算法進(jìn)行改進(jìn)后用于徑流預(yù)報的研究。