周杉杉,李文靜,喬俊飛
(1. 北京工業大學 信息學部,北京 100124; 2. 計算智能與智能系統北京市重點實驗室,北京 100124)
近年來伴隨我國多個城市空氣重污染事件的發生,以細顆粒物(PM2.5)為特征污染物的區域性大氣環境問題逐漸引起了人們的廣泛關注[1]。2012年環保部發布了新修訂的《環境空氣質量標準》(GB3095—2012),將PM2.5納入空氣質量監測范圍。2013年國務院發布了《大氣污染防治行動計劃》,制定了明確的大氣污染防治目標。但截至2016年中國環境狀況公報發布的數據,全國338個地級及以上城市只有84個城市空氣質量達標,以PM2.5為首要污染物的天數達到80.3%。我國城市空氣污染是長期形成的復合型大氣污染,治理工作還需要我們長期不懈的努力。
據研究PM2.5可以滲透到人的肺部和支氣管,因此長期暴露于PM2.5環境中會增加呼吸系統和心血管疾病的發病率和死亡率[2]。通過對太陽輻射的吸收和散射,PM2.5也會對全球氣候變化產生影響,同時會影響能見度,進而影響我們的日常生活[3]。因此,對PM2.5進行有效的預測,及時采取防控措施有重要意義。但是PM2.5的濃度既和污染源有關,又受氣象條件的影響,使得預測難度較大。
目前空氣質量預測方法主要有機理分析和統計模型兩種。機理分析法通過研究PM2.5的形成機理,復雜的物理、化學變化來模擬其擴散過程,進而預測PM2.5的濃度。比如,Saide等[4]利用化學傳輸模型,根據示蹤物CO濃度與PM10/PM2.5的線性關系得到PM10/PM2.5的預測濃度,其中模型所需的排放源清單的準確性對預測結果有顯著影響;Riccio等[5]利用歐拉模型和拉格朗日模型對意大利南部某站點的PM2.5濃度變化情況進行了模擬,得出了當地PM2.5的濃度不但受本地排放源的影響,同時與周邊區域的輸送有關的結論。但是,大氣環境是動態變化的非線性過程,理論分析復雜,機理分析建模所需的氣象邊界條件、排放源清單等參數難以取得,模型的適用性較難滿足,不適合日常PM2.5濃度的預測。
相比于機理分析方法,統計模型更容易通過數據擬合方法建立預測模型。Chen等[6]使用小波分解和逐步回歸結合的方法來預測PM10的濃度,取得了不錯的預測效果;Elbayoumi等[7]以室外 PM10、PM2.5、CO、CO2濃度、風速、氣壓和相對濕度作為輸入,建立多元線性回歸模型(multiple linear regression,MLR)預測室內 PM10和PM2.5的濃度。而PM2.5濃度變化是非線性過程,對其建立線性模型效果并不理想。
人工神經網絡(artificial neural network,ANN)因其強大的非線性映射能力、自組織自學習能力,被廣泛用于非線性系統的建模。Ordieres等[8]利用多層感知器和徑向基函數(radial basis function,RBF)神經網絡預測PM2.5濃度,發現RBF神經網絡預測結果更精確;Xu等[9]利用回聲狀態網絡預測上海市區PM2.5日均濃度,以更少的輸入取得了比RBF更好的預測效果,但是預測精度仍需進一步提高。由于神經網絡是“黑箱模型”,可解釋性差,模糊系統則可以利用模糊語言處理信息,表達能力較強,因此結合兩種方法的優勢對PM2.5濃度進行預測成為提高預測精度的有效方法;Mishra等[10]以 CO、NO2、O3、SO2、上一時刻的PM2.5濃度、溫度、風速、相對濕度和露點溫度作為輸入,利用Takagi Sugeno型模糊神經網絡預測當前時刻的PM2.5濃度,取得了比MLR和ANN更好的效果;Qiao等[11]利用模糊神經網絡建立PM2.5小時預測模型,并采用二階梯度下降算法訓練網絡,預測效果比ESN和化學傳輸模型都要好。另外,PM2.5的濃度擴散是一個非線性動態變化的過程,受到時滯的影響。相對于前饋神經網絡,遞歸神經網絡具有動態元素,內部的反饋連接可用于記憶歷史信息,更適合處理非線性動態過程。因此,本文提出采用遞歸模糊神經網絡(recurrent fuzzy neural network,RFNN)預測PM2.5濃度。
對于神經網絡而言,網絡結構的大小是影響其性能的重要因素,結構優化方法主要有增長型、修剪型和增長修剪相結合等方法。而很多方法在判斷是否增刪神經元時需要預先設定閾值,這些閾值的設定通常憑借經驗多次試湊,不能保證找到最優值[12-14]。針對以上問題,本文提出一種神經網絡結構自組織方法,采用ε準則和偏最小二乘法(partial least squares,PLS)定義增長和刪減指標,使用盡量少的閾值,實現規則化層神經元的自動增刪,同時采用學習率自適應的梯度下降算法對網絡參數進行優化,并將該自組織遞歸模糊神經網絡用于PM2.5濃度預測實驗。
RFNN結合了神經網絡與模糊系統的優點,引入的遞歸環節可以增加網絡的動態記憶性能。文中RFNN的結構如圖1所示。

圖 1 遞歸模糊神經網絡結構Fig. 1 Structure of recurrent fuzzy neural network
網絡隸屬函數層采用高斯函數對輸入變量進行模糊化處理,如式(1)所示。在規則層引入反饋環節,通過sigmoid函數將上一時刻規則層的輸出作為當前規則層的一個輸入,計算過程如式(2)~(4)所示。去模糊化層和輸出層如式(5)~(6)所示。式中:uij(t)為t時刻第i個輸入對應的第j個隸屬函數的輸出,cij(t)和σij(t)分別為對應隸屬函數的中心和寬度。


式中:?j(t)是t時刻第j個規則層神經元的輸出,?j(t-1)表示前一時刻規則層的輸出,fj是對應的sigmoid函數,hj是內部變量,λj(t)是t時刻遞歸環節的反饋權值。

式中:y(t)是t時刻神經網絡的輸出,wj(t)是t時刻輸出層與前一層的連接權值,是去模糊化層的輸出。
為了提高網絡的收斂性,本文采用學習率自適應的梯度下降算法調整遞歸模糊神經網絡的參數。

神經網絡的結構是影響其性能的關鍵因素之一,本文根據模糊規則的ε完整性準則和偏最小二乘法實現網絡規則層的自組織,結構如圖2所示。

圖 2 自組織遞歸模糊網絡結構Fig. 2 Structure of self-organizing RFNN
1)定義判斷誤差e。為了減小異常數據的影響,文中采用滑窗方法:

式中:M是滑窗寬度。若誤差e變大,則說明網絡泛化性能變差,需要增加模糊規則或者修正參數。
因此,如果滿足條件:

則說明當前網絡誤差變大,現有規則不能有效覆蓋輸入數據,需要增加規則層神經元(將規則層第n個神經元分裂為兩個)。新增神經元的初始參數設置為

式中:cnew(t)、σnew(t)和wnew(t)分別是新增神經元的中心、寬度和連接權值,cn(t)和σn(t)是第n個神經元的中心和寬度,x(t)是當前輸入樣本,?new(t)是新增神經元的輸出。
模糊神經網絡規則層的刪減一般根據規則層神經元對于輸出層神經元的影響大小來判斷。這種刪減也可以理解為一種數據的降維。因此,基于數據降維的思想,本文采用偏最小二乘算法實現規則層神經元的修剪。偏最小二乘算法的一個顯著特點就是允許在樣本點個數少于變量個數的情況下進行回歸分析。由于滑窗寬度有限,可能出現滑窗內樣本個數少于規則層神經元個數(即變量個數)的情況,所以采用PLS算法正好解決這一問題。以下是刪減過程的主要步驟:
首先判斷誤差 e,如果|e(t+1)|<|e(t)|,說明當前網絡性能較好。接下來通過PLS計算規則層神經元的回歸系數,刪除對輸出影響較小的神經元以避免網絡結構冗余。PLS主要計算步驟如下:
1)以滑窗內規則層神經元輸出作為自變量X,網絡輸出層神經元作為單因變量y。X和y經標準化后的矩陣分別記為E0和F0。
2)從E0和F0分別提取第1個成分t1和u1。提取成分時,t1與u1要盡可能多地攜帶原數據的信息且相關性最大,從而保證自變量成分t1對因變量成分u1的解釋性最強。如果第1個成分不能滿足精度要求,則用殘差矩陣E1和F1繼續提取第2個成分,直至提取的成分個數滿足算法的停止要求。

式中:T、P、E分別是自變量X的得分矩陣、負荷矩陣與殘差矩陣;U、Q、F分別是因變量y的得分矩陣、負荷矩陣與殘差矩陣;α是提取的成分個數。
3)通過檢驗交叉有效性確定最終提取的成分個數。首先從所有n個樣本點中除去第i個樣本點(i=1,2,···,n),用h個成分擬合一個回歸方程。將被除去的樣本點i代入該回歸方程,得到y在樣本點i上的擬合值。對i=1,2,···,n重復上述計算,則因變量y的擬合誤差平方和為

其次,將所有n個樣本點用于擬合含h個成分的回歸方程,記第i個樣本點的擬合值為,得到y的誤差平方和為

定義交叉有效性

通過計算回歸系數Rj,當規則層神經元的最小系數R小于閾值Rth時,則刪除該神經元。

若第j個神經元被刪除,則與第j個規則層神經元歐氏距離最近的神經元參數調整為

為驗證SORFNN模型的有效性,采用典型的非線性系統:

進行實驗驗證。其中,y(0)=0,y(1)=0,u(t)=sin(2πt/25)。非線性系統的模型為

因此SORFNN模型為3輸入1輸出,根據式(8)產生500個樣本,訓練數據采用前400組,后100組用于測試,為了驗證神經網絡的自組織結構變化,初始規則數選取較小值2。
圖3給出了訓練過程中規則層神經元個數的變化情況,最終神經元穩定在6個左右,表明網絡結構能夠動態優化,提高網絡性能。圖4和圖5分別給出了網絡訓練效果和測試效果。從圖中可以看出,網絡在訓練和測試階段與期望輸出都擬合較好。

圖 3 規則層神經元變化Fig. 3 Number variation of neurons in rule layer

圖 4 訓練效果Fig. 4 Training results

圖 5 測試效果Fig. 5 Test results
圖6是樣本的測試誤差圖,圖7是測試輸出與期望輸出擬合的散點圖。從圖中可以看出網絡測試誤差較小,測試輸出與期望輸出基本擬合在一條直線上。表1給出了SORFNN與動態模糊神經網絡 (dynamic fuzzy neural network,DFNN)[16]、廣義動態模糊神經網絡(generalized dynamic fuzzy neural network,GDFNN)[17]和基于本文自組織方法的自組織模糊神經網絡(self-organizing fuzzy neural network,SOFNN)的性能比較。

圖 6 測試誤差Fig. 6 Error of test

圖 7 測試散點圖Fig. 7 Scatter plot of test
從表1可以看出,SORFNN的測試RMSE為0.009 1,明顯小于其他算法。規則層神經元個數為6,結構較為緊湊。同時,該自組織算法計算時間明顯小于其他算法。對比結果表明SORFNN不僅能夠獲得較為精簡的網絡結構,而且性能同樣可以滿足要求。

表 1 不同算法網絡性能對比Table 1 Performance comparison of different algorithms
其中,均方根誤差RMSE和平均百分比誤差APE計算公式如下:

通過非線性系統辨識實驗,驗證了所設計的SORFNN模型的有效性,接下來將該模型用于同樣是非線性過程的實際PM2.5濃度的小時預測。
3.2.1 數據來源
PM2.5濃度預測和分析使用的數據一般有3種:地面監測站觀測數據、同期同地區的氣象觀測數據、高空遙感圖像。目前北京市已經建立了完善的空氣污染監測站,因此本次實驗選用易獲得的地面監測站數據和同期氣象數據,以北京市朝陽區某國控空氣質量監測站為研究對象,采集該站點的小時監測數據。具體數據集來源于微軟的城市計算項目[34],該數據集采樣時間為2014年5月1日—2015年4月30日,包含了4個季節的監測數據,樣本內容豐富具有代表性,采樣變量包括《環境空氣質量標準》(GB3095—2012)中規定的6 項常規監測項目 CO、NO2、SO2、O3、PM2.5、PM10和氣象變量溫度(T)、濕度(RH)、風向(WD)、風速 (WS)、氣壓 (P)、天氣 (W),刪除異常數據和缺失數據后獲得4 000組完整數據。實驗中先將樣本數據隨機化歸一化處理,然后選擇前3 000組用于網絡訓練并進行十折交叉驗證,輪流將其中9份用作訓練,1份作為測試,求其誤差均值。后1 000組用于網絡測試,并進行多次獨立實驗。這樣訓練樣本和測試樣本都包含了空氣質量較好和較差時的觀測數據,保證了樣本的多樣性。
3.2.2 特征提取
PM2.5的小時濃度與其他污染物和氣象條件密切相關,陳冠益等[18]的研究表明PM2.5濃度受溫度、相對濕度、風速風向、降雨的影響顯著。Zheng等[19]的研究表明不同時刻的天氣條件和SO2、NO2等污染物對PM2.5濃度影響較大。本文中選擇當前時刻的污染物變量(CO、NO2、SO2、O3、PM2.5和PM10)、當前時刻的氣象因子(溫度、濕度、風向、風速、氣壓和天氣)、下一時刻的預報氣象因子(溫度、濕度、風向、風速、氣壓和天氣)作為特征變量。考慮到特征變量比較多,且各個變量之間有一定相關性,若直接引入神經網絡預測模型會有信息冗余,造成模型復雜度變高,影響模型預測性能。所以,采用主成分分析方法進行特征變量提取,達到數據降維的目的。本文中取累計貢獻率大于0.85的變量,最終提取出8個主成分作為神經網絡預測模型的輸入。
3.2.3 實驗結果
實驗中神經網絡為8輸入1輸出,規則層初始神經元個數為4。預測模型的評價指標采用常用的均方根誤差RMSE、平均絕對誤差MAE、決定系數R2、一致性指數IA[7-8,28-29]。

式中:oi和分別是期望值和期望值的均值,pi和是預測值和預測值的均值。
圖8給出了網絡訓練過程中規則層神經元個數的變化情況,從圖中可以看出在訓練過程中神經網絡的結構是動態變化的,根據一段時間內樣本的分布情況,神經元實現了增刪調整,最終神經元個數為7個。圖9給出了網絡的測試效果,測試輸出與期望輸出擬合較好。圖10是SORFNN與DFNN、GDFNN、SOFNN、SORBF方法的預測誤差對比圖,DFNN的誤差在(–250,250)范圍內,GDFNN和SORBF的誤差都在(–150,250)之間,SOFNN 的誤差范圍是 (–100,250),SORFNN的誤差則在(–150,150)范圍。相比其他方法,SORFNN的預測誤差范圍較小,分布也比較均勻集中。具體性能指標對比如表2所示。從表中可以看出,文中自組織方法有效地減小了預測模型的誤差,在擬合度等方面也有所提高,是一種有效的自組織方法。

圖 8 規則層神經元變化Fig. 8 Number variation of neurons in rule layer

圖 9 測試效果Fig. 9 Test results

圖 10 測試誤差Fig. 10 Test error

表 2 不同網絡性能對比Table 2 Performance comparison of different networks
通過分析PM2.5濃度變化的特點,本文提出采用自組織遞歸模糊神經網絡來預測PM2.5濃度。經過PCA提取特征變量,實現數據降維和信息去冗余,有利于提高模型預測性能。為了解決神經網絡結構優化問題,提出基于ε準則和偏最小二乘法的自組織方法,構建了自組織遞歸模糊神經網絡模型,同時采用學習率自適應的梯度下降算法對神經網絡的中心、寬度等參數進行訓練,建立了PM2.5濃度預測模型。通過非線性系統辨識實驗證明了該預測模型的有效性,最后將該模型用于實際問題PM2.5濃度的預測。實驗結果表明該模型不僅能夠獲得較為精簡的網絡結構,而且預測精度有所提高,為PM2.5濃度預測提供了一種有效的方法。