孫麗華 嚴軍峰 徐健鋒
摘要:
傳統的雷電數據預測方法往往采用單一最優機器學習算法,較少考慮氣象數據的時空變化等現象。針對該現象,提出一種基于集成策略的多機器學習短時雷電預報算法。首先,對氣象數據進行屬性約簡,降低數據維度;其次,在數據集上訓練多種異構機器學習分類器,并基于預測質量篩選最優基分類器;最后,通過對最優基分類器訓練權重,并結合集成策略產生最終分類器。實驗表明,該方法優于傳統單最優方法,其平均預測準確率提高了9.5%。
關鍵詞:
雷電預報;屬性約簡;集成學習;機器學習
中圖分類號:
TP181
文獻標志碼:A
Abstract:
The traditional lightning data forecasting methods often use single optimal machine learning algorithm to forecast, not considering the spatial and temporal variations of meteorological data. For this phenomenon,an ensemble learning based multimachine learning model was put forward. Firstly, attribute reduction was conducted for meteorological data to reduce dimension; secondly, multiple heterogeneous machine learning classifiers were trained on data set and optimal base classifier was screened based on predictive quality; finally, the final classifier was generated after weighted training for optimal base classifier by using ensemble strategy. The experimental results show that,compared with the traditional single optimal algorithm, the prediction accuracy of the proposed model is increased by 9.5% on average.
英文關鍵詞Key words:
lightning forecast;attribute reduction;ensemble learning;machine learning
0引言
雷電是人類面臨的最嚴重的自然災害之一,以江西省為例,6~8月為江西省雷電活動頻發月份,1~2月和10~12月雷電活動少發月份。根據文獻[1]統計,過去幾年當中,江西省雷電活動比例在冬季最高,秋季次之,午后為雷電活動最頻發時刻,12~21時是江西省雷電活動最頻繁的時間段,約占總雷電活動數的79.4%。另據文獻[2]統計,江西省2005—2013年總共發生2808次雷電災害,造成437人死亡,246人受傷,直接經濟損失達到21697萬元,間接經濟損失達到22430萬元。因此,必須加強雷電災害監測及雷電防御工作。
國內外雷電預報是在篩選出與雷電發生相關性高的大氣不穩定參數作為預報因子的基礎上,構建雷電發生的概率預報方程,并區分強雷電與弱雷電。雷電預報所利用的資料主要有探空、雷達和衛星等觀測資料及雷電探測資料。當前業內主要的預報研究方法有:
1)常規預報方法,預報員利用天氣學方法制作出來的,但準確度不高。
2)利用衛星云圖和天氣雷達資料預報對流性天氣,在衛星云圖和雷達回波圖上,通過對流云團的動態顯示,以及對流天氣的預報,從而確定雷電發生和落區的預報。
3)數值預報方法,利用強對流天氣數值模式,對歷史數據建模,從而模擬各個區域出現雷電的情況。
4)閃電定位儀監測是目前對雷電天氣的最佳監測手段,要求不斷地把監測的閃電強度、頻數、閃電性質、落區、時間顯示在雷電預報系統中,應用雷電發生發展理論和引導氣流方法對閃電的未來強度作出預報,顯示未來可能影響本地的雷電。
目前采用機器學習較成功的預報方法有:用決策樹方法制作的,為機場提供自動雷電探測和嚴格導航系統的美國AWIPS雷電產品;澳大利亞氣象局結合數值預報產品制作的雷電預報決策樹方法;印度德里地區用點聚圖方法、多元線性回歸方程法制作的季風爆發前雷電客觀預報,均取得了較好的效果。
相對而言,目前國內外對高分辨率短時臨近雷電預報研究較少。2012年,靳小兵等[3]采用決策樹法,提出結合T213模式資料和地面探空資料算法,建立了雷電預報業務系統。2013年,劉達新等[4]為了滿足應用的要求,提出一種能夠抵抗粗差干擾的定位方法,該方法能夠有效地抵抗粗差的干擾,提高了雷電定位精度。劉沖等[5]提出了一種基于粗糙集正域屬性約簡的雷電預報因子提取方法,該方法采用基數排序方法快速求解決策表的正域,引入可分辨概念度量屬性的重要性,提出了基于可分辨度的核屬性與非核屬性的提取方法,設計了相應的面向雷電預報因子提取的屬性約簡算法。彭永供等[6]在2013年,針對非平衡特征數據集中采用基于歐式距離的采樣算法低效率問題,提出一種基于哈夫曼樹的雷電數據采樣算法,有效的提升了采樣效率。
2014年,滕少華等[7]基于SVM的多組合器協同分析方法,提出了一個具有較高預測準確性和分類穩定性的多組合器協同分析算法,該算法在氣象預測中起到了很好的預測效果。此外,針對傳統的決策樹分類算法不能有效解決海量氣象數據中的知識挖掘問題。2015年,周浩等[8]用二進制表示來構建屬性的二進制信息粒向量,提出了屬性信息增益的計算方法,并結合并行處理模型MapReduce,研究了基于粒計算的ID3(Iterative Dichotomiser 3)決策樹分類的并行化處理新方法,該方法在氣象領域的預測也取得了很好的效果。
現有算法雖然從不同角度來提高雷電預測準確率,但往往采用單一預測算法。在實際應用中,由于地域的不同,不同時空和不同季節對數據處理的要求也是不同的。這種單一的算法預報模型不能反映出數據的動態變化特征,預報的穩定性一般較差。
集成學習也可以稱為提升方法[9]是提高分類準確性和穩定性的重要策略。該方法的基本思想是:對于一個相對復雜的系統來說,單個弱分類器的分類效果可能表現不佳,將多個弱分類器的分類結果進行適當綜合,就能得出比單個弱分類器更精確的分類結果。在眾多的提升算法[10-11]中AdaBoost(Adaptive Boosting)[12]算法最具代表性,算法采用加權多數表決的方法,在每次訓練過程中,通過更新所有樣本權值的方式來增加在上一次分類中被錯誤分類的樣本權值,使其在下一次訓練中被著重考慮。最終結果是加大各弱分類誤差率小的分類器權值,使其在表決中起較大作用,減少分類誤差率大的弱分類器的權值,使其在表決中起較小的作用,從而提升算法性能。
粗糙集理論越來越多地應用到了數據挖掘之中,粗糙集的屬性約簡不需要屬性分布的任何先驗信息,因此其應用結果更為客觀。考慮到粗糙集屬性約簡的客觀性、有效性、尤其是連續型變量的情形,本文將應用粗糙集方法對原始數據集進行屬性約簡[13-14]。
本文針對傳統雷電預測中存在的問題,結合集成學習的思想,提出一個具有個性化的多機器學習競爭策略的混合雷電預測算法框架模型(Personal MultiMachine Learning Competitive Strategy, PMML)。通過將本模型應用于實際預測,取得了較好的預測效果。
1氣象數據
氣象觀測資料為江西省83個氣象站2010—2014年雷電觀測資料,雷電監測定位資料為2010—2014年江西省氣象局雷電監測定位網監測資料。
研究采用的數據來源于江西氣象局業務運行的局地分析預報系統(Local Analysis Prediction System,LAPS)資料數據。該系統垂直層從100hPa開始每間隔50hPa劃分為一層共劃分了21 層,第一層為第0層。水平格距為5km×5km,系統分析區域的以31.0°N,115.0°E為中心。系統不僅提供一些常用的基本物理量的分析場資料數據,同時還提供由某些分析量導出的衍生產品資料,系統的資料產品包括風、溫度、垂直速度、高度、比濕、云量、液態水含量、相對濕度、云分類、云水含量、雪含量、反射率、雨水含量、云底高度、云頂高度、云冰、可降水量、抬升指數、對流抑制能量、肖沃特指數、對流有效位能、抬升凝結高度、K 指數等33 種產品。LAPS每天輸出8個時次(00、03、06、09、12、15、18、21 時)間隔3小時的分析量資料。
2多機器學習雷電預測算法模型
本文提出的多機器學習雷電預測算法模型如圖1所示。該模型包括:數據約簡模塊(含數據清洗、數據離散化)、多機器競爭模塊、集成學習模塊。
其主要學習過程是:
首先,訓練數據集經屬性約簡后,導入多機器學習模塊,對M個備選機器學習算法進行訓練。
然后,在多機器學習競爭模塊中,這些訓練后的機器學習分類器,會通過多測試集進行預測準確性與預測穩定性的競爭,并推選出N個最優基分類器(N 最后,在集成學習模塊,多最優基分類器被提取出來,按照集成策略分別對實際氣象數據進行預測并且統計出最優預測結果。 2.1多機器學習競爭模塊 多機器學習競爭過程的分類器競爭過程如圖2所示。 首先,將數據集隨機劃分為80%的訓練集和20%的測試集,再將20%的測試集采用隨機抽樣方式劃分為多個(K個)測試數據集,然后應用粗糙集進行屬性約簡。 然后,經過約簡后的訓練集數據分別導入M個不同算法進行有指導的機器學習訓練。 最后,通過約簡后的K個測試數據集對M個學習后的算法分類器進行測試,分別得到各個算法的K個預測準確率的均值及方差(即預測穩定性)。 根據上述訓練和測試的結果,通過平均預測準確性的排序和比對,保留N個預測準確性最高分類器作為最終分類器。 多機器學習競爭模塊中的關鍵算法步驟介紹如下: 1)預測準確性算法(Prediction Accuracy, Ca_Accuracy)。 算法思想:訓練后的算法(After Training Algorithm, Alg)導入約簡后的氣象測試數據集信息系統(Meteorological Information System, MIS*)的每條記錄,進行分類預測。其中MIS=(U,C*,D,V, f)。U={x1,x2,…,xi}代表雷電氣象數據記錄對象(元組)集合,其中xi為第i條雷電記錄(元組)。C*和D是雷電數據的所有屬性集合,分為兩個不相交的子集,即條件屬性C*和決策屬性D。條件屬性C*包括表1中提到的所有屬性,決策屬性D的值域:D{0,1},1代表發生雷電,0代表未發生雷電。V:是條件屬性C*的取值集合,Va是屬性a的值域。 f是U×(C*×D)→V的一個信息函數,它為任一個對象x∈U對應的任一屬性a∈C*的屬性取值,即fa(x)∈Va。其預測結果與MIS*決策值進行比對,可以統計出該算法的預測準確率。 算法輸入:訓練后的算法Alg(),測試數據MIS=(U,C*,D,V, f)。 算法輸出:算法Alg在測試集MIS*中的預測準確性γ。 算法步驟流程: 3實驗與結果分析 3.1實驗環境與數據集 1)實驗環境。 本次實驗環境在Windows7系統中使用Matlab 7.1,GrADS 1.9 為實驗平臺進行實驗。
2)實驗數據準備。
本文從2010—2014年江西省境內及周邊的雷電定位資料中提取出南昌市、九江市、上饒市、鷹潭市等4個城市的閃電定位數據。由于南昌和九江相鄰等問題,因此該鄰近區域雷電產生次數統計使用粗糙集來處理。此外,因江西省一年的閃電基本集中在5—10月,故本文從中取出5—8月份對應的閃電數據,以構建本實驗數據集,共計820761條記錄,其中雷電樣本539324條,非閃電樣本281437條。
3.2實驗設置
為了驗證該框架中多機器學習競爭算法策略在不同地域的有效性,本文選擇南昌市、九江市、上饒市、鷹潭市等4個城市在2010年—2014年的5—10月份的氣象數據作為研究對象。算法集合選擇了支持向量機(Support Vector Machine, SVM) 、人工神經網絡(Artificial Neural Network, ANN)、 決策樹(Decision Tree, DTree)、貝葉斯分類器(Naive Bayes, Bayes)、K最近鄰算法(KNearest Neighbor, KNN)作為備選算法。采用本PMML模型與文獻[8]中算法分別進行學習與預報。
3.3實驗結果
如圖3所示,PMML實驗結果可以看出,4個地區獲得的最優基分類器算法各不相同。在對南昌市和九江市兩個不同地區的雷電數據進行預報時,決策樹在南昌的預測平均準確率為93.3%,ANN在九江地區的平均預測準確率為94.4%。對比上饒、鷹潭可以看出,決策樹在上饒地區的預測平均準確率為77.6%,而在鷹潭地區有較高的88.7%的預測平均準確率。可以看出,在不同地域中,預測準確率最高的算法并不總是相同,可見PMML算法在不同地域具有不唯一的最優預測算法。
為了進一步驗證本模型預測算法的有效性,將本文提出的PMML算法與文獻[8]提出的基于粒計算的決策樹算法分別在四個不同的地區進行對比實踐。此次對比實踐當中,由于發生雷電的次數并不是每天都在發生,故以下實驗有針對性的對2014年8月發生雷電的某一天進行實際預測。由于篇幅所限,本文只選取了南昌、九江、上饒、鷹潭等4個地區的實驗結果作為展示。實驗在4個不同地區不同時段各自取了10000條氣象數據,不同地區發生雷電次數不同。如圖4~7顯示的是部分的實驗結果。
從圖4~7可以看出,PMML算法與文獻[8]的預測準確條數隨預測區域的不同而不同。在南昌、九江和鷹潭三個地區,PMML算法與文獻[8]算法預測準確性出現不同層次的交替。同時也可以看出,PMML算法曲線始終隨著實際雷電數曲線的變化而變化,而文獻[8]曲線變化與實際打雷數曲線關聯度不大。說明PMML算法在處理具有不同數據特征的數據集時比一般算法效果更好。總體來看,PMML算法的預測準確性比文獻[8]算法高。
從地域來看,不同地區同一時間段內PMML算法與文獻[8]算法的預測效果差異性不大。但PMML算法的預測結果具有一定穩定性,文獻[8]算法在不同地區僅使用單一算法,不能滿足不同地區不同氣候條件下的數據需要,因而其預測結果不穩定。不論從不同地區還是不同時間段分析, PMML算法在處理不同地區的不同數據時的平均預測準確性都在90%以上,具有較高的預測準確性,因此實踐取得了較好的效果。
為了對實驗結果作進一步分析,本文通過k折交叉驗證(kfold crossValidation)對實驗結果進行對比分析。具體如下:在上文實驗場景下,在不同規模數據集中,分別將數據集隨機劃分為k等分(本文k取5)。取出其中4份作為訓練集,剩余1份作測試集進行實驗,交叉驗證重復5次,直到每個子樣本都驗證一次,從而得到5次結果的平均預測誤差大小。在不同數據集規模進行交叉驗證后,得到表3所示結果對比。
從表3可以看出,本文所提算法在大規模數據集中具有良好的低錯誤率,而對比文獻算法由于預測使用的算法單一,在面對大規模數據集時,預測效果表現不佳。當數據集較大時,數據的特征分布也會發生變化,單一預測算法將不再適用。而本文所提算法由于使用多種經典算法,結合集成策略思想,能夠在不同數據集上適應具有不同特征分布的數據預測變化。
4結語
本文針對傳統雷電預測當中預測算法單一,不能很好地考慮數據集全局的數據特征問題,提出了一種基于多機器學習競爭策略的混合框架模型。模型首先對氣象數據應用粗糙集進行屬性約簡,再通過多機器學習競爭策略競爭產生一定數量的最優基分類器,再應用集成學習的思想,對多個最優基分類器進行集成,最后產生最終分類器。通過在江西省多個不同地區進行實際預測,結果表明該模型比傳統預測方法具有較好的預測準確性。由于氣象數據具有典型的時間序列特征,例如:頻率、波形、方差等,都可充分利用,下一步的研究將著重考慮氣象數據的時序特性,從時間維度來進一步提高預測準確率。
參考文獻:
[1]
李準,楊慧民,林春.南昌地區雷電災害易損性分析及區劃[J].氣象研究與應用,2013,34(3):78-82.(LI Z, YANG H M, LIN C. Regionalization and analysis of lighting disaster vulnerability in Nanchang [J]. Journal of Meteorological Research and Application, 2013, 34(3): 78-82.)
[2]
呂振東,李玉塔,王懷清.江西省雷電時空分布特征及其區域易損性分析[J].能源研究與管理,2016(1):51-57.(LYU Z D, LI Y T, WANG H Q. Analysis of temporal and spatial distribution characteristics of lighting activity and vulnerability in Jiangxi [J]. Energy Research and Management, 2016(1): 51-57.)
[3]
靳小兵,卜俊偉,李一丁,等.四川省雷電監測預警預報系統及其應用研究[J].高原山地氣象研究,2012,32(3):54-57.(JIN X B, BU J W, LI Y D, et al. The research of lightning monitoring and early warning forecast system of Sichuan province and its application [J]. Plateau and Mountain Meteorology Research, 2012, 32(3): 54-57.)
[4]
劉達新,來志云,吉平,等.能抵抗粗差的雷電定位算法研究與仿真[J].科學技術與工程,2013,13(28):8399-8403.(LIU D X, LAI Z Y, JI P, et al. Algorithms and simulation for robust lightning location [J]. Science Technology and Engineering, 2013, 13(28): 8399-8043.)
[5]
劉沖,李向軍,沈華,等.基于基數排序及屬性約簡的雷電預報因子提取方法[J].南昌大學學報(理科版),2013,37(4):344-349.(LIU C, LI X J, SHENG H, et al. Extraction method of lightning forecast factors based on radix sort and attribute reduction [J]. Journal of Nanchang University (Natural Science), 2013, 37(4): 344-349.)
[6]
彭永供,邱桃榮,林于淵,等.基于哈夫曼樹的雷電數據采樣算法[J].計算機工程,2013,39(5):174-177.(PENG Y G, QIU T R, LIN Y Y, et al. Lightning data sampling algorithm based on Huffman tree [J]. Computer Engineering, 2013, 39(5): 174-177.)
[7]
滕少華,樊繼慧,陳瀟,等.SVM多分類器協同挖掘局域氣象數據[J].廣西大學學報(自然科學版),2014,39(5):1131-1137.(TENG S H, FAN J H, CHEN X, et al. Application of SVMbased multiclassifiers in miningcooperatively local area meteorological data [J]. Journal of Guanxi University (Natural Science Edition), 2014, 39(5): 1131-1137.)
[8]
周浩,劉萍,邱桃榮,等.基于粒計算的決策樹并行算法的應用[J].計算機工程與設計,2015,36(6):1504-1509.(ZHOU H, LIU P, QIU T R, et al. Parallel decision tree algorithm based on granular computing [J]. Computer Engineering and Design, 2015, 36(6): 1504-1509.)
[9]
VALIANT L G. A theory of the learnable [J]. Communications of the ACM, 1984, 27(11): 1134-1142.
[10]
NAKAMURA M, NOMIYA H, UEHARA K. Improvement of boosting algorithm by modifying the weighting rule [J]. Annals of Mathematics and Artificial Intelligence, 2004, 41(1): 95-109.
[11]
LOZANO A C, ABE N. Multiclass costsensitive boosting with pnorm loss functions [C]// KDD 08: Proceedings of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM, 2008: 506-514.
[12]
廖紅文,周德龍.AdaBoost及其改進算法綜述[J].計算機系統應用,2012,21(5):240-244.(LIAO H W, ZHOU D L. Review of AdaBoost and its improvement [J]. Computer System and Applications, 2012, 21(5): 240-244.)
[13]
劉宏杰,馮博琴,李文捷,等.粗糙集屬性約簡判別分析方法及其應用[J].西安交通大學學報,2007,41(8):939-943.(LIU H J, FENG B Q, LI W J, et al. Discrimination method of rough set attribute reduction and its applications [J]. Journal of Xian JiaoTong University, 2007, 41(8): 939-943.)
[14]
PAWLAK Z. Rough sets [J]. International Journal of Computer and Information Sciences, 1982, 11(5): 341-356.