祭海洋 李 玉 付均元 周一鳴
(東北林業大學,黑龍江 哈爾濱 150040)
對空氣中的PM2.5進行實時預測,能更好地對社會生產生活進行指導,具有很強的現實意義。PM2.5的形成原因有很多,PM2.5的預測方法[1-7]可分為機理性模型預測和非機理性模型進行檢測。機理性模型對各個環境因子的要求多,要考慮多種PM2.5產生和擴散的因素。非機理性模型只把與PM2.5有關的相關因子通過機器學習模型進行分析,最終實現對PM2.5的預測。考慮到單機器學習模型的預測精度與對新數據的泛化能力較低,因此本研究采用集成學習模型對PM2.5含量進行預測。由于集成學習合并了多個機器學習模型,克服了單一預測方法的缺點,對數據的預測效果更好。
PM2.5實時預測主要是通過建立不同的機器學習模型對歷史數據進行訓練,在得到不同模型[7-15]的合適參數值后,進行模擬仿真。可設第i個PM2.5影響因子為Xi,其預測值Y,計算公式見式(1)。
空氣中的PM2.5不是單一的空氣污染物,其形成的原因較為復雜,不僅與空氣中的多種污染物有關(空氣中的細微顆粒污染物、硫的氧化物SOx、氮的氧化物NOx、CO 和PM10等對PM2.5的形成具有較大影響),還與氣象因素密切相關(露點、溫度、大氣壓、濕度、風速、累計降雨量),通過對文獻進行分析,本研究選取影響PM2.5實時濃度的十個指標。本研究的數據集采用2014—2021 年哈爾濱氣象局發布的氣象數據,數據包含十項特征,見表1。

表1 數據集特征
由于獲取到的數據集中包含許多缺失數據,本研究采用差值法對缺失數據進行補全。
考慮到PM2.5的形成與多種因素有關,計算各個因子的皮爾遜相關系數(見圖1)。除去相關性不足0.5的因子。

圖1 各指標相關性系數
由于以上十項特征的單位、數據量不統一,無法將其與PM2.5進行直接比較。為觀察不同因子與PM2.5之間的關系,將每項特征進行標準化處理,全部縮放到0~1范圍內,見式(2)。
式中:min 為數據中最小值;max 為數據的最大值。
集成學習(Ensemble learning)是通過構建并結合多個學習器來完成學習任務,集成多個模型能克服傳統單一的機器學習模型在預測精度上存在的不足。根據個體在學習器中的生成方式,集成學習模型可分為兩大類。第一類是個體學習器不存在過于強的依賴關系,可同時生成的并行化方法,如Bagging 類算法。第二類是個體學習器存在強依賴性關系,必須串行生成的序列化方法,如Boosting類算法。
隨機森林是對Bagging算法[2]的一種優化,其通過建立大量不相關的分類樹,并取這些分類樹的平均值,從而獲得結果。在許多問題中,隨機森林很容易進行訓練和調優。因此,隨機森林模型被廣泛地應用。隨機森林的訓練過程描述如下。
若總共訓練B棵分類樹,對每一棵分類樹Ti,從訓練樣本中隨機選取一個大小為N的引導樣本Z*。在引導樣本中,隨機選擇m個維度的變量,按照自上向下的遞歸分裂原則,在Ti分類樹中從根節點開始對引導樣本進行劃分。對節點本身,按照節點純度最小的原則,分裂為左節點和右節點,其分別包含訓練數據的一個子集。
在此類問題中,隨機森林用于回歸時,回歸樹的純度可用兩個子節點方差之和來描述。當劃分特征為A,劃分點為s,將樣本劃分為z1和z2兩部分時,上述對節點的劃分可用公式(3)來描述。
其中,c1和c2的計算公式見式(4)。
最后,對數據X′模型給出其預測值,其計算公式見式(5)。
AdaBoost算法[7]最主要的特點是前面的分類器會為后面的分類器創造條件,后面的分類器是基于前面分類器創造的條件進行改進的,以獲得對前面錯誤樣本的更優預測。
AdaBoost回歸算法的運行過程如下。
剛開始時,所有樣本具有相同的權重。即對總共m個訓練樣本,在第t次訓練前第i個樣本的權重為ωt,i,其計算公式見式(6)。
每輪訓練后都會得到一個基學習器,每輪結束后都會根據上一輪分類器的分類效果來調整每個樣本的權重,提高上一輪預測偏差大的樣本權重,并降低預測偏差小的樣本權重。
對第t次迭代訓練出的模型?t()·,先要計算該模型的樣本最大誤差Et,見式(7)。
再計算每個樣本在此輪模型中的相對誤差et,i,見式(8)。
然后求出基學習器?t()·在訓練數據集中的回歸誤差率εt,見式(9)。
進一步求出基學習器?t()·的權重系數αt,見式(10)。
并以此來更新每個訓練樣本的權重系數,見式(11)。
其中,Zt為規范化參數,見式(12)。
下一輪的訓練要根據新得到樣本權重來指導本輪中的基分類器訓練。重復上述步驟,直至達到設定的訓練輪數,每輪訓練都會得到一個基分類器。
在所有弱學習器的共同作用下,得到最終的強學習器H(·),訓練T輪的學習器對輸入X′的預測值見式(13)。
基于多種機器學習和哈爾濱氣象的數據集,來完成對PM2.5濃度的預測。試驗方法如下。①對原始氣象數據進行處理,構建符合要求的數據集。②調用訓練集對機器學習模型進行訓練。③調用驗證集對結果模型進行驗證評估。④對預測效果進行統計學分析,并判斷預測的精確度,通過擬合度和回歸精度等指標來選出最佳的預測模型。⑤用最優模型對PM2.5含量進行預測,并與實際的PM2.5含量進行對比。
本研究的試驗環境詳見表2。

表2 試驗環境介紹
本研究采用XGboost(Xtreme Gradient Boosting)[8]、RF(Random Forest)、GBDT[10](Gradient Boosting Decision Tree)、AdaBoost[9](Adaptive boosting)等方法對數據進行預測。
基于模型對經過預處理和轉換后的測試集數據進行預測,預測結果和實際結果如圖2 所示。從圖2 可以看出,集成類學習模型的預測效果較好。在對測試集進行預測時,不同集成學習的預測指標大小如圖3 所示。其中,GBDT 模型的MSE 為334.204 6,RMSE 為18.281 3,MAPE 為83.438 9,SMAPE 為50.616 9,且預測PM2.5含量與實際PM2.5含量變化趨勢的吻合度最好,滿足回歸預測過程中的經驗誤差要求。因此,集成學習模型預測模型在預測PM2.5濃度的擬合度要好于其他機器學習模型。

圖2 各個模型的預測結果

圖3 各個模型的預測結果指標大小