劉 冰, 張燁方, 吳生燦, 朱 彪
(1 福建省氣象災害防御技術中心, 福州 350008; 2 福建省南平市氣象局, 福建 南平 353000)
人工智能在數據分析和處理方面具有的顯著優勢,使其在氣象領域的應用受到極大關注。 20 世紀80 年代開始,國內研究者已開始嘗試在氣象領域使用人工智能方法。 如,李吉順等在“北京暴雨短期預報專家系統”中,運用專家系統作暴雨短期預報;楊望月等運用專家神經網絡作前汛期暴雨預報。 近幾年來,在高性能計算機及個人PC 硬件計算能力迅猛發展的引領下,基于機器學習的人工智能氣象研究也隨之增多。 如,王靜等采用單隱層的多層前饋神經網絡模型,對雷達資料進行對流云降水、層狀云降水和混合云降水3 種降水類型的分類;匡秋明等應用隨機森林方法,得到基于雷達、衛星、地面觀測等多元數據的晴雨分類模型;陳勇偉等使用BP 神經網絡模型,選用TT、SI、CIN 等7個對流參數,對雷暴活動做了潛勢預報;楊曉君等建立了基于人工神經網絡算法的兩級海風預報模型;楊仲江等使用序列結構的RNN 模型,對強對流天氣中發生的閃電事件進行預警。 雖然人工智能已逐漸在氣象預報與業務中得到認可和推廣,但當前國內氣象技術人工智能主要集中在機器學習的模式上,深度學習、大數據的研究與產品仍較少。
相比于其它領域或范圍的人工智能應用,由于氣象數據的自有特征,以及預報結果的網格化密集程度高、臨近預警產品計算時間必須足夠短的要求,采用當前流行的Deep_NN、CNN、RNN 等人工智能算法計算方式,往往難以開展或效果無法滿足業務需求。 因此,本文設計了一種基于“多時段、多近鄰模式”的氣象人工智能預報模式,并以雷電臨近預警預報的神經網絡應用為例,對該模式的可行性做了實例驗證。
隨著氣象探測手段及計算機技術的發展,氣象探測與導出參數基本已實現網格化,每個氣象柵格數據均可視為一張單通道的圖片,圖片的分辨率在0.01°~1.0°(經緯度)之間不等。 如,福建省氣象雷達拼圖數據可視為700×800 的網格數據。 氣象柵格數據與普通圖片有很大差別,普通圖片最多只有RGB 3 個通道,而氣象柵格數據中僅直接探測得到的氣象數據類別就可達上百種,通過基礎探測數據演變和計算后的二次物理量數量也有很多。 為了便于氣象預報,氣象專家們通過一定的天氣物理模型和數學算法,對這些探測數據和物理量進行了未來時段的預測,又得到不同預測時間段的新“圖片”。此外,預報過程中還可能涉及世界許多國家共享使用的數值預報產品,且氣象數據還具有明顯的高度特征屬性等,以上這些特征,使得使用氣象預報涉及的數據量極其龐大。
相比于一些領域的人工智能技術(NN、CNN、RNN)是多圖片輸入、有限類別的輸出(如常見的圖片動物類別識別工作,不管圖片數量多少,輸出的類別都是“有限”的。),而氣象預報的神經網絡面臨多圖片輸入、多圖片輸出的難點(如圖1 所示),且輸出的圖片(即預報結果)在分辨率上也有著較高的要求,以福建省范圍內雷電臨近預警預報的神經網絡輸出為例,要求輸出的“圖片”分辨率為700×800,每個網格有0、1 兩種可能值,如果逐個網格進行類別輸出的話,需要有700×800 =560 000種類別,實際操作較為困難。

圖1 氣象預報人工智能輸出特征Fig.1 Output Characteristics of artificial intelligence in weather forecasting
為了得到更好的人工智能氣象預報效果,在進行人工智能氣象預報模型設計時,需要結合天氣學原理,對相關的物理模型進行基于人工智能數據結構的反演,使得人工智能模型既有本身非線性的特征,又包含科學的物理意義。 如:強天氣潛勢預報的天氣學模型,應包含“流型識別”與“物理量配料”兩部分內容。 本文設計的處理模式如圖2 所示。 先選擇大尺度的探測數據,采用CNN 卷積神經網絡,按非監督學習模式提取“流型”的識別網格;再結合該網格融入“物理量配料”的相關參數,循環完成需求網格的逐點預報。 雖然可以在開始時就把“流型識別”、“物理量配料”的所有參數都作為輸入來處理神經網絡,但這將使得“流型識別”的輸入被重復計算(每一個預報網格輸出就要重新計算一遍),大大降低了計算效率。

圖2 強天氣潛勢人工智能預報處理模型Fig.2 Artificial intelligence prediction and processing model of strong weather potential
在網格化的氣象預報計算中,某個網格的預報結果與某個參數前面幾個時段的數值情況、變化規律有關。 此外,在一些小尺度的天氣預報中(即天氣現象只發生在“局部地區”,如短時雷電、強降水、大風、冰雹等),某個網格上下左右一定距離范圍內的相鄰網格數據情況對該網格的預報具有重要影響,有明顯的近鄰特征。
氣象探測數據從采集時刻開始,經過格式化、傳輸、入庫、衍生參數計算到最后進入預報模型,需要經歷一定的時間。 如:當前使用的SWAN 系統,在雷達拼圖產品的數據上,大概延遲約10 ~20 min。如果預報模型的計算速度太慢,時間延遲過長,預報得到的結果傳輸到用戶終端,基本與“天氣實況”同步,甚至一些持續時間很短的單體雷暴,用戶接收到消息時天氣過程已經消退。 因此,人工智能的氣象預報,在短臨預報產品上要求計算時間必須短,才能保證預報的產品具有實用價值。
綜上所述,由于氣象預報本身自有的特點,如果直接套用現有人工智能的常見方法,會出現數據量太大、計算時間過長、設計模型不符合天氣學特征而準確率不高等現象。 因此,對基于人工智能的氣象預報模型進行改進,具有重要的現實意義。
氣象預報輸入雖然可看成是個通道的圖片,但由于輸出要求是單通道的圖片,如果直接按圖片每個格點值的可能結果進行類別劃分、預報的話,該模型的類別數目太大。 因此,本文采取針對單通道輸出圖片的每一個格點進行遍歷計算、預測的方式,建立單個格點的神經網絡算法。
對于每一個格點的天氣預報結果,與其上下左右一定距離的其它格點參數輸入值、變化率有關。 因此,獲取每一個格點預測的輸入指標時,要把不同參數、不同時間序列段、上下左右各拓展一定距離的所有網格,按順序提取出來,展開成一個1的輸入,根據預報結果的可能類型得到相應數目類型的輸出。 如圖3 所示,圖中紅色柵格為待預測的柵格,不同參數紅色方框內的數據都需提取、展開到下面的柵格集。

圖3 多時段、多近鄰模式示意圖Fig.3 Multi-period and multi-neighbor mode illustration
經過上述處理后,每一批次的氣象“圖片”輸入,都可以根據圖片分辨率的大小得到數量可觀的單柵格輸入、輸出實例,一定批次數的氣象“圖片”輸入后,就可以得到大數據量的訓練樣本。 對這些訓練數據設計一定深度層次的中間層和激活函數,就可得到應用于實踐的神經網絡模型,再進行學習和訓練,得到最終具有一定準確率的神經網絡。
本文設計的模型與卷積神經網絡的區別是:卷積神經網絡使用過濾器,對各個通道的氣象參數圖片進行數值計算與特征提取;經過一定數量的卷積、池化層處理并展開全連接后,得到的是對個輸入通道氣象參數圖片的總體特征類別劃分,與實際氣象預報需求的網格化數據不同;而本文設計的模型,實際是將預測輸出的圖片進行基于分辨率的切割處理,滿足實際預報的格式要求。
為了檢驗“多時段、多近鄰模式”氣象神經網絡預報模型,本文以雷電臨近預警預報的神經網絡計算為例,對模型進行了實例檢驗。
當前雷電臨近預警預報常用方法,是使用與雷電發生相關的雷達組合反射率、垂直液態水含量、回波頂高以及閃電定位數據,對上述指標是否達到一定的閾值以及整體移動趨勢、速度、形狀,結合雷電致災單元(單體、多單體、超級單體、颮線等)的持續時間來進行雷電短臨預報。 因此,對于每個柵格的神經網絡雷電預報,也可以按照上述的預報模型進行設計。
以經緯度劃分,0.01°×0.01°為柵格單元。 設當前時間為,計算距離最近的前一個雷達時間,雷達時間即獲得雷達數據的時間,記為每個小時的第00、 06、 12、 …、 54 min。 例 如: 當 前 時 間 為20170817140730, 則 最 近 的 雷 達 時 間 為20170817140600。 以為基準,向后計算3 個時刻的雷達時間,分別記為、、,取這4 個時段的雷達組合反射率等4 個指標的“單通道圖片”為數據集,針對每個柵格在每個時次向經向、緯向的正負方向分別拓展4 個柵格距離,將所有涉及的柵格全部提取出來作為一個輸入(實際得到的輸入維度為1 296,即9×9×4×4=1 296),取該柵格[,30 mins]內是否發生閃電,作為預測輸出(有發生閃電記為1,否則記為0。)中間設計3 個隱藏層,節點之間加入偏置項進行全連接計算,使用線性整流函數()()max(0,) 作為激活函數,最后輸出一個格點,為一個二分類輸出;取累積單次損失量的平均值為損失函數;為了減少神經網絡的過擬合,使用L2 正則化項對每個權重矩陣進行罰值計算,正則項系數均按0.05 選??;設置梯度下降算法初始學習率為0.01,選用Tensorflow 自帶的_函數進行實時學習率的遞減計算,遞減率設置為0.97。
選取福建省2016 年、2017 年內57 個閃電定位數據日文件大于1 MB 的日期對應的閃電、雷達數據為樣本,由于導出的數據中值為1(即實際發生閃電的柵格數據)的樣本量相比于值為0 的樣本量少很多,為了保證訓練樣本的值分類相對平衡,在數據導出時加入了隨機遴選的模塊,以保證訓練樣本數據中兩類數據量相對一致。 此外,剔除了實際樣本數例中,因閃電定位數據、雷達數據探測誤差、計算算法而出現的異常值。 按上述規則最后得到5 722 415 條數據,其中有閃電發生的樣本為2 486 544個,沒有閃電發生的樣本為3 235 871個。將上述訓練數據導入到圖4 所示模型中進行訓練,單次訓練個數512 個,按80%的樣本數據進行訓練,20%的樣本數據進行準確率校驗,經過約8 萬次訓練后,最終測試準確率維持在95%左右。

圖4 雷電臨近預警神經網絡模型示意圖Fig.4 Schematic diagram of neural network model for lightning impending early warning
為了檢驗本文設計模型的效果,結合文獻[8-10]的雷電短臨預警方法(使用閃電、雷達數據進行閾值控制或外推),按閃電逼近網格距離的大小、變化趨勢以及雷達數據(組合反射率、垂直液態水含量、回波頂高)的控制閾值,建立雷電臨近預警預報模型;選取福建省2018 年5 月~2018 年8 月期間閃電定位數據日文件大小排名前20 d 的閃電定位數據,及對應的SWAN 雷達數據作為樣本,分別使用上述兩種模型進行預警與準確率計算,驗證結果見表1。

表1 2 種模型雷電臨近預警平均準確率比較(30 mins 預警)Tab.1 Comparison of average accuracy rate of lightning warning between two models (30 mins Warning)
本文研究的模型(4 個時間序列、4 個拓展網格)自2018 年6 月下旬以來,在福建省實際業務工作中進行了試運行,總體上看,本文所建立的神經網絡模型在雷電過程的預警應用中取得了良好的效果,每個數據集的計算時間在1 min 左右,基本在模型所設立30 mins 預警時效內,對未來雷電發生區域做出了預報,對于一些首次雷電發生區域的預警也做出了判斷。 以福建省2018 年9 月7 日14 時階段的預警結果為例,圖5(a)中的紅色區域表示未來可能發生雷電的預警柵格,圖5(b)中紅色“-”表示負極性閃電,黃色“+”表示正極性閃電。 預警結果與當時福建省范圍內的幾個雷暴活動區域基本一致。

圖5 福建省2018 年9 月7 日14 時預警與實際雷電對比圖Fig.5 Comparison between prediction and true data on September 7, 2018, at 14:00 in Fujian Province
本文在分析人工智能氣象預報輸入數據與輸出結果特點的基礎上,結合氣象預報相關天氣學原理,設計了基于“多時段、多近鄰”方式的神經網絡模型,用于滿足氣象預報中多通道圖片輸入、圖片輸出的業務需要。以雷電臨近預警預報的神經網絡應用為例,對設計的模型做了實例檢驗,結果表明該模型可滿足氣象預報人工智能模型對數據特征、時間響應、準確率方面的需求,可以嘗試拓展到其他氣象預報領域的應用。
由于計算機硬件設備的限制,本文在“多時段、多近鄰”的實例應用中(福建省雷電臨近預警)僅使用4 個時間序列、4 個柵格距離拓展的計算模式,盡管已經取得了較良好的效果,但增加“多時段、多近鄰”的時間序列、距離拓展能否取得更好結論,還有待進一步研究和討論。