張橋容,張龍海,周明
(廣東省五華縣氣象局,廣東 梅州 514400)
隨著計算機和微電子技術的快速發展,無線傳感器網絡(Wireless Sensor Networks,WSN)逐漸被引入到氣象觀測領域的實際應用中[1]。為了盡可能避免人員傷亡與經濟損失,準確、及時的氣象監測成為了防災與減災的重要手段[2-5]。在氣象監測工作中,具有通信功能的氣象傳感器大幅降低了相關數據的收集難度,同時還提高了對自然災害應急處理的能力[6-8]。然而受限于無線傳感器網絡的設備限制,當前氣象傳感器仍存在低精度、高成本和低密度等不足。因此,如何設計適用于氣象傳感器網絡的異常數據處理算法,逐漸成為氣象監測領域的研究熱點[9-11]。然而,這類研究成果仍未能完全解決氣象觀測領域的數據質量控制問題。為了優化氣象觀測的數據質量,文中將雷擊影響與浪涌保護納入異常數據的范圍中,并通過引入反向傳播(Back Propagation,BP)神經網絡和滑動窗口(Sliding Window),提出了具有較高檢測效率的數據質量控制算法。
由于低功耗微傳感器技術的快速發展,氣象觀測領域逐漸開始引入無線傳感器網絡。通常而言,該網絡[12-13]主要由傳感、匯聚和管理節點組成。其以自組織方式完成對氣象數據的收集、傳輸與管理,進而實現重要的數據檢測功能。在氣象數據檢測中,本次主要采用型號為SHT15 的太陽能充電溫度傳感器,作為自動氣象站中的核心設備,其可負責對日射強度、溫度及氣壓等多種氣象條件的測量。
在傳感網絡中,受工作環境、儀器故障和突發事件等因素的影響,部分傳感器節點易輸出與其他相鄰節點完全不同的數據,即生成較為突兀的異常數據。而這類生成異常數據的節點,則被稱為離群點。目前根據產生原因的不同,異常數據主要可分為噪聲異常數據、事件異常數據與惡意攻擊異常數據,具體如下:
1)噪聲異常數據主要由傳感網絡中的設備錯誤或故障引起。在進行氣象觀測時,由于大量傳感器會被部署于惡劣的自然環境中,電子設備易被地形、溫度和氣壓等環境因素破壞,從而產生噪聲異常數據。
2)事件異常數據主要由雷擊、地震、降雨或太陽黑子等天氣突發事件造成。與噪聲異常數據相比,由環境變化引起的事件異常數據具有極高的參考價值,但其發生概率較小,且與前者并無明顯區別。
3)惡意攻擊異常數據主要是由傳感網絡之外的第三方攻擊引起的,根據攻擊手段的不同,該類異常數據通常可分為主動和被動攻擊兩類。
在氣象監測中,異常數據的檢測效果對傳感器的數據質量存在較大影響,具體有:
1)異常數據檢測受傳感網絡硬件資源的限制。原因在于,傳感網絡主要由低成本、低功耗的節點組成,其計算資源、電力資源與存儲資源均較為有限。
2)異常數據檢測極大地提高了傳感網絡的通信代價。傳感網絡需要對收集到的數據進行必要的數據處理,而氣象數據的通信能耗由于受到路徑損耗、信號衰減及傳輸噪聲等多種因素的限制,其不僅遠高于數據處理能耗,也是傳感網絡中的最大能耗。
3)異常數據檢測受到傳感網絡拓撲結構變化的限制。由于傳感網絡隨時可能添加或刪除傳感、匯聚及管理等節點,因此其網絡拓撲與通信模式均存在較大的移動性和不確定性。
為了優化氣象觀測數據的實時性及精確性,文中通過引入BP 神經網絡[14-15]對傳感網絡所采集的原始數據進行預處理、插值與平移等操作,從而提出可降低誤差的數據質量控制方法。
為降低氣象觀測數據的絕對誤差,文中提出了具有較高通用性的數據質量控制方法,以實現數據處理和誤差校正等多種功能。其具體數據處理流程如圖1 所示。

圖1 數據質量控制方法的處理流程
由于傳感器的數據采樣頻率不同,故采用三次樣條插值(Cublc Spline Interpolation)[16]函數對原始數據進行必要的插值處理。三次樣條插值是一種精確且實用的插值方法,其利用部分離散采集數據進行分段插值,進而獲取能夠表達全部數據的高次函數,由此保證了全部序列的平滑擬合。在插值過程中,不妨設溫度、光照及標準溫度的采樣序列分別為T、L和Z,ti、li與zi是序列T、L和Z的第i個分量。令j∈[1,3]且和表示三次樣條插值函數的待定系數,即可確定溫度、光照和標準溫度的插值分段函數。函數S(1)(t)中包含了4n個待定系數。根據線性代數的原理,為了求解這些待定系數,方程的個數必須大于4n。同理,S(2)(l)和S(3)(z)也應包含個數大于4n的方程。換言之,無線傳感器網絡需積累個數大于4n的數據,才能實現精確的三次樣條插值。
在進行傳感器的實際環境部署時,為了盡可能降低外部包裝材料對傳感器多項采集數據的影響,文中對采集溫度、光照和標準溫度在24 h 之內的原始數據進行了必要的統計。具體統計情況如圖2 所示。

圖2 傳感器的原始采集數據統計
由圖2 可知,標準溫度和采集溫度之間存在一定的誤差,但二者的變化趨勢一致。這表明通過適當的平移,傳感器所采集的溫度可達到較高的精確度。通過調用ArcGIS 軟件中的Offsetter 函數,實現了傳感器采集數據的平移處理,進而有效提高采集數據的精確度。經平移處理后的數據結果如圖3 所示。

圖3 傳感器的采集數據平移處理結果
在實現多項數據插值及平移操作之后,文中引入了BP 神經網絡,對氣象觀測數據做進一步的訓練和處理,從而降低采集與實際溫度間的絕對誤差。通常而言,BP 神經網絡是基于誤差逆向傳播訓練的多層前饋算法,其具有一定的決策、學習能力,且已應用于圖像處理及自然語言等多個研究領域中。該算法的標準結構如圖4 所示。

圖4 BP神經網絡的標準結構
設光照和溫度數據是BP 神經網絡的輸入數據,其可分別表示為此處將兩者統一標準化為BP 神經網絡的輸入值輸出數據表示為誤差值則是。設cij和cjk分別表示輸入層至隱藏層之間、隱藏層至輸出層之間的連接權重系數,當輸入與輸出層節點的數量分別為a、b時,BP 神經網絡的具體執行步驟如下:
步驟1:初始化,即按照光照和溫度數據的情況,設定輸入及輸出層的節點數量a和b、連接權重系數cij與cjk,并將隱藏層節點數量設為1,同時設定隱藏層閾值Th、輸入層閾值To和學習速率μ。
步驟2:利用式(1)計算隱藏層的節點輸出值M=[m0,…,ms-1]T:
其中,s是隱藏層中的節點數量且j∈[0,s-1] ;而g是輸入層至隱藏層的Sigmoid 激活函數,其計算方法為:
步驟3:利用隱藏層的節點輸出值M、權重系數cjk和閾值To,令k=0,…,b-1,按照式(3)計算輸出層的節點輸出Y:
步驟4:利用輸出層節點輸出Y與溫度數據T,計算神經網絡的誤差值E,其表達式為:
步驟5:利用式(5)-(6)以及誤差值E的結果,令j∈[0,s-1] 且k∈[0,b-1],計算輸入層與隱藏層、隱藏層和輸出層之間的新權重系數
步驟6:利用式(7)-(8)與誤差值E的結果,令j∈[0,s-1] 且k∈[0,b-1],計算隱藏層和輸入層的新閾值
步驟7:若算法的迭代輪數超過最大迭代次數Imax,停止執行算法;否則轉向步驟2,繼續運行該算法。
通過執行BP 神經網絡的具體步驟,文中建立了光照、溫度數據與誤差數據之間的動態映射關系,從而有效減輕了雷擊和浪涌等現象引起的數據波動性。
為了驗證數據質量控制算法的可行性,通過引入大量的原始氣象觀測數據,重復運行基于BP 神經網絡的數據質量控制算法,并與原始數據進行必要的計算和對比。在具體實驗中,選取了原始氣象觀測數據共1 000 份。其中,700 份作為數據質量控制算法的訓練集,剩余300 份則作為算法測試集。此外需要說明的是,在測試過程中為衡量算法的數據修正效率,文中利用原始及修正之后的氣象測量數據,分別計算了傳統質控算法與所提算法的修正效率。令η表示算法的修正效率,dr表示原始觀測數據,Δd表示數據的修正量,則其計算方法如下:
按照上述方法,利用相同的測試集數據,迭代運行兩種考慮雷擊和浪涌現象的數據質控算法,即傳統質控算法與該文算法,計算并統計所獲得的數據準確度及修正效率。具體統計結果如圖5-6 所示。
由圖5 可知,隨著測試數據量的增加,兩種算法的數據準確度均有不同程度的波動,但總體均呈上升趨勢。且當測試數據量相同時,所提算法的數據準確度明顯高于傳統質控算法。從圖6 中可以看出,隨著測試數據量的增加,兩種算法的數據修正效率均在一定范圍之內波動。但傳統質控算法的修正效率處于60%~70%之間,而該文算法則在80%~90%之間。由此可知,后者的修正效率更高。綜上所述,與傳統質控算法相比,基于BP 神經網絡的數據質控算法具有更優的數據準確度和修正效率。通過與傳統算法的實驗對比,突出了該文算法綜合性能的優越性。
通過引入BP 神經網絡算法,文中對氣象觀測數據的質量控制方法進行了深度的改進與優化,從而提高了數據的準確度及修正效率,并降低了雷擊和浪涌現象對觀測數據的影響。然而與傳統數據質控算法相比,該文算法需要使用更多的計算資源,其實用性可能仍存在一定的缺陷。因此,在未來的研究工作中將致力于解決這一問題。