鄧雪晨,熊聰聰+,董 昊
(1.天津科技大學(xué) 計(jì)算機(jī)科學(xué)與信息工程學(xué)院,天津 300222; 2.天津市氣象局觀測(cè)與預(yù)報(bào)處,天津 300072)
目前大氣污染物濃度預(yù)報(bào)方法主要分為統(tǒng)計(jì)預(yù)報(bào)和數(shù)值預(yù)報(bào)[1]。國(guó)內(nèi)研究大多采用數(shù)值預(yù)報(bào)模式[2]且已經(jīng)得到廣泛應(yīng)用[3,4],但由于各個(gè)數(shù)值模式化學(xué)參數(shù)化方案等方面存在差異,使得各個(gè)模式在預(yù)報(bào)能力上存在不同,多模式集成技術(shù)正是利用各模式中心預(yù)報(bào)的結(jié)果減少模式系統(tǒng)性的偏差[5],現(xiàn)已作為一個(gè)重要發(fā)展方向。陳煥盛等采用多元線性回歸方法集成各空氣質(zhì)量模式預(yù)報(bào)大氣污染物濃度,實(shí)驗(yàn)結(jié)果表明,集成預(yù)報(bào)模式優(yōu)于單個(gè)預(yù)報(bào)模式[6]。秦珊珊[7]提出針對(duì)大氣污染物PM2.5,建立人工智能優(yōu)化神經(jīng)網(wǎng)絡(luò)模型進(jìn)行預(yù)報(bào)。Zhang Ping等[8]利用當(dāng)?shù)氐牡乩硇畔①Y源,提出用改進(jìn)的BP人工神經(jīng)網(wǎng)絡(luò)進(jìn)行大氣污染物PM2.5濃度的預(yù)報(bào),仿真實(shí)驗(yàn)得出隱含層神經(jīng)元為20時(shí)精度較高。Sun等[9]通過實(shí)驗(yàn)驗(yàn)證了基于SVM的空氣質(zhì)量預(yù)報(bào)模型(PM2.5)能有效應(yīng)用于大氣污染物濃度預(yù)測(cè),但在極端情況下預(yù)報(bào)精度有所下降。
總的來(lái)說,多模式集成預(yù)報(bào)的研究成果多采用線性回歸、機(jī)器學(xué)習(xí)等方法進(jìn)行預(yù)報(bào)。線性回歸針對(duì)非線性問題解決能力較差,而神經(jīng)網(wǎng)絡(luò)具有很好的解決非線性問題的能力,但其中BP神經(jīng)網(wǎng)絡(luò)算法缺陷是學(xué)習(xí)速度較慢、訓(xùn)練過程會(huì)陷入局部最小及不能確定隱層的神經(jīng)元個(gè)數(shù)問題;而遺傳算法缺陷是訓(xùn)練時(shí)間較長(zhǎng),訓(xùn)練過程中容易出現(xiàn)早熟。本文采用多種單模式作為算法輸入層,利用極限學(xué)習(xí)機(jī)優(yōu)秀的非線性映射能力改進(jìn)遺傳算法迭代速度慢,容易早熟的缺點(diǎn),在不斷迭代過程中加快子代種群的搜索速度,達(dá)到精度高、收斂快的效果。在氣象局大氣污染物濃度預(yù)報(bào)數(shù)據(jù)基礎(chǔ)上,用提出的改進(jìn)算法與BP、SVM、遺傳等集成方法進(jìn)行對(duì)比實(shí)驗(yàn),驗(yàn)證了改進(jìn)算法的有效性。
遺傳算法作為一種全局優(yōu)化算法,基本原理是取n維向量x=[x1,x2,…,xn]表示成由xi(i=1,2,…,n)所組成的符號(hào)串,符號(hào)串中每一個(gè)xi看作成一個(gè)遺傳基因,則x作為由n個(gè)遺傳基因所組成的染色體鏈,多個(gè)染色體構(gòu)成的種群叫作初始種群。將假設(shè)的染色體置于問題中,首先設(shè)定目標(biāo)函數(shù)對(duì)每個(gè)個(gè)體進(jìn)行評(píng)價(jià),給出適應(yīng)度以評(píng)判染色體的優(yōu)劣程度。按照適者生存的原則,選出適應(yīng)度較高的個(gè)體進(jìn)行復(fù)制、交叉以及變異,產(chǎn)生適應(yīng)度更好的新一代種群,個(gè)體x適應(yīng)度越大,越趨近于最優(yōu)解。隨后,根據(jù)適應(yīng)度選取一定的個(gè)體作為下一代種群繼續(xù)進(jìn)化,如此進(jìn)行多次后,算法收斂于最好的染色體(最優(yōu)或次優(yōu)解)。
遺傳算法存在過早收斂、計(jì)算時(shí)間長(zhǎng)等問題。所以針對(duì)遺傳算法的改進(jìn)國(guó)內(nèi)也有很多研究成果。曲志堅(jiān)等[10]通過自適應(yīng)方法改進(jìn)遺傳算法,有效地把握總體的進(jìn)化方向,提高全局收斂能力。陳璐璐等[11]將遺傳算法與粒子群算法相混合,用粒子群方法優(yōu)化速度和位置,從而提高運(yùn)算速度和精度。
(1)
式中:a=[ai1,ai2,…,ain]即為輸入層與隱藏層間第i個(gè)節(jié)點(diǎn)的連接權(quán)值;βi=[βi1,βi2,…,βin]T即為隱藏層第i個(gè)節(jié)點(diǎn)與輸出層的連接權(quán)值;g(aixj+bi)為第i個(gè)隱層神經(jīng)元的輸出,g(·)為神經(jīng)元激活函數(shù)。單隱層前饋神經(jīng)網(wǎng)絡(luò)模型如圖1所示。
圖1 單隱層前饋神經(jīng)網(wǎng)絡(luò)模型
式(1)還可以表示為
Hβ=Y
(2)
式中:H即為神經(jīng)網(wǎng)絡(luò)的隱含層輸出矩陣,具體形式可以表示為
(w1,…,wL;b1,…,bL;x1,…,xn)=
單隱層前饋神經(jīng)網(wǎng)絡(luò)的隱含層神經(jīng)元定義請(qǐng)參見文獻(xiàn)[12]。因此,當(dāng)激活函數(shù)無(wú)限可微時(shí),隱含層與輸出層的連接權(quán)值通過求解最小二乘值獲得
(3)
式中:H+為矩陣H的廣義逆。
構(gòu)建多模式集成預(yù)報(bào)模型的目標(biāo)是實(shí)現(xiàn)對(duì)天津本地6種大氣污染物(NO2,O3,PM2.5,PM10,CO,SO2)要素進(jìn)行客觀精細(xì)化集成預(yù)報(bào)。資料時(shí)間長(zhǎng)度為2015年全年每日預(yù)報(bào)數(shù)據(jù)值。
本文采用集成多個(gè)單一預(yù)報(bào)模式的方法,針對(duì)春(3月-5月)夏(6月-8月)秋(9月-11月)冬(12月-2月)4個(gè)季節(jié)分別進(jìn)行單模式的選取。所用方法在滿足顯著性檢驗(yàn)基礎(chǔ)上,針對(duì)每個(gè)季節(jié)的8種不同模式以及實(shí)況值通過數(shù)學(xué)公式計(jì)算出相對(duì)偏差(standard deviation,SD)和相關(guān)系數(shù)R進(jìn)行篩選。在此基礎(chǔ)上,將選出的單模式進(jìn)行主成分分析,選取貢獻(xiàn)率在95%以上的各主成分并判斷各單模式在多個(gè)主成分的分析中是否占有一定比重。如式(4)、式(5)所示
(4)
(5)
其中,σo、σp分別表示實(shí)況值和模擬值的標(biāo)準(zhǔn)差,CP為模擬值,CO為實(shí)況值。
春季或冬季篩選出7種單模式或方案:BREMPS、MADE、MOS、MYJ、MYN3、BL、YSU;夏季4種單模式或方案:MOS、MYJ、MYN3、YSU;秋季8種均符合。采用集成預(yù)報(bào)的目的不僅在形式上要比單模式預(yù)報(bào)簡(jiǎn)潔,并且還要具備更好的穩(wěn)定性和精準(zhǔn)度。
為了更好地體現(xiàn)各單模式的客觀預(yù)報(bào)能力,集成過程并不是簡(jiǎn)單地平均分配權(quán)重,平均分配權(quán)重效果并不理想,而是針對(duì)單模式的能力給出合理權(quán)重,并且權(quán)重的分配具體到每個(gè)成員在不同時(shí)間點(diǎn)的區(qū)別。集成預(yù)報(bào)式(6)如下
(6)
模式預(yù)報(bào)會(huì)隨季節(jié)變化呈現(xiàn)一定規(guī)律,過多選取樣本會(huì)造成計(jì)算量大且描述預(yù)報(bào)規(guī)律不準(zhǔn)確,導(dǎo)致過擬合。最佳方案是在分季節(jié)預(yù)報(bào)基礎(chǔ)上找到預(yù)報(bào)時(shí)刻最近30 d的歷史數(shù)據(jù)作為訓(xùn)練樣本,即待集成數(shù)據(jù)所對(duì)應(yīng)訓(xùn)練樣本均為滾動(dòng)更新,每個(gè)樣本的實(shí)況值為網(wǎng)絡(luò)訓(xùn)練的輸出,所以輸出層神經(jīng)元為1。注意模型訓(xùn)練之前要對(duì)數(shù)據(jù)進(jìn)行歸一化處理。
(7)
式中:i為集成預(yù)報(bào)成員模式;t為預(yù)報(bào)時(shí)間點(diǎn);m為成員個(gè)數(shù);n為一次預(yù)報(bào)時(shí)間點(diǎn)數(shù)目;E為集成結(jié)果與實(shí)際數(shù)據(jù)的均方誤差;Wi,t為第i個(gè)成員模式在第t個(gè)時(shí)間點(diǎn)上的權(quán)重系數(shù);Ri,t為該污染物第i個(gè)成員模式在第t個(gè)時(shí)間點(diǎn)的預(yù)報(bào)值;ri,t為第i個(gè)模式在預(yù)報(bào)時(shí)間點(diǎn)t的實(shí)況值,計(jì)算使得污染物集成預(yù)報(bào)均方誤差的倒數(shù)達(dá)到最大。ELM進(jìn)化機(jī)制公式如下
(8)
式中:Wi=[Wi1,Wi2,…,Win]T∈Rn為初始隨機(jī)輸入權(quán)值,bi=[bi1,bi2,…,bin]T∈Rn為初始隨機(jī)輸入偏置值。
訓(xùn)練樣本的構(gòu)建是引入遺傳算子的ELM進(jìn)化機(jī)制的關(guān)鍵,這里采取遺傳算法對(duì)初始種群進(jìn)行進(jìn)化,生成的第evolution代子種群和父種群作為訓(xùn)練樣本,其中父代作為ELM進(jìn)化機(jī)制的輸入,而子代作為輸出。引入的種群進(jìn)化代數(shù)evolution,映射出父代種群和子代種群的復(fù)雜非線性關(guān)系,獲得更好搜索方向的ELM進(jìn)化機(jī)制。evolution的選擇針對(duì)種群進(jìn)化速度至關(guān)重要,選取evolution代數(shù)太多,訓(xùn)練后的ELM進(jìn)化機(jī)制時(shí)效性變差;選取evolution代數(shù)太少,進(jìn)化速度變慢。為此,evolution的選擇通過實(shí)驗(yàn)仿真選取,且選取多代父種群和子種群以擴(kuò)大訓(xùn)練樣本,避免初始階段進(jìn)化不顯著的缺點(diǎn)。算法的整體改進(jìn)克服了傳統(tǒng)遺傳算法中憑經(jīng)驗(yàn)確定算子參數(shù)的問題,使獲得下一代子種群的機(jī)制上更加成熟。步驟如下:首先,將訓(xùn)練樣本集歸一化處理,將輸入、輸出的單模式權(quán)重組成的染色體種群樣本限制在[0,1]區(qū)間中,隨機(jī)給定初始權(quán)重和偏置,指定種群進(jìn)化代數(shù)evolution和隱藏節(jié)點(diǎn)數(shù)N;然后,通過改進(jìn)的ELM算法求出網(wǎng)絡(luò)輸出權(quán)值βi,獲得ELM進(jìn)化機(jī)制。輸入層到隱含層的激活函數(shù)采取sigmoid函數(shù)
(9)
算法第二部分采取ELM結(jié)合改進(jìn)遺傳算法模型,首先隨機(jī)生成單模式權(quán)重并用實(shí)數(shù)編碼組成染色體,形成初始種群。隨后,第一代種群由遺傳算法生成,子種群一部分由遺傳算法生成下一代種群;另一部分由已經(jīng)訓(xùn)練好的ELM進(jìn)化機(jī)制來(lái)生成下一代種群,從而得到更優(yōu)的搜索方向和搜索范圍。兩種機(jī)制根據(jù)計(jì)算得到的種群適應(yīng)度adapt的優(yōu)劣來(lái)判斷下一代子種群的分配比例,具體步驟如下:
(1)初始化種群規(guī)模M、隱藏節(jié)點(diǎn)n等變量。
(3)根據(jù)第一代初始種群,設(shè)定初始分配比例p=0.5。
(4)依據(jù)分配比例p,將遺傳算法的子種群進(jìn)行選擇、交叉、變異算子操作生成下一代種群。
(5)依據(jù)種群進(jìn)化代數(shù)及種群擴(kuò)大數(shù)訓(xùn)練ELM進(jìn)化機(jī)制,根據(jù)比例p獲得部分子種群代入ELM訓(xùn)練機(jī)制進(jìn)行訓(xùn)練。
(6)分別計(jì)算兩種算法的適應(yīng)度adapt1,adapt2,將下代子種群分配比例進(jìn)行調(diào)整
(10)
(7)計(jì)算迭代誤差ek,若ek
(8)達(dá)到最優(yōu),輸出結(jié)果。
2.3.1 參數(shù)選擇
本文篩選了8種模式中符合要求的模式,預(yù)報(bào)結(jié)果采用均方根誤差、絕對(duì)誤差等指標(biāo),對(duì)單模式及多模式集成預(yù)報(bào)進(jìn)行效果評(píng)估。算法參數(shù)見表1。
表1 算法參數(shù)
2.3.2 數(shù)據(jù)處理
模式的選取采用各模式與實(shí)況值的顯著性分析檢驗(yàn),顯示P-value大于0.01,小于0.05,表示差異顯著;P-value小于0.01,差異極顯著。針對(duì)顯著的模式方案進(jìn)行相關(guān)性R以及偏差T分析,相關(guān)性R采用統(tǒng)一標(biāo)準(zhǔn):取絕對(duì)值后0 0.5為低度相關(guān),0.5 如表2所示,在顯著性檢驗(yàn)低于0.05的顯著性差異基礎(chǔ)上,針對(duì)各季節(jié)進(jìn)行偏差及相關(guān)性分析,冬季相關(guān)性和偏差較高,選取相關(guān)性0.8以上且偏差在同范圍的相關(guān)模式CUACE、MADE、MOS、YSU、MYJ、BL。 表2 CO冬季單模式方案篩選 2.3.3 ELM改進(jìn)遺傳算法多模式污染物預(yù)報(bào)模型檢驗(yàn) 圖2給出了全年天津站點(diǎn)6種大氣污染物均方根誤差的3種典型單模式以及SVM算法、BP算法、遺傳算法與改進(jìn)算法的預(yù)報(bào)結(jié)果對(duì)比,按照春夏秋冬4個(gè)季節(jié)進(jìn)行預(yù)報(bào)。 圖2 大氣污染物集成預(yù)報(bào)模式及單模式的均方根誤差比較 由圖2可見,相較于3種單模式,4種集成模式均展現(xiàn)出了較好的均方根誤差能力,而引入遺傳算子的ELM改進(jìn)遺傳算法模式又比其它3種集成模式更優(yōu)秀。改進(jìn)算法的一氧化碳均方根誤差降低到0.46 mg/m3,平均絕對(duì)誤差值降低到0.35 mg/m3;二氧化氮均方根誤差降低到12.60 mg/m3,平均絕對(duì)誤差值降低到9.36 mg/m3;臭氧均方根誤差降低到17.25 mg/m3,平均絕對(duì)誤差值降低到11.7 mg/m3;PM2.5均方根誤差降低到30.21 mg/m3,平均絕對(duì)誤差值降低到23.8 mg/m3;PM10均方根誤差降低到60.50 mg/m3,平均絕對(duì)誤差值降低到38.9 mg/m3;SO2均方根誤差降低到10.75 mg/m3,平均絕對(duì)誤差值降低到7.76 mg/m3。其中冬季預(yù)報(bào)結(jié)果最優(yōu),其次是秋季、春季,預(yù)報(bào)效果最不穩(wěn)定的是夏季。這與參與集成的多個(gè)模式各有優(yōu)劣且夏天受溫度、風(fēng)力等氣象因素影響較大相關(guān),導(dǎo)致預(yù)報(bào)結(jié)果RMSE的增長(zhǎng)。 圖2已顯示出集成模式預(yù)報(bào)效果普遍高于單模式且冬季和夏季分別是預(yù)報(bào)效果最好和最不穩(wěn)定的季節(jié),圖3采用6種大氣污染物的SVM算法集成模式、BP算法集成模式、遺傳算法集成模式、引入遺傳算子的ELM改進(jìn)遺傳算法集成模式與實(shí)況值的預(yù)報(bào)結(jié)果進(jìn)行對(duì)比分析,選取2015年預(yù)報(bào)效果最好的冬季單月以及預(yù)報(bào)較不穩(wěn)定的夏季單月。 圖3 大氣污染物集成預(yù)報(bào)模式與實(shí)況值的結(jié)果比較(1) 由圖3、圖4分析出:①在預(yù)報(bào)效果最好的冬季,4種集成方法均有良好的精度,但從細(xì)節(jié)上可以看出改進(jìn)算法整體上更加貼近實(shí)況值;②預(yù)報(bào)效果最不穩(wěn)定的夏季,BP算法和遺傳算法因存在收斂不到最優(yōu)解,整體預(yù)報(bào)不穩(wěn)定的缺點(diǎn),預(yù)測(cè)曲線與實(shí)況值有一定偏差。改進(jìn)算法集成預(yù)報(bào)利用ELM改進(jìn)搜索方向,加快收斂速度,較其它3種集成方法明顯更加貼近實(shí)況值且穩(wěn)定,而SVM雖然有少量預(yù)報(bào)結(jié)果比較貼近實(shí)況值,但整體上改進(jìn)算法精度更好。 在算法的執(zhí)行時(shí)間上,改進(jìn)算法與遺傳算法相比,30天滾動(dòng)的分季節(jié)遺傳算法在4個(gè)季節(jié)中平均用時(shí)614.98 s,引入遺傳算子的ELM改進(jìn)遺傳算法集成預(yù)報(bào)用時(shí)281.79 s。后者的執(zhí)行時(shí)間明顯更快,這是因?yàn)镋LM優(yōu)良的非線性映射能力,通過進(jìn)化代數(shù)以及父代子代種群的設(shè)置讓遺傳算法擁有了更好的搜索方向,擴(kuò)大了進(jìn)化機(jī)制的搜索范圍。其中迭代總數(shù)500次中遺傳算法平均收斂次數(shù)為381次,引入遺傳算子的ELM改進(jìn)遺傳算法網(wǎng)絡(luò)為247次。由此可見,引入遺傳算子的ELM改進(jìn)遺傳算法比遺傳算法迭代次數(shù)上的優(yōu)化使其更加精確快速。引入遺傳算子的ELM改進(jìn)遺傳算法集成方法可以滿足氣象預(yù)報(bào)中高時(shí)效性的要求,能在盡可能短的時(shí)間內(nèi)提供準(zhǔn)確性高的預(yù)報(bào)結(jié)果。 (1)與遺傳算法集成模型相比,改進(jìn)算法模型改進(jìn)ELM算法輸入并模擬遺傳算子操作,運(yùn)用改進(jìn)的ELM算法與遺傳算法相結(jié)合,具有收斂速度快,不易陷入局部最小的缺點(diǎn),可以較好發(fā)揮大氣污染物預(yù)報(bào)作用。 (2)本文考慮了季節(jié)性影響且設(shè)置30天動(dòng)態(tài)滾動(dòng)數(shù)據(jù)集。結(jié)果顯示,冬季預(yù)報(bào)結(jié)果最優(yōu),其次是秋季、春季,在預(yù)報(bào)精度較不穩(wěn)定的夏天,本文算法也展現(xiàn)了較其它算法更好的預(yù)報(bào)精度和整體穩(wěn)定度。 (3)今后研究方向?yàn)椋孩俑倪M(jìn)算法中選取的父代子代參數(shù)變量通過仿真實(shí)驗(yàn)得出,尚未得到理論證明,需要更深入的研究;②集成預(yù)報(bào)模型的建立受到數(shù)據(jù)集數(shù)量和質(zhì)量等的影響,后續(xù)還需大量數(shù)據(jù)進(jìn)行實(shí)踐。 圖4 大氣污染物集成預(yù)報(bào)模式與實(shí)況值的結(jié)果比較(2)3 結(jié)束語(yǔ)