楊文生,王雁宇,李海清,宦曉超
(內蒙古電力(集團)有限責任公司內蒙古電力經濟技術研究院分公司,內蒙古呼和浩特 010020)
電力工程是國計民生的重要保障,如何高效、準確地預算工程造價等重要數據是實施工程的必要基礎。文中基于對電力工程數據的分析,使用了分層電網工程數據檢測系統[1]。其具有分層體系結構,使用統計模型與神經網絡分類器進行數據檢測[2],并測試了5 種不同類型的神經網絡的性能[3],以及在分層數據檢測系統上進行的異常數據的壓力測試結果。
該異常數據識別系統是一個分布式的分層應用程序[4],每層包含多個異常檢測代理(IDA),IDA 是監視主機或網絡活動的IDS 組件。圖1 是該系統的示例網絡,異常檢測系統可分為3 層。第一層代理監視系統內服務器與網橋的系統活動[5],并定期為第二層代理生成報告;第二層代理檢測到的數據流量與第一層代理的監控數據用來檢測系統LAN 的網絡狀態[6];第三層代理收集來自防火墻與路由器處的第一層代理和第二層代理的數據[7],系統層次如圖2 所示。

圖1 異常數據識別示例網絡

圖2 系統分層結構圖
由于該系統分布式分層的特點,所有層的IDA 具有相同結構。IDA 的示意圖,如圖3 所示。其由以下組件組成:探測器、事件預處理器、統計處理器、神經網絡分類器與后處理器,這些組件的功能描述如下。

圖3 IDA示意圖
1)探測器:收集主機或網絡的流量,將流量抽象為一組統計變量以反映網絡狀態,并定期生成報告發送至事件預處理器;
2)事件預處理器:從探測器與底層的IDA 接收報告,并將信息轉換為統計模型輸入數據的格式;
3)統計處理器:根據典型網絡活動的參考模型,將事件預處理器的報告與參考模型進行比較,并形成輸入向量以饋入神經網絡分類器;
4)神經網絡分類器:根據統計模型分析輸入向量,以確定數據流量是否正常;
5)后處理器:為高級別的代理(如遠程交互代理)生成報告[8],同時通過用戶交互界面顯示監測結果。
統計方法是異常數據檢測的常用方法。但大多數統計學方法僅測量某些變量的均值與方差,并檢測其是否超出預先設定的閾值,這類方法難以識別復雜的工程數據。文中建立了基于NIDES 統計算法的軟件框架[9]。
在NIDES 中,工程配置文件由概率密度函數表示。設S為隨機變量的樣本空間,而事件E1,E2,…,Ek為S的互斥分區。假設Pi是事件Ei的發生頻率[10],令N表示事件的總數。NIDES 統計算法使用類χ2檢驗確定預期分布與實際分布之間的相似性如式(1)所示。
當N足夠大且事件E1,E2,…,Ek獨立時,Q近似遵循具有(k-1)自由度的χ2分布。但實時工程系統中,通常難以滿足上述條件。因此,通過建立Q的經驗概率分布來解決此問題,該分布通過實時操作進行更新[11]。
在異常數據識別系統中,由于神經網絡分類器可以實現對異常數據的檢測,因此,可忽略Q的實際分布[12]。但由于數據流量不穩定且具有不同的持續時間,因此,需要一種能夠有效監視具有不同時間窗口的數據流量算法。基于對實際系統的觀察,設計了圖4 給出的層窗口統計模型。
新到達的事件將首先被存儲在第一層的事件緩沖區中。將存儲的事件與該層的參考模型進行比較,然后,將結果輸入到神經網絡分類器中,以確定該時間段內的數據狀態。一旦事件緩沖區已滿,事件緩沖區將被清空,且存儲的事件將被平均并轉發到第二層的事件緩沖區。此過程將遞歸重復進行,直至達到最高級別[13]。


圖4 統計模型設計
文中使用的相似度測量算法[14]如式(2)所示。

式中,f(N)是一個函數,其考慮了在時間窗口內發生的時間總數。
除了相似度測量外,還設計了一種用于實時更新參考模型的算法[15]。設Pold為更新前的參考模型,Pnew為更新后的參考模型,Pobs是觀測得到用戶時間窗口內的活動。更新參考模型的公式如式(3)所示。

其中,α是定義的自適應率,S是由神經網絡輸出生成的值。假設神經網絡分類器的輸出是介于-1與1 之間的連續變量t,其中,-1 表示具有絕對確定性的異常狀態,而1 表示確定性的正常數據[16]。S的計算公式如式(4)所示。

通過式(4)可知,系統將確保針對典型數據主動更新參考模型,異常事件將被轉移并存儲至訓練數據庫,以供所設計的神經網絡學習。
神經網絡是針對模式分類的有效方法,但神經網絡存在計算要求高和訓練周期長的特點。文中設計了一種混合神經網絡范例,通過感知器與小型反向傳播網絡的疊加構建神經網絡架構。為了得到最恰當的神經網絡,文中選取了5 種不同類型的神經網絡:Perceptron、BP、PBH、模糊ARTMAP 和RBF 進行異常數據對比實驗。
神經網絡用于線性可分離模式分類,由具有可調節突觸與閾值的單個神經元組成。數據集通常不能線性分離,文中采用感知器作為基準來測量其他神經網絡的性能。
BP反向傳播網絡包含一個輸入層、一個或多個隱藏層以及一個輸出層。BP具有強大的泛化能力,并已成功應用于解決各種困難與多樣化的問題。文中測試的BP 網絡,其中隱藏神經元的數量在2~8 之間。
PBH 感知器反向傳播混合網絡,是感知器與小型反向傳播網絡的疊加。PBH網絡能夠準確得出輸入向量與輸出向量之間的線性及非線性相關性關系。文中測試的PBH網絡,其中隱藏神經元的數量在1~8之間。
模糊ARTMAP 系統一般由兩個模糊ART 網絡ARTa與ARTb組成,其F2層由匹配跟蹤子系統連接。文中使用簡化模糊ARTMAP的類別神經元數量為2~8。
RBF徑向基函數網絡,包含了3個完全不同的層。輸入層由源節點組成,第二層是具有足夠高尺寸的隱藏層,輸出層將網絡的響應提供給應用于輸入層的激活函數。文中使用了2~8個隱藏神經元測試RBF網絡。
文中使用功能強大的網絡仿真工具OPNET 構建實驗性測試平臺,對基于神經網絡的電力工程異常數據檢測系統進行驗證。驗證平臺如圖5所示。該測試平臺由10-BaseX LAN、11個工作站與1個服務器組成。

圖5 驗證平臺
表1 列出了Perceptron、BP、PBH、模糊ARTMAP和RBF 的均方根誤差與Perceptron 的誤分類率等信息。可以看到,Perceptron 神經網絡表現不佳,均方根誤差在0.6~0.7 之間;誤分類率在0.1~0.2 之間。Perceptron 神經網絡對異常數據的檢測錯誤與誤分類率較高。隨著隱藏神經元數量的增加,ARTMAP與RBF 網絡的性能均會提高。在大多數情況下,均優于Perceptron。BP 與PBH 網絡具有相似性能,且兩個神經網絡始終比其他3 種類型的神經網絡表現更優。隨著隱藏神經元數量的增加,兩種神經網絡錯誤與誤分類率不會降低。
文中重點測試系統對異常數據的敏感性與有效性。表2所示為文中測試運行的模擬數據流量負載。

表1 5種神經網絡識別實驗

表2 模擬數據流量負載
從文中敘述可知,BP與PBH表現最佳。因此,該系統的測試架構選取BP與BPH 網絡。由于隱藏神經元數量的增加對提升其性能并無較強的相關性,因此,選擇具有兩個隱藏神經元的BP網絡進行實驗。
文中選取均方根誤差與系統的誤分類率作為背景流量和攻擊流量的函數,MSR 錯誤與誤分類率均隨著數據差異化的提高而降低。因為與低差異的異常數據相比,高容量攻擊的流量模式與參考模型產生的差異較大。此外,對于特定的異常數據,600 kbps數據流量的性能始終優于2 Mbps后臺的性能。

圖6 接收機工作曲線
圖6 為接收機工作特性曲線,從圖中可知,隨著攻擊強度的增加,檢測性能也會提高。此外,當針對600 kbps后臺流量的攻擊級別為70 kbps,對于2 Mbps后臺流量的攻擊級別為100 kbps 時,系統性能接近最佳狀態。
為實現電網工程建設中對異常數據的檢測,建立了分布分層的數據檢測系統。引入NIDES 框架,其是一種使用統計預處理與神經網絡分類的異常數據檢測算法。通過對5 個不同的神經網絡進行對比實驗,可得出結論:BP 與PBH 網絡的性能優于Perceptron、模糊ARTMAP 和RBF 3 種神經網絡。考慮到構建成本最終選取BP 神經網絡作為系統的神經網絡分類器,在此基礎上還進行了系統測試。結果表明,系統能夠可靠地檢測到異常數據,其流量強度僅為背景強度的5%~10%,證明了該系統的有效性。