楊雯,尹康涌,鮑奕宇,尹項根,徐彪
(1.國網江蘇省電力有限公司檢修分公司,江蘇 南京 211106;2.強電磁工程與新技術國家重點實驗室(華中科技大學),湖北 武漢 430074;3.國網江蘇省電力有限公司電力科學研究院,江蘇 南京 211103)
現有電網故障分類方法主要有工頻量和暫態量2種。工頻量分類方法易受接地電阻、系統運行方式的影響;暫態量分類方法利用行波[1—2]和故障暫態量[3—4]等,能有效擺脫工頻因素限制。許多學者將新興的數據分析方法與暫態量選相方法相結合,提出了基于模糊理論[5— 6]、分形理論[7—8]、小波變換[9—10]、人工神經網絡(artificial neural networks,ANN)[11—12]等的故障類型辨識方法。其中ANN等人工智能方法由于其在非線性映射、自學習和自適應、泛化和容錯等方面的優勢而備受關注。文獻[13]利用提升小波和神經網絡構造了小波神經網絡故障識別模型;文獻[14]提出多小波包系數熵和ANN相結合的輸電線路故障分類方法。
隨著電力大數據的發展,反映設備狀態的數據越來越大,以ANN為代表的淺層學習方法主要存在以下缺陷:(1) 對復雜數據分布的映射能力有限且可能出現“維數災”;(2) 太依賴于信號處理技術和人工診斷經驗,在故障特征不明顯或者出現復雜連鎖故障時容易漏判或誤判,無法滿足現代大電網的診斷需求。
深度學習的發展為解決上述問題提供了機遇。作為其典型代表,深度置信網絡(deep belief network,DBN)具有良好的數據特征提取和映射能力[15—17],可以通過多隱層網絡從原始數據中學習,特別適用于求解復雜的高維分類問題[18]。目前已有DBN應用于文本表示[19]、音頻分類[20]、發動機故障診斷[21]、電力系統暫穩分析[22—25]等。
文中提出基于DBN的電網故障類型辨識方法,以故障錄波信息為數據基礎,直接以故障發生后的各相電流/電壓以及零序電流/電壓作為網絡輸入,從原始時域信號中自動學習和提取故障狀態特征,從而實現故障類型的辨識。針對DBN模型數據重構能力、逐層特征提取結果以及實際案例進行對比分析論證,可知該模型具有良好的故障特征提取能力,在數據降維過程中能保持數據原本的特征,與ANN模型相比其識別準確率更高,具有良好的應用前景。
DBN由多個限制波爾茲曼機(restricted boltzmann machine,RBM)堆疊而成,RBM的結構及學習過程是DBN的重要基礎[15]。
RBM是一種可通過輸入數據集學習概率分布的隨機生成神經網絡。如圖1所示,RBM模型由可視層v={v1,v2,v3,…,vI}∈{0,1}和隱含層h={h1,h2,h3,…,hJ}∈{0,1}構成,其中I和J分別為可視層和隱含層神經單元的數目。對應的可視層和隱含層單元的閾值分別為a={a1,a2,a3,…,aI}和b={b1,b2,b3,…,bJ}。相同層的神經單元相互獨立,不同層的神經單元全連接,可視層神經單元vi與隱含層神經單元hj間通過權重wji連接。

圖1 RBM模型的基本結構Fig.1 Basic structure of the RBM model
因此,v和h給定時,RBM的能量函數為:
(1)
由此可得到隱含層單元和可視層單元之間的聯合概率分布為:
(2)
可由此推導得可視層向量v的獨立分布為:
(3)
RBM的學習目標是讓RBM網絡表示的分布盡可能地擬合輸入數據,通過調節網絡結構參數,使概率p(v)達到最大。用θ={ai,bj,wji} 表示網絡的結構參數,對式(3)進行極大似然估計即可求得網絡的結構參數。參數求取過程中需采用交替吉布斯采樣法從訓練樣本中進行采樣。詳細的交替吉布斯采樣處理流程及完整的RBM學習算法可以參見文獻[15]。
完整的DBN由底層的堆疊RBM和頂層的分類器組成,底層的堆疊RBM完成復雜數據的學習和特征提取,頂層的分類器實現整個模型結構參數的微調和數據的分類。圖2是一個六層的DBN基本結構,由最底層RBM的可視層接收輸入數據,依次通過4個堆疊RBM和1個分類器實現數據的特征提取和分類。

圖2 DBN的基本結構Fig.2 Basic structure of the DBN
傳統人工神經網絡的訓練方法已完全不適用于深度網絡結構的學習和訓練,Hinton教授針對深度網絡的訓練難題,提出將DBN的訓練劃分為2個階段:無監督的逐層預訓練和有監督的微調[15],如圖3所示。

圖3 DBN訓練流程Fig.3 Training process of DBN
DBN的無監督逐層學習過程可理解為多個單獨的RBM學習過程,即首先將無標簽的數據輸入RBM1的可視層,通過RBM1的正向映射,得到隱含層單元h1,然后利用h1重構可視層單元的狀態,并通過重構數據和原始數據的誤差更新RBM1的結構參數。RBM1的學習過程完成后,把RBM1的隱含層單元h1作為RBM2的可視層單元,繼續RBM2的學習過程。通過RBM的逐層堆疊,整個網絡可以有效地從原始故障數據中逐層提取特征,快速高效地實現對復雜數據的映射和表達。
完成無監督的預訓練過程后,需要在DBN模型的最頂層添加標簽數據,對整個網絡的參數進行有監督的微調。該過程一般采用誤差反向傳播(back propagation,BP)算法,通過自上而下誤差傳輸和積累過程,實現對整個網絡全局誤差最小化的搜索,從而對整個網絡的參數進行調整。有監督的微調過程使DBN網絡的特征提取更貼合標簽數據的類別屬性,可以有效提高DBN網絡分類的準確率。
考慮電網的10種典型故障:單相接地故障(AG、BG、CG),兩相短路故障(AB、BC、AC),兩相短路接地故障(ABG、BCG、ACG)以及三相故障(ABC),依次對其進行編碼,如表1所示。

表1 故障類型編碼Table 1 Coding for power grid fault types
以圖4所示IEEE 39節點系統為例,在PSCAD環境下搭建仿真模型并獲取故障樣本。圖4中元件備注如下:B為母線;L為線路;L1817為母線B18與母線B17之間的線路,依此類推。

圖4 IEEE 39節點系統Fig.4 IEEE 39-bus system
為盡可能地豐富故障樣本集,文中還考慮不同過渡電阻、不同負荷水平、不同故障初相角、不同故障位置等多種因素的影響。為此,在對線路L1817進行故障設置獲取測試樣本集時,除了10種故障類型,還考慮了以下設置:(1) 接地過渡電阻分別取0 Ω,20 Ω,100 Ω,300 Ω;(2) 相間過渡電阻分別取0 Ω,2 Ω,10 Ω;(3) 線路L1817全長100 km,故障分別設置在距母線B18端5 km,35 km,65 km,95 km處;(4) 母線B18上的負荷分別取30%,80%,100%,120%的額定負荷;(5) 故障初相角以A相電壓為參考,自0°~360°之間每隔30°取一值,共12組。
綜合不同故障類型、過渡電阻、負荷情況、故障位置、故障初相角等因素的組合,共獲得11 520個典型樣本。
實際電力系統中故障錄波器記錄的信息主要包括線路兩端ABC三相電流和三相電壓,以及零序電流和零序電壓的采樣值。傳統淺層學習方法須先從中提取時域、頻域、小波域等故障特征,再利用分類器進行故障分類。為了克服淺層學習方法對信號處理技術和人工診斷經驗的依賴,文中方法不經過其他特征提取,直接取故障后一周波內各相電流/電壓以及零序電流/電壓采樣值作為DBN模型的特征量輸入。為避免電流量和電壓量不同量綱和數量級別的影響,對電流采樣值和電壓采樣值分別進行線性歸一化處理。
仿真測試模型的采樣頻率設為3 000 Hz,系統頻率是60 Hz,因此每周波的采樣點為50,每個樣本800個點,共形成11 520個800維的高維樣本空間。
由于輸入樣本的維數決定輸入層的節點數,故障類別數決定輸出層的節點數,因此DBN模型輸入節點數設為800,輸出節點數設為10。
RBM可視層和隱藏層的節點數目不僅影響著DBN模型的訓練時間和計算效率,也影響著模型的分類準確率。節點數過低時,無法提取有效特征;節點數過高時,模型的計算量又將大大增加[13]。為了使DBN模型在對故障樣本數據進行特征提取和表達的同時,有效降低數據維數和模型計算量,文中DBN模型采用六層結構,并將模型中4個隱含層的節點數分別設置為400,200,100,50。經過逐層壓縮,最終形成50維特征向量進行分類。
以正態隨機分布初始化DBN模型的權重w并進行歸一化處理,閾值a,b初始化為0。
逐層預訓練階段,將學習率和學習動量分別設為0.1和0.5,預訓練過程中最大迭代次數設為150次。反向微調階段使用BP算法,最大迭代次數設為100次。
文中隨機選取每個故障類型樣本的70%作為訓練集,對DBN模型參數進行訓練,剩余的30%作為測試集對DBN模型的性能進行分析和測試。基于DBN的故障類型辨識流程如圖5所示,步驟如下:(1) 采集原始故障數據樣本,進行歸一化處理后按7∶3分為訓練集和測試集;(2) 建立多隱層的DBN模型,并初始化網絡模型參數;(3) 利用訓練集中的無標簽樣本,對DBN模型底部的堆疊RBM進行逐層預訓練;(4) 在DBN模型頂層添加Softmax分類器,對故障類型狀態進行編碼,確定輸出層節點數;(5) 利用有標簽的樣本,使用BP算法對預訓練后的DBN模型的整個網絡參數進行有監督微調,使網絡性能趨近全局最優;(6) 保存訓練好的DBN模型,并利用測試集中的數據樣本對其性能進行測試,輸出故障類型辨識結果。

圖5 基于深度置信網絡的故障類型辨識方法Fig.5 Fault type identification based on DBN
DBN模型頂層分類器僅承擔分類和識別的功能,其強大的特征提取能力主要取決于底層堆疊RBM的學習過程。如果將模型中DBN正向無監督學習過程看作由堆疊RBM進行逐層編碼的過程,則反向逐層解碼的過程可以看作是對DBN模型的輸入數據進行重構的過程。因此通過比較原始輸入數據與重構數據的差異,就可以有效分析DBN模型對數據的映射和表達能力。
在DBN中,激活函數sig(x)=1/(1+e-x)通常用來描述隱含層和可視層單元的激活概率。假設網絡的輸入數據為x,則可將DBN網絡的編碼函數定義為:
f(x)=sig(b+wx)
(4)
相應的解碼函數為:
g(x)=sig(a+wTx)
(5)
分別將樣本數據輸入到無監督學習后以及反向微調后的DBN網絡中,將獲得的重構數據與原始輸入數據進行對比,如圖6所示。

圖6 輸入曲線與重構曲線的對比Fig.6 Comparison between the input curve and the reconstruction curve
對比圖6(a)和(b)可知,未微調的DBN網絡重構結果與原始數據存在較大偏差,而微調后,重構曲線基本與原始曲線重合,說明DBN模型訓練的反向微調過程可以降低重構曲線與原始曲線的誤差,更有利于網絡的特征提取和表達。
從圖6(b)可以看出,經過微調的DBN網絡可以較好地重構原始輸入曲線,原始輸入數據經過堆疊RBM逐層的特征提取,雖然數據維度有所降低,但依然能夠作為原始曲線的特征表達,在一定程度上說明DBN網絡具有良好的特征提取能力和保持數據特征的能力。

均方根誤差(root mean square error,RMSE)表示重構數據與原始輸入數據差值的平方根,可用ERMSE表示,計算如下:
(6)
失真度(data distortion,DD)表示重構數據與原始輸入數據的差異大小,文中采用相對均方差值來定義失真度,可用EDD表示,計算如下:
(7)
表2為輸入數據和重構數據差異的定量評估結果,經過BP算法微調后的DBN網絡均方根誤差和失真度均比未微調的重構網絡小,進一步說明了DBN模型訓練中微調過程的必要性。

表2 差異評估指標差異評估指標Table 2 Difference assessment indexs
由于原始故障數據和DBN模型逐層提取的故障特征維數都比較高,不利于直接進行觀察和對比,因此文中采用主成分分析法從高維故障特征中提取前3個主成分(分別為PC1,PC2,PC3),并在三維坐標軸中顯示出來。利用DBN模型從原始輸入數據中逐層提取故障特征的可視化結果,如圖7所示。


圖7 DBN模型的逐層特征提取結果Fig.7 Layer-by-layer feature extraction results of DBN
圖7中,輸入層中10種故障類型的數據信號裹挾在一起,無法進行區分和鑒別。經過堆疊RBM對輸入數據逐層學習和提取之后,同一故障類型的特征逐漸靠攏和聚集,不同故障類型的特征向外發散,并漸漸分離開,通過DBN模型輸出層的分類器后,10種故障類型的狀態特征已被完全區分開。可以看出,基于DBN的故障類型辨識方法擺脫了對信號處理技術和人工診斷經驗的依賴,無需繁雜的故障特征提取過程,卻能夠自適應地從原始故障數據中逐層地進行學習,并有效地提取故障特征,且隨著模型結構的加深,故障特征的區分性越來越突出。
為了評價文中方法對故障測試集的辨識效果,首先介紹故障類型辨識的評價標準。表3為經典的二維故障分類矩陣H2。

表3 二維故障分類矩陣Table 3 Two-dimensional fault classification matrix
在故障分類矩陣的基礎上,用單一識別準確率(single accuracy rate,SAR)表征在某一故障類型下的所有樣本中,被正確識別的樣本數所占的比例,可用ASAR表示,計算如下:
(8)
總體準確率(overall accuracy rate,ACR)表征在所有樣本中故障分類正確的樣本數目所占的比例,可用AACR表示,計算如下:
(9)
將上述故障分類矩陣擴展到10種故障類型,并使用訓練后的DBN模型對故障仿真測試集進行測試,得到輸電線路的故障分類矩陣為:

對其結果進行評估,各指標計算結果如表4所示。可以看出,不管是總體準確率AACR還是單一故障類型的識別率ASAR均達到95%以上。故障樣本集考慮了不同故障位置、故障初相角、過渡電阻以及系統帶不同負荷等多種因素,說明DBN模型能夠有效地從各種復雜工況中提取故障特征并進行分類識別,具有良好的適應性。

表4 仿真案例辨識結果Table 4 Identification results of simulation case %
以圖8所示的某區域電網實際故障為案例進一步說明DBN模型的可行性和有效性。

圖8 某區域電網的部分接線Fig.8 Schematic network of a regional power grid
分別構建網絡中輸電線路的DBN模型,由于實際電網的故障樣本較少,此次訓練樣本來自該系統的PSASP故障仿真數據,測試樣本來自故障信息系統中5次短路故障的故障錄波實際數據,DBN模型的辨識結果如表5所示。

表5 實際案例辨識結果Table 5 Identification results of real fault cases
可以看出,文中方法能夠準確識別實際電網中輸電線路的故障。雖然仿真所得故障樣本與實際系統之間存在一定的差異,但仿真樣本考慮了不同過渡電阻、負荷大小、故障時刻、故障位置等的影響,而經過訓練的DBN模型依然能夠對實際電網中的故障類型進行準確辨識,進一步證明了DBN模型強大的學習能力與泛化能力。
為了進行對比分析,文中構建了2組ANN模型對故障仿真樣本進行學習和測試。ANN1采用與DBN一致的800-400-200-100-50-10六層結構,而ANN2則采用800-400-10的單隱層結構,2個ANN的訓練方式均采用BP算法,與DBN的有監督微調過程一樣,最大迭代次數設為100次。3種模型均在配置2.3 GHz雙核處理器,2 G內存的計算機上利用Matlab編程實現,為了避免算法偶然性和隨機性的影響,取10次結果中AACR指標的平均值作比較。模型的識別結果及性能對比如表6所示。

表6 不同方法的結果對比Table 6 Comparison of results from different method
從識別準確率來看,DBN模型比ANN1模型高。根據實驗設置,DBN模型與ANN1模型采用相同的網絡深度和網絡結構,有監督的訓練過程也相同,而兩者的辨識結果和辨識性能卻展現出很大的差別,說明DBN模型的逐層預訓練過程有效優化了模型的網絡參數,能夠為有監督的微調過程提供一個較好的初值。而ANN1模型的參數卻采用隨機初始化的方法,并在初始化之后直接采用BP算法進行訓練,模型很容易收斂到局部最小值,因而識別準確率較低。
此外,DBN模型與ANN2模型相比識別準確率也更高,這說明淺層的ANN2模型難以從復雜數據特征中有效提取高層次特征,而DBN模型的深層結構能夠從原始輸入數據中逐層提取故障特征,將原始的800維特征逐層抽象成50維特征,再利用softmax分類器進行分類,可以克服淺層神經網絡對復雜數據學習和映射能力的不足,獲得比淺層結構更好的識別和分類效果。
從ANN1和ANN2的比較結果可以看出,單純增加模型層數,利用傳統的模型訓練方法并不能有效提高故障類型辨識的準確性。這也進一步反映了DBN模型及其訓練方法在分類特征提取方面的優越性。
從模型性能來看,DBN模型由于增加了逐層預訓練的學習過程,其平均訓練時間與具有同樣結構的ANN1模型相比較長,但兩者對樣本的平均分類時間差別不大。而ANN2模型與ANN1相比層數少,因此其模型訓練及分類時間相對而言最短。然而,由于DBN模型訓練過程是離線完成的,保存模型參數后應用于故障類型識別,因此不會對模型在線應用的時效性產生影響。
綜合識別準確率和模型性能來看,在保障識別準確率的情況下,DBN模型的性能最好,平均僅需0.021 s即可實現故障類型的判別,能夠滿足在線故障診斷的要求。
文中將深度學習應用于電網故障診斷中,提出了基于DBN的電網故障類型辨識方法,以故障錄波信息的各相電流/電壓及零序電流/電壓作為原始輸入,從故障類型編碼、樣本數據獲取、模型參數設置、網絡學習等各方面給出了電網故障類型辨識的完整流程,最后通過DBN網絡的數據重構能力、逐層特征提取可視化結果以及故障類型辨識結果分析模型的性能。IEEE 39節點仿真系統算例和電網實際故障案例表明基于DBN的電網故障類型辨識方法具有良好的故障特征提取能力,在數據降維過程中能保持數據原本的特征,且辨識結果不受過渡電阻、故障時刻、故障位置、負荷大小等因素的影響,與傳統ANN模型相比識別準確率更高。
下一步的主要工作是研究網絡層數、隱含層節點數量、學習率、學習動量等對網絡訓練速度、回歸效果、識別效果的影響,就如何確定DBN網絡結構及參數給出經驗,并將文中提出的故障類型辨識方案集成到現有電網故障診斷系統中,為在線調度提供輔助決策支持。