楊亞莉, 李智偉, 鐘衛(wèi)軍
(1.空軍工程大學(xué)基礎(chǔ)部, 西安, 710051; 2.宇航動力學(xué)國家重點實驗室, 西安, 710043)
隨著我國工業(yè)化和城鎮(zhèn)化的快速發(fā)展,大氣污染逐漸成為我們在發(fā)展過程中不可忽視的問題。作為衡量空氣質(zhì)量的重要指標(biāo),細(xì)顆粒物(PM2.5)顆粒小、活性強、空中停留時間長,易攜帶有毒有害物質(zhì),對人體和環(huán)境的危害更嚴(yán)重,導(dǎo)致老人、兒童等弱體質(zhì)人群易引發(fā)呼吸系統(tǒng)和心血管等疾病[1]。對PM2.5進(jìn)行準(zhǔn)確預(yù)測,有利于相關(guān)部門管理和治理空氣問題,并可為居民提供空氣污染預(yù)警,保障人民健康。
PM2.5的形成原因及影響其濃度的因素仍未有統(tǒng)一的認(rèn)識,同時各類影響因素具有一定的隨機性,增加了預(yù)測PM2.5濃度的難度[2]。目前,預(yù)測方法主要有確定性模型和統(tǒng)計模型。確定性模型是一種理論模擬方法,充分描述大氣污染物擴散和稀釋過程中復(fù)雜的物理和化學(xué)變化。Shorshani等[3]利用改進(jìn)的高斯模型模擬了公路旁PM2.5濃度的變化,Djalalova等[4]利用卡爾曼濾波法預(yù)測了PM2.5的濃度。統(tǒng)計模型是利用各類數(shù)值模擬技術(shù)對大量的空氣質(zhì)量數(shù)據(jù)與氣象數(shù)據(jù)進(jìn)行分析,進(jìn)而挖掘潛在規(guī)律的方法。彭巖等[5]提出了一種基于集成樹-梯度提升決策樹的PM2.5濃度預(yù)測模型;羅宏遠(yuǎn)等[6]開展了基于二層分解技術(shù)和改進(jìn)極限學(xué)習(xí)機模型的PM2.5濃度預(yù)測研究;張熙來等[7]基于單時間序列數(shù)據(jù)的動態(tài)調(diào)整模型來進(jìn)行預(yù)測。此外,還有大量基于機器學(xué)習(xí)的PM2.5濃度預(yù)測模型,如支持向量機[8]、隨機森林[9]、Seq2seq模型[10]。
傳統(tǒng)的統(tǒng)計模型方法是使用向量自回歸模型[11]、ARMAX[12]、ARIMAX[13]等模型,但這些方法只能提取到相對簡單的線性特征,難以有效提取出較為復(fù)雜的非線性特征。隨著機器學(xué)習(xí)研究的深入,深度學(xué)習(xí)模型以其強大的非線性特征提取和分析能力逐漸受到研究人員的青睞,其中,循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)[14]憑借其特殊的結(jié)構(gòu),在時間序列預(yù)測任務(wù)中展現(xiàn)了比其他模型更優(yōu)越的性能。但標(biāo)準(zhǔn)的RNN網(wǎng)絡(luò)在長序列訓(xùn)練過程中容易出現(xiàn)梯度消失和梯度爆炸的問題,為此,研究人員又提出了一類特殊的RNN網(wǎng)絡(luò)——長短期記憶神經(jīng)網(wǎng)絡(luò)(Long Short-Term Memory, LSTM)[15],進(jìn)一步提升了模型對時序數(shù)據(jù)的特征提取能力。為了解決信息超載問題,研究人員通過注意力機制,將計算資源分配給更重要的任務(wù)。基于注意力機制的深度學(xué)習(xí)網(wǎng)絡(luò)往往能比其初始網(wǎng)絡(luò)表現(xiàn)出更強的性能。
在以上研究的基礎(chǔ)上,本文提出了二向注意力循環(huán)神經(jīng)網(wǎng)絡(luò)模型(Two-Direction Attention-Based Recurrent Neural Network, TDA-RNN)。
本文建模和評估使用的是北京地區(qū)的空氣質(zhì)量數(shù)據(jù)集,來自于UCI機器學(xué)習(xí)倉庫[16]。該數(shù)據(jù)集記錄了2010年1月1日到2014年12月31日每小時的北京空氣質(zhì)量,共計43 824組,包含8項不同的氣象條件數(shù)據(jù):PM2.5濃度、露點、溫度、大氣壓強、風(fēng)向、風(fēng)速、累積雪量和累積雨量。
由于不同變量采用了不同的單位來衡量,為使模型在訓(xùn)練過程中能收斂,在建立模型前,需對原始數(shù)據(jù)進(jìn)行無量綱化處理:
(1)
為提高模型對多變量時序預(yù)測的精度,Yao Q等[17]設(shè)計了基于雙階段注意力的循環(huán)神經(jīng)網(wǎng)絡(luò)。受該模型的啟發(fā),本文設(shè)計了二向注意力循環(huán)神經(jīng)網(wǎng)絡(luò)TDA-RNN。
TDA-RNN主要處理流程分為4步:①首先通過類別注意力模塊,對輸入的多變量數(shù)據(jù)的不同變量進(jìn)行分析,從而獲取不同變量數(shù)據(jù)的類別注意力;②通過時序注意力模塊,對輸入的多變量數(shù)據(jù)的不同時間步進(jìn)行分析,從而獲取數(shù)據(jù)的時序注意力;③將時序注意力與類別注意力進(jìn)行融合,獲取每個輸入數(shù)據(jù)的注意力,更新輸入數(shù)據(jù)并對其進(jìn)行特征編碼;④將編碼后的特征矩陣與PM2.5濃度的歷史數(shù)據(jù)進(jìn)行融合,并將其輸入特征解碼器中進(jìn)行解碼,獲取最終的預(yù)測值。TDA-RNN的網(wǎng)絡(luò)結(jié)構(gòu)見圖1。
圖1 TDA-RNN模型結(jié)構(gòu)
TDA-RNN是一個多輸入單輸出模型,需輸入目標(biāo)序列的歷史數(shù)據(jù)Y′和多變量數(shù)據(jù)X,輸出為預(yù)測變量值Y,其中X=(x1,x2,…,xT)T=(x1,x2,…,xN),Y′=(y1,y2,…,yT),xt∈RN,xn∈RT,Y,yt∈R,N為影響目標(biāo)序列的因素的數(shù)量,T為模型輸入的時間窗口長度。因此,模型TDA-RNN可表示為需要通過訓(xùn)練獲得具體參數(shù)的非線性函數(shù)F:
Y=F(Y′,X)=F(y1,y2,…,yT,x1,x2,…,xN)
(2)
RNN是一類以序列數(shù)據(jù)為輸入的遞歸神經(jīng)網(wǎng)絡(luò),其在序列的演進(jìn)方向進(jìn)行遞歸的特性使得RNN在語音識別、機器翻譯、時間序列預(yù)測等方面性能顯著[18]。使用RNN進(jìn)行時間序列預(yù)測,模型獲取輸入序列數(shù)據(jù)(x1,x2,…,xT),其中xt∈Rn,n為與目標(biāo)序列相關(guān)的因素的數(shù)量,并將通過訓(xùn)練得到非線性函數(shù)f:
ht=f(ht-1,xt)
(3)
式中:ht∈Rm是RNN在t時刻的隱藏狀態(tài);m為隱藏狀態(tài)的序列長度。非線性函數(shù)f可以是標(biāo)準(zhǔn)RNN層、LSTM層或GRU層。
LSTM層不僅保留了標(biāo)準(zhǔn)RNN層的允許信息持久化的特性,還改善了RNN長期依賴問題。因此,使用LSTM層來為模型提取序列數(shù)據(jù)中的長期和短期依賴特征。每個LSTM單元通過忘記門ft、輸入門it和輸出門ot這3個門結(jié)構(gòu)來存儲和更新模型在t時刻的細(xì)胞狀態(tài)st和隱藏狀態(tài)ht:
(4)
式中:[ht-1;xt]∈Rm+n是由t-1時刻的隱藏狀態(tài)ht-1與t時刻輸入的xt拼接而成;Wf,Wi,Wo,Ws∈Rm×(m+n)和bf,bi,bo;bs∈Rm是網(wǎng)絡(luò)需要通過訓(xùn)練獲取的參數(shù);σ是sigmoid函數(shù),⊙是哈達(dá)瑪積運算。
(5)
(6)
(7)
(8)
(9)
利用新的LSTM層對更新后的多變量數(shù)據(jù)進(jìn)行編碼,獲取LSTM單元在不同時刻t的隱藏狀態(tài)ht,并將其作為編碼后的特征矩陣:
ht=f1(ht-1,xt)
(10)
為了提高模型的預(yù)測精度,將目標(biāo)序列的歷史數(shù)據(jù)與其他影響因素的歷史數(shù)據(jù)分別輸入模型中,并將特征編碼器獲得的特征矩陣與目標(biāo)序列的歷史數(shù)據(jù)融合后進(jìn)行初次解碼:
(11)
通過初次解碼獲得的yt-1可用于更新特征解碼器在時刻t的隱藏狀態(tài)Ht:
Ht=f2(Ht-1,yt-1)
(12)
使用LSTM單元作為非線性函數(shù)f2。Ht通過方程組(13)進(jìn)行更新:
(13)
對于獲得更新后的Ht,進(jìn)行最終解碼,獲得模型的預(yù)測值:
(14)
式中:w0∈Rm和b0∈R為網(wǎng)絡(luò)需要通過訓(xùn)練獲得的參數(shù);Y為模型最終的預(yù)測值。
將數(shù)據(jù)集按0.722 5∶0.127 5∶0.15的比例劃分為訓(xùn)練集、驗證集和測試集,設(shè)置損失函數(shù)為MSE,并使用Adam作為模型訓(xùn)練的優(yōu)化器。同時,為了減少不必要的訓(xùn)練時間,采用“早停法”,即當(dāng)模型在驗證集上的損失函數(shù)在20個輪次的訓(xùn)練中未發(fā)生下降時,模型停止訓(xùn)練。
為了衡量模型的預(yù)測性能,本文選擇擬合優(yōu)度R2、均方根誤差(RMSE)、平均絕對誤差(MAE)和平均絕對百分比誤差(MAPE)作為評價指標(biāo)。
(15)
(16)
(17)
(18)
在TDA-RNN網(wǎng)絡(luò)中,有2個主要的參數(shù),分別是時間窗口長度T和隱藏狀態(tài)的序列長度m。參數(shù)選擇的不同,會導(dǎo)致模型性能的差異。分別取T∈{3,6,12,18,24}和m∈{8,16,32,64}并進(jìn)行訓(xùn)練,實驗結(jié)果表明,當(dāng)m=64、T=12時,TDA-RNN模型的預(yù)測精度最高。
為了充分評估模型的預(yù)測性能,使用前向型神經(jīng)網(wǎng)絡(luò)(Back Propagation Neural Network, BPNN)、門控循環(huán)單元(Gate Recurrent Unit, GRU)模型、LSTM和滑動平均模型(Moving Average Model, MA)4種模型作為對照模型。BPNN模型是目前應(yīng)用最廣泛、構(gòu)造過程最規(guī)范的一類神經(jīng)網(wǎng)絡(luò);MA是模型參量法譜分析方法之一,也是現(xiàn)代譜估計中常用的模型;GRU和LSTM均為標(biāo)準(zhǔn)循環(huán)神經(jīng)網(wǎng)絡(luò)的改進(jìn)結(jié)構(gòu),是目前性能較好的時間序列預(yù)測模型。
表1為不同模型的評估結(jié)果,從中可以看出,文中提出的TDA-RNN模型不僅擬合優(yōu)度R2最低,而且RMSE、MAE和MAPE均遠(yuǎn)低于4個對照模型,說明其整體預(yù)測性能最優(yōu)。同時,由于該模型是在LSTM模型的基礎(chǔ)上構(gòu)建且性能明顯提高,說明本文提出的二向注意力機制對模型產(chǎn)生了正向作用;BPNN、GRU和LSTM的評估結(jié)果接近,其中GRU的性能略強于BPNN和LSTM;MA模型除了在MAPE這一評估參數(shù)上優(yōu)于LSTM模型外,在4項評估參數(shù)上均表現(xiàn)最差,說明線性模型由于其非線性特征提取能力較差,已難以滿足PM2.5濃度預(yù)測的需要。
表1 不同模型評估結(jié)果
圖2為不同模型在測試集上預(yù)測結(jié)果的APE箱線圖。根據(jù)圖2可知,TDA-RNN模型在測試集上預(yù)測值的相對百分比誤差的平均值和上邊緣值均低于對照模型,且預(yù)測值誤差的分布更集中。圖2從誤差分布方面進(jìn)一步說明了TDA-RNN在該數(shù)據(jù)集上有較高的預(yù)測性能。
圖2 不同模型預(yù)測結(jié)果的APE箱線圖
不同的參數(shù),可能導(dǎo)致深度學(xué)習(xí)模型的性能有較大的差異。本文對TDA-RNN模型的主要參數(shù)T和m進(jìn)行了參數(shù)敏感性實驗。改變T或m時,保持其他參數(shù)不變并對模型進(jìn)行訓(xùn)練,結(jié)果見圖3。
圖3 不同參數(shù)的模型在測試集上的RMSE
當(dāng)(T,m)=(3,32),(3,64),(6,64)時,TDA-RNN模型對任何輸入均有相同的輸出,此時模型的訓(xùn)練出現(xiàn)梯度消失現(xiàn)象,導(dǎo)致模型無法對數(shù)據(jù)集進(jìn)行有效的訓(xùn)練。
從圖3(a)可知,TDA-RNN在測試集上的RMSE隨參數(shù)m的變化是沒有規(guī)律的,甚至當(dāng)T=12和T=24時的規(guī)律幾乎是相反的。因此,m的選擇需要通過實驗來確定。
從圖3(b)可知,T的取值較大或較小,均會導(dǎo)致模型預(yù)測誤差的增大。這是因為當(dāng)T取值較小時,模型獲取的信息不充分,導(dǎo)致模型對缺乏足夠的信息來進(jìn)行預(yù)測;取值較大時,模型雖然獲取了更多的信息,但是過量的信息增加了模型對重要信息提取和分析的難度。
由于PM2.5形成原因復(fù)雜,在進(jìn)行PM2.5濃度預(yù)測時使用的其他氣象數(shù)據(jù)不一定與PM2.5濃度變化有直接關(guān)系,此時,對網(wǎng)絡(luò)來說相當(dāng)于引入了干擾因素。因此,檢測網(wǎng)絡(luò)的抗干擾性能是非常必要的。
首先隨機生成一列滿足正態(tài)分布的數(shù)據(jù),并將其作為一類氣象數(shù)據(jù)添加至模型的輸入X;然后在不調(diào)整模型參數(shù)和結(jié)構(gòu)的情況下,對TDA-RNN和其他對照模型進(jìn)行訓(xùn)練。
表2為不同模型在含有干擾因素的數(shù)據(jù)集上的評估結(jié)果。當(dāng)m=64、T=12時,TDA-RNN的4項評估指標(biāo)R2、RMSE、MAE和MAPE分別為0.934 9、20.15、11.43和0.246 3,均優(yōu)于對照模型。圖4為不同模型在測試集上預(yù)測結(jié)果的APE箱線圖。
表2 不同模型在含有干擾因素的數(shù)據(jù)集上的評估結(jié)果
注:*表示該模型是在含有干擾因素的數(shù)據(jù)集上訓(xùn)練。
根據(jù)圖4可知,在不調(diào)整模型參數(shù)和結(jié)構(gòu)的情況下,各類模型在含有干擾因素的數(shù)據(jù)集上的預(yù)測精度均有了不同程度的降低。其中,TDA-RNN和GRU在測試集上的預(yù)測誤差的上四分位數(shù)降低程度最低,說明模型抗干擾能力較強。通過對比TDA-RNN與LSTM模型的評估結(jié)果可知本文提出的二向注意力機制增強了模型的抗干擾能力。
針對現(xiàn)有PM2.5濃度預(yù)測模型效果不穩(wěn)定、泛化能力差的問題,本文提出了二向注意力循環(huán)神經(jīng)網(wǎng)絡(luò)TDA-RNN,實現(xiàn)了對PM2.5濃度的準(zhǔn)確預(yù)測。模型分別在時序和類別這兩個維度上使用注意力機制,實現(xiàn)了對計算資源的優(yōu)化分配,使TDA-RNN模型擁有更高的預(yù)測精度。注意力機制的合理使用,使模型對干擾因素有較強的識別能力,增強了模型的抗干擾能力。同時,TDA-RNN也適用于其他應(yīng)用場景的多變量時間序列預(yù)測,具有廣闊的工程應(yīng)用前景。