陳 良,畢曉英,周新志
(四川大學電子信息學院,成都 610065)
自然災害是人類關(guān)注的重點話題,而洪水災害是造成人類死亡和經(jīng)濟損失最頻繁和最具破壞性的自然災害之一。近年來,受全球氣候變化和人類活動影響,極端天氣事件和人為突發(fā)事件明顯增加。徑流預報是預防洪水災害的重要工程措施之一,如何提高徑流預報的準確性也是水資源管理研究中的一大難點問題。因此,構(gòu)建有效的徑流預報模型,提高徑流預報的準確度具有強烈緊迫性和必要性。
通常將設(shè)計的徑流預測模型分為兩類:物理模型和數(shù)據(jù)驅(qū)動模型。物理模型通常通過物理函數(shù)來表示復雜的水利過程,并根據(jù)輸入和輸出得到預測結(jié)果,典型的水文模型包括SWAT模型和新安江模型。但是水文系統(tǒng)中的變量之間存在著強烈的非線性關(guān)系,這一直是物理模型難以解決的問題。數(shù)據(jù)驅(qū)動模型是一種端到端模型,直接探索各種歷史水文特征與徑流之間的關(guān)系,本質(zhì)上是一種黑箱方法,不必考慮流域系統(tǒng)的整體物理機制,也不必去明確數(shù)據(jù)中隱含的規(guī)律,而是直接從實際測得的數(shù)據(jù)中發(fā)現(xiàn)系統(tǒng)潛在的規(guī)律性。近年來,機器學習在數(shù)據(jù)科學發(fā)展中取得了很多顯著的成果,基于機器學習的徑流預測方法也越來越多,主要有BP神經(jīng)網(wǎng)絡(luò)、支持向量機(SVM)以及自回歸移動平均(ARMA)。而徑流序列存在非線性、非穩(wěn)態(tài)等特點,同時上述模型忽略了長時間徑流序列的周期性與季節(jié)性等規(guī)律。這些方法會使得預報與真實結(jié)果之間有一定的偏差。EMD方法是一種針對非線性、非穩(wěn)態(tài)時間序列的數(shù)據(jù)處理方法。范琳琳等人使用EMD與ANN方法混合的模型,對云南省昭通市徑流量進行了預報,取得了較好的預報效果。但是傳統(tǒng)的ANN方法在應用時也存在很多缺陷,如收斂速度慢、不具有記憶性、容易陷入局部極小值。這些存在的缺陷會在一定程度上影響徑流預測的精度。RNN變體LSTM神經(jīng)網(wǎng)絡(luò)帶有記憶功能,能夠提取到徑流序列中的季節(jié)性與周期性。姜淞川等人使用LSTM網(wǎng)絡(luò)對鄱陽湖撫河流域徑流模擬研究取得了較好的預報結(jié)果。Wu和Ding等人分別提出了基于注意力機制與RNN神經(jīng)網(wǎng)絡(luò)架構(gòu)結(jié)合的徑流預報方法,這些特別的神經(jīng)網(wǎng)絡(luò)的一定程度上能提高徑流預報的結(jié)果,但是也不能很好地解決時間序列非線性、非穩(wěn)態(tài)的問題。
為了更好地提高徑流預報準確性,解決水文時間序列非穩(wěn)態(tài)、非線性等問題,同時提高神經(jīng)網(wǎng)絡(luò)的魯棒性,本研究提出一種組合方法的徑流預測模型,該模型是結(jié)合雙向長短期記性神經(jīng)網(wǎng)絡(luò)(BiLSTM),EMD方法以及注意力機制(Attention)。以清溪河流域為例,用EMD方法將歷史日徑流序列分解為不同頻率的本證模態(tài)函數(shù)和趨勢項,隨后采用ATT-BiLSTM網(wǎng)絡(luò)對不同頻率的分量進行預測,最后疊加得到清溪河日徑流量的預測結(jié)果,并與其他未使用EMD的同期預報方法進行了對比。除了模型上面的處理,本文還在水文數(shù)據(jù)上進行了處理。水文數(shù)據(jù)采集的精度會影響模型預測的精度,水文預報研究數(shù)據(jù)通常是以天為單位的數(shù)據(jù),在采集精度上不算很精確,因此采用了平均插值的方法來提高數(shù)據(jù)的精度,這是一種數(shù)據(jù)預處理修正的方法,而且有效地提升了預測的準確度,這為清溪河流域徑流預測研究提供了參考。
本文研究的是四川省宣漢縣的清溪河流域,是一個比較小的流域。清溪河自東北向西南流經(jīng)觀山、清溪鎮(zhèn),在清溪口注入后河,河道長46 km,流域面積297 km。清溪河為山溪性河流,兩岸山高坡陡,相對高差在300~500 m,河面寬15~30 m。灘多彎急,落差大,水流湍急,中上游河道平均比降約10‰。清溪河受大巴山暴雨的影響,暴雨洪水頻繁。清溪河的洪水主要由暴雨形成,洪水發(fā)生的時間與暴雨相應,年最大流量發(fā)生在5—9月,7月最多。清溪河屬于山溪性暴漲暴落河流,有漲落影響,但無明顯繩套趨勢。通常一次洪水持續(xù)時間0.5~24 h,洪峰持續(xù)時間0.5~1 h,清溪水文站最大洪水多發(fā)生在5—9月,最大流量453 m/s,最小流量0.057 m/s,平均流量5.627 m/s。如圖1所示。
圖1 清溪河流域
清溪河流域內(nèi),設(shè)有一個基本水文站,4個有歷史系列資料的雨量站,包括老君站、峰城站、南坪站以及清溪站。在對水文站及雨量站數(shù)據(jù)資料進行篩選后,選擇時間跨度從1985年1月1日到2005年12月31日的降雨徑流數(shù)據(jù)。結(jié)合實際情況,選取了輸入變量為提前兩天的四個站點(南坪站,峰城站,老君站,清溪站)的降雨(-2)、(-1)提前2天的流量(-2),(-1)。這些實測值來自四川省水文局水文信息數(shù)據(jù)中心。
從圖2可以直觀地看到,清溪站日徑流數(shù)據(jù)的變化曲線跳變較大,數(shù)值陡峭,最大值、最小值相差上千倍,數(shù)據(jù)很不平緩。為了提高預測結(jié)果的準確性,本文采取平均值插值來提升輸入數(shù)據(jù)的平穩(wěn)性。插值后需要對輸入數(shù)據(jù)進行標準化處理,將所有數(shù)據(jù)歸一化到[0,1]區(qū)間內(nèi),預測后再將數(shù)據(jù)還原,這樣有利于縮短模型的訓練周期,發(fā)掘變量間的聯(lián)系。數(shù)據(jù)歸一化處理如式(1)所示。
圖2 清溪站日徑流數(shù)據(jù)從1985年1月1日—2005年12月31日
為了對清溪河流域進行準確地徑流預報,準確地對影響徑流量的各變量進行建模就顯得非常重要。針對清溪河水文序列的非穩(wěn)態(tài)、非線性等問題,賦予重要的時間點合適的權(quán)重,基于EMD-ATT-BiLSTM的徑流預測模型整體框架如圖3所示。
圖3 模型框架
經(jīng)驗模態(tài)分解(EMD)是由Huang等人在1998年提出的一種自適應的數(shù)據(jù)處理方法,適合非線性、非平穩(wěn)時間序列的處理。這對于探索預測模型的隱藏時間序列關(guān)系起了至關(guān)重要的作用,有助于揭示復雜的非線性時間序列的特征。該方法可以將復雜信號分解為有限個不同尺度的本征模態(tài)函數(shù)(intrinsic mode function,IMF),分解得到的IMF必須滿足兩個條件:一是IMF中極值點個數(shù)與過零點的個數(shù)相等或不超過1;二是由極大值與極小值確定的包絡(luò)線均值為零。設(shè)時間序列為(),則EMD分解成一列的IMF分量后可表示為式(2)所示。
式中,imf表示第個IMF分量;表示殘差項。分解得到的IMF分量按照頻率從高到低順序排列。
人類視覺系統(tǒng)的信息處理機制是一個高度復雜的過程,其中最重要的是視覺注意特征。人類的視覺總是能夠快速找到重要的目標區(qū)域進行詳細分析,而其他區(qū)域只是粗略分析甚至忽略。這種主動的、選擇性的心理活動被稱為視覺注意機制。這是一種人類利用有限的注意力資源,從大量的信息中快速挑選出高價值信息的方法。它是人類在長期進化過程中形成的一種生存機制。人的視覺注意機制大大提高了視覺信息處理的效率和準確性。深度學習中的注意機制與人類的選擇性視覺注意機制在本質(zhì)上是相似的,其核心目標也是從眾多信息中為當前的任務(wù)目標選擇更關(guān)鍵的信息。
水文時間序列中各個時間點的數(shù)據(jù)重要性不同,加入注意力機制層是用來加強對輸入的時間序列數(shù)據(jù)中短期重要特征的關(guān)注,對輸入數(shù)據(jù)賦予適當?shù)臋?quán)重系數(shù)后,就能得到加入注意力機制以后的每個時間的隱向量特征,然后將其輸入到BiLSTM網(wǎng)絡(luò)中去學習訓練預測。
長短期記憶網(wǎng)絡(luò)是一類特殊的遞歸神經(jīng)網(wǎng)絡(luò)(RNNs),包含一個反饋連接,允許過去的信息影響當前的輸出,因此對于涉及順序輸入的任務(wù)非常有效。作為傳統(tǒng)RNNs的擴展,LSTM引入了一種特殊的所謂的記憶單元,它就像一個累加器來學習序列長期依賴性,使優(yōu)化變得更加容易。這個記憶單元是自連接的,它會復制自己的當前狀態(tài)并積累外部輸入。同時,每個單元由輸入、輸出和遺忘門三個乘法單元控制,以確定是忘記過去的單元狀態(tài)還是將輸出傳遞到最后的狀態(tài),這允許LSTM長時間地存儲和訪問信息。根據(jù)Graves的工作,其公式如下
其中,,分別表示輸入門、遺忘門和輸出門;是記憶細胞;是sigmoid函數(shù);是一個隱藏向量;和是權(quán)重項和偏置項。由于單向的LSTM模型只能編碼從前到后的信息,不能編碼從后到前的信息,為了獲得更多的信息,BiL?STM被提出。
BiLSTM基于整個時間序列對輸出進行預測,其中包含了兩個正反方向的LSTM網(wǎng)絡(luò),第1層LSTM計算當前時間點序列信息,第2層LSTM反向讀取相同序列,并添加逆序信息,能夠同時利用前向和后向的信息。每一個訓練序列向前和向后分別是兩個LSTM網(wǎng)絡(luò),而且這兩個網(wǎng)絡(luò)都連接著一個輸出層,前向的LSTM模型提取過去的體征,后向的LSTM模型提取未來的體征。這個結(jié)構(gòu)為輸出層的輸入序列中的每個點提供了完整的過去以及未來的信息。在進行訓練時,通過對輸出神經(jīng)元的正向和反向傳播來更新網(wǎng)絡(luò)的權(quán)值。雙向LSTM結(jié)構(gòu)如圖4所示。
圖4 BiLSTM結(jié)構(gòu)圖
本研究對神經(jīng)網(wǎng)絡(luò)模型進行了驗證集上的所有可調(diào)超參數(shù)進行了網(wǎng)格搜索,關(guān)鍵參數(shù)(例如輸入數(shù)、隱藏節(jié)點和隱藏層)是確定神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)的先決條件。確定隱藏節(jié)點的數(shù)量和隱藏層的數(shù)量仍然是一項艱巨的任務(wù),沒有成熟的理論方法可以解決此問題,只好使用減少或增加層數(shù)以及每層神經(jīng)元數(shù)的實驗方法來確定最佳參數(shù)設(shè)置。此外,在基于注意力的模型中,都需要設(shè)置合適的時間步長,經(jīng)過多次測試,選擇了時間步長為6,同時隱含層確定為兩層,隱藏層單元數(shù)都為16。
為了進行清溪河流域洪水進行準確預報,本文將EMD方法和基于注意力機制的BiLSTM神經(jīng)網(wǎng)絡(luò)方法相結(jié)合進行徑流量模擬預測,計算的流程如圖5所示。
圖5 計算流程
徑流序列是一個典型的非線性、非穩(wěn)態(tài)過程,EMD非常適合這樣的時間序列,可有效地提取序列中變化特征、趨勢等隱含信息,并且基于注意力機制的雙向長短期神經(jīng)網(wǎng)絡(luò)對因果關(guān)系復雜的、變化規(guī)律復雜的問題具有出色的分析遞推能力,將二者結(jié)合可有效發(fā)揮各自優(yōu)勢。
EMD-ATT-BiLSTM時間序列預測模型建立思路如下:
(1)將訓數(shù)據(jù)集劃分為三個部分,訓練集(從1985年1月1日 至2001年12月31日),驗證集(從2002年1月1日至2003年12月31日),測試集(從2004年1月1日至2005年12月31日)。利用平均值插值的方法對水文時間序列進行預處理,并將其進行歸一化處理。
(2)利用EMD方法對水文時間序列進行分解,可以得到不同頻率的IMF和殘差項。
(3)對基于注意力機制的雙向長短期(ATT-BiLSTM)神經(jīng)網(wǎng)絡(luò)的時間步長、隱含層個數(shù)、訓練速率、訓練次數(shù)等參數(shù)進行初始化設(shè)置,將經(jīng)EMD分解處理后的數(shù)據(jù)導入模型中并進行訓練。
(4)訓練完成后,用訓練好的ATT-BiLSTM神經(jīng)網(wǎng)絡(luò)對清溪河流域2004/1/1至2005/12/31的日徑流量進行預測,得到不同頻率的預測值。
(5)將不同頻率的預測值進行疊加重構(gòu),再進行反歸一化,最終得到預測結(jié)果。
本文將提出的EMD-ATT-BiLSTM模型應用于清溪河站點,進行日徑流預測,與其他三種較為先進的模型進行預測性能的對比,同時使用三個常用的標準進行了評估。
在本研究中,采用的對比模型分別是LSTM、ATT-LSTM和ATT-BiLSTM模型。評價統(tǒng)計方法分別是均方根誤差(RMSE)、平均絕對誤差(MAE)、均方根誤差(RMSE)和納什效率系數(shù)(Nash-Sutcliffe efficiency)。
擬合程度的統(tǒng)計度量可用于評價模型的性能。本研究采用均方根誤差(RMSE)、平均絕對誤差(MAE)和納什效率系數(shù)(Nash-Sutcliffe effi?ciency)三種統(tǒng)計方法來衡量模型的性能。這三個指標由以下公式定義。
均方根誤差(RMSE):
平均絕對誤差(MAE):
納什效率系數(shù)(NSE):
通過對1985年1月1日—2001年12月31日期間每日徑流數(shù)據(jù)的建模得到預測結(jié)果,分別采用了四個模型對數(shù)據(jù)集進行預測。
模型一:選取了提前兩天的四個站點(南坪站、峰城站、老君站、清溪站)的降雨(-2)、(-1)提前1天的流量(-1)作為輸入數(shù)據(jù),利用LSTM模型對清溪河日徑流量進行預測,預測的結(jié)果如圖6所示。
圖6 LSTM數(shù)據(jù)集預測結(jié)果
模型二:選取了提前兩天的四個站點(南坪站、峰城站、老君站、清溪站)的降雨(-2)、(-1)提前1天的流量(-1)作為輸入數(shù)據(jù),利用ATT-LSTM模型對清溪河日徑流量進行預測,預測的結(jié)果如圖7所示。
圖7 ATT-LSTM數(shù)據(jù)集預測結(jié)果
模型三:選取了提前兩天的四個站點(南坪站、峰城站、老君站、清溪站)的降雨(-2)、(-1),提前1天的流量(-1)作為輸入數(shù)據(jù),利用ATT-BiLSTM模型對清溪河日徑流量進行預測,預測的結(jié)果如圖8所示。
圖8 ATT-BiLSTM數(shù)據(jù)集預測結(jié)果
模型四:通過EMD方法將(-1)分解為若干個IMF分量以及趨勢項,分別與提前兩天的四個站點(南坪站、峰城站、老君站、清溪站)的降雨(-2)、(-1)作為輸入數(shù)據(jù)進行預測,最后進行疊加得到最終預測結(jié)果,預測的結(jié)果如圖9所示。
圖9 EMD-ATT-BiLSTM插值數(shù)據(jù)集預測結(jié)果
圖中顯示了數(shù)據(jù)集的預測結(jié)果,從四個預測結(jié)果可以看到,LSTM模型的預測效果最差,特別是表現(xiàn)在峰值的預測上,Att-BiLSTM模型的預測效果比ATTLSTM在峰值的預測上要稍好一些,EMD-ATT-BiLSTM預測結(jié)果在細節(jié)處理上也很不錯,模型的預測峰值更加接近觀察值,四個模型在預測的值與觀測值的變化趨勢都是一致的,趨勢預測都不錯,表1給出了經(jīng)過插值預處理的四個模型的評價指標結(jié)果,整體來說,EMD-ATT-BiLSTM模型表現(xiàn)得比其他三個模型更為優(yōu)秀。
表1 評價指標
日徑流數(shù)據(jù)是測一天內(nèi)某一時刻的數(shù)據(jù)來代表當天的徑流量,一旦一天內(nèi)出現(xiàn)突發(fā)性降雨(暴雨)勢必會導致徑流量的變化(這種情況十分常見),但是采樣的單位是以天為單位,因此數(shù)據(jù)的精確度就會成為預測精確度的重要性因素,而插值法和EMD方法能提升序列的平穩(wěn)性,或者說提升了數(shù)據(jù)本身的精確度,從而能夠在良好的模型上提高預測的準確度。
通過以上比較分析得到,本文所述的四種模型,即LSTM,ATT-LSTM、ATT-BiLSTM和EMD-ATT-BiLSTM,EMD-ATT-BiLSTM在日徑流序列中表現(xiàn)出最佳的預測性能??傊?,比較結(jié)果表明,提出的神經(jīng)網(wǎng)絡(luò)模型具有比其他模型更好的預測性能。
本文采用EMD方法、注意力機制、雙向長短期記憶神經(jīng)網(wǎng)絡(luò)相結(jié)合EMD-ATT-BiLSTM模型,對清溪河清溪水文站的日徑流量進行了預報。將該模型與其他三個神經(jīng)網(wǎng)絡(luò)模型(即LSTM、Att-LSTM和Att-BiLSTM)進行了比較??傮w而言,在處理日徑流系列的預報時,本研究的工作成功地證明了使用EMD方法的ATTBiLSTM模型可以有效提高日徑流預報的性能,其納什效率系數(shù)(NSE)可以達到0.957。結(jié)果表明,提出的EMD-ATT-BiLSTM模型是預測復雜序列數(shù)據(jù)的有用工具,該方法有希望成為日徑流預測的新方法。