賈春光
(云南財(cái)經(jīng)大學(xué)統(tǒng)計(jì)與數(shù)學(xué)學(xué)院,昆明650000)
近年來(lái),中國(guó)工業(yè)化、城市化以及經(jīng)濟(jì)的快速發(fā)展,導(dǎo)致中國(guó)各大城市的空氣污染越來(lái)越嚴(yán)重,特別是空氣中的PM2.5 已經(jīng)嚴(yán)重影響到了人們的正常生活。PM2.5,也稱細(xì)顆粒,通常指的是直徑小于2.5 微米以下的顆粒物。
針對(duì)PM2.5 的建模和預(yù)測(cè)問(wèn)題,Xiao Feng[1]用人工神經(jīng)網(wǎng)絡(luò)(ANN)去預(yù)測(cè)PM2.5——基于空氣運(yùn)動(dòng)軌跡的地理模型,利用小波變換將PM2.5 的時(shí)間序列拆分成規(guī)律性更強(qiáng)的子序列,在利用ANN 分別對(duì)它們訓(xùn)練獨(dú)立的模型。王靜等人[2]通過(guò)支持向量機(jī)回歸算法對(duì)MODIS 遙感氣溶膠濃度分析數(shù)據(jù)與AERONET 地面?zhèn)鞲芯W(wǎng)絡(luò)的PM2.5 濃度數(shù)據(jù),進(jìn)行了擬合運(yùn)算,減少了空-地?cái)?shù)據(jù)不匹配的問(wèn)題:這種利用衛(wèi)星數(shù)據(jù)直接讀取及預(yù)測(cè)大氣顆粒物濃度的變化趨勢(shì)的方法,對(duì)遙感大氣預(yù)測(cè)平臺(tái)的整合具有重要意義。江蘇大學(xué)孫永霞[3]將關(guān)注點(diǎn)放在各個(gè)影響因子與全年霧霾總天數(shù)之間的關(guān)系上,提出了一種主成分分析法并輔以BP 神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)模型,一定程度上能準(zhǔn)確預(yù)測(cè)全年總霧霾天數(shù),對(duì)政府治理成果、重大政策制定具有指導(dǎo)意義。成都信息工程大學(xué)顏玉倩,朱克云等人[4]針對(duì)PM2.5 濃度預(yù)測(cè),應(yīng)用逐步回歸對(duì)成都以及附近地區(qū)的一次霧霾發(fā)生進(jìn)程進(jìn)行測(cè)試,較為準(zhǔn)確地預(yù)測(cè)了霧霾等級(jí)。
在國(guó)外,西班牙馬德里大學(xué)(Madrid)的Esteban Pardo(B)和Norberto Malpica 基于深度神經(jīng)網(wǎng)絡(luò)[5],應(yīng)用LSTM(Long Short-Term Memory Networks)模型構(gòu)建了用于預(yù)測(cè)未來(lái)24 小時(shí)NO2濃度的預(yù)測(cè)系統(tǒng),包括連續(xù)12 個(gè)小時(shí)的污染物濃度值作為訓(xùn)練系統(tǒng)輸入,包含兩個(gè)LSTM 層,其次是兩個(gè)Dense 層,LSTM 層含有512個(gè)隱藏層單元,總的測(cè)試RMSE 是10.54ug/m3,并比較了對(duì)應(yīng)的CALIOPE 預(yù)測(cè)系統(tǒng)。美國(guó)加州伯克利大學(xué)(The University of California,Berkeley)的Vikram Reddy等人[6]基于北京污染與氣象信息的時(shí)間序列數(shù)據(jù),利用LSTM 模型基于遞歸神經(jīng)網(wǎng)絡(luò)(RNN)作為預(yù)測(cè)未來(lái)污染物對(duì)的框架[7],分析大規(guī)模的長(zhǎng)時(shí)間序列數(shù)據(jù),提出相關(guān)的序列依賴性,并訓(xùn)練特定的規(guī)模。
本文將傳統(tǒng)的時(shí)間序列模型和LSTM(長(zhǎng)短記憶網(wǎng)絡(luò))模型引入到PM2.5 的預(yù)測(cè)之中,并對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行了分析和總結(jié)。
傳統(tǒng)的時(shí)間序列預(yù)測(cè)方法大都基于統(tǒng)計(jì)理論,通過(guò)構(gòu)建適當(dāng)?shù)臄?shù)學(xué)模型來(lái)擬合歷史時(shí)間序列曲線,而后依據(jù)所建立的模型來(lái)做預(yù)測(cè)。本文主要介紹的是ARIMA 模型。
求和自回歸平均模型的公式如下:

具有如上結(jié)構(gòu)的模型稱為求和自回歸平均模型,簡(jiǎn) 記 ARIMA (p,d,q) , 其 中 ?d=(1-B)d;Φ(B)=1-φ1B-…-φpBp,為平穩(wěn)可逆ARMA(p,q)模型的自回歸系數(shù)多項(xiàng)式;Θ(B)=1-θ1B-…-θqBq,為平穩(wěn)可逆ARMA(p,q)模型的移動(dòng)平滑系數(shù)多項(xiàng)式。
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)領(lǐng)域中的一個(gè)分支,它的主要目的是從大量的數(shù)據(jù)中找到某種規(guī)律。深度學(xué)習(xí)強(qiáng)調(diào)從連續(xù)的層中進(jìn)行學(xué)習(xí),是多層級(jí)聯(lián)的層級(jí)結(jié)構(gòu),每一層中許多非線性單元用于特征抽取和轉(zhuǎn)換,下一層的輸入是上一層的輸出,每深一層表示對(duì)數(shù)據(jù)更深的抽象。
近幾年,深度學(xué)習(xí)在實(shí)踐中,尤其是人工智能技術(shù)方面取得了革命性的突破和進(jìn)展,已經(jīng)被廣泛應(yīng)用于圖像分類、語(yǔ)音識(shí)別、手寫文字轉(zhuǎn)錄、機(jī)器翻譯、語(yǔ)音轉(zhuǎn)換、自動(dòng)駕駛等各個(gè)領(lǐng)域,在這些方面的表現(xiàn)深度已經(jīng)可以媲美人類,甚至超越人類。
在現(xiàn)實(shí)生活中,有一種數(shù)據(jù)是與先后順序有關(guān)系的,如語(yǔ)音數(shù)據(jù)、翻譯的語(yǔ)句等。對(duì)于序列數(shù)據(jù),可以嘗試在隱藏層中加上一層自循環(huán)層,這就形成了循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Natural Network,RNN),它的基本機(jī)構(gòu)如圖1。

圖1 循環(huán)神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)
其中X 是輸入的變量,U 是輸入到隱含層的權(quán)重矩陣,W 是狀態(tài)到隱含層的權(quán)重矩陣,S 為狀態(tài),V 是隱含層到輸出層的權(quán)重矩陣,O 是輸出的結(jié)果[13]。從圖1 不難看出,它的共享參數(shù)方式是各個(gè)時(shí)間節(jié)點(diǎn)對(duì)應(yīng)的W、U、V 都是不變的,通過(guò)這種方法實(shí)現(xiàn)參數(shù)共享,同時(shí)大大降低參數(shù)的數(shù)量。
長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)是一種特殊的RNN,它能夠?qū)W習(xí)長(zhǎng)時(shí)間依賴。它們由Hochreiter&Schmidhuber(1997)提出,后來(lái)由很多人加以改進(jìn)和推廣[13]。
LSTM 的循環(huán)結(jié)構(gòu)如圖2。

圖2 LSTM循環(huán)神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)
其中帶箭頭的黑線表示數(shù)據(jù)流向,輸入的數(shù)據(jù)為向量形式,粉紅色圓圈表示兩個(gè)數(shù)據(jù)所做的向量操作,黃色方框表示數(shù)據(jù)向量要做的映射,黑線分成兩個(gè)表示數(shù)據(jù)向量有兩個(gè)用處。
本文中用到了三個(gè)常用的評(píng)價(jià)指標(biāo):均方誤差根(RMSE)、平均絕對(duì)誤差(MAE)和平均絕對(duì)百分比誤差(MAPE)。三個(gè)指標(biāo)的評(píng)價(jià)公式如下:

其中,n 為測(cè)試樣本的總量,yi為第i 個(gè)數(shù)據(jù)點(diǎn)的真實(shí)值,為第i 個(gè)數(shù)據(jù)點(diǎn)的預(yù)測(cè)值。
本次數(shù)據(jù)來(lái)源于中國(guó)質(zhì)量分析監(jiān)測(cè)平臺(tái),數(shù)據(jù)集的詳細(xì)情況見(jiàn)表1。

表1 空氣質(zhì)量數(shù)據(jù)集信息
該數(shù)據(jù)集一共有1530 個(gè)時(shí)間點(diǎn)的數(shù)據(jù),涵蓋了2015 年1 月1 日開(kāi)始到2019 年3 月10 日結(jié)束時(shí)昆明市空氣質(zhì)量指數(shù)信息。每個(gè)時(shí)間點(diǎn)以日為單位。實(shí)驗(yàn)中將最后的153 個(gè)時(shí)間點(diǎn)的數(shù)據(jù)取出來(lái)作為測(cè)試點(diǎn),來(lái)對(duì)模型進(jìn)行測(cè)試。
本文主要是針對(duì)PM2.5 進(jìn)行建模和預(yù)測(cè),首先看一下PM2.5 濃度在數(shù)據(jù)集中的表現(xiàn)。從圖3 中可以看出,這是一個(gè)有周期性規(guī)律的時(shí)間序列,并且各觀測(cè)點(diǎn)間的方差似乎是穩(wěn)定的。

圖3 昆明市2015年到2019年每日PM2.5濃度
接下來(lái)看一下昆明市PM2.5 濃度后一日相比于前一日的增長(zhǎng)率,如圖4。

圖4 昆明市2015年到2019年每日PM2.5濃度的增長(zhǎng)率
其中,上述藍(lán)色的點(diǎn)代表后一天比前一天PM2.5的濃度高,綠色的點(diǎn)代表后一天比前一天PM2.5 的濃度低,從圖中可以看出,PM2.5 的增長(zhǎng)率是下降的天數(shù)的多,上升的天數(shù)少,說(shuō)明昆明市的空氣質(zhì)量正在好轉(zhuǎn)。
最后看一下昆明市PM2.5 濃度后一年相比前一年的增長(zhǎng)率,如圖5。

圖5 昆明市2015年到2019年每年P(guān)M2.5濃度的增長(zhǎng)率
從圖5 可以看出,從2015 年到2018 年之間,昆明市PM2.5 濃度的年增長(zhǎng)率都是負(fù)的,說(shuō)明PM2.5 的濃度每年都會(huì)減少,但近幾年下降的幅度都在不斷減少。
建立ARIMA 模型的步驟包括:
(1)確保時(shí)序是平穩(wěn)的;
(2)選定可能的p 值和q 值;
(3)擬合模型;
(4)評(píng)估模型;
(5)預(yù)測(cè)。
首先在拿到一組數(shù)據(jù)后,需要判別其是否平穩(wěn),本文使用的是ADF 檢驗(yàn),即單位根檢驗(yàn),檢驗(yàn)結(jié)果顯示p值為0.01,序列是平穩(wěn)的。
在得到平穩(wěn)的時(shí)間序列后,可以通過(guò)ACF 圖(自相關(guān)函數(shù)圖)和PCAF 圖(偏自相關(guān)函數(shù)圖)來(lái)選擇備選模型,確立模型各個(gè)參數(shù),但這種觀察方式,有時(shí)會(huì)帶來(lái)極大的誤差,使判別模型的預(yù)測(cè)效果并不是十分的理想,因此,在定階的過(guò)程中常常使用AIC 或者是BIC 的方式,本文采用了AIC 自動(dòng)定階算法,算法的思想是通過(guò)判斷不同的p 和q 的取值,從而算出不同的AIC,找到使AIC 值最小的p 和q 的組合,即為ARIMA模型的最優(yōu)階數(shù)。最后,函數(shù)選定ARIMA(2,0,3)。
最后直接將模型應(yīng)用到測(cè)試序列中,函數(shù)返回了模型的2 個(gè)回歸系數(shù)分別為1.263、-0.2767;3 個(gè)移動(dòng)平均系數(shù)分別為-0.5385、-0.2615、-0.072。最終ARIMA(2,0,3)的表達(dá)式如下:

模型確定后,可以用RMSE、MAE、MAPE 來(lái)評(píng)價(jià)模型,它們的值分別為8.657833、6.528301、25.4%。
最后看一下模型在測(cè)試時(shí)間數(shù)據(jù)上的表現(xiàn),如圖6。

圖6 ARIMA模型的預(yù)測(cè)值和真實(shí)值
從圖6 可以看出,預(yù)測(cè)的效果并不是很理想。測(cè)試數(shù)據(jù)模型的RMSE、MAE、MAPE 分別為8.737107、7.182098、36.46%。
本文構(gòu)建的LSTM 模型主要是在Keras 平臺(tái)上進(jìn)行的。
(1)單變量預(yù)測(cè)
首先只用PM2.5 這一列數(shù)據(jù)進(jìn)行建模,接下來(lái)對(duì)LSTM 模型各個(gè)超參數(shù)進(jìn)行如表2 設(shè)置.

表2 單變量LSTM 模型的參數(shù)設(shè)置
批次大小表示每次迭代需要的樣本數(shù)量,迭代的次數(shù)可以看做訓(xùn)練集學(xué)習(xí)的次數(shù),時(shí)間窗口可以看做滯后階數(shù),當(dāng)時(shí)間窗口為1 時(shí)表示模型用上一時(shí)刻的數(shù)據(jù)去訓(xùn)練下一時(shí)刻的數(shù)據(jù),輸出維度表示LSTM 層神經(jīng)元的個(gè)數(shù)。
其中激活函數(shù)RELU 的表達(dá)式如下:

在擬合好模型后,模型在測(cè)試樣本上的表現(xiàn)如圖7。

圖7 單變量LSTM模型的預(yù)測(cè)值和真實(shí)值
從圖7 可以看出來(lái),預(yù)測(cè)效果相較于ARIMA 模型要好一些。測(cè)試集的RMSE、MAE、MAPE 分別為6.59、4.96、23.7%。比ARIMA 模型的精度要高。
通過(guò)圖7 可以發(fā)現(xiàn),測(cè)試結(jié)果與原始數(shù)據(jù)出現(xiàn)了“平移錯(cuò)位”,出現(xiàn)了這種情況的主要原因是模型沒(méi)有抓住原始數(shù)據(jù)“季節(jié)性”的特點(diǎn)。因此,改變look_backs設(shè)定值,表3 展示了不同設(shè)定值的測(cè)試數(shù)據(jù)的誤差。

表3 不同時(shí)間窗口模型的評(píng)價(jià)指標(biāo)
當(dāng)時(shí)間窗口為3 或者12 的時(shí)候,預(yù)測(cè)的結(jié)果較好。當(dāng)時(shí)間窗口大于12 時(shí),預(yù)測(cè)精度就會(huì)有一個(gè)明顯的降低。
(2)多變量預(yù)測(cè)
本文收集的數(shù)據(jù)還有其它空氣質(zhì)量指標(biāo),例如AQI(空氣指數(shù))、PM10(可吸入顆粒物)、SO2(二氧化硫)、CO(一氧化碳)、NO2(二氧化氮)和O3_8h(臭氧每8 時(shí)平均濃度),這些指標(biāo)或多或少的也會(huì)影響PM2.5的濃度。
在建立模型前,需要對(duì)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理,本文采用的是最大值-最小值法,公式如下:

其中xmax為樣本變量中的最大值,xmin為樣本變量中的最小值。
接下來(lái)對(duì)這些數(shù)據(jù)應(yīng)用LSTM 模型,參數(shù)設(shè)置如表4。

表4 多變量LSTM 模型的參數(shù)設(shè)置
在擬合好模型后,最后看一下模型在測(cè)試集的表現(xiàn),如圖8。

圖8 多變量LSTM模型的預(yù)測(cè)值和真實(shí)值
從圖8 可以看出,多變量LSTM 模型沒(méi)有了“平移錯(cuò)位”的現(xiàn)象,預(yù)測(cè)趨勢(shì)也與原始數(shù)據(jù)相對(duì)吻合,但誤差較大。造成這種誤差偏大的原因可能是LSTM 層的維度造成的,不同維度模型的精度如表5。

表5 不同維度模型的評(píng)價(jià)指標(biāo)
從表5 可以看出,隨著輸出維度的增加,模型的精度在逐步降低。
本文基于昆明市的空氣質(zhì)量監(jiān)測(cè)數(shù)據(jù),將最近流行的深度學(xué)習(xí)內(nèi)容應(yīng)用到PM2.5 濃度的預(yù)測(cè)中,本文從單變量和多變量?jī)蓚€(gè)方面上應(yīng)用LSTM 模型,單變量LSTM 模型的誤差較小,但會(huì)出現(xiàn)“平移錯(cuò)位”的現(xiàn)象;多變量LSTM 模型不會(huì)出現(xiàn)“平移錯(cuò)位”的現(xiàn)象,但誤差相對(duì)較大。LSTM 模型很好地解決了梯度消失和梯度爆炸的問(wèn)題,相比傳統(tǒng)的時(shí)間序列模型具有較好的學(xué)習(xí)能力,從而使得模型的預(yù)測(cè)效果更好。