李 港,李有為,舒章康,張 宇,王 江,查 偉
(1.長江航道勘察設(shè)計院(武漢)有限公司,湖北 武漢 430040; 2.國家內(nèi)河航道整治工程技術(shù)研究中心,湖北 武漢 430040; 3.南京水利科學(xué)研究院 水災(zāi)害防御全國重點實驗室,江蘇 南京 210029)
水路運輸在國民運輸中有著極其重要的地位,航道水位是影響船舶通航安全的重要因素[1-2]。長江作為貨運量全球第一的內(nèi)河航道,其下荊江河段蜿蜒曲折,河槽沖刷下切,通航條件相對較差[3]。因此,開展長江中游下荊江河段的水位預(yù)測研究,對保障船舶通航安全具有重要意義。
目前水位預(yù)測方法主要包括基于機理過程的水動力模型和基于數(shù)據(jù)驅(qū)動的統(tǒng)計模型[4-6]。水動力模型能夠較好地實現(xiàn)水位變化的精細(xì)模擬,陳煉鋼等[7]采用EFDC 模型模擬鄱陽湖的水位變化,提出適宜越冬水鳥的生態(tài)水位調(diào)控方案;戴凌全等[8]基于MIKE Flood 構(gòu)建江湖一體化耦合水動力模型,實現(xiàn)洞庭湖白鶴棲息地水位波動的模擬。然而,水動力模型的構(gòu)建需要非常完善的數(shù)據(jù)作為支撐,計算復(fù)雜,耗時較長,水位預(yù)測依賴于邊界條件的預(yù)測,易造成誤差累積,降低水位預(yù)測精度[9]。統(tǒng)計模型通過數(shù)理統(tǒng)計方法建立水位與影響因素之間的關(guān)系,進(jìn)而實現(xiàn)水位的預(yù)測,計算效率高,操作簡便,得到了廣泛應(yīng)用[10]。然而,早期的回歸方法難以刻畫水位與其影響因素之間的非線性關(guān)系,預(yù)測精度較低[11]。隨著機器學(xué)習(xí)的發(fā)展,人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)[12]、支持向量機(Support Vector Machine,SVM)[13]等模型提高了水位預(yù)測精度,但均未考慮水位時間的相關(guān)性[14]。深度學(xué)習(xí)模型中的循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)可考慮短期歷史信息的影響[15],能有效提升水位預(yù)測精度,但其網(wǎng)絡(luò)結(jié)構(gòu)仍存在梯度消失和梯度爆炸的問題,導(dǎo)致模型易陷入局部最優(yōu)解或訓(xùn)練無法收斂[16]。而長短時記憶神經(jīng)網(wǎng)絡(luò)(Long Short-term Memory,LSTM)作為RNN 的變體,通過加入門控單元,實現(xiàn)了高精度的水位預(yù)報[17];郭燕等[18-19]利用LSTM 準(zhǔn)確預(yù)測了洞庭湖和鄱陽湖的水位變化;Barzegar 等[20]基于LSTM 模型進(jìn)行了不同尺度湖泊的水位預(yù)測,取得了較好的預(yù)測效果。時間卷積網(wǎng)絡(luò)(Temporal Convolutional Network,TCN)結(jié)構(gòu)中的因果卷積和膨脹卷積可以將時間序列與歷史記憶有效結(jié)合,計算效率高,在部分時序任務(wù)的預(yù)測中取得了優(yōu)于LSTM 的效果[21-22]。然而,目前在水位預(yù)測領(lǐng)域?qū)CN 模型的相關(guān)應(yīng)用還有待進(jìn)一步探索。
基于此,本研究以長江下荊江河段為研究對象,利用TCN 模型建立荊江下游河段水位站點的日尺度水位預(yù)測模型,同時構(gòu)建相應(yīng)的LSTM 和SVM 水位預(yù)測模型進(jìn)行對比分析,探究TCN 模型在下荊江水位預(yù)報中的適用性,以期為航道內(nèi)船舶通航安全提供技術(shù)支撐。
長江中游荊江河段起于湖北枝城,止于湖南城陵磯(圖1),全長約347 km。以藕池口為界,分為上荊江和下荊江,其中下荊江河長約175 km,屬于典型的彎曲型河道,由石首、調(diào)關(guān)及七弓嶺等10 個彎曲段組成,各彎道平均曲折系數(shù)為1.82,大部分屬于急彎河段,通航條件較差[23]。
圖1 研究區(qū)域及水文水位站點分布Fig.1 Study area and distribution of hydrological stations
研究選用的數(shù)據(jù)資料包括宜昌站、枝城站和沙市站2019—2021 年的逐日平均流量數(shù)據(jù),以及石首站、調(diào)弦口站和監(jiān)利站2019—2021 年的逐日平均水位數(shù)據(jù),監(jiān)測站點分布見圖1。建模前需對各站點的水位流量時間序列數(shù)據(jù)進(jìn)行歸一化處理,消除數(shù)據(jù)量綱影響,加快模型訓(xùn)練過程中的收斂速度。采用minmax 方法將數(shù)據(jù)歸一化至[0,1]。
循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)是處理時間序列任務(wù)回歸預(yù)測的重要手段,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)則主要用于解決圖像識別、機器視覺等相關(guān)問題。TCN 本質(zhì)是一維卷積神經(jīng)網(wǎng)絡(luò)針對時序問題的優(yōu)化和改進(jìn),網(wǎng)絡(luò)結(jié)構(gòu)見圖2(a),通過使用因果卷積,使TCN 能夠適用于序列建模,同時采用擴張卷積讓網(wǎng)絡(luò)能夠?qū)W到更長的時序依賴信息,避免歷史數(shù)據(jù)信息的丟失,即使不做任何池化操作也可增大感受野的范圍 ,使卷積核能夠?qū)W習(xí)更大范圍的信息,并且可以并行處理序列數(shù)據(jù),所需訓(xùn)練參數(shù)較少,計算效率較高[24-25]。擴張因果卷積的計算式為:
圖2 時間卷積網(wǎng)絡(luò)結(jié)構(gòu)和基礎(chǔ)單元示意Fig.2 Structure of TCN and schematic diagram of TCN basic unit
式中:X={x1,x2, …,xt}為輸入的時間序列;F={f1,f2, …,fK}表示大小為K的卷積核,fK表示卷積操作中filter 的數(shù)量;d為擴張率。
此外,TCN 還增加了殘差連接,將數(shù)據(jù)跳過中間的卷積操作,經(jīng)過 1×1 的卷積后直接與經(jīng)過中間卷積操作的數(shù)據(jù)相加作為本層最終的輸出數(shù)據(jù),可有效避免中間層堆疊導(dǎo)致模型在訓(xùn)練過程中出現(xiàn)梯度消失的問題[26]。因果擴張卷積加上殘差連接構(gòu)成了TCN 模型的基本單元,其結(jié)構(gòu)如圖2(b)所示。
為了探究TCN 模型在水位預(yù)測中的適用性和優(yōu)越性,同時構(gòu)建了LSTM 模型及SVM 模型進(jìn)行水位預(yù)測,并進(jìn)行TCN 模型和兩者預(yù)報精度的對比分析。LSTM 結(jié)構(gòu)主要包括輸入門、輸出門和遺忘門3 個門控單元,能夠緩解RNN 的梯度消失和梯度爆炸問題,是目前常用于時間序列回歸預(yù)測的深度學(xué)習(xí)模型[27]。SVM 是建立在統(tǒng)計學(xué)VC 維理論和結(jié)構(gòu)風(fēng)險最小化原理上的機器學(xué)習(xí)模型,能夠根據(jù)樣本在模型復(fù)雜性和預(yù)測學(xué)習(xí)能力之間取得最佳平衡,在水位預(yù)報領(lǐng)域得到了較為廣泛的應(yīng)用[5,28-29]。
研究以2019 年和2020 年流量水位數(shù)據(jù)為模型的訓(xùn)練數(shù)據(jù)集,2021 年的水位數(shù)據(jù)為驗證數(shù)據(jù)集;采用宜昌站、枝城站及沙市站的日均流量,以及待預(yù)測站點的水位作為輸入數(shù)據(jù),分別預(yù)測下荊江河段石首、調(diào)弦口及監(jiān)利站2021 年的水位??紤]到下荊江各站點的水位與上游各站點的流量之間存在時間滯后,分別設(shè)置宜昌站、枝城站、沙市站3 個站點及待預(yù)測站點前1 d 至前10 d 共30 種滯時方案下的流量水位作為輸入,進(jìn)行下荊江河段石首、調(diào)弦口及監(jiān)利站未來1 d 的水位訓(xùn)練與預(yù)測,以確定最優(yōu)的輸入時間窗口,獲得最佳的水位預(yù)測效果。由于網(wǎng)絡(luò)訓(xùn)練過程中,初始權(quán)重賦值的隨機性,會使模型的水位預(yù)報結(jié)果存在一定差異,因此,最終的水位預(yù)報結(jié)果為同一參數(shù)下進(jìn)行10 次數(shù)值試驗的平均值。
本研究所有的數(shù)值試驗均在Windows 系統(tǒng)上(CPU: AMD R7-5800H@3.2GHz,GPU: NVIDIA GeForce RTX 3050Ti),采用Python 開發(fā)語言(3.6.12)基于TensorFlow(2.1.0)和Keras(2.3.1)深度學(xué)習(xí)框架實現(xiàn)。
模型選取納什系數(shù)(Nash-Sutcliffe Efficiency Coefficient,ENS)、均方根誤差(ERMS)及決定系數(shù)(R2)3 個指標(biāo)進(jìn)行石首、調(diào)弦口及監(jiān)利站水位的模擬預(yù)測精度評價。
3.1.1 模型超參數(shù) 超參數(shù)設(shè)置對模型的預(yù)報精度具有較大影響。模型采用的優(yōu)化算法是適應(yīng)性動量估計算法(Adaptive moment estimation, Adam),能自適應(yīng)學(xué)習(xí)率加快網(wǎng)絡(luò)收斂速率,沿梯度的負(fù)方向更新參數(shù),是目前深度學(xué)習(xí)中應(yīng)用最為廣泛的優(yōu)化算法[14];激活函數(shù)選用ReLU 函數(shù),其優(yōu)勢在于能夠快速訓(xùn)練網(wǎng)絡(luò),防止模型訓(xùn)練過程中出現(xiàn)梯度消失問題[30];同時模型的Dropout 層以一定比例隨機丟棄神經(jīng)元,能有效防止模型發(fā)生過擬合。此外,對模型性能影響較大的超參數(shù)還包括卷積核尺寸和卷積核個數(shù)。分別設(shè)置Dropout 為0.2、0.3、0.5,卷積核尺寸為2、3、4、5,以及卷積核個數(shù)為8、16、32、64,采用網(wǎng)格搜索法確定最優(yōu)的參數(shù)組合;其余如初始學(xué)習(xí)、率膨脹因子等敏感性較低的超參數(shù)按照經(jīng)驗值設(shè)置[31],最終TCN 模型的超參數(shù)取值見表1。
3.1.2 最優(yōu)輸入時間窗 除了模型的超參數(shù)外,輸入時間窗口對水位的預(yù)報精度也有較大影響,因為流量和水位并不是同步變化,存在一定的時間滯后,進(jìn)行模型不同輸入時間窗的優(yōu)選計算,分析滯后時長對當(dāng)前水位的影響程度,確定流量-水位之間最優(yōu)滯后關(guān)系,進(jìn)而獲得最佳的水位預(yù)測效果。本研究計算并比較了輸入時間窗為1~10 d 時各站點在訓(xùn)練期和預(yù)測期水位的模擬預(yù)測精度,計算結(jié)果見圖3??梢姡煌瑫r間窗下,TCN 模型在訓(xùn)練期和測試期的水位模擬預(yù)測精度存在一定差異,各站點訓(xùn)練期最優(yōu)精度對應(yīng)的輸入時間窗口與測試期的相同,模型訓(xùn)練期和測試期模擬預(yù)測精度均較高,具有較好的一致性,不存在過擬合現(xiàn)象,這表明模型具有較好的魯棒性和泛化能力??傮w而言,TCN 模型在合適的輸入時間窗口下能夠獲得高精度的水位預(yù)測效果,監(jiān)利站、調(diào)弦口站及石首站對應(yīng)的最優(yōu)輸入時間窗口分別為2、2 和3 d。
圖3 不同輸入時間窗口下3 個站點訓(xùn)練期和測試期的水位預(yù)測效果Fig.3 Water level prediction in training and testing periods of three stations under different input time windows
圖4 是TCN 模型在對應(yīng)最優(yōu)輸入時間窗口下,訓(xùn)練期和測試期3 個站點未來1~3 d 的水位模擬預(yù)測結(jié)果??傮w而言,TCN 在下荊江不同水位站點處訓(xùn)練期和測試期的水位預(yù)測值與實測值吻合較好,能較好捕捉水位的峰谷值。
圖4 TCN 模型在不同站點處未來1~3 d 的水位預(yù)測值與實測值對比情況Fig.4 Comparison of predicted and measured water level of TCN model at different stations in the next three days
表2 是TCN 模型與LSTM 模型及SVM 模型在不同站點處測試期的水位預(yù)測精度對比。整體上TCN 預(yù)測效果最好,SVM 預(yù)測效果較差。TCN 在監(jiān)利站和調(diào)弦口站的3 個水位預(yù)測精度評價指標(biāo)均略優(yōu)于LSTM,但差異較??;在石首站的水位預(yù)測中,TCN 的ENS和ERMS略低于LSTM,R2優(yōu)于LSTM,這表明TCN 模型對石首站水位的擬合程度較高,但預(yù)測的絕對偏差略大,兩種深度學(xué)習(xí)模型在下荊江河段3 個站點未來1 d 的水位預(yù)測精度均較高,在對應(yīng)的最優(yōu)輸入時間窗口下,ENS和R2均能達(dá)到0.995 以上,ERMS基本小于0.2 m。隨著預(yù)測時間尺度的增加,TCN 和LSTM 的預(yù)測精度均呈現(xiàn)不同程度的降低,TCN 在未來2 d 和未來3 d 的預(yù)測精度相較于LSTM 有了一定的提升,3 個精度評價指標(biāo)結(jié)果均優(yōu)于LSTM 模型。總體而言,LSTM 的水位預(yù)測已達(dá)到較高精度,而TCN 的水位預(yù)測精度更高,這主要是因為LSTM 雖然通過門控單元緩解了RNN 的梯度問題,但遺忘門還是會以一定的概率丟棄歷史信息,當(dāng)序列長度超過一定值后,仍會出現(xiàn)梯度消失問題[32],而TCN 反向傳播路徑是沿著網(wǎng)絡(luò)深度方向,而非LSTM 的序列時間方向,避免了LSTM 在過長時間序列上的梯度問題,能夠在一定程度上提高預(yù)測精度。
表2 TCN、LSTM、SVM 在不同站點處2021 年的水位預(yù)測精度Tab.2 TCN, LSTM and SVM prediction accuracy of water level in 2021 at different stations
表3 是各站點TCN 模型水位預(yù)測結(jié)果在豐水期和枯水期不同區(qū)間絕對誤差出現(xiàn)天數(shù),其中,豐水期統(tǒng)計時段為5—10 月,枯水期統(tǒng)計時段為11 月—翌年4 月。在未來1 d 的水位預(yù)測結(jié)果中,枯水期的絕對誤差基本小于0.2 m,而豐水期則基本小于0.5 m;未來2 d 和未來3 d 的預(yù)測結(jié)果中,預(yù)測精度隨預(yù)測時間尺度的增加呈降低趨勢,絕對誤差大于0.5 m 的天數(shù)增加,豐水期絕對誤差大于0.5 m 的最大出現(xiàn)天數(shù)為27,枯水期為13??傮w而言,各站點枯水期在不同時間尺度的預(yù)測絕對誤差均顯著優(yōu)于豐水期,這主要是因為歷史數(shù)據(jù)中豐水期的水位流量高值數(shù)據(jù)相對較少,模型訓(xùn)練過程中,為達(dá)到最優(yōu)精度,預(yù)測結(jié)果會向樣本數(shù)量較多的枯水期低水位值趨近[33]。對于航道水位預(yù)測,保證枯水期的水位預(yù)測精度可以有效保障船舶的通航安全,而豐水期的水位預(yù)測可以在后續(xù)研究中通過加入更多年份的歷史數(shù)據(jù)進(jìn)行模型訓(xùn)練,進(jìn)而提升豐水期水位預(yù)測精度。
表3 3 個站點未來1~3 d 預(yù)測結(jié)果不同區(qū)間絕對誤差在豐、枯水期出現(xiàn)天數(shù)Tab.3 The number of days with different absolute error in the next three days in dry season and wet season單位:d
本文利用TCN 模型進(jìn)行了下荊江航道不同站點未來1~3 d 的水位預(yù)測,并與當(dāng)前廣泛應(yīng)用的LSTM和SVM 模型進(jìn)行預(yù)測效果的對比,分析了TCN 模型在水位預(yù)測中的適用性和優(yōu)越性,可為船舶通行安全提供技術(shù)支撐,主要研究結(jié)論如下:
(1)監(jiān)利站、調(diào)弦口站及石首站對應(yīng)的最優(yōu)輸入時間窗口分別為2、2 和3 d 時,TCN 模型能夠獲得下荊江各站點未來1 d 的最佳預(yù)測效果,ENS和R2均大于0.995,ERMS基本小于0.2 m;但隨著預(yù)測時間尺度的增大,預(yù)測精度整體呈降低趨勢。
(2)TCN 模型和LSTM 模型的預(yù)測效果顯著優(yōu)于SVM 模型,在水位預(yù)測領(lǐng)域具有較好的應(yīng)用潛力,TCN 模型在不同時間尺度下的預(yù)測精度整體優(yōu)于LSTM 模型。
(3)TCN 模型在枯水期的水位預(yù)測效果優(yōu)于豐水期,枯水期各站點未來1~3 d 水位預(yù)測絕對誤差大于0.5 m 的最大天數(shù)為13,大部分時段水位預(yù)測的絕對誤差低于0.2 m,可有效保證枯水期的船舶通航安全。