魏 思,李欣澤,郤麗媛,劉紫君,董哲為
(1.長安大學 信息工程學院,陜西 西安 710064;2.陜西學前師范學院 經濟與管理學院,陜西 西安 710100)
隨著社會經濟的發(fā)展,城市化與工業(yè)化不斷推進,能源消耗和污染排放引發(fā)的空氣污染狀況日益引起全社會的關注,成為熱點話題[1]。空氣污染物主要包括一氧化碳(CO)、二氧化硫(SO2)、氮氧化物(NO2)、臭氧(O3)等氣體污染物和可吸入顆粒物(PM10)、細顆粒物(PM2.5)等顆粒態(tài)污染物[2],這些有毒有害化學物質的暴露可導致呼吸系統(tǒng)和心血管系統(tǒng)等的損傷[3]。隨著國家對空氣污染治理要求的不斷提高,空氣污染的提前預報受到了多方關注,并對空氣污染預測方法進行了深入研究[4]。
隨著機器學習的廣泛應用,采用機器學習方法對空氣污染物濃度預測取得了很好的效果[5]。倪志偉等[6]通過采用改進的離散型人工魚群算法,并結合分形維數,提出基于人工魚群和分形維數融合支持向量機的空氣質量預測方法。游介文等[7]基于隨機森林(Random Forest,RF)算法、融合多源地理要素開展了近地面NO2濃度空間分布模擬研究。
對于空氣污染物濃度數據的指數級增長,采用深度學習方法對未來污染物濃度發(fā)展趨勢的預測更加高效。楊張婧等[8]提出一種時空特性的空氣質量預測算法,通過長短期記憶(LSTM)網絡構成Sequence to Sequence范式處理時間序列的變長輸入與輸出,獲取本地PM2.5時間序列規(guī)律,與神經網絡、回歸樹以及簡單的LSTM系列模型相比,取得了更好的預測效果。Prihatno等[9]利用時間序列數據建立了單密度層雙向長短期記憶(Bi-directional Long Short-Term Memory,BiLSTM)模型來預測室內環(huán)境中PM2.5濃度。史學良等[10]針對傳統(tǒng)的長短期記憶(LSTM)網絡對線性數據可能產生過擬合現象,提出改進的LSTM網絡,提高了模型的泛化能力與預測精度。這些模型利用數據統(tǒng)計、機器學習和深度學習等方法,解決了空氣污染物濃度預測的問題,在模型泛化、預測精度具有優(yōu)勢等。
針對目前研究沒有深入地挖掘上下文因素對空氣污染物濃度變化模式的影響,該文提出了一種上下文特征注入的空氣污染物濃度時間序列預測模型(Features Injected Gated Recurrent Unit,FI-GRU),利用深度置信網絡和門控循環(huán)單元(GRU)分別挖掘空氣污染物濃度數據的上下文特征和時間序列特征,并通過注入機制將上下文特征注入到時間序列特征中,生成新的融合特征。
時間序列是按照時間排序的一組隨機變量,它通常是在相等間隔的時間段內依照給定的采樣率對某種潛在過程進行觀測的結果。
空氣污染物數據由固定時間間隔采集而來,以當前時間點t為基準向前回溯Lb個時間步,序列公式如下:
Xt=(xt-Lb+1,xt-Lb+2,…,xt-1)
(1)
yt=xt
(2)
式中,xt為第t個用于預測的數據序列;Lb為回溯步長;yt為第t個時間點的預測值。
伴隨著空氣污染物濃度采樣數據產生的屬性數據稱之為上下文因素。論文主要討論動態(tài)上下文因素(季節(jié)、日期、星期、假日、時刻等)對空氣污染物的影響和作用,并根據動態(tài)上下文特征進行模型的訓練,并對空氣污染物濃度進行預測。
用Z表示空氣污染物上下文數據,Z=(Z(1),Z(2),…,Z(M))T。當前時間點t的上下文因素表示為:
(3)
(4)
式中,變量定義和常量符號與前面公式相同。
上下文特征注入的時間序列預測模型框架結構如圖1所示。該模型由四部分組成,第一部分為時間序列特征提取模塊,使用GRU提取空氣污染物濃度數據的時間序列特征;第二部分為上下文特征提取模塊,使用深度置信網絡提取空氣污染物濃度的上下文特征;第三部分為特征注入機制,將提取到的上下文特征注入到時間序列特征中,生成新的融合特征;第四部分為預測器,使用單層受限玻爾茲曼機(Restricted Boltzmann Machine,RBM)對生成的融合特征進行空氣污染物濃度預測。
圖1 上下文特征注入的時間序列預測模型框架
循環(huán)神經網絡(Recurrent Neural Networks,RNN)引入了時序的概念,但未解決時間序列過長導致的梯度下降和梯度爆炸問題,因此提出了循環(huán)神經網絡的變種長短期記憶神經網絡(LSTM)。在循環(huán)神經網絡可以處理時間序列優(yōu)點的基礎上增加遺忘門、輸入門、輸出門三個控制單元,解決神經網絡中長序列依賴的問題[11]。門控循環(huán)單元(GRU)在保留了長短期記憶網絡(LSTM)效果的同時使其內部結構更加簡單,它的效率更高。因此,該文使用GRU作為工具來挖掘空氣污染物濃度的數據的時間序列特征,其內部結構如圖2所示。
圖2 GRU循環(huán)單元內部結構
簡化后的門控循環(huán)單元GRU計算公式如公式(5)~(8)所示:
zt=σ(XtWxu+Ht-1Whu+bu)
(5)
Rt=σ(xtWxr+Ht-1Whr+br)
(6)
(7)
(8)
式中,Zt為更新門;Rt為重置門;Xt為t時的輸入向量;Ht-1為上一個時間步的輸出響應;W和b分別為權重矩陣和偏置矢量;σ為sigmoid激活函數;tanh為雙曲正切函數。GRU在每個時間步上都會生成一個隱藏狀態(tài)Ht,這個隱藏狀態(tài)也被看作是每一個時間步的記憶狀態(tài),允許信息沿網絡流動而不會流失或爆炸。
上下文因素與空氣污染物濃度之間存在著復雜的非線性關系,而深度置信網絡可以挖掘這些復雜的非線性關系。該文使用深度置信網絡作為工具提取空氣污染物上下文特征,其網絡結構如圖3所示。其中,輸入層負責將上下文因素預處理后輸入神經網絡;隱藏層是整個模型的核心部分,輸入的上下文因素在這里被逐層變換,并提取隱含的模式和特征;輸出層負責將前面隱藏層學習得到的模式和特征進行聚集和匯總,進行非線性加權變換得到相應的上下文特征。
圖3 深度置信網絡模型結構
深度置信網絡預測模型的每一個輸入節(jié)點都對應上下文因素向量中的一個上下文因素zi(zi∈Z),預測器的輸出節(jié)點對應上下文特征θ,其深度置信網絡提取模型可用公式(9)表示:
θ=φ(z·Wz+bz)
(9)
式中,z為上下文因素向量,z∈Rt×M;φ為tanh激活函數;Wz為權重矩陣;bz為偏置向量。zt為時間步t時刻的上下文因素;上下文特征Θ=(θ(1),θ(2),…,θ(k)),其中θ(k)為上下文因素特征的第k個元素,k為上下文因素向量的長度,k∈*。
如圖1所示,通過特征注入機制將深度置信網絡提取的空氣污染物濃度上下文特征注入到空氣污染物濃度時間序列特征中,其注入點位于循環(huán)神經網絡與預測器之間,這也是上下文特征注入模型中最為關鍵的地方。
將循環(huán)神經網絡學習得來的序列特征用h表示,h=(h(1),h(2),…,h(k)),其中h(k)為序列特征向量中第k個元素,k為序列特征向量的長度,k∈N*。在特征注入模型中,公式(9)所示的上下文特征向量和時間序列特征向量具有同樣的維度k,因此可通過softmax函數將上下文因素特征壓縮到(0,1)區(qū)間來度量時間序列特征的重要性,注入后生成融合特征A,如公式(10)所示:
A=softmax(Θ)°h
(10)
式中,°表示哈達瑪積;exp為自然常數;exp(Θ)表示對Θ向量每一個元素分別應用指數函數;h為時間序列預測模型學習到的序列特征。融合過程完成后,新的融合特征A=(a(1),a(2),…,a(k))被送到特征注入模型的預測器中進行預測,其中a(k)為融合特征向量的組成元素,公式所示如下:
(11)
(12)
式中,σ為sigmoid激活函數;Wa為權重矩陣;ba為偏置向量。
FI-GRU模型建立之后,使用優(yōu)化數據集對模型進行訓練和優(yōu)化。首先,將GRU網絡和深度置信網絡看作一個獨立的神經網絡模塊;然后,梳理這些模塊之間的激勵響應和誤差傳播關系,并使用反向傳播算法計算各個獨立模塊的前向激勵和響應誤差,并使用計算得到的參數梯度對所有參數進行更新;最后,將FI-GRU模型視為一個整體繼續(xù)使用反向傳播算法對其進行參數優(yōu)化,當整個模型的響應誤差不再下降或者小于預先設定的最小值時,所有模塊參數全部確定,FI-GRU模型隨之優(yōu)化完成。
實驗選用了中國環(huán)境監(jiān)測總站公布的西安市2017年1月至2021年7月共55個月的PM2.5污染物濃度數據,數據集涵蓋污染較為嚴重的秋冬春季節(jié)和污染較為輕微的春夏季節(jié)[12]。選取2017年1月至2019年11月共35個月的數據作為訓練集,2019年12月-2020年11月共12個月的數據作為驗證集,2020年12月至2021年7月共8個月的數據作為測試集。將季節(jié)、日期、星期、假日、時刻等數據進行標準化后作為空氣污染物濃度的上下文特征。
所有測試模型的預測準確性均通過三個指標進行評估,包括平均絕對誤差(MAE)、平均絕對百分比誤差(MAPE)和均方根誤差(RMSE)[13]。計算公式如下所示:
(13)
(14)
(15)
預測的數據序列是由Lb個過去的數據組成的新序列,其中Lb是回溯步驟的個數。當Lb較大時,數據中包含的序列之間的依賴性增強。當Lb較小時,預測序列變短,序列之間的因果關系不完整,難以提取,準確性較差,因此模型中需要確定一個相對最優(yōu)的回溯步長[14]。采用逐步貪婪坐標下降法搜索和評估FI-GRU模型的回溯步長,回溯步長從1步開始,逐漸增加到12步。將預處理后的數據序列發(fā)送到模型進行訓練。訓練完成后,使用MAPE、MAE和RMSE三個誤差指標來評價模型的預測效果。其中,采樣間隔為1小時的數據訓練模型的預測結果如表1所示。
表1 不同回溯步長下FI-GRU模型的預測誤差
由表中數據可以看出,在回溯步長為9的時候各項誤差最小,即使用歷史9小時數據預測未來1小時的污染物濃度準確度最高。因此,FI-GRU模型使用采樣間隔為1小時的數據訓練和預測時回溯步長固定為9步。
根據空氣污染物濃度數據變化情況,冬季是空氣污染主要管控季節(jié),因此選擇冬季和春季預測結果來驗證模型。將測試集數據輸入訓練好的FI-GRU模型中,得到2020年8月至2021年7月全部的預測結果。PM2.5污染物濃度預測結果與真實值的曲線擬合圖形如圖4所示。2020年冬季的PM2.5污染物濃度預測如圖4(a)所示,2021年春季的PM2.5污染物濃度預測結果如圖4(b)所示。
(a)2020冬季
由圖可知,冬季和夏季的PM2.5污染物濃度變化模式有著明顯的不同,但FI-GRU模型能夠精準識別不同季節(jié)的變化規(guī)律和特征,并趨近真實的濃度數值。即使在發(fā)生劇烈變化的地方,也能準確擬合變化趨勢,表現出了較強的適應性和有效性。
工作日出行時間相對集中,變化趨勢有明顯的時間屬性,而假日出行時間相對分散,變化趨勢的時間屬性相對減弱。分別選取2020年冬季與2021年夏季中兩天的數據作為對比節(jié)假日和工作日的預測。預測和評估結果如圖5所示,節(jié)假日的PM2.5污染物濃度預測結果如圖5(a)和(c)所示,工作日的PM2.5污染物濃度預測結果如圖5(b)和(d)所示。圖中橫軸表示每日時間;縱向分為上、下兩部分,上面部分為預測結果與真實值的曲線擬合圖形,下面部分表示為每一個時間點預測值和真實值的絕對誤差(AE)。
(a)冬季假期
從圖中可以看出,節(jié)假日和工作日的PM2.5污染物濃度變化趨勢不同,但FI-GRU模型能夠精準識別出其發(fā)展變化的規(guī)律和特征,尤其是在6:00-22:00之間的白天時段,PM2.5濃度預測結果都緊緊圍繞真實值小幅波動,且FI-GRU模型的絕對誤差也處于合理范圍之內。
選取長短期記憶人工神經網絡(LSTM)[15]、門控循環(huán)單元(GRU)[16]、雙向長短期記憶人工神經網絡(BiLSTM)等模型作為對比模型,對比同一天內各模型結果,將各模型預測結果和真實數據疊加顯示如圖6所示。節(jié)假日的PM2.5污染物濃度預測結果如圖6(a)和(c)所示,工作日的PM2.5污染物濃度預測結果如圖6(b)和(d)所示。
(a)冬季假期
從圖中可以看出,與對比模型的預測結果相比,FI-GRU模型效果最好,能夠最大程度地逼近空氣污染物濃度變化的實際狀況。對2020年8月至2021年7月全部的預測結果進行統(tǒng)計計算,記錄MAPE、MAE和RMSE三個誤差指標。其中,各模型的誤差指標如表2所示。
表2 不同模型PM2.5濃度預測的誤差
從表中數據可以看出,提出的FI-GRU模型的三個誤差指標都取得了最小的值,表明該模型的預測值更加準確,能夠有效預測PM2.5濃度變化的趨勢,充分說明了FI-GRU模型的正確性、有效性和適應性。
結合時間序列和上下文因素,該文提出了一種上下文特征注入的空氣污染物濃度預測模型,通過對空氣污染物時間序列特征和上下文特征的提取,利用特征注入融合機制將這兩種特征進行融合,最后將融合后的新特征送入預測器,實現了對空氣污染物濃度的準確預測。
實驗結果表明,提出的FI-GRU模型在不同季節(jié)、不同模式下均能準確提取空氣污染物的濃度變化趨勢,預測精度高于LSTM、GRU、BiLSTM等對比模型。通過上下文特征的注入融合,可有效提高預測精度,實現更加準確的空氣污染物濃度預測,對提升城市空氣質量管理水平和優(yōu)化空氣污染治理措施具有重要的理論意義和參考價值。未來的優(yōu)化會考慮空間、氣象等其他相關因素,并對每種特征在預測中的權重進行更深入的研究。