林開春 邵峰晶
摘要: 為更好的監(jiān)測空氣質量和重點污染源的濃度,本文基于隨機森林和神經網絡優(yōu)化,建立了預測空氣質量指數的模型。通過隨機森林算法進行特征選擇,選取最優(yōu)特征子集,用獲取的最優(yōu)特征子集訓練神經網絡模型,進行空氣質量指數預測,最后利用2017年氣象和污染物濃度數據驗證模型。驗證結果表明,預測結果與實際值的相關系數達到082,空氣質量等級預報的準確率提高到8056%。與其他模型的預測效果比較結果表明,該模型可發(fā)現(xiàn)與青島市空氣質量密切相關的特征因子,并有較高的空氣質量預測精度。該研究具有一定的實際應用價值。
關鍵詞: 隨機森林; 神經網絡; 空氣質量預測; 特征選擇
中圖分類號: TP18; X831文獻標識碼: A
隨著社會經濟的發(fā)展,大氣污染問題日益嚴重,青島市去年多次發(fā)生霧霾天氣,給人們的生活與健康造成了極壞的影響,因而研究空氣質量的預測方法,對大氣污染進行預測與防治意義重大。近年來,隨著大數據的興起及空氣質量和重點污染源實時在線監(jiān)測系統(tǒng)的建立,監(jiān)測數據日益完善,為使用數據挖掘方法建立空氣質量預測模型提供了基礎。人工神經網絡模型是一種不同于回歸模型的非線性智能統(tǒng)計模型,目前已將該類模型用于社會各領域的相關研究中。M.Boznark等人[1]通過建立多層感知器將人工神經網絡引入城市空氣質量預測模型中;李柞泳等人[2]首次使用BP神經網絡模型預測城市污染物SO2濃度;白曉平等人[35]研究了人工神經網絡模型比傳統(tǒng)回歸模型性能更好,但是傳統(tǒng)的人工神經網絡模型存在收斂速度慢、容易陷入局部最小值、網絡泛化能力弱等缺點;王儉等人[6]通過將遺傳算法與BP神經網絡相結合,建立了SO2濃度預測模型,優(yōu)化了收斂速度過慢的問題;LU W Z等人[7]使用主成分分析法和人工神經網絡算法相結合,提升了網絡的泛化能力和預報的準確率。由于空氣質量數據中污染物因子和氣象因子等維度的復雜多樣性,會對空氣質量預測模型的性能產生巨大的影響[8]。基于此,本文通過將隨機森林與神經網絡相結合的方法,建立了青島市空氣質量指數(air quality index,AQI)預測模型,解決了空氣質量預測過程中因數據特征空間維度過大而產生的維度災難問題以及不相關因子對模型預測精度的干擾問題,提升了空氣質量預測模型的預測精度,為環(huán)境監(jiān)測與治理提供實時準確的空氣質量信息。
1基于RF_ANN的AQI預測方法
1.1基于RF_ANN的AQI預測模型
將隨機森林算法與人工神經網絡模型相結合,降低了輸入因子的維度,減少了不相關維度對結果的干擾,實現(xiàn)對青島市空氣質量預測模型的優(yōu)化。
空氣質量指數是定量描述空氣質量狀況的指數,基于隨機森林和神經網絡優(yōu)化的空氣質量指數預測模型(RF_ANN)的具體操作流程如圖1所示。首先通過隨機森林算法對氣象因子和污染物因子進行重要性度量,選取最優(yōu)特征子集,隨后用人工神經網絡進行AQI指數的預測。
1.2隨機森林算法選取最優(yōu)特征子集
隨機森林是一種集成機器學習算法,具有分析復雜相互作用特征變量重要性的能力,對存在噪聲和缺失值的數據具有很好的魯棒性[9],且學習速度較快,可作為高維數據的特征選擇工具[1013]。
定義1袋外數據(outofbag,OOB):采用bootstrap方法[14]從數據集中隨機抽取K個自助樣本集,建立K個決策樹,未被抽到的樣本組成K個袋外數據。
定義2袋外數據誤差errOOB:輸入O個袋外數據,分類器會給出O個相應的分類結果。設隨機森林分類器分類錯誤的數目為X,袋外數據誤差=X/O。
定義3基于袋外數據分類準確率的變量重要性度量(mean decrease accuracy,MDA):假設隨機森林中有Ntree棵樹,袋外數據誤差記為errOOB1,把一個變量的取值變?yōu)殡S機數,改變后的隨機森林預測準確性為errOOB2,那么對于特征X的重要性度量為
MDA=∑(errOOB2-errOOB1)/Ntree
將某個特征的值加入隨機噪聲數據,袋外準確率降低越多,說明這個特征越重要。
隨機森林算法篩選輸入因子的步驟:
1)利用bootstrap采樣方法,在原始訓練數據集中隨機生成K個樣本集,在m個特征中選擇一個最具分類能力的特征進行節(jié)點分裂,生成多個決策樹[15]。
2)將生成的決策樹組成隨機森林,使用樹分類器投票的方法對新數據進行分類。
3)基于袋外數據分類準確率的變量重要性度量,計算每個特征變量的重要性,并按降序排序。
4)確定刪除比例,從當前特征變量中刪除相應比例中不重要的指標,從而得到一個新的特征集。
5)用新的特征集建立新的隨機森林,計算特征集中每個特征的重要性,并排序。
6)重復步驟2)~4),直到剩下m個特征。
7)根據得到的每個特征集和隨機森林,計算對應的袋外誤差errOOB,將袋外誤差最低的特征集作為最后選定的特征集。
1.3人工神經網絡預測模型
人工神經網絡(artificial neural networks,ANN)是從輸入空間到輸出空間的一個非線性映射[16]。BP神經網絡是近年應用較多的一種前饋神經網絡,結構簡潔,穩(wěn)定性好,BP神經網絡結構示意圖如圖2所示。BP學習算法主要通過訓練輸入和輸出樣本集使網絡達到給定的映射函數關系[17],網絡中含有R個神經元節(jié)點,隱含層神經元通常采用sigmoid激活函數。a1i為隱含層節(jié)點i的輸出,a2k為輸出層節(jié)點k的輸出,節(jié)點之間存在權值w。BP神經網絡模型的預測過程如下:
1)輸入樣本正向傳播。將選取的最優(yōu)特征子集對應的數據作為輸入數據輸入模型進行傳播。
2)輸出誤差逆向傳播。用通過模型正向傳播得到的實際輸出值與真實值進行對比,通過誤差逆向傳播對網絡模型進行校正。
3)循環(huán)訓練。對BP神經網絡模型的輸入樣本進行反復循環(huán)訓練,使模型輸出誤差盡可能小。
4)模型驗證。檢查輸出誤差是否已經滿足結束學習的要求。如果符合,就結束整個學習過程,否則繼續(xù)循環(huán)訓練。
5)預測結果。輸入測試集數據,對目標結果進行預測。
2建模過程與方法
2.1數據選擇
選擇青島市2013—2017年的6個氣象因子監(jiān)測值,其中包括日均氣溫、日均風速、日均氣壓、日均可見度、日均相對濕度、日均總降雨量或融雪,同時選擇同期PM25,PM10,NO2,SO2,CO,O3濃度的日均值。使用2013—2016年4年的氣象和污染物濃度數據作為訓練空氣質量預測模型的訓練集,將2017年的氣象和污染物濃度數據作為驗證模型的測試集。空氣質量預測模型的輸入特征為預測日當天的氣象因子值和前一天的污染物濃度,把預測日當天空氣質量指數作為模型的輸出值。
2.2建模方法
利用隨機森林算法進行特征選擇,輸入數據為預測日前一天的污染物濃度值和當天的氣象因子值,采用R語言中的randomForest程序包,設置100棵決策樹,即函數參數Ntree=100,importance=true用基于袋外數據分類準確率的變量重要性度量對特征的重要性進行排序,依次去掉重要性最小的特征,將選取的特征子集作為神經網絡預測模型的輸入。以預測值和真實值的平均絕對誤差作為評價標準和特征選擇的依據,重復迭代,最終選取平均絕對誤差最低的特征子集作為模型的最優(yōu)特征子集。
將選出的最優(yōu)特征子集中的特征去臟[18]并消除具有共線性的特征[19],作為BP神經網絡預測模型的輸入,輸入數據為預測日前一天的污染物濃度值和當天的氣象因子值,神經網絡參數:設置隱層單元個數為10,即參數size=10;權重調整速度為001,即參數decay=001,最大迭代次數為1 000次,即參數maxit=1 000,以2013—2016年的數據用Nnet函數訓練預測模型,并預測2017年1月2日~10月1日的AQI和空氣質量等級。
3預測及結果分析
3.1AQI指數預測
隨機森林對因子變量重要性的排序情況如圖3所示。通過序列向后搜索的方法,根據特征集合中特征的重要性進行排序,依次去掉重要性最小的特征,將選出的特征子集輸入BP神經網絡預測模型。各個特征子集輸出的真實值與預測值的平均絕對誤差如圖4所示。由圖4可以看出,將不重要的特征依次刪除之后,預測值與真實值的平均絕對誤差先逐步降低,當達到最低值后又開始逐步升高。這是因為開始時,隨著冗余特征的刪除,模型分類性能提升,隨后將重要性高的特征刪除后,降低了分類器的性能,這說明本算法可以有效地識別和刪除冗余特征,達到特征選擇的目的。采用RF_ANN模型消除的冗余特征為PM10、O3濃度、SO2濃度、日均氣溫和日均氣壓;篩選出的最優(yōu)特征子集為日均風速、NO2濃度、日均總降雨量和/或融雪、PM25、日均相對濕度、日均可見度及CO濃度。
篩選出模型輸入因子的同時,用2013—2016年的青島市空氣質量與氣象數據為AQI指數建立了預測模型,使用該模型對青島市2017年的AQI指數進行預測,預測值與實測值的相關系數為082,AQI預測值與實測值相關性分析如圖5所示。青島市2017年前100 d部分空氣質量指數的預測值與實測值進行對比,AQI預測值與實測值比較如圖6所示,AQI的平均絕對誤差為1273。
3.2與一般神經網絡預測模型對比
空氣質量指數范圍為0~500,分為6級,分別是:1級優(yōu)、2級良、3級輕度污染、4級中度污染、5級重度污染、6級嚴重污染[20]。選用準確率、空報率和漏報率3個指標與傳統(tǒng)BP神經網絡模型進行比較,3個指標定義如下:
A=D/C×100%
B=H/C×100%
D=L/C×100%
式中,A為準確率;D為預報結果正確的天數;C為總天數;B為空報率;H為預報結果偏高的天數;D為漏報率;L為預報結果偏低的天數。
4結束語
本文基于隨機森林算法與人工神經網絡算法,提出了一種空氣質量預測模型。通過隨機森林算法對氣象因子和空氣質量污染物因子等多個特征進行特征選擇,并對神經網絡預測模型進行訓練。測試結果表明,該模型能發(fā)現(xiàn)與空氣質量密切相關的特征因子,具有較準確的空氣質量預測效果。該研究為通過大數據解決大氣環(huán)境問題提供了新的思路和方法。而探索其他與空氣質量密切相關的特征因子及提高更高維度特征數據集預測的穩(wěn)定性是下一步的研究內容。
參考文獻:
[1]Boznar M, Lesjak M, Mlakar P. A Neural NetworkBased Method for the ShortTerm Predictions of Ambient SO2 Concentrations in Highly Polluted Industrial Areas of Complex Terrain[J]. Atmospheric Environment, Part B, Urban Atmosphere, 1993, 27(2): 221230.
[2]李柞泳, 鄧新民. 環(huán)境污染預測的人工神經網絡模型[J]. 成都氣象學院學報, 1997, 12(4): 279283.
[3]白曉平, 李紅, 張啟明, 等. 人工神經網絡在空氣污染預報中的研究進展[J]. 科技導報, 2006, 24(12): 7781.
[4]周秀杰, 蘇小紅, 袁美英. 基于BP網絡的空氣污染指數預報研究[J]. 哈爾濱工業(yè)大學學報, 2004, 36(5): 582585.
[5]JIANG D H, ZHANG Y, HU X, et al. Progress in Developing an ANN Model for an Air Pollution Index Forecast[J]. Atmospheric Environment, 2004, 38(40): 70557064.
[6]王儉, 劉振山. BP模型的改進及其在大氣污染預報中的應用[J]. 城市環(huán)境與城市生態(tài), 2002, 15(5): 1719.
[7]Lu W Z, Wang W J. Potential Assessment of the “Support Vector Machine” Method in Forecasting Ambient Air Pollutant Trends[J]. Chemosphere, 2005, 59(5): 693701.
[8]Nunnari G, Doring S, Schlink U, et al. Modeling SO2 Concentration at a Point with Statistical Approaches[J]. Environmental Modeling & Software, 2004, 19(10): 887905.
[9]蔣勝利. 高維數據的特征選擇與特征提取研究[D]. 西安: 西安電子科技大學, 2011.
[10]尹華, 胡玉平. 基于隨機森林的不平衡特征選擇算法[J]. 中山大學學報: 自然科學版, 2014, 53(5): 5965.
[11]蔣盛益, 鄭琪, 張倩生. 基于聚類的特征選擇方法[J]. 電子學報, 2008, 36(12): 157160.
[12]劉元寧, 王剛, 朱曉冬, 等. 基于自適應多種群遺傳算法的特征選擇[J]. 吉林大學學報: 工學版, 2011, 41(6): 16901693.
[13]楊帆, 林琛, 周綺鳳, 等. 基于隨機森林的潛在k近鄰算法及其在基因表達數據分類中的應用[J]. 系統(tǒng)工程理論與實踐, 2012, 32(4): 815825.
[14]李欣海. 隨機森林模型在分類與回歸分析中的應用[J]. 應用昆蟲學報, 2013, 50(4): 11901197.
[15]姚登舉, 楊靜, 詹曉娟. 基于隨機森林的特征選擇算法[J]. 吉林大學學報: 工學版, 2014, 44(1): 137141.
[16]祝翠玲, 蔣志方, 王強. 基于BP神經網絡的環(huán)境空氣質量預測模型[J]. 計算機工程與應用, 2007, 43(22): 223227.
[17]萬顯列, 楊鳳林, 王慧卿. 利用人工神經網絡對空氣中的O3濃度進行預測[J]. 中國環(huán)境科學, 2003, 23(1): 110112.
[18]吳小紅, 康海燕, 任德官. 基于神經網絡中小城市空氣污染指數預估器的設計[J]. 數學的實踐與認識, 2005, 35(2): 8791.
[19]黃海洪, 孫崇智, 金龍. 基于主分量的神經網絡水位預報模型應用研究[J]. 大氣科學學報, 2005, 28(1): 5863.
[20]趙宏, 劉愛霞, 王愷, 等. 基于GA_ANN改進的空氣質量預測模型[J]. 環(huán)境科學研究, 2009, 22(11): 12761281.