殷利平, 劉宵瑜, 盛紹學, 溫華洋, 邱康俊
(1.南京信息工程大學自動化學院, 南京 210044; 2. 南京信息工程大學江蘇省大氣環境與裝備技術協同創新中心, 南京 210044; 3. 安徽省氣象信息中心, 合肥 230031)
目前自動氣象站對大氣能見度要素的觀測多采用散射式能見度儀采樣,但是在日常工作中能見度儀采樣的數據出錯率比較高,故障一般由如下幾種情況造成:能見度儀的鏡頭前或兩個鏡頭之間有異物堵塞,如蜘蛛結網、小鳥做窩;在一些施工區、省道縣道等公路,由車輛揚起的灰沙、粉塵可能導致能見度采樣區內顆粒物變化不定;惡劣天氣下,由于局部地區的風速、風向變化比較大且快,導致樹葉、雜物被吹起恰好位于能見度儀的采樣區內;雨雪天氣、積雪和天氣寒冷凝結的冰霜也可能使能見度儀鏡頭表面受污染嚴重,導致能見度數據不準確。高質量的實時能見度氣象數據是短時氣象預報、實時路況分析和大氣環境質量評估的重要依據,所以對能見度氣象觀測數據進行質量控制具有重要意義[1-4]。
目前大多數地區對地面單站觀測數據的質量控制使用的仍是傳統質量控制方法,即為將格式檢查、范圍檢查、極值檢查以及內部一致性檢查相結合的綜合檢查法[5-9],針對傳統質控算法的不足,閩錦鐘等[10]結合江蘇、安徽多區域站資料提出二次迭代的時間、空間一致性檢查的綜合判別質量控制法,提高對可疑觀測資料的判別精度;葉小嶺等[11]在氣溫與相對濕度之間的耦合關系上,用基因表達式編程(gene expression programming,GEP)算法對逐時的地面氣溫資料進行單站的質量控制,該方法能夠在時間維度對氣象資料進行有效的質量控制,上述兩種算法本質還是傳統質控算法的延續,對數據的處理不夠快。為了有效提高數據處理能力,況華等[12]提出一種基于雙向長短期記憶神經網絡的異常數據檢測方法,建立時序預測模型,通過對比預測值和實際值的誤差檢測異常值,該方法檢測過程相對簡單,所以處理數據速度較快,但是該方法應用范圍有限;國外學者也提出了一系列關于氣象數據質量控制的方法,其中最具代表性的是Hubbard教授團隊[13]提出的空間回歸檢驗法(spatial regression test, SRT),該方法利用鄰近站觀測值計算目標站的空間回歸預測值,通過目標值是否在預測置信區間之內來判定數據是否可疑,該方法應用廣泛,但是對地形復雜度高的地區,性能不夠理想。
為了進一步提高對氣象數據的處理能力,獲得高質量的地面能見度觀測資料,現基于基準數據訓練反向傳播(back propagation, BP)神經網絡,運用粒子群優化(particle swarm optimization, PSO)算法來優化BP神經網絡中的權值閾值,結合馬爾科夫鏈(Markov chain, MC)理論對神經網絡的估計值進行修正,從而提出一種適合單站單要素的質量控制方法,即PSO-BP-MC質量控制方法,并將其應用到地面能見度觀測資料中,以期對能見度觀測資料中的存疑數據識別精度高,且具有地區和氣候適應性強的特點。
氣象數據全部來自安徽氣象局歷年來匯總的氣象站觀測資料。如圖1所示,安徽地形復雜多樣,不同地形氣候不一,因此所得到的觀測數據差值較大。考慮到地形因素對模型質量控制效果的影響,以高山、山谷、平原、水源地地形作為特征,分別選取黃山站(高山地形)、山南溪谷站(山谷地形)、靈璧站(平原地形)和白澤湖站(水源地地形)的歷史數據進行試驗,這些監測站區域分布如圖2所示。

圖1 安徽省地形圖Fig.1 Topographic map of Anhui Province

圖2 安徽省各區域小型氣象站分布Fig.2 Distribution map of meteorological stations in Anhui Province
為了保證數據的時效性,對于每種地形觀測站點,從2017—2019年安徽氣象局記錄的數據當中選取較為完整的能見度小時時序數據,并將其作為基準資料,這些基準數據均經過了一般的質量控制流程,已經剔除了明顯的粗大誤差,能正確地反映當時觀測的能見度數值。為了測試質量控制方法的有效性,一般需人為地向被檢站的基準資料中添加人工誤差,以真實反映實際情況下觀測數據的出錯率。可將被檢站的基準資料中的部分數據置換為隨機誤差數據,置換率一般不超過5%。將基準資料添加人工誤差后得到的數據稱為實驗數據,該實驗數據A可通過公式給出,即

(1)


Wiα(i=1,2,…,m; α=1,2,…,p)為輸入層到隱含層的權值;Wαβ(α=1,2,…,p; β=1)為隱含層到輸出層的權值;Op為隱含層輸出;θα(α=1,2,…,p)為隱含層的閾值;σ1為輸出層閾值;Yh為期望輸出;e為神經網絡期望輸出與實際輸出的誤差圖3 BP神經網絡能見度預估的結構圖Fig.3 Structure diagram of BP neural network for visibility prediction
BP算法在優化時采用階梯搜索法,易陷入局部最小點。考慮PSO算法具有較強的全局收斂能力,并能以較大概率求得全局最優解[14],在2.2節將粒子群算法的全局搜索和BP神經網絡的局部搜索相結合,以此優化BP神經網絡的權閾值,進而提高網絡的訓練收斂速度。
采用粒子群算法優化BP神經網絡,通過跟蹤個體粒子極值和全體粒子極值來獲得BP神經網絡最佳的初始權值和閾值,加快BP神經網絡收斂速度,進而提高BP神經網絡預估性能。對于粒子群優化算法,每個粒子的向量維度需包含BP網絡全部的權閾值總個數,因此,每個粒子的維度D為
D=DinDh+DhDout+Dh+Dout
(2)
式(2)中:Din、Dh、Dout分別為輸入層、隱含層和輸出層的節點個數。對于能見度數據預估模型,輸入層有m個節點,隱含層有p個節點,輸出層節點數為1,所以維度為D=mp+2p+1。PSO優化算法由J個D維粒子組成群落x=(x1,x2,…,xJ)T,第i個粒子的信息包括粒子位置xi=(xi1,xi2,…,xiD)T和粒子速度vi=(vi1,vi2,…,viD)T,i=1,2,…,J。用gi=(gi1,gi2,…,giD)T表示其個體極值,即第i個粒子在迭代過程中得到其最優適應度時所在的位置,Qg=(Q1,Q2,…,QD)T表示種群全局的極值,即全體粒子在迭代過程中取得最優適應度時所在的位置[15]。在每一次迭代過程中,逐步地向當前所尋到的最優粒子的位置靠近,并更新粒子的速度和位移,其更新模型為

(3)


(4)
為了進一步提高能見度預測的精度,依據若干歷史時刻的殘差情況對預測時刻的殘差情況進行預測并修正,利用馬爾科夫鏈模型修正能見度預估值,其算法具體步驟如下。

步驟2建立狀態轉移概率矩陣。由誤差狀態Ei轉為誤差狀態Ej的馬爾科夫轉移概率Pij為
Pij=P(ΔEi→ΔEj)=aij/ai
(5)


(6)

步驟3預測值修正。取預測的誤差狀態區間中點作為預測值的估計誤差,則預測值的修正值為

(7)
式(7)中:Δup、Δdown分別為預測的相對誤差所處狀態區間的上下區間值;h(x)為2.2節中根據PSO-BP神經網絡得到的預測值。
步驟4對后續時序數據殘差修正。若前一時刻通過能見度數據質量檢測,則將前一時間預測值與實際值的殘差加入原序列中重新構置一步狀態轉移矩陣,重復步驟3、步驟4。
PSO-BP-MC單站質量控制法的主要思想是:首先通過BP網絡將歷史觀測資料中除能見度以外的其他氣象要素數據用于BP網絡學習,利用粒子群算法全局性搜索的特點,尋找合適的神經網絡閾值和網絡初始連接權值;然后進行新一輪BP神經網絡訓練,提高局部收斂速度和系統預測的準確性;再對學習網絡輸入下一時刻(或多個時刻)所觀測要素的時間序列,基于經過訓練的BP神經網絡模型輸出此時對應的能見度估計值;最后結合MC模型修正PSO-BP神經網絡模型估計值。總的來說,PSO-BP-MC能見度質量控制方法的流程圖如圖4所示。
若被檢站該時刻的觀測值是由非氣象因素造成的,觀測值與估計值之間的差值一定會高于平均水平,即可認為該時刻的觀測值可疑,需進行可疑性標記[16-17]。基于PSO-BP-MC的能見度數據質量控制方法的具體流程可總結如下。
步驟1首先取待檢站的位置信息及被檢站被檢時刻前20 d長為480 h的歷史逐時觀測數據,然后進行歸一化處理構成BP網絡的樣本集,其中樣本集中前2/3的時序數據作為訓練樣本集,后1/3的時序數據作為測試樣本集。
步驟2根據訓練、測試樣本集,運用PSO優化的BP模型進行訓練學習,結合殘差修正模型,得到當前最佳質量控制模型。

納什系數(Nash-Sutcliffe efficiency coefficient,NSE);均方根誤差(root mean squared error,RMSE)圖4 PSO-BP-MC能見度質量控制方法的流程圖Fig.4 Flow chart of PSO-BP-MC visibility quality control method
步驟3根據步驟2的最佳質量控制模型計算被檢站當前時刻的能見度預測值Vest(t)。
步驟4記f為質量控制參數,其取值需根據不同地區、不同氣候等條件而定,將會討論f對能見度數據檢驗效果的影響;S為目標站能見度序列Vobs(t)的標準差。將被檢站當前能見度的觀測值Vobs(t)與預估值Vest(t)進行比較,并判斷式(8)是否成立,即
|Vobs(t)-Vest(t)|≤fS
(8)
若式(8)成立,則認為Vobs(t)正確;反之,則認為Vobs(t)可疑,需要對該觀測數據進行可疑性標記。
步驟5重復步驟1~步驟4,對被檢站下一時刻的能見度觀測值進行檢驗。
為了檢驗PSO-BP-MC質量控制法的適用性,運用該方法對4個站點2017—2019年地面能見度觀測資料進行質量控制,該質量控制分兩步進行:①根據被檢站的觀測資料建立模型,得到被檢站對應時刻的能見度預估值;②計算模型對人為誤差的檢錯率,其中檢錯率定義為實際識別的誤差個數占插入誤差個數的百分比。
將被檢站的觀測值與預估值進行比較,若兩者差值超過一定標準,即認為數據可疑,其中預估值的精度直接關系到檢錯率的高低。對比這兩個步驟的指標,以此評估PSO-BP-MC質量控制方法。
模型的預估精度可以用納什效率系數(NSE, 其量值記為ηNSE)和均方根誤差(RMSE,其量值記為ηRMSE)來評估,其中ηNSE的值介于0 ~1,如果數值越接近1,則模型的預估精度越高,ηNSE和ηRMSE計算公式分別為

(9)

(10)


圖5 黃山站2017—2019年能見度數值預估指數曲線對比圖Fig.5 The visibility numerical prediction index curve of Huangshan station from 2017 to 2019
從圖5中可以看出,基于PSO-BP-MC模型的NSE指數大部分在0.9以上,且RMSE指數比較平穩,整體的預估誤差值較小,從圖5的兩種預估指數曲線對比可知,相較于SRT方法,POS-BP-MC方法對黃山站的能見度觀測數據的預估精度更高。
基于PSO-BP-MC模型的質量控制錯誤有如下兩類,錯誤Ⅰ是將原本正確的數據標定為錯誤;錯誤Ⅱ是將原本錯誤的數據標定為正確,其對立的狀態就是將錯誤的數據認定為錯誤,即在數據的質量控制中能將錯誤的數據檢出。在實際使用質量控制方法時,為得到最佳的質量控制效果,應同時考慮這兩類錯誤,即在保證控制效果的前提下,使兩類錯誤發生率盡量低。選擇兩類錯誤值之差最小時的f值作為最佳質量控制參數。
運用PSO-BP-MC方法和SRT方法對不同地形代表站2019年1月施加隨機誤差后的能見度觀測資料進行試驗,得到各站點不同質控參數下的兩類錯誤率如圖6、圖7所示。由圖6可以看出,隨著質控參數f值的增大,模型認為正確觀測值的置信區間也在擴大,則“拒真”錯誤在降低,但“納偽”錯誤在增加,兩類錯誤發生的數值差最小時對應的檢錯率為最佳質量控制參數下的檢錯率,也稱為最佳檢錯率。
為了檢驗PSO-BP-MC質量控制法,運用此方法對施加人為誤差的黃山站、山南溪谷站、靈璧站和白澤湖站四站2017—2019年逐時能見度數據進行檢查,四站不同年份的年平均檢錯率結果如表1所示。將PSO-BP-MC質量控制方法的檢驗結果與SRT方法對比,運用SRT方法對以上數據作檢錯率分析,結果如表1所示。
從表1中的數據可以看出,運用PSO-BP-MC方法得到的最佳f值為1~2,由該質量控制方法計算出的不同地區下的年平均最佳f值相較于SRT方法更小。在保證檢出率大致相同的前提條件下,f值越小代表著預估值與目標值越接近,說明該方法預估擬合的能力比SRT方法更為突出。靈璧站與白澤湖站f值相差不大,說明兩地形因素對能見度的影響相似,而黃山站和山南溪谷站的f值相較大,是由于高山和山谷的海拔原因造成的,氣溫、氣壓、濕度與海拔關系密切,這些氣象因素對能見度的相關性大且復雜,海拔高的地方溫度低、濕度大,容易形成團霧,降低能見度,而氣溫高、濕度小的天氣可以大大增加可見度距離。由于地形原因,能見度變化不易準確預測,本文模型對高山預測擬合效果不及平原等地區,所以以較大的f值來降低“拒真”錯誤。總的來說,運用PSO-BP-MC質量控制法對四站的年平均檢錯率均在80%以上,與SRT方法相比,本文的質量控制方法對存疑的能見度數值識別率更高,且四組地形代表站的檢錯率相差不大,說明該方法對不同地區的能見度數值監測穩定性更優。
為了進一步驗證PSO-BP-MC質量控制法的可行性,選用安徽省氣象中心2020年春季未經過質量控制的初始觀測數據進行方法試驗,其中不同地形區域的臺站,選擇不同地形代表站的年平均最佳f值作為質控參數,若實測值在正常值的參考區間之外,則認定該時刻數據為可疑數據,需要進行數據可疑性標記。

圖6 PSO-BP-MC方法在各站不同質控參數下的兩類錯誤率曲線 Fig.6 Two types of error curves of PSO-BP-MC method under different f of each station

圖7 SRT方法在各站不同質控參數下的兩類錯誤率曲線Fig.7 Two types of error curves of SRT method under different f of each station

表1 四站不同年份的年平均最佳f值及對應的檢錯率Table 1 The annual average f number and corresponding error detection rates in different years
對全省各站點2020年春季的能見度觀測數據運用PSO-BP-MC方法進行數據質量檢測,各站點能見度觀測數據中存疑數據的檢出率占比如圖8所示,可以看出,2020年春季安徽省各站能見度要素的存疑數據均在8%以下,因此大多數站點能見度觀測數據的錯誤率很小,都在可接受范圍之內。但也有例外,例如太和縣站點連續3個月的能見度可疑數據檢出率占比都高于平均值,經后期人工維護得知,春季惡劣天氣導致該氣象站點部分傳感器發生故障,使得該站點上傳至信息中心的觀測數據異常。利用異常數據得到的能見度擬合值就會與實際無錯誤的能見度值相差較大,從而在質量控制過程中“拒真”錯誤增加,導致該站點的能見度可疑數據檢出率過高。

圖8 2020年安徽省各站春季能見度可疑數據檢出率占比圖Fig.8 Percentage of visibility error data in the spring of 2020 in Anhui Province
為解決自動氣象站能見度要素觀測數據錯誤率高的問題,首先從能見度時間序列的隨機特性出發,結合粒子群算法優化、BP神經網絡和馬爾科夫鏈,對黃山站多年地面能見度時間序列進行預估,然后對添加人工誤差的歷史數據進行檢錯率分析,尋找最佳質量控制參數。實驗結果表明,PSO-BP-MC模型具有較好的預估擬合性能,且該方法在不同地區、不同年份下的檢錯率均較高。在各地形代表站年平均最佳質量控制參數的大致區間已知的情況下,運用該方法對安徽省各臺站的初始觀測數據進行能見度要素數據的質量控制,可以很準確地獲取各站點能見度觀測數據錯誤率信息,實現對能見度觀測數據的質量監測。