包浩
摘要 本文使用2015年4月至2016年9月NCEP再分析資料(1°×1°)、淄博地區(qū)氣象觀測(cè)資料及淄博市環(huán)境監(jiān)測(cè)中心提供的污染物濃度資料,采用BP神經(jīng)網(wǎng)絡(luò)建立預(yù)報(bào)模型,并利用歐洲細(xì)網(wǎng)格資料及CUACE模式資料對(duì)淄博地區(qū)進(jìn)行了72 h站點(diǎn)霾預(yù)報(bào)試驗(yàn)。結(jié)果表明,BP神經(jīng)網(wǎng)絡(luò)模型對(duì)淄博地區(qū)霾預(yù)報(bào)的準(zhǔn)確率達(dá)到74%以上,漏報(bào)率僅為5.37%,空?qǐng)?bào)率略偏高,其中淄博站、沂源站、高青站的預(yù)報(bào)準(zhǔn)確率達(dá)到82%以上,對(duì)實(shí)際業(yè)務(wù)中霾的預(yù)報(bào)有一定參考意義。
關(guān)鍵詞 霾;人工神經(jīng)網(wǎng)絡(luò);R語(yǔ)言;BP算法;預(yù)報(bào)方法;山東淄博
中圖分類號(hào) P457.7 文獻(xiàn)標(biāo)識(shí)碼 A 文章編號(hào) 1007-5739(2017)10-0209-03
近年來(lái),淄博地區(qū)空氣中的細(xì)顆粒物和氣體污染物明顯增加,空氣質(zhì)量變差。這不僅對(duì)市民的健康構(gòu)成了危脅,而且降低了大氣的能見度,對(duì)交通出行造成影響,也通過遠(yuǎn)距離傳輸對(duì)周邊地區(qū)帶來(lái)一定的影響。
目前,國(guó)內(nèi)外霾的預(yù)報(bào)主要有數(shù)值預(yù)報(bào)、模式輸出統(tǒng)計(jì)預(yù)報(bào)等方法。數(shù)值預(yù)報(bào)方法在大氣動(dòng)力學(xué)模式的基礎(chǔ)上耦合了化學(xué)模塊,直接模擬大氣污染與大氣氣象要素場(chǎng)的變化過程,具有良好的發(fā)展前景;但受到源排放清單不確定等因素影響,在日常預(yù)報(bào)業(yè)務(wù)中受到一定限制。模式輸出統(tǒng)計(jì)預(yù)報(bào)方法首先依據(jù)污染物濃度數(shù)據(jù)集篩選出關(guān)聯(lián)性強(qiáng)的氣象因子,然后利用統(tǒng)計(jì)方法建立預(yù)報(bào)方程,最后利用模式輸出量代入預(yù)報(bào)方程進(jìn)行預(yù)報(bào)。陳亦君等應(yīng)用基于系統(tǒng)辨識(shí)理論的實(shí)時(shí)迭代模式對(duì)WRF模式預(yù)報(bào)結(jié)果進(jìn)行后處理,建立了上海地區(qū)霾天氣的模式輸出統(tǒng)計(jì)方法,結(jié)果表明霾日預(yù)報(bào)成功率為72.7%~73.7%[1]。毛宇清等使用SVM分類和回歸方法分別建立了南京地區(qū)霾日分類預(yù)報(bào)模型和有霾日能見度預(yù)報(bào)模型,預(yù)報(bào)試驗(yàn)結(jié)果表明南京地區(qū)霾日的SVM分類預(yù)報(bào)結(jié)果TS評(píng)分均在0.4以上,有霾日14:00能見度的SVM回歸預(yù)報(bào)結(jié)果準(zhǔn)確率均達(dá)到86%以上[2]。以上研究主要是基于霾與氣象條件之間的相關(guān)性,但是由于霾的嚴(yán)重程度受氣溶膠濃度的影響很大,所以同時(shí)考慮氣象條件、氣溶膠濃度將很大程度上提高霾預(yù)報(bào)準(zhǔn)確率。本研究嘗試通過建立動(dòng)態(tài)的預(yù)報(bào)模型,利用氣象和大氣化學(xué)模式輸出的結(jié)果來(lái)實(shí)現(xiàn)霾等級(jí)預(yù)報(bào)。
1 人工神經(jīng)網(wǎng)絡(luò)和R語(yǔ)言
1.1 人工神經(jīng)網(wǎng)絡(luò)
神經(jīng)網(wǎng)絡(luò)是由簡(jiǎn)單處理單元構(gòu)成的大規(guī)模并行分布式處理器,天然地具有存儲(chǔ)經(jīng)驗(yàn)知識(shí)和使之可用的特性。神經(jīng)網(wǎng)絡(luò)在2個(gè)方面與大腦相似:一是神經(jīng)網(wǎng)絡(luò)是通過學(xué)習(xí)過程從外界環(huán)境中獲取知識(shí);二是互聯(lián)神經(jīng)元的連接強(qiáng)度,即突觸權(quán)值,用于存儲(chǔ)獲取的知識(shí)[3]。
根據(jù)網(wǎng)絡(luò)結(jié)構(gòu)的不同,可將神經(jīng)網(wǎng)絡(luò)分為3種,即前饋網(wǎng)絡(luò)、競(jìng)爭(zhēng)網(wǎng)絡(luò)以及遞歸聯(lián)想存儲(chǔ)網(wǎng)絡(luò),本文采用基于誤差反向傳播算法的多層前饋神經(jīng)網(wǎng)絡(luò),簡(jiǎn)稱BP神經(jīng)網(wǎng)絡(luò)。BP網(wǎng)絡(luò)是1986年由Rumelhart和McCelland為首的科學(xué)家小組提出的,是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一。BP網(wǎng)絡(luò)具有非線性映射、自適應(yīng)、自學(xué)習(xí)和自組織能力,通過分布儲(chǔ)存和并行處理的方式,使其具有很強(qiáng)的容錯(cuò)性和很快的處理速度。BP算法本質(zhì)是優(yōu)化計(jì)算中的梯度下降法,利用誤差對(duì)于權(quán)、閾值的一階導(dǎo)數(shù)信息,應(yīng)用誤差反傳原理不斷調(diào)整網(wǎng)絡(luò)的權(quán)值、閾值,使網(wǎng)絡(luò)輸出值與期望值之間的誤差平方和達(dá)到最小或小于設(shè)定精度。BP網(wǎng)絡(luò)模型由輸入層、隱藏層和輸出層構(gòu)成,如圖1所示。
1.2 R語(yǔ)言與神經(jīng)網(wǎng)絡(luò)
與起源于貝爾實(shí)驗(yàn)室的S語(yǔ)言類似,R是一種為統(tǒng)計(jì)計(jì)算和繪圖而生的語(yǔ)言和環(huán)境,它是一套開源的數(shù)據(jù)分析解決方案,由一個(gè)龐大且活躍的全球性研究型社區(qū)維護(hù)。R語(yǔ)言提供了各式各樣的數(shù)據(jù)分析技術(shù),擁有頂尖水準(zhǔn)的制圖功能,可進(jìn)行交互式數(shù)據(jù)分析和探索,易于擴(kuò)展,并為快速編程實(shí)現(xiàn)新的統(tǒng)計(jì)方法提供了一套十分自然的語(yǔ)言[4]。
R有大量的擴(kuò)展包可以使用,目前有1萬(wàn)多個(gè)包可下載使用,這些包提供了橫跨各種領(lǐng)域、數(shù)量驚人的新功能,包括分析地理數(shù)據(jù)、處理蛋白質(zhì)質(zhì)譜、心理測(cè)試分析、金融分析、數(shù)據(jù)挖掘、人工智能、數(shù)據(jù)可視化等功能,神經(jīng)網(wǎng)絡(luò)相關(guān)的包就有19個(gè),常用的有nnet、AMORE、RSNNS等,其中AMORE包提供了豐富的控制參數(shù),本研究采用了AMORE包進(jìn)行霾預(yù)報(bào)方法研究。
2 神經(jīng)網(wǎng)絡(luò)預(yù)報(bào)模型的建立
分析資料采用淄博市8個(gè)地面氣象觀測(cè)站點(diǎn)的常規(guī)觀測(cè)資料、NCEP再分析資料(1°×1°)及淄博市環(huán)境監(jiān)測(cè)站提供的污染物濃度資料組建模型訓(xùn)練樣本。構(gòu)建樣本時(shí)間段為2015年4月至2016年9月。
2.1 預(yù)報(bào)因子的選取
本研究針對(duì)預(yù)報(bào)因子的選取主要考慮影響霾天氣形成的氣象因子和主要污染物,包括地面氣壓、溫度、露點(diǎn)溫度、相對(duì)濕度、水平風(fēng)速及其上空對(duì)流層中低層(500~850 hPa)的水平風(fēng)垂直切變、對(duì)流層中低層的層結(jié)不穩(wěn)定及近地面層的逆溫,以及主要污染物PM2.5濃度等9個(gè)預(yù)報(bào)因子作為訓(xùn)練樣本,此處通過計(jì)算850 hPa與1 000 hPa假相當(dāng)位溫垂直差代表對(duì)流層中低層的層結(jié)不穩(wěn)定、925 hPa與1 000 hPa溫度垂直差代表近地面層的逆溫。
2.2 建模訓(xùn)練樣本的處理
2015年4月1日至2016年9月30日,樣本數(shù)據(jù)為1次/d,每個(gè)站的總樣本數(shù)為549個(gè)。為提高霾天氣預(yù)報(bào)準(zhǔn)確率,在保證有霾和無(wú)霾樣本的代表性情況下,本研究保留了有霾的樣本,在無(wú)霾樣本中隨機(jī)剔除部分樣本,提高了霾日樣本所占比例,最終樣本數(shù)見表1。
2.2.1 樣本資料的歸一化處理。為消除預(yù)報(bào)因子之間的量綱影響,提高訓(xùn)練樣本的速度,首先要對(duì)網(wǎng)絡(luò)輸入數(shù)據(jù)進(jìn)行歸一化處理,使其值在0~1之間。為保證建立的模型具有一定的外推能力,最好使數(shù)據(jù)預(yù)處理后的值在0.2~0.9之間。本研究中因子的歸一化處理方法如下: f(x)=(x-xmin)×0.7/(xmax-xmin)+0.2,式中xmax代表該組數(shù)據(jù)中的最大值,xmin代表最小值。對(duì)網(wǎng)絡(luò)輸出結(jié)果進(jìn)行反算即可得到實(shí)際值。
2.2.2 樣本資料的分層抽樣。利用分層抽樣技術(shù)對(duì)總體樣本進(jìn)行抽樣,從無(wú)霾樣本和不同等級(jí)的霾樣本中抽樣,將總體樣本劃分為訓(xùn)練樣本和測(cè)試樣本2個(gè)部分,訓(xùn)練樣本占總樣本的80%,測(cè)試樣本占20%。分層抽樣采用R語(yǔ)言的samping包中的strata函數(shù)來(lái)實(shí)現(xiàn),抽樣方法選用無(wú)放回的簡(jiǎn)單隨機(jī)抽樣法(srswor)。
2.3 神經(jīng)網(wǎng)絡(luò)模型的建立
神經(jīng)網(wǎng)絡(luò)模型由1個(gè)輸入層、1個(gè)輸出層和若干個(gè)隱藏層構(gòu)成,輸入層由9個(gè)節(jié)點(diǎn)組成,輸出層由1個(gè)節(jié)點(diǎn)組成。輸入層節(jié)點(diǎn)數(shù)和輸出層節(jié)點(diǎn)數(shù)確定后,對(duì)隱藏層節(jié)點(diǎn)數(shù)和隱藏層數(shù)進(jìn)行優(yōu)化。如果隱藏層節(jié)點(diǎn)數(shù)過少,網(wǎng)絡(luò)不具備必要的學(xué)習(xí)能力和信息處理能力;反之,如果過多,則會(huì)大大增加網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜性,使網(wǎng)絡(luò)在學(xué)習(xí)過程中更容易陷入局部極小點(diǎn),而且會(huì)使網(wǎng)絡(luò)的學(xué)習(xí)速度變得很慢。一般在確定隱藏層節(jié)點(diǎn)數(shù)時(shí)采用經(jīng)驗(yàn)公式或逐步試驗(yàn)法。至于網(wǎng)絡(luò)中的神經(jīng)元層數(shù),大多數(shù)實(shí)際的神經(jīng)網(wǎng)絡(luò)僅有2~3層神經(jīng)元,很少有4層或以上[5]。因此,經(jīng)過反復(fù)試驗(yàn),最后確定采用含有2個(gè)隱藏層的神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。將樣本資料輸入網(wǎng)絡(luò)進(jìn)行循環(huán)運(yùn)算,運(yùn)算過程采用精度和循環(huán)次數(shù)雙層控制,達(dá)到所需精度或一定循環(huán)次數(shù)后,利用得到確定的網(wǎng)絡(luò)權(quán)、閾值即構(gòu)建所需的神經(jīng)網(wǎng)絡(luò)預(yù)報(bào)模型(圖2)。
構(gòu)建神經(jīng)網(wǎng)絡(luò)預(yù)報(bào)模型時(shí)誤差準(zhǔn)則選用最小均方(LMS)算法,隱藏層的激活函數(shù)選用sigmoid函數(shù),輸出層的激活函數(shù)選用purelin函數(shù),訓(xùn)練方法采用動(dòng)量自適應(yīng)梯度下降法(ADAPTgdwm)。
2.4 神經(jīng)網(wǎng)絡(luò)模型的測(cè)試
利用總樣本中20%的數(shù)據(jù)作為測(cè)試樣本集進(jìn)行測(cè)試,神經(jīng)網(wǎng)絡(luò)模型輸出的霾日預(yù)報(bào)準(zhǔn)確率達(dá)到80%以上。神經(jīng)網(wǎng)絡(luò)訓(xùn)練和測(cè)試部分代碼如下:
#進(jìn)行訓(xùn)練
net <- newff(n.neurons = c(9,3,3,1),learning.rate.global = 1e-2,momentum.global = 0.5,error.criterium = "LMS",Stao = NA,hidden.layer = "tansig",output.layer = "purelin",method = "ADAPTgdwm");
result <- train(net,train_set[1:9],train_set[10],error.criterium = "LMS",report = TRUE,show.step = 1000,n.shows=5);
#進(jìn)行測(cè)試
y <- sim(result$net,test_set[1:9]);
y[which(y<0)] <- 0;
y[which(y>4)] <- 4;
y <- round(y);
precision <- sum(test_set$phenomenon==y)/length(y);
cat(′測(cè)試準(zhǔn)確率為′,precision,′\n′);
3 預(yù)報(bào)結(jié)果的檢驗(yàn)分析
本研究所用的神經(jīng)網(wǎng)絡(luò)模型由R語(yǔ)言進(jìn)行建模并完成測(cè)試,基于神經(jīng)網(wǎng)絡(luò)算法搭建了淄博地區(qū)站點(diǎn)霾等級(jí)預(yù)報(bào)系統(tǒng)。系統(tǒng)中的氣象因子使用歐洲細(xì)網(wǎng)格數(shù)值預(yù)報(bào)產(chǎn)品,環(huán)境因子使用CUACE霧霾數(shù)值模式產(chǎn)品,利用每天20:00的預(yù)報(bào)產(chǎn)品,預(yù)報(bào)未來(lái)72 h的霾等級(jí),時(shí)間分辨率為3 h。利用該系統(tǒng)對(duì)2016年10月26日至11月27日期間淄博地區(qū)的霾進(jìn)行了72 h預(yù)報(bào)試驗(yàn),并把得到的預(yù)報(bào)結(jié)果與地面觀測(cè)實(shí)況作對(duì)比分析(表2)。
對(duì)預(yù)報(bào)檢驗(yàn)結(jié)果分析如下:
(1)從單站預(yù)報(bào)情況看,5個(gè)站點(diǎn)的預(yù)報(bào)準(zhǔn)確率達(dá)到了75%以上,預(yù)報(bào)模型輸出的預(yù)報(bào)結(jié)果可用性較高,而站點(diǎn)54824、54825的空?qǐng)?bào)率和漏報(bào)率較高,這可能與EC模式、CUACE模式的預(yù)報(bào)誤差有關(guān)。以淄博站(54830)為例,在2016年10月26日至11月27日期間輸入3 h間隔預(yù)報(bào)產(chǎn)品,預(yù)報(bào)次數(shù)為768次,預(yù)報(bào)結(jié)果為無(wú)霾正確632次、無(wú)霾空?qǐng)?bào)80次、有霾漏報(bào)45次、有霾正確11次,漏報(bào)率為5.86%,空?qǐng)?bào)率為10.42%,準(zhǔn)確達(dá)到83.72%。
(2)從總體情況來(lái)看,淄博8個(gè)站點(diǎn)的平均預(yù)報(bào)準(zhǔn)確率為74.02%,平均漏報(bào)率為5.37%,平均空?qǐng)?bào)率為20.61%,霾的漏報(bào)率較低,空?qǐng)?bào)率略高。
(3)從霾日分級(jí)預(yù)報(bào)情況看(表3),除54824站預(yù)報(bào)偏輕外,霾等級(jí)預(yù)報(bào)整體偏重。
4 結(jié)論與討論
(1)本研究采用BP算法的人工神經(jīng)網(wǎng)絡(luò),利用NCEP再分析資料和實(shí)況觀測(cè)資料建立了淄博地區(qū)8個(gè)站點(diǎn)的霾等級(jí)預(yù)報(bào)模型,經(jīng)過測(cè)試樣本測(cè)試,霾日預(yù)報(bào)準(zhǔn)確率達(dá)到80%以上。
(2)本研究基于人工神經(jīng)網(wǎng)絡(luò)模型,利用歐洲細(xì)網(wǎng)格數(shù)值模式輸出的氣象預(yù)報(bào)產(chǎn)品及CUACE模式輸出的污染物濃度預(yù)報(bào)產(chǎn)品搭建了淄博地區(qū)站點(diǎn)霾等級(jí)預(yù)報(bào)系統(tǒng),并經(jīng)過1個(gè)月的預(yù)報(bào)檢驗(yàn),平均預(yù)報(bào)準(zhǔn)確率可達(dá)74%以上,對(duì)實(shí)際業(yè)務(wù)中霾的預(yù)報(bào)有一定參考意義。
(3)本研究訓(xùn)練樣本數(shù)據(jù)由于受到PM2.5數(shù)據(jù)限制,樣本偏小,有待進(jìn)一步補(bǔ)充,以提高神經(jīng)網(wǎng)絡(luò)模型的穩(wěn)定性和準(zhǔn)確性。
(4)由于本研究中構(gòu)建的霾等級(jí)預(yù)報(bào)系統(tǒng)是在利用數(shù)值預(yù)報(bào)產(chǎn)品解釋應(yīng)用的基礎(chǔ)上進(jìn)行的,準(zhǔn)確率受到數(shù)值預(yù)報(bào)本身準(zhǔn)確性的影響,所以檢驗(yàn)系統(tǒng)預(yù)報(bào)準(zhǔn)確率的同時(shí)對(duì)數(shù)值預(yù)報(bào)產(chǎn)品的檢驗(yàn)和訂正很有必要。
5 參考文獻(xiàn)
[1] 陳亦君,尤佳紅,束炯,等.基于WRF-RTIM的上海地區(qū)霾預(yù)報(bào)MOS方法研究[J].環(huán)境科學(xué)學(xué)報(bào),2014,34(3):574-581.
[2] 毛宇清,孫燕,姜愛軍,等.南京地區(qū)霾預(yù)報(bào)方法試驗(yàn)研究[J].氣候與環(huán)境研究,2011,16(3):273-279.
[3] HAYKIN S.神經(jīng)網(wǎng)絡(luò)與機(jī)器學(xué)習(xí)[M].申富饒,譯.北京:機(jī)械工業(yè)出版社,2011:1.
[4] KABACOFF R I.R語(yǔ)言實(shí)戰(zhàn)[M].高濤,譯.北京:人民郵電出版社,2013:4-5.
[5] HAGAN M T.神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)[M].戴葵,譯.北京:機(jī)械工業(yè)出版社,2002:15.