王人杰 劉海忠* 朱 洋
(蘭州交通大學(xué),甘肅 蘭州 730070)
21 世紀(jì),經(jīng)濟(jì)的發(fā)展速度比以往任何時(shí)候都要快。但工業(yè)文明的過(guò)快擴(kuò)張也促使我們生存的環(huán)境受到了極大的破壞,最為典型的問(wèn)題就是全球變暖。這是一個(gè)全球范圍內(nèi)的嚴(yán)重問(wèn)題,每一個(gè)國(guó)家和地區(qū)都無(wú)法置身事外[1]。
Zhang 等學(xué)者[2]在前人研究成果的基礎(chǔ)上創(chuàng)新性地提出了SCAD 罰函數(shù)模型,能夠把樣本當(dāng)中的小變量設(shè)置為0,從而更好地反映出變量稀疏性,同時(shí)設(shè)置大變量為常數(shù)以解決過(guò)擬合,使最終的結(jié)果符合無(wú)偏估計(jì)。在處理多維且復(fù)雜的氣象數(shù)據(jù)時(shí)效果良好,但SCAD 的本身方程中涵蓋了過(guò)多需要調(diào)整的超參數(shù)的值,大大的增加了計(jì)算量,盡管也有人試圖采用粒子群算法(PSO)對(duì)超參數(shù)進(jìn)行聯(lián)合估計(jì),但計(jì)算仍然復(fù)雜繁瑣,而且粒子群算法本身也存在著一些不足[3],如:算法容易陷入局部最優(yōu)解[4],后期收斂速度慢,導(dǎo)致算法求解精度不高。謝倩[5]采集了近年來(lái)嶺南地區(qū)的氣候變化數(shù)據(jù),圍繞著廣州周邊的數(shù)據(jù)樣本來(lái)進(jìn)行量化分析,從人體熱感覺、風(fēng)向以及日軌等多個(gè)不同的維度來(lái)梳理總結(jié)出氣候變化所表現(xiàn)出的特征,最終總結(jié)出氣候變化的規(guī)律。這樣通過(guò)數(shù)據(jù)的表示使氣候的特征更為直觀,但該研究的問(wèn)題在于,考慮的變量并不全面,忽略了一些影響可能相對(duì)顯著的因素。
本文選擇以PCA-ESN 的氣候預(yù)測(cè)模型來(lái)進(jìn)行樣本分析。第一步,先對(duì)采集的數(shù)據(jù)進(jìn)行預(yù)處理,然后以主成分分析方法(PCA)提取樣本數(shù)據(jù)的主要特征,減少數(shù)據(jù)中的冗余信息。第二步,以ESN 方法構(gòu)建氣候預(yù)測(cè)模型,有效地解決傳統(tǒng)方法極易出現(xiàn)的梯度消失等問(wèn)題,該模型在實(shí)際的應(yīng)用過(guò)程中表現(xiàn)出十分優(yōu)異的信息處理能力。
原始數(shù)據(jù)為廣東省廣州市黃埔區(qū)1980 年1 月1 日至2020 年12 月31 日的氣象日數(shù)據(jù),共14976 組。本次研究采集的數(shù)據(jù)包括當(dāng)?shù)氐钠骄乇須鉁亍?dāng)日最高與最低地表氣溫、最大風(fēng)速、各個(gè)時(shí)間段的降雨量、當(dāng)?shù)刈罡吲c最低氣溫、平均氣壓、平均相對(duì)濕度等指標(biāo)。
數(shù)據(jù)樣本的預(yù)處理會(huì)直接影響數(shù)據(jù)分析結(jié)果的準(zhǔn)確性和真實(shí)性[6]。在多元統(tǒng)計(jì)分析中,主成分分析法能夠從數(shù)據(jù)樣本當(dāng)中有效提出變量特征,降低數(shù)據(jù)的冗余度,為之后數(shù)據(jù)模型的應(yīng)用和預(yù)測(cè)奠定良好的基礎(chǔ)。此外,主成分分析法還能解決信息重疊所帶來(lái)的負(fù)面影響,提高分析結(jié)果的準(zhǔn)確度[7]。
設(shè)原始數(shù)據(jù)集包括n 個(gè)數(shù)據(jù)樣本,每個(gè)樣本具有p個(gè)變量,將數(shù)據(jù)在SPSS 軟件中進(jìn)行主成分分析,得到成分矩陣如表1 所示[8]:
表1 成分矩陣
根據(jù)上表1 的對(duì)應(yīng)數(shù)據(jù),可以得到經(jīng)過(guò)標(biāo)準(zhǔn)化之后的6 個(gè)主成分因子表達(dá)式,以第一個(gè)主成分為例,計(jì)算過(guò)程為:首先從表1 成分矩陣中,計(jì)算第一列數(shù)據(jù)的平方和,即0.9322+0.7152+…+0.2542,根據(jù)主成分分析的定義,該平方和被稱為“第一主成分的方差”。將該方差的平方根除成分矩陣第一列的每個(gè)元素,即0.932/√(主成分方差), 0.715/√(主成分方差), …, 0.254/√(主成分方差),便得到第一個(gè)主成分的各個(gè)系數(shù)0.370694, 0.28453, …,0.100956。
本次研究選擇使用的ESN 模型屬于儲(chǔ)備池計(jì)算網(wǎng)絡(luò)范疇[9],表現(xiàn)出鮮明的動(dòng)力學(xué)特征。從結(jié)構(gòu)上來(lái)看,ESN可以分為3 層,分別是輸入層、輸出層以及儲(chǔ)備層。在儲(chǔ)備層中,ESN 包含了大量的神經(jīng)元,以隨機(jī)的方式進(jìn)行連接,具有儲(chǔ)備短期記憶的功能。在整個(gè)網(wǎng)絡(luò)中,儲(chǔ)備池是最重要的核心部分,也關(guān)乎網(wǎng)絡(luò)的運(yùn)行性能,內(nèi)部結(jié)構(gòu)可參考圖1。
圖1 ESN 結(jié)構(gòu)圖
設(shè)輸入矩陣、狀態(tài)矩陣、輸出矩陣分別為:
其中,K 為輸入維數(shù),N 為儲(chǔ)備池內(nèi)部神經(jīng)元個(gè)數(shù),M 為輸出維數(shù),T=1,2,……,T。
狀態(tài)矩陣的更新如下式所示:
其中,Win是輸入層到儲(chǔ)備層的N×K 的權(quán)重矩陣,W 是儲(chǔ)備層權(quán)重矩陣,Wout是儲(chǔ)備層到輸出層的M×K的權(quán)重矩陣,此矩陣的更新如下式所示:
其中,β 表示非負(fù)正則化系數(shù),S 表示全部狀態(tài)矩陣,I 表示單位矩陣,D 為全部輸出矩陣。
ESN 模型訓(xùn)練過(guò)程如圖2 所示。
圖2 ESN 訓(xùn)練過(guò)程示意圖
第一步,進(jìn)行初始化操作,先確定儲(chǔ)備池的規(guī)模,即神經(jīng)元的個(gè)數(shù)。
第二步,隨機(jī)生成兩個(gè)矩陣,分別是輸入層和儲(chǔ)備層的權(quán)重矩陣,并通過(guò)縮放因子大小的調(diào)整,確保譜半徑位于[0,1]的范圍內(nèi)。
第三步,樣本數(shù)據(jù)依次加載到輸入、輸出,更新儲(chǔ)備池內(nèi)部狀態(tài)。
第四步,刪除x(1)至x(n)的數(shù)據(jù),這個(gè)數(shù)據(jù)并不涉及模型訓(xùn)練,但卻都會(huì)不同程度地受到初始瞬變影響,并訓(xùn)練該n 個(gè)數(shù)據(jù)之后的變量。
第五步,計(jì)算輸出權(quán)重矩陣Wout。
第六步,用新輸入和訓(xùn)練好的Wout計(jì)算相應(yīng)輸出,進(jìn)行測(cè)試。
本次研究先將所有的樣本數(shù)據(jù)(14976 組)進(jìn)行歸一化處理,接著通過(guò)PCA 算法來(lái)獲取新主成分。之后,以樣本中11980 組數(shù)據(jù)作為模型訓(xùn)練,后面的數(shù)據(jù)用作模型測(cè)試。將ESN 模型的各項(xiàng)參數(shù)設(shè)置為:節(jié)點(diǎn)數(shù)為2;神經(jīng)元稀疏度為5%;儲(chǔ)備池中含有神經(jīng)元總數(shù)為50,輸出節(jié)點(diǎn)數(shù)為1。
以調(diào)參后的ESN 模型作為氣溫預(yù)測(cè)的系統(tǒng),當(dāng)模型反復(fù)運(yùn)行30 次后,最終的結(jié)果逐步穩(wěn)定,可以作為模擬結(jié)果,具體測(cè)試效果可參考圖3。
圖3 ESN 預(yù)測(cè)效果圖
將預(yù)測(cè)結(jié)果和原數(shù)據(jù)放在同一張表格中,這里決定選取絕對(duì)預(yù)測(cè)誤差率APE 對(duì)預(yù)測(cè)輸出的結(jié)果的偏離程度進(jìn)行整體分析,計(jì)算公式如下:
其中,fi表示第i 次的預(yù)測(cè)值,Oi表示相對(duì)應(yīng)的實(shí)際值。誤差測(cè)試圖如圖4 所示。
從圖4 可看出,預(yù)測(cè)誤差率全部介于(0,1)內(nèi),且大多數(shù)預(yù)測(cè)誤差都在15%以下,極少部分計(jì)算值存在著較大偏離,不具備參考價(jià)值。由此可知,ESN 的測(cè)試輸出能夠很好的擬合真實(shí)的氣溫?cái)?shù)據(jù),預(yù)測(cè)效果良好。
圖4 誤差測(cè)試圖
繼續(xù)選用ARIMA 模型[10]和LSTM 模型對(duì)原始數(shù)據(jù)進(jìn)行預(yù)測(cè),并計(jì)算ESN 模型、ARIMA 模型和LSTM 模型的預(yù)測(cè)結(jié)果的均方誤差(MSE),MSE 的計(jì)算公式為[11]:
結(jié)果詳情可見表2。
表2 三種預(yù)測(cè)模型的均方誤差比較
由表2 可知,ESN 的均方誤差是最小的,在量級(jí)上遠(yuǎn)小于另外兩個(gè)模型。由此也可以進(jìn)一步顯示出ESN 預(yù)測(cè)模型在預(yù)測(cè)方面的優(yōu)越性。
本文以廣州市黃埔區(qū)的氣象數(shù)據(jù)作為研究對(duì)象,將主成分分析法和回聲狀態(tài)網(wǎng)絡(luò)相結(jié)合,提出了基于PCA的ESN 模型進(jìn)行氣候預(yù)測(cè),總結(jié)如下:
我們利用了主成分分析法本身的特性,使得本文模型可以有效處理規(guī)模龐大的數(shù)據(jù)集,避免迭代次數(shù)過(guò)多。本研究以PCA 算法來(lái)對(duì)原始?xì)夂驍?shù)據(jù)展開預(yù)處理,并獲得6 個(gè)主成分。以這6 個(gè)主成分作為模擬預(yù)測(cè)的輸入變量,在此基礎(chǔ)上建立ESN 預(yù)測(cè)模型,反復(fù)運(yùn)行后可以預(yù)測(cè)當(dāng)?shù)氐臍鉁?,有效地降低了樣本?shù)據(jù)的計(jì)算復(fù)雜度。由于本文所研究的數(shù)據(jù)集具有非線性、季節(jié)性等特征,常用預(yù)測(cè)模型在面對(duì)這樣類型的數(shù)據(jù)時(shí),往往要經(jīng)過(guò)十分繁瑣和復(fù)雜的數(shù)據(jù)處理和運(yùn)算階段,但ESN 模型在預(yù)測(cè)這樣的時(shí)間序列數(shù)據(jù)時(shí)具有更為良好的性能。實(shí)驗(yàn)結(jié)果表明,利用ESN 模型預(yù)測(cè)經(jīng)過(guò)PCA 處理之后的氣候數(shù)據(jù),預(yù)測(cè)值和實(shí)際值的總體偏差小,均保持在較低水平,絕對(duì)預(yù)測(cè)誤差普遍處于15%以下,預(yù)測(cè)效果優(yōu)于LSTM 模型和ARIMA 模型。因此,本次研究構(gòu)建的PCA-ESN 模型能夠被應(yīng)用到氣候預(yù)測(cè)中,為今后的氣候數(shù)據(jù)分析提供了重要的參考。