許 歡,朱華亮,溫華洋
(1.合肥幼兒師范高等??茖W校基礎部,安徽合肥230013;2.安徽省氣象信息中心,安徽合肥230031)
近年來,全球氣候呈現快速性、災難性等特點,強風、氣溫升高和強降雨等極端天氣頻發(fā),嚴重影響了人們的日常生活、社會生產、軍事活動等。開展氣候變化研究,預測未來的氣象變化,對極端天氣進行提前預防和抵御,以減少惡劣氣象所造成的不必要的損失,變得尤為重要[1]。國內外學者針對氣象預測已經做了大量的研究應用,如文獻[2-3]分別基于貝葉斯理論和自然災害風險理論,對短期風速和降雨進行了預測;文獻[4-5]利用神經網絡和極限學習機,基于氣象預報數據建立了氣象預測模型。然而從研究中可以發(fā)現,大多數文獻都是對單一氣象因素的分析,對多元氣象因素的研究卻相對較少。
隨著信息時代的到來,使得海量的氣象數據信息獲取成為可能。然而,海量的氣象數據信息種類和數量也給問題分析過程帶來了巨大挑戰(zhàn),數據降維是解決這類問題的有效工具,因此被廣泛使用。主成分分析(PCA)方法是人們提取氣象數據特征常用的方法,其對于本身具有線性結構的數據集的特征提取是非常有效的,而對于具有非線性結構的氣象數據的效果卻并不理想[6]。流形學習中的等距特征映射(ISOMAP)方法具有非線性降維能力,此外,Lasso方法可以很好地對模型參數進行壓縮,使得某些回歸系數變小甚至為0,從而進一步優(yōu)化模型[7]。Zou[8]提出的Adaptive-Lasso方法對不同系數使用不同程度的壓縮效果,使Lasso估計具有Oracle性質。本文針對合肥2017.1.1—2018.8.31氣象數據信息,在對氣象因素使用ISOMAP方法降維的基礎上運用Adaptive-Lasso方法進行建模,預測日平均氣溫。將結果與基于ISOMAP及Adaptive-Lasso的模型預測結果相比較,發(fā)現通過ISOMAP與Adaptive-Lasso方法建立的回歸模型能更好對日平均氣溫進行回歸預測。
ISOMAP 方法是Tenenbaum[9]于2000 年提出的以線性簡約多維尺度變換方法為基礎,以保持觀測空間樣本點原有的幾何結構為原則的算法[10]。在ISOMAP中,用兩點間的測地距離代替直線距離,從而可以更好地表示同一流形中兩點的真實距離。算法步驟如下:
(1)設樣本集{a1,a2,…,an},計算任意兩點ai,aj的歐氏距離de(ai,aj),利用KNN(k-NearestNeighbor)方法構造k鄰域圖G。
(2)用Dijkstra 算法或Floyd 算法度量任意兩點ai,aj的最短路徑長度作為兩點的測地線距離dG(ai,aj),若aj是ai的k近鄰,則dG(ai,aj)=de(ai,aj);若aj不是ai的k近鄰,且{a1i,a2i,…,aki}是ai的k近鄰點集,則
(3)以dG(ai,aj)作為距離矩陣D的元素,以矩陣D作為多維標度分析(MDS)的輸入,得到輸出。
MDS可以看作是一個特征分解過程,它的輸入通常是一個距離矩陣D,D經降維后不會改變。
Lasso是一種同時選擇和估計變量的方法,其參數估計為
其中,X=(X1,X2,…,Xk)是預測變量矩陣,Xj=(x1j,x2j,…,xmj)Τ,j=1,2,…,k為預測變量,Y=(y1,y2,…,ym)Τ是響應變量,λ為非負正則化參數,β=(β1,β2,…,βk)Τ為回歸系數。
Lasso 方法的核心在“l(fā)1懲罰”,即(1)式的第二部分。在Lasso 方法中,隨著正則化參數λ的不斷增大,回歸系數逐漸趨向于0。當λ足夠大時,此時回歸系數縮小到0。
Adaptive-Lasso方法是Zou[8]于2006年在Lasso的基礎上進行改進并提出的,該方法對不同系數采用不同程度的壓縮,從而能夠更快更好地選擇出最優(yōu)的特征。其參數估計為
本文數據來源于安徽省氣象信息中心,對合肥2017.1.1—2018.8.31日平均氣溫及其影響因素進行研究并建立回歸預測模型。數據如下頁表1所示。
表1 2017.1.1—2018.8.31合肥日平均氣溫及其影響因素
因因素太多,表1中不能全部列舉,故省略一些因素。省略的有:日平均風速(24小時)(m/s)、日降水量(mm)、日平均地面溫度(℃)。在下列進行的所有實驗中,以上述600組數據中的前365 組數據進行分析,對后235組數據進行預測比較。
對氣象數據中的平均氣壓、平均水氣壓等相關因素進行ISOMAP降維,選取k=5,殘差如圖1所示。從圖1中可以看出,當維度d≥4時,投影到低維上的殘差值最小并收斂到一個定值。因此選擇4為低維空間的維度,原始因素分量的相關系數如表2所示。
圖1 氣象數據殘差曲線圖
表2 原始坐標分量的相關系數
利用ISOMAP所得的成分矩陣,采用逐步回歸法建立日平均氣溫與主成分之間的回歸模型,結果如表3 所示。由此得出回歸模型:y=0.016+0.035Comp1+0.577Comp2+0.345Comp3+0.095Comp4,回歸模型的擬合度為0.963 2,對后235組數據根據以上模型進行預測,并將預測數據與實際數據進行比較,如圖2所示,黑色代表實際值,紅色代表預測值。計算其均方誤差根(RMSE)為0.024。從圖2可以看出,預測值與實際值走勢大致吻合,在25~40和210~230這兩段預測的誤差較大。
采用Adaptive-Lasso方法建立日平均氣溫與相關氣象因素之間的回歸模型,表4為各相關因素的回歸系數。
基于Adaptive-Lasso方法的回歸模型:y=0.002+0.306X2-0.034X3+0.008 5X4+0.621X8,模型擬合度為0.965 3,與上節(jié)相同,對后235組數據根據以上模型進行預測,圖3為預測數據與實際數據的比較。計算其均方誤差根為0.021。從圖3可以看出,預測值與實際值走勢大致吻合,在25~40這段預測的誤差較大。
表3 日平均氣溫與主成分間的回歸模型
表4 相關因素的回歸系數
圖2 ISOMAP方法預測值與實際值的比較
圖3 Adaptive-Lasso方法預測值與實際值的比較
應用ISOMAP方法對氣象因素進行降維,再采用Adaptive-Lasso方法建立日平均氣溫與主成分之間的回歸模型,結果如表5 所示,得到回歸模型:y=0.015+0.041Comp1+0.602Comp2+0.265Comp3,模型擬合度為0.970 1。對后235組數據根據以上模型進行預測,預測數據與實際數據的比較如圖4所示。
從圖4中可以看出,預測值與實際值基本吻合,預測的均方誤差根為0.019,擬合效果較好。與基于ISOMAP 與Adaptive-Lasso 建立的模型相比,基于ISOMAP 的Adaptive-Lasso 方法建立的回歸模型能更好地擬合日平均氣溫與其他相關氣象因素之間的關系。
表5 回歸系數
圖4 ISOMAP-Adaptive-Lasso方法預測值與實際值的比較
本文針對合肥2017.1.1—2018.8.31 日平均氣溫及其影響因素,分別建立了基于ISOMAP 逐步回歸模型、Adaptive-Lasso回歸模型和基于ISOMAP的Adaptive-Lasso回歸模型。結果表明,基于ISOMAP的Adaptive-Lasso方法建立的回歸模型能夠很好地對日平均氣溫進行回歸預測。