楊國亮,余華聲,黃 聰
(江西理工大學 電氣工程與自動化學院,江西 贛州 341000)
對PM2.5濃度進行準確預測在諸多方面都具有重要意義[1-7]。Zhang等[8]使用極限學習機(extreme learning machine,ELM)來預測香港空氣污染物的濃度值,Ibrir等[9]則是通過基于蜻蜓算法對支持向量回歸(support vector regression,SVR)模型進行超參數優化,進而精確預測顆粒物的值。由于這些基于統計學和機器學習的預測模型大多是通過歷史特征來發現數據變化規律,而針對非線性非平穩的時序數據,其預測精度并不會太高。Lagesse等和Wang等[10,11]分別利用LSTM和反向傳播(back propagation,BP)網絡來對PM2.5值進行性能預測分析,雖然均使用了神經網絡技術進行數據預測,但考慮到動態歷史數據會受到多因素如溫度及降水量等干擾而具有較大波動性,沒對數據進行預處理將會大大降低預測精確度。綜上不難看出,通過機器學習技術來預測PM2.5濃度已有一定的研究成果,同時神經網絡技術在PM2.5濃度預測方面也得到了廣泛的應用。然而,針對非線性且非平穩變動的時間序列,這些組合模型在預測精度上仍可以更進一步優化。為此,本研究提出基于PSO-VMD-LSTM的組合模型,以北京市每日同一時間點的PM2.5濃度為預測目標,進而對非平穩數據進行高精度預測。
本研究的總體框架主要由獲取數據、數據處理、模型預測和預測結果4部分組成,具體模型框架流程如圖1所示。

圖1 基于PSO-VMD-LSTM的框架流程
可以發現,該模型能很好地融合了機器學習優化算法和深度學習技術。主要步驟可以概括如下:獲取目標氣象污染物濃度數據和與之相關的氣象數據(露點、濕度、氣壓、溫度、風向風速等);補全缺失Nan值并進行歸一化處理和自適應模態分解等數據處理,為后期精準模型訓練和預測做好準備;在數據預處理基礎上利用深度學習網絡技術進行模型預測,最后再通過相關性能指標來對組合模型進行效果評價。
針對本研究,具體做法是通過基于包絡熵的PSO算法迭代優化來選出VMD分解中的最優參數組合懲罰因子α和模態個數K,進而將時序進一步分解成K個低頻模態后加以訓練和預測。一方面,先對原始數據集進行初步清洗和篩選,具體做法是選取適當的均值插值法和最鄰近插值法對缺失數據進行補全。另一方面,構建3個預測模型,即LSTM模型、EMD-LSTM模型和EEMD-LSTM模型,目的是結合相關性能評估指標如平均絕對誤差(mean absolute error,MAE)、平均絕對百分比誤差(mean absolute percentage error,MAPE)、均方根誤差(root mean square error,RMSE)和決定系數(the coefficient of determination,R2)等來對本研究所提出的組合模型進行預測效果評價。
過去用于處理非線性、非平穩信號時使用較多的是經驗模態分解(EMD)[12]和集成經驗模態分解(EEMD)[13],其共同優勢是無需預先設定基函數。然而,EMD分解的本質是將白噪聲分解成有限個具有不同中心頻率的本征模態函數(intrinsic mode function,IMF)與余項之和,但現實生活的信號是復雜的,這容易導致分解過程中出現模態混疊現象。類似地,EEMD分解雖然可以有效抑制EMD的模態混疊現象,但在實際應用中需要大量的EMD運算,且容易產生一些不必要的模態分量。因此,為了改善并解決分解效率低、分解過程中出現模態混疊和端點效應等問題,本研究選用一種具有計算快速、信噪比高并能有效抑制模態混疊現象等優勢的變分模態分解(VMD)[14]方法來進行PM2.5濃度的時序分解。將原始復雜信號分解為K個有限帶寬模態信號uk, 其中k∈[1,2,…,K], 其表達式為
uk(t)=Ak(t)cos(φk(t))
(1)
(2)
式中:Ak(t) 和wk(t) 分別為模態信號uk(t) 的瞬時幅值與瞬時頻率。為了使得每個IMF的估計帶寬之和最小,需要對模態信號uk進行Hilbert變換,求出IMF的解析信號并得到單邊頻譜fA
(3)
為了將IMF的每個頻譜調制到基頻帶,需要在每個解析信號中加入指數項e-jωkt。 進一步,計算解調信號梯度的平方范數,估計出各個IMF的帶寬,具體約束變分問題的模型表達式為
(4)
為了解出具體的模態信號uk與中心頻率ωk, 采用增廣拉格朗日L, 通過引入懲罰因子α和Lagrange算子λ(t), 將約束變分問題轉變為無約束變分問題,表達式如下

(5)
其中,α的作用是降低高斯噪聲的干擾,λ為Lagrange乘子。根據公式可以發現,VMD是一種完全非遞歸的分解方法,其原理是在滿足所有模態之和與原始信號相等的約束條件下,通過假設每個IMF分量是具有不同中心頻率的有限帶寬,為使其估計帶寬之和最小,將原問題轉換為解決變分問題,最終提取出模態信號分量,這將有效抑制模態混疊和端點效應等現象的發生,并解決大大降低數據分解過程中復雜的計算量。
根據式(5)可以知道,若懲罰因子α值和分解模態個數K值設定不當,將會嚴重影響VMD的分解效果。當一個復雜信號的分解個數過少會導致信息缺損,而過多又會出現信息冗余。因此,針對α和K值的設定問題,本研究提出基于包絡熵的粒子群優化算法(PSO)[15]來自動搜尋VMD分解中的最佳參數組合即懲罰因子α和模態個數K值。
PSO算法是解決全局優化問題的一種群體智能搜索方法,具有易于描述、運算代價低、收斂速度快等優勢,已廣泛應用于連續問題和離散問題的參數優化上[16]。在該機器學習算法中,每個問題的解被稱為粒子,而粒子的集合被稱之為群。假設將D維空間用作目標搜索空間,有N個粒子組成這個群體,則首先初始化每個粒子的位置和速度范圍,其中Vi=(vi1,vi2,…,viD,) 和Xi=(xi1,xi2,…,xiD,) 分別表示為D維空間中第i個粒子的速度和位置,然后每個粒子根據標準PSO算法式(6)和式(7)進行迭代和更新
(6)
(7)


圖2 基于包絡熵的PSO算法優化流程
其中,包絡熵值的大小變化可以反映信號特征分布的稀疏程度,且包絡的熵值越小,其稀疏性越強,信號分解效果越好。而對于任何信號x(j),其包絡熵可以通過式(8)計算得出
(8)
式中:Ep表示為信號的包絡熵;a(j) 表示為包絡信號,其中j=1,2,…,N為當前粒子,由信號x(j) 分解后的IMF分量經過Hilbert變換得到;a(j) 經過歸一化后可得到pj。 經過上述的迭代優化后得到了最優的參數組合,進一步就可以完成高效的VMD分解處理工作。可見,使用基于包絡熵的PSO-VMD分解方法將大大改善VMD分解中人為選擇懲罰因子α和模態個數K的不足,大大提高工作效率,這對后續的模型訓練和預測效果具有重要意義。
經過對復雜非平穩時序數據進行自適應模態分解后,得到復雜程度較低的IMF分量。本研究將針對這些分量分別進行LSTM建模,隨后通過重構數據得到最終預測結果。
由于傳統的RNN網絡在處理較長的時序數據時容易出現梯度消失問題,不利于處理復雜的時序預測問題。而LSTM[17]作為特殊的RNN網絡,卻在處理時序上具有很好的精準預測能力,通過在RNN網絡的基礎上增添遺忘門、輸入門、輸出門這3大結構,可以對存儲單元的信息進行記憶和遺忘,在一定程度上還解決了RNN自身在時序預測上所存在的問題。具體原理結構如圖3所示。

圖3 LSTM原理結構
從結構圖中不難看出,當隱藏層的狀態ht-1和輸入xt經過遺忘門ft時,其輸出值將決定單元狀態Ct-1輸出到Ct的信息將被刪除或保留到什么程度。其中ft的表達式為
ft=σ(Wf·[ht-1,xt]+bf)
(9)
式中:W為遺忘門ft的權重矩陣,b為偏置向量,σ為Sigmoid激活函數。輸出值介于0到1之間,其中1表示為保留所有信息,而0代表刪除所有信息
(10)
式中:it和C′t共同代表了輸入門,其中C′t為當前單元的輸入狀態,Ct-1通過ft遺忘一部分信息,并通過輸入門it和C′t添加一部分信息,進而得到更新后的完整Ct信息
(11)
式中:Ot為輸出門,而ht是更新后的隱藏層狀態,也是下一時刻LSTM單元的輸入。
不難發現,LSTM網絡可以有效利用和處理歷史數據,并通過不斷更新網絡的隱藏層狀態,高效地對PM2.5濃度進行精準預測,進而更好地處理時序數據。
本研究所用到的數據,來源于北京大學統計科學中心,已于2017年7月份公開在UCI機器學習存儲庫的網絡平臺上:https://archive.ics.uci.edu/ml/datasets/PM2.5+Data+of+Five+Chinese+Cities#。該數據集涵蓋了包含北京、上海、廣州、沈陽和成都這5大城市的每小時PM2.5數據,現已廣泛被研究人員采納和接受。其中,本研究主要選取北京市2010年1月1日至2015年12月31日共6年的氣象數據作為研究對象,在此基礎上提取每日9時的PM2.5濃度數據對所提出的預測模型進行分析和探討。表1是該數據集里面北京市的相關標簽屬性信息和Nan值個數及其占比。

表1 相關標簽名屬性信息
為了解決原始氣象數據缺失的問題,本研究選取線性插值法和最鄰近插值法對缺失數據進行補全。另外,為了加快訓練速度和深度學習模型的收斂,需對初步清洗的數據進行歸一化處理,即利用式(12)對原始輸入數據進行縮放和規范化
(12)
式中:y是歸一化后的PM2.5數據,x是原始每小時PM2.5數據,max是每小時PM2.5總數據樣本中的最大值,而min是最小值。
研究實驗在Window操作系統下使用Python編程語言操作。經過數據插值補全和數據歸一化處理后,為了得到懲罰因子和模態個數的最優參數組合[α,K],對PSO算法中的每個粒子參數進行隨機初始化,具體初始值設定見表2。

表2 初始化PSO算法參數
其中,N表示了粒子數量,d表示粒子的維度,c1和c2分別為局部最優極值pid和全局最優極值pgd的學習因子,ω是慣性權重因子,M是當前迭代次數。
為了對提出的預測模型進行綜合性能評估,本研究分別采用了MAE、MAPE、RMSE和R2這4個指標來進行量化對比
(13)
(14)
(15)
(16)

經過初始化后,利用包絡熵作為適應度函數來評估和優化PSO算法中的各個參數以及位置,當實驗過程中包絡熵滿足最小誤差標準即取得最優極小值時,其稀疏性最強,信號分解效果達到最佳,獲取到的最優參數組合為 [α,K]=[2100,5]。 通過信號分解使得復雜的時序信號變成5個具有不同尺度的IMF信號分量之和,大大降低其復雜程度,并且信號波動越大,代表信號的復雜程度越高。圖4是原始信號及其經過PSO算法優化后的VMD信號分解效果。

圖4 PSO-VMD分解效果
接下來對模態分解后的各個IMF分量逐一構建LSTM模型并進行預測,通過累加和得到最終的預測結果。在實驗過程中,選取85%每日同一時間點的PM2.5濃度數據作為訓練集,余下的15%作為測試集。在模型訓練過程中,之后,分別對原始數據和經過不同模態分解后的數據進行LSTM模型訓練。其中,在LSTM訓練過程中使用Adam優化算法來調整參數的學習率,循環迭代次數設置為100,單次訓練的樣本數設為128。圖5為各個模型訓練過后預測效果。
從圖5(a)與圖5(b)、圖5(c)、圖5(d)三者之間進行對比發現,在相同的初始化條件下,經過時序分解處理后的LSTM預測相比于未處理時的LSTM預測,其預測精度得到了明顯改善。此外,對于經過時序分解處理后的圖5(b)、圖5(c)和圖5(d),可以發現基于PSO-VMD-LSTM組合模型的預測曲線基本與原始數據曲線吻合,說明相比于另外兩個經典模型,本研究模型的預測準確度達到最佳,EEMD-LSTM模型次之,而模型EMD-LSTM的預測精度最差,其擬合效果沒有達到最佳。
從表3中各模型相關性能指標的數據結果可以看出,相比于EMD-LSTM、EEMD-LSTM和單一的LSTM預測模型,基于PSO-VMD-LSTM組合模型的預測誤差不管是MAE和MAPE還是RMSE,其誤差結果均為最小,這意味著該模型具有最佳的預測性能和預測效果。此外,本研究模型在性能指標數據結果中的決定系數R2達到0.9771,這表明該模型在進行PM2.5濃度預測時相似程度基本接近真實值。這不僅說明了提出的模型具有較強的泛化能力,能精確捕捉到數據的波動趨勢,而且還能說明可以有效處理復雜多變的PM2.5時序序列。

表3 各模型的相關性能指標數據
實驗結果表明,本研究提出基于PSO-VMD-LSTM的組合模型不僅能精確地對PM2.5濃度的變化趨勢進行擬合和高精度預測,而且具有以下優勢:
(1)采用了一種完全非遞歸的分解方法來處理非平穩、非線性時間序列,該方法將原始復雜問題簡單化,不僅計算快速、信噪比高,且在一定程度上有效抑制了模態混疊現象;
(2)提出了基于包絡熵的PSO算法來優化VMD分解中的重要組合參數,改善了傳統的VMD分解中因人為干預而導致運算效率低和預測效果不佳等問題;
(3)模型的訓練速度快且高效,對實驗設備要求不高,從經濟上可可大大降低了運行成本;
(4)鑒于所選取的城市氣象數據集在進行分析和研究上具有一定的隨機性,因此本研究所提出的組合模型在不同區域上具有普適性,即對于其它城市的PM2.5數據同樣適用。
簡而言之,對于非線性、非平穩的PM2.5時序數據,在進行深度學習網絡模型預測之前,有必要對數據進行預處理,而本研究結合機器學習技術所提出基于PSO-VMD-LSTM的組合模型在時序預測上將是一個較優的選擇。