孫開爭(zhēng),劉 楊,姜騰龍,馬姍姍,劉建軍
(山東省濟(jì)南生態(tài)環(huán)境監(jiān)測(cè)中心,山東 濟(jì)南 250102)
河流水質(zhì)預(yù)測(cè)可以為水環(huán)境治理與水環(huán)境質(zhì)量改善提供精準(zhǔn)數(shù)據(jù)支撐。由于污染物在水中遷移轉(zhuǎn)化機(jī)理復(fù)雜、模型本身求解的不確定性、輸入數(shù)據(jù)不完備等原因,基于機(jī)理的水質(zhì)數(shù)值模型模擬精度不高[1]。傳統(tǒng)的非機(jī)理型預(yù)測(cè)方法,如多元線性回歸法[2]、時(shí)間序列模型[3]、灰色系統(tǒng)[4]、人工神經(jīng)網(wǎng)絡(luò)[5-6]等方法,特別是人工神經(jīng)網(wǎng)絡(luò)適合河流水質(zhì)變化非線性及不確定性等特點(diǎn),獲得了廣泛應(yīng)用。近年來,隨著大數(shù)據(jù)的持續(xù)累積和計(jì)算性能的大幅提升,深度學(xué)習(xí)得以快速發(fā)展,其中循環(huán)神經(jīng)網(wǎng)絡(luò)在語音等時(shí)間序列數(shù)據(jù)解析方面取得突破進(jìn)展[7]。LSTM(Long Short-term Memory,LSTM)是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò),在網(wǎng)絡(luò)結(jié)構(gòu)中增加了記憶單元,有效解決時(shí)序數(shù)據(jù)長(zhǎng)依賴問題,在時(shí)序數(shù)據(jù)預(yù)測(cè)方面表現(xiàn)出色。Liang等[8]采用LSTM神經(jīng)網(wǎng)絡(luò)模型對(duì)河流6個(gè)水質(zhì)指標(biāo)預(yù)測(cè),并與美國EPA的環(huán)境流體力學(xué)模型(EFDC)對(duì)比,表明用相對(duì)簡(jiǎn)單、短鏈的LSTM取得了很好預(yù)測(cè)效果;通過優(yōu)化模型輸入[9-11]、采用組合模型[12]可使得LSTM預(yù)測(cè)模型性能進(jìn)一步提升。
當(dāng)前基于深度學(xué)習(xí)的水質(zhì)預(yù)測(cè)模型較少采用長(zhǎng)時(shí)間序列預(yù)測(cè),深度學(xué)習(xí)往往“學(xué)習(xí)”的不夠充分,采用數(shù)據(jù)大多來自水庫或者水質(zhì)變化較小的河流,LSTM模型能否適用于水質(zhì)變化較大的城市河流研究較少。本研究選取典型城市河流小清河(濟(jì)南段)數(shù)據(jù)為樣本,比較了不同鏈長(zhǎng)、不同預(yù)測(cè)步長(zhǎng)下LSTM預(yù)測(cè)性能的優(yōu)劣,考慮降雨量與水質(zhì)變化關(guān)系,優(yōu)化構(gòu)建多變量LSTM水質(zhì)預(yù)測(cè)模型,為提高城市河流水質(zhì)預(yù)測(cè)精度進(jìn)行了新的探索。
小清河發(fā)源于濟(jì)南市西部,東至山東省壽光市入渤海,其源頭位于濟(jì)南市槐蔭區(qū)睦里莊,自西向東與黃河平行橫貫濟(jì)南市,流經(jīng)濟(jì)南市5區(qū),從章丘區(qū)辛豐莊出濟(jì)南界,全長(zhǎng)為70.3 km,流域面積為2 803 km2。小清河是濟(jì)南市最主要的排水、行洪、排澇河道,也是泉水的最終受納水體,影響小清河濟(jì)南段水質(zhì)的最主要指標(biāo)為氨氮[13]。小清河(濟(jì)南段)有3個(gè)水質(zhì)自動(dòng)監(jiān)測(cè)站,分別位于源頭斷面睦里莊、城區(qū)控制斷面洪園閘、出境斷面辛豐莊,3個(gè)監(jiān)測(cè)點(diǎn)位位置和匯水范圍,如圖1所示:
圖1 研究區(qū)域與點(diǎn)位分布
選取 2019—2021 年水質(zhì)自動(dòng)站的監(jiān)測(cè)數(shù)據(jù)為研究對(duì)象,監(jiān)測(cè)數(shù)據(jù)采樣頻率為4 h,一天6個(gè)數(shù)據(jù)的算數(shù)平均值為日均值。小清河(濟(jì)南段)沿程氨氮濃度大致呈“鐘線”形,兩頭低,中間高。因接納主城區(qū)生活污水和少量工業(yè)廢水,氨氮濃度在市區(qū)斷面洪園閘最高,隨水體的自凈及潔凈支流的稀釋,至出境斷面逐漸降低。2019年以來,睦里莊與辛豐莊斷面水質(zhì)穩(wěn)定達(dá)標(biāo),洪園閘斷面氨氮濃度波動(dòng)較大,日均值濃度尚不能穩(wěn)定達(dá)標(biāo),3個(gè)年度濃度分布概覽如圖2所示。通過精準(zhǔn)水質(zhì)預(yù)測(cè),提高環(huán)境管理成效,對(duì)于持續(xù)改善小清河(濟(jì)南段)水質(zhì)意義重大,本研究以洪園閘斷面為研究對(duì)象開展水質(zhì)預(yù)測(cè)。
圖2 洪園閘氨氮濃度年度變化
缺失數(shù)據(jù)首先采用同時(shí)段手工監(jiān)測(cè)數(shù)據(jù)替代,仍有缺失的數(shù)據(jù)用滑動(dòng)平均方法進(jìn)行插值,共取得日數(shù)據(jù)1 096個(gè),然后采用MinMaxScale將數(shù)據(jù)歸一化到[-1,1]區(qū)間,提高模型收斂速度,避免局部最優(yōu)。
長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò),解決了循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)容易產(chǎn)生的梯度消失和梯度爆炸的問題[14],創(chuàng)造性的在隱藏層中引入輸入門i、遺忘門f、輸出門o等記憶單元,通過門控結(jié)構(gòu)實(shí)現(xiàn)神經(jīng)元細(xì)胞狀態(tài)的存儲(chǔ)更新,進(jìn)而時(shí)間序列信息得以有選擇的長(zhǎng)期保留。單層LSTM神經(jīng)網(wǎng)絡(luò)示意圖如圖3所示,遺忘門ft控制t-1時(shí)刻細(xì)胞狀態(tài)Ct-1的通過程度,輸入門it決定哪些信息可以輸入當(dāng)前時(shí)刻記憶細(xì)胞;遺忘門ft和輸入門it,共同更新當(dāng)前時(shí)刻細(xì)胞狀態(tài)Ct;輸出門ot決定當(dāng)前時(shí)刻細(xì)胞輸出狀態(tài)。
圖3 單層LSTM神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
其中,σ為sigmoid激活函數(shù),代表矩陣點(diǎn)乘(加)操作。
本研究采用平均絕對(duì)誤差(MAE)、均方根誤差(RMSE)、決定系數(shù)(R2)和相關(guān)系數(shù)(r)來衡量模型的預(yù)測(cè)效果。MAE、RMSE是真實(shí)值與預(yù)測(cè)值偏差的度量,與量綱有關(guān),數(shù)值越小表示模型預(yù)測(cè)效果越好。R2、r越接近于1表示模型擬合能力越好,可以比較不同量綱模型擬合優(yōu)度。
式中:yi——實(shí)測(cè)值;——預(yù)測(cè)值;實(shí)測(cè)值的平均值;——預(yù)測(cè)值的平均值;m——測(cè)試集樣本個(gè)數(shù)。
基于LSTM的預(yù)測(cè)模型,單向隱藏層節(jié)點(diǎn)設(shè)置為128個(gè),訓(xùn)練次數(shù)設(shè)置為1 000,學(xué)習(xí)率設(shè)置為0.001,損失函數(shù)采用均方誤差MSE,優(yōu)化器采用Adam。原始數(shù)據(jù)集以2021年7月1日為界分成2部分,前部分912個(gè)數(shù)據(jù)為訓(xùn)練集,后部分184個(gè)數(shù)據(jù)設(shè)為測(cè)試集,均覆蓋豐水期、枯水期。采用滑動(dòng)窗口方法構(gòu)建訓(xùn)練集數(shù)據(jù)對(duì)(Xtrain,Ytrain)。
式中:xi——第i時(shí)刻的狀態(tài)值,i∈[h,912-h];h——輸入序列長(zhǎng)度(鏈長(zhǎng));yi+p——第i+p時(shí)刻的狀態(tài)值;p——預(yù)測(cè)步長(zhǎng)。同樣構(gòu)建測(cè)試集數(shù)據(jù)對(duì)(Xtest,Ytest),輸入訓(xùn)練好的LSTM(h,p)模型,得到預(yù)測(cè)值^y。
單變量模型中,xi為第i時(shí)刻氨氮濃度,yi+p為第i+p時(shí)刻氨氮濃度,設(shè)置h為7,31,365,p為1,3,7,即以歷史7 d、1 m、1 a氨氮日均濃度預(yù)測(cè)未來1 d、3 d、7 d氨氮日均濃度,結(jié)果見圖4。3個(gè)不同步長(zhǎng)模型擬合效果大致為“p=1”>“p=3”>“p=7”,說明LSTM更擅長(zhǎng)短步長(zhǎng)預(yù)測(cè),當(dāng)p=1時(shí),不同h值的模型預(yù)測(cè)結(jié)果相差不大,MAE在0.45左右,R2在0.77左右,r在0.87左右,預(yù)測(cè)結(jié)果較好;p=3,h為7和31時(shí),預(yù)測(cè)結(jié)果相差不大,h為365時(shí)預(yù)測(cè)結(jié)果較差,這說明模型未從長(zhǎng)鏈數(shù)據(jù)中學(xué)習(xí)到足夠的“知識(shí)”;p=7時(shí),不同h值的模型預(yù)測(cè)結(jié)果均下降明顯,結(jié)果評(píng)價(jià)如表1所示:
圖4 不同模型預(yù)測(cè)值與實(shí)測(cè)值對(duì)比
表1 單變量模型預(yù)測(cè)結(jié)果評(píng)價(jià)
小清河是濟(jì)南市城區(qū)雨水徑流的唯一接納水體,已有研究表明,雨水徑流在小清河水源(污染源)中貢獻(xiàn)程度占比33.0%[15],且污染消減較為困難。選取位于濟(jì)南城區(qū)龜山的國家基本氣象站2019—2021年度降水?dāng)?shù)據(jù),考察降雨量與氨氮濃度變化關(guān)系,結(jié)果如圖5所示。從全年來看,因冬季降水較少污染物逐漸累積,隨著初春降雨的增多,污染匯入水體氨氮濃度逐漸攀升;汛期因降雨較為頻繁,水質(zhì)波動(dòng)較為劇烈;從單場(chǎng)降雨來看,降雨初期(1~3 d)氨氮濃度逐漸升高,后期氨氮濃度逐漸下降,降雨量可以為L(zhǎng)STM預(yù)測(cè)氨氮濃度提供新的學(xué)習(xí)資料。
圖5 氨氮濃度與降雨量的關(guān)系
多變量LSTM模型中,xi為第i時(shí)刻氨氮濃度和降雨量組成的雙變量,其他參數(shù)不變,結(jié)果見圖6。不同步長(zhǎng)多變量模型結(jié)果較單變量模型有所提升,其中p=1、p=3時(shí)提升較為明顯,結(jié)果評(píng)價(jià)如表2所示。特別是當(dāng)p=3、h=365時(shí),MAE和RMSE較單變量LSTM分別下降20.9%,32.3%,這說明p=3的模型從年度同期降雨歷時(shí)數(shù)據(jù)中學(xué)習(xí)到了更多的“知識(shí)”,氨氮濃度通常在降雨的第3 d左右變化較大。
表2 多變量模型預(yù)測(cè)結(jié)果評(píng)價(jià)
圖6 多個(gè)氨氮預(yù)測(cè)模型(p=1)結(jié)果比較
以2021年11月6日、7日降雨時(shí)段看,6日、7日降雨量分別為6.47 mm、99.3 mm,氨氮實(shí)測(cè)濃度從6日的1.32 mg/L逐漸升高,至8日達(dá)到最高4.04 mg/L,隨后逐漸下降。多變量預(yù)測(cè)模型較好的捕捉到了這個(gè)降雨過程,氨氮濃度較高時(shí)預(yù)測(cè)結(jié)果好于單變量模型。
h=7時(shí),模型較多的關(guān)注近期的變化趨勢(shì),預(yù)測(cè)結(jié)果傾向于向近期靠近,由于洪園閘斷面氨氮濃度波動(dòng)較大,預(yù)測(cè)結(jié)果波動(dòng)也較明顯;而h=365時(shí),模型較多的關(guān)注年度趨勢(shì)變化,預(yù)測(cè)結(jié)果較為平穩(wěn)。不同鏈長(zhǎng)的預(yù)測(cè)模型能學(xué)習(xí)到不同的“歷史經(jīng)驗(yàn)”,將不同鏈長(zhǎng)模型的預(yù)測(cè)結(jié)果算數(shù)平均進(jìn)行集合預(yù)測(cè),能獲得更好的擬合結(jié)果,如圖7所示。以p=1為例,較單變量模型RMSE平均值降低19.3%,MAE降低了19.0%,r提升5.8%,集合預(yù)測(cè)模型性能提升明顯,結(jié)果如表3所示:
圖7 集合預(yù)測(cè)模型(p=1)結(jié)果比較
表3 洪園閘組合模型預(yù)測(cè)結(jié)果評(píng)價(jià)
城市河流納污、行洪等功能多,污染來源多樣,水質(zhì)波動(dòng)較大,數(shù)據(jù)隨機(jī)性強(qiáng),水質(zhì)預(yù)測(cè)難度大。LSTM特有的門控式結(jié)構(gòu)可處理時(shí)序數(shù)據(jù)長(zhǎng)依賴問題,使其具有突出的時(shí)間序列預(yù)測(cè)能力。本研究以小清河(濟(jì)南段)市區(qū)洪園閘斷面的在線監(jiān)測(cè)數(shù)據(jù)為研究對(duì)象,建立氨氮濃度LSTM預(yù)測(cè)模型,并檢驗(yàn)其適用性。分別以不同歷史長(zhǎng)度365 d、31 d、7 d的數(shù)據(jù)作為輸入,預(yù)測(cè)未來1 d、3 d、7 d的氨氮濃度,不同鏈長(zhǎng)模型預(yù)測(cè)未來同一天的結(jié)果相差不大,這也說明短鏈即可獲得很好的結(jié)果,與已有研究結(jié)論一致[8]。采用降雨量、氨氮多變量預(yù)測(cè)模型預(yù)測(cè)精度進(jìn)一步提升,說明模型可以學(xué)習(xí)降雨量與氨氮濃度之間的變化關(guān)系,也印證了降雨對(duì)河流水質(zhì)的影響[15];不同鏈長(zhǎng)的模型可以學(xué)習(xí)不同歷史周期下的氨氮濃度變化趨勢(shì),綜合面向目標(biāo)的不同模型進(jìn)行集合預(yù)測(cè),使得模型預(yù)測(cè)精度進(jìn)一步提高。
LSTM模型的長(zhǎng)步長(zhǎng)預(yù)測(cè)能力有所下降,如何提高長(zhǎng)步長(zhǎng)預(yù)測(cè)精度值得進(jìn)一步研究;根據(jù)《地表水環(huán)境質(zhì)量標(biāo)準(zhǔn)》(GB 3838—2002),將預(yù)測(cè)的氨氮濃度計(jì)算得到水質(zhì)類別,各模型的水質(zhì)類別預(yù)測(cè)正確率介于65%~77%,未來可通過水質(zhì)分類等預(yù)測(cè)方法進(jìn)一步提高水質(zhì)類別預(yù)測(cè)精度。