?

基于側輸出融合卷積神經網絡的電能質量擾動分類方法

2021-11-20 08:33王繼東
電力自動化設備 2021年11期
關鍵詞:擾動電能卷積

王繼東,張 迪

(天津大學 智能電網教育部重點實驗室,天津 300072)

0 引言

傳統的電能質量擾動分類分為擾動特征提取選擇及分類器設計2 個階段。目前,電能質量擾動特征提取算法有短時傅里葉變換、S 變換(ST)、小波變換及其改進方法等,對提取到的特征進行選擇后作為分類器的輸入對電能質量擾動信號進行分類。文獻[1]采用改進ST 提取電能質量擾動信號特征,通過直接支持向量機SVM(Support Vector Machine)分類器進行分類識別;文獻[2]采用離散小波變換DWT(Discrete Wavelet Transformation)提取特征,配合多層感知極限學習機進行電能質量擾動信號分類,但小波基的選取和品質因子Q的調諧存在困難等問題增加了算法的難度;文獻[3]采用匹配追蹤MP(Matching Pursuit)算法和粒子群優化PSO(Particle Swarm Optimization)算法相結合的分層搜索的原子分解法提取電能質量復合擾動參數。以上特征提取和分類器的組合算法在對電能質量擾動信號進行分類方面有著較好的表現,但這些算法主要憑借經驗和統計量提取信號特征,特征的不足或冗余都會對后續分類器的精度產生較大的影響。文獻[4-5]利用PSO 算法進行參數尋優來篩選出最優特征子集,但該方法對于不同類型和起止時刻的復合擾動類型的檢測效果并不理想;文獻[6]構造了一種基于歐氏距離的自適應度函數,利用改進的自適應遺傳算法對原始特征進行篩選和組合優化,但該算法對于更多分類器的適用性有限。

擾動特征的選取是電能質量擾動信號分類的前提[7],因此應采用一種更有效的方法自適應地對電能質量擾動信號進行特征提取和選擇,排除人為因素的干擾。近年來,數據挖掘、深度學習方法的發展使得快速分類和處理大規模數據成為可能,因此將深度學習方法應用于電能質量擾動分類領域具有潛在優勢[8-9]。文獻[10]提出了基于Hoeffding Tree 算法的在線電能質量擾動分類方法,首先結合小波變換和離散傅里葉變換進行電能質量擾動檢測,然后應用Hoeffding Tree 算法建立增量分類訓練模型;文獻[11]提出了一種基于稀疏自動編碼器SAE(Sparse Auto-Encoder)深度神經網絡的電能質量擾動算法,該算法利用稀疏自動編碼器對電能質量擾動原始數據進行無監督特征學習,自動提取數據特征的稀疏特征表達。

本文提出了一種基于側輸出融合卷積神經網絡SFCNN(Side-output Fusion Convolutional Neural Network)的電能質量擾動分類方法,能夠自動對電能質量擾動信號進行特征選擇及分類。針對一維序列的電能質量擾動信號,在卷積一層采用一維卷積,實現對電能信號序列的有效提??;通過對卷積神經網絡CNN(Convolutional Neural Network)的低、中、高層信息進行特征融合,側向輸出融合分類結果,能夠更好地把握信號的整體特征和局部特征,有效提高分類精度;通過批量歸一化BN(Batch Normalization)結構和學習率設置優化CNN,避免過度擬合等問題;利用添加高斯白噪聲的仿真數據對CNN 進行訓練,提高網絡的抗噪性。仿真和實測數據驗證了本文方法的有效性。

1 CNN

CNN 是一種監督學習的網絡模型,廣泛應用于圖像識別、語義分割、EGG 分類等領域,取得了令人矚目的效果[12-13]。傳統的CNN 包含卷積層、池化層、全連接層和Softmax 分類層[14]。在利用CNN 處理圖像時,可以將其看作一個函數,函數的輸入、輸出分別為原始圖像、分類的結果,即:

式中:xinput、xoutput分別為輸入、輸出;fconv(·)為卷積層運算;ffc(·)為全連接層運算;fSoftmax(·)為Softmax分類層運算。式(1)中包含可變的參數運算,CNN的訓練過程即通過改變參數值,使網絡獲得良好的訓練效果。為便于說明,下文對CNN 的各層進行說明時,均將該層作為第l層。

CNN組成說明如下。

1)卷積層。卷積層是CNN 自學特征提取的核心步驟,該層通過在數據上滑動卷積核,并與其覆蓋的數據進行卷積操作提取特征。卷積層的運算為:

式中:fdown(·)為下采樣函數,通常選取為最大池化函數(取局部感受視野內的各節點最大值)或平均池化函數(取局部感受視野內各節點平均值);n為神經元個數。

3)全連接層(Dense層):全連接層對卷積層和池化層提取到的特征進行綜合,計算特征對應的類別,輸出分類信息。全連接層的運算為:

4)Softmax 分類層。Softmax 分類層是具有激活函數的全連接層,其用于建立特征與類別之間的完全連接,Softmax 分類層的輸出值為輸入樣本屬于相應類別的樣本的概率,因此Softmax 分類層的神經元數量等于分類類別數量。第m個類別的Softmax 分類層的輸出為:

式中:k為樣本類別數;pm為該樣本被分為第m個類別的概率;xm為第m個類別的輸出層待激活的神經元。

5)BN 層。BN 層一般位于卷積層或全連接層之后,通過規范化層輸入數據解決數據內部協變量移位問題。BN層的主要原理公式為:

2 SFCNN分類模型

2.1 SFCNN的設計要求

在設計SFCNN 時,需要考慮電能質量擾動信號的2個因素。

1)電能質量擾動信號為一維信號,而CNN 廣泛應用于二維圖像的識別,文獻[15]利用Wigner-Ville技術將一維電能質量擾動信號傳輸到二維圖像文件中,然后利用CNN 進行識別,但這將增加計算量和操作復雜度,此外,將一維電能質量擾動信號轉換至二維圖像文件的過程中,可能會丟失重要信號細節特征。為使CNN 能夠更好地識別一維電能質量擾動信號,需要對傳統CNN的卷積層進行改進。

為了更好地對一維電能質量擾動信號進行分析處理,卷積層采用一維卷積濾波器。與傳統二維卷積相比,一維卷積的計算量較少,只需要執行線性操作即可。則卷積層輸出可表示為[16]:

2)電能質量擾動信號比較復雜,且復合擾動時有發生,訓練后的CNN 應具有很強的泛化能力,可以精確識別各種類型的電能質量擾動,這就要求CNN 能夠關注到擾動信號中的細節特征。此外,真實的電能質量擾動信號總是包含噪聲,因此訓練后的CNN應具有很好的抗噪性。

2.2 SFCNN結構

本文設計的SFCNN 結構如附錄A 圖A1 所示。SFCNN 結構包含S1—S3這3 個單元結構,每個單元結構將卷積層、BN 層、池化層組合在一起作為特征提取器;將S1—S3的卷積層的卷積濾波器數量分別設置為32、64、128 臺,以逐層加深網絡;將卷積步長設置為小步長1,使網絡能夠關注到電能質量擾動信號的細節特征,從而更加全面地提取特征;池化層用于提取電能質量擾動信號的顯著特征,同時減少網絡參數,由于最大池化方式的降噪效果要好于平均池化方式,因此池化層采用最大池化方式;在卷積層和池化層中間嵌入BN層對數據進行歸一化處理,防止內部數據過度擬合,并提高網絡的收斂速度;S1—S3的輸出經過Flatten 層后分別展平為n維特征向量Ssideoutput1—Ssideoutput3,為了更好地比較融合層輸出與卷積低、中、高層輸出,搭建網絡模型時,使用函數式應用程序接口(API)構建多輸出模型,在S1—S3的Flatten 層后添加全連接層,最后由Softmax 分類層得到各單元結構的分類準確率。

通過對ResNets、GoogleNet 等先進的經典CNN模型進行分析可知,在網絡傳遞過程中,網絡低層更加關注細節特征,提取到的低層特征伴隨著網絡的深入進行傳遞,逐步提取到高層特征,在該過程中,低層特征難免會丟失。因此本文利用融合層對不同卷積層的輸出進行融合,融合層結構如圖1 所示。融合層的輸入為特征向量Ssideoutput1—Ssideoutput3,融合層將這3 個特征向量首尾相連,拼接為1 個特征向量,從而實現特征融合。融合信號包含電能質量擾動信號的各級特征,且各級特征之間可以互補,低層特征可協助SFCNN提取適當的高層特征,提高SFCNN識別電能質量擾動的能力。

圖1 融合層結構Fig.1 Structure of fusion layer

3 仿真分析與結果驗證

3.1 實驗準備及數據獲取

采用包括純正弦波在內的15 種電能質量擾動信號來評估所本文所提基于SFCNN 的電能質量擾動分類方法的性能。電能質量擾動信號由10 種單一類型和5 種復合類型的信號組成,前者包括純正弦波形(C1)、暫降(C2)、暫升(C3)、中斷(C4)、諧波(C5)、脈沖瞬態(C6)、振蕩瞬態(C7)、閃變(C8)、電壓切痕(C9)和尖峰(C10)信號,后者包括諧波暫降(C11)、諧波暫升(C12)、諧波中斷(C13)、暫降閃變(C14)和暫升閃變(C15)信號。圖2為典型電能質量擾動仿真信號波形圖,圖中幅值為標幺值,后同。參數變化符合IEEE Std 1159—2019標準中的參數方程[17]。

圖2 仿真信號波形圖Fig.2 Waveforms of simulative signals

仿真信號在MATLAB 環境下產生,采樣頻率設置為6.4 kHz,單個樣本數據長度為1 280,通過隨機更改約束參數,可以生成無限數量的數據。因此,仿真信號可以滿足深度學習對訓練數據數量的要求。每類電能質量擾動信號有500 個樣本,共產生4 500個訓練集、1 500 個測試集。為了便于計算損失函數,利用one-hot 編碼表示標簽數據,例如[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0]表示樣本屬于第1 個類別。

實際的電能質量擾動信號采集過程不可避免地會受到采集設備以及環境噪聲的干擾,為了提高SFCNN 的泛化性,在采樣信號中疊加信噪比為50、40、30、20 dB的噪聲作為干擾以模擬真實信號,使用不同水平的模擬噪聲來訓練SFCNN。表1為本文所采用的數據集。

表1 訓練樣本數據集Table 1 Training sample dataset

3.2 仿真數據驗證

基于Keras 框架訓練SFCNN,實驗訓練階段設置小批次數據量為128,訓練迭代輪次為50,通過訓練集和測試集中的交叉熵損失LCE和分類準確率rc來評價SFCNN 的性能。網絡模型精度越高,交叉熵損失越小,說明網絡模型性能越好。訓練集和驗證集的分類準確率與交叉熵損失對比如圖3 所示。由圖可見,采用隨機小批量方式進行50 次迭代訓練期間,在20 次迭代之后訓練集和驗證集的分類準確率幾乎相等,最高分類準確率在99.5%以上。

圖3 訓練集和驗證集的分類準確率與交叉熵損失的對比Fig.3 Comparison of classification accuracy rates and cross entropy losses between training set and verification set

為進一步驗證融合層的性能,將融合層的分類準確率與卷積低、中、高層的分類準確率進行對比,結果見圖4。由圖可見:迭代輪次較少時,融合層的分類準確率明顯高于卷積低、中、高層的分類準確率;隨著迭代輪次的增加,卷積中、高層的分類準確率明顯增加,但融合層的分類準確率始終高于卷積高層的分類準確率,可見進行特征融合后分類效果較好。

圖4 融合層與各卷積層的分類準確率比較Fig.4 Comparison of classification accuracy rates between fusion layer and convolutional layers

3.3 SFCNN性能優化設計

為確定學習率α對SFCNN 性能的影響,在不同學習率下對SFCNN進行訓練優化,結果如圖5所示。由圖可見,學習率較低時網絡收斂速度較慢,學習率過高又會導致網絡學習性能不穩定,綜合來看,學習率為0.001 時SFCNN 的性能最好,因此本文設置學習率為0.001。

圖5 不同學習率下的交叉熵損失對比Fig.5 Comparison of cross entropy losses among different learning rates

為驗證BN 層對于SFCNN 性能的影響,對比包含和不包含BN 層的SFCNN 的分類準確率和交叉熵損失,結果如圖6 所示。由圖可以看出,包含BN 層的SFCNN 的分類準確率要高于無BN 層的SFCNN,其交叉熵損失更小,收斂速度更快,可見BN 層可以優化網絡模型結構,防止網絡的過擬合。

圖6 有、無BN層情況下的分類準確率與交叉熵損失的對比Fig.6 Comparison of classification accuracy rates and cross entropy losses between with and without BN layer

3.4 特征可視化分析

為了更加直觀地理解SFCNN 對于電能質量擾動信號的特征提取過程,采用t 分布隨機近鄰嵌入(t-SNE)技術[18],對輸入數據及融合層輸出進行可視化。設置t-SNE的迭代輪次為1000、困惑度為30,對輸入數據以及融合層輸出特征的可視化結果見附錄A 圖A2和圖A3。由圖A2可見,輸入數據分布雜亂,彼此重疊交叉;由圖A3 可見,經過SFCNN 處理后,同類別的數據聚合在一起,不同類別的數據之間距離變大,沒有重疊現象,正常信號和不同類別的電能示例擾動信號在二維平面上均能明顯區分,說明了特征融合的有效性。

3.5 SFCNN與現有方法的比較

為了驗證本文方法的優越性,將本文算法與3種先進的深度學習算法進行對比,對比算法簡要介紹如下。

1)深度CNN(DCNN):選取文獻[19]提出的具有6 個標準卷積層的DCNN,卷積核大小設置為3,步長設置為1,各卷積層過濾器的數量設置為32、32、64、64、128、128,全連接層數為3。

2)長短期記憶網絡(LSTM):采用3 層堆疊式LSTM 結構,各層的LSTM 記憶節點數分別為32、32、32,激活函數為tanh。

3)CNN-LSTM:文獻[20]設計了具有2層標準卷積層的CNN,卷積核大小設置為3,卷積層過濾器數量為64和128,將其與LSTM結合進行電能質量擾動信號分類,LSTM層數為1,LSTM記憶節點數為50。

設置迭代輪次為50 次,在相同配置的計算機和數據集上對4 種算法進行訓練,訓練時間為算法迭代一次所用時間,性能對比結果如表2 所示。表中,RSN為信噪比。由表可見:LSTM 的訓練時間最短,但在各種信噪比下的分類準確率均低于其他方法;綜合考慮訓練時間和分類準確率,本文所提的SFCNN取得了較好的效果,優于其他3種深度學習算法。

表2 4種深度學習算法的性能比較Table 2 Performance comparison among four deep learning algorithms

將SFCNN 與文獻[2]采用的DWT 和分層極限學習機(H-ELM)方法(DWT+H-ELM),文獻[21]采用的ST 和概率神經網絡(PNN)方法(ST+PNN)、文獻[22]采用的可調品質因子小波變換(TQWT)和隨機森林(RF)方法(TQWT+RF)進行對比,結果如表3所示。表中,“—”表示文獻[21]中未直接給出分類準確率。傳統的電能質量擾動分類方法中,對信號分解后要對特征進行選擇,關于特征數量的選取并沒有明確的規定,文獻[21]僅選取了4個特征,在30 dB的信噪比下,分類準確率為98.63%,而文獻[22]選取了16 個特征進行分析,在相同的噪聲條件下,分類準確率達到了98.13%,兩者準確率接近,說明特征的類型及數量差異導致了分類結果的差別。本文所提基于SFCNN 的多層信息融合結構可以自動提取有效特征,不僅簡化了電能質量擾動識別的過程,而且縮短了特征的提取和選擇時間,訓練后在各種噪聲條件下的分類準確率均高于其他傳統方法。

表3 SFCNN和傳統方法的分類準確率對比Table 3 Comparison of classification accuracy rates between SFCNN and traditional methods

3.6 實測數據驗證

為了驗證本文方法對實測信號的適用性,采用一組實測信號來測試SFCNN 的分類性能。實際信號來自IEEE PES 數據庫提供的用于電能質量擾動分類的數據,每個信號的長度為1 536,信號采樣率為每周期256個點。

由于網絡模型需要大量數據進行訓練優化,數據的優劣直接決定所訓練模型的適應性和可行性。針對個別類別的數據量少、數據分配不均衡的問題,采用數據增強的方法,通過隨機裁剪、添加高斯噪聲、隨機翻轉操作進行數據增強,增加訓練數據量。以實測暫態振蕩信號為例,進行數據增強后的結果見圖7。

圖7 數據增強結果示例Fig.7 Example of data enhancement results

對數據集進行增強后,訓練集、測試集的樣本數量分別為3 000、500。使用增強后的數據集訓練本文所提SFCNN和3.5節中的DCNN、LSTM、CNNLSTM,得到的電能質量擾動分類結果如表4 所示??梢钥闯?,SFCNN 對增強后的實測數據的平均分類準確率為97.2%,低于仿真結果,其主要原因是訓練數據是使用仿真軟件生成的,與真實數據有一定的差別,而真實數據的信號所受干擾更加復雜,且實測數據量較小,類別之間分布不均勻,以及人工標注存在誤差等,容易造成網絡訓練準確率有所下降。

表4 數據增強后的實測信號分類結果Table 4 Measured signal classification results after data enhancement

4 結論

本文針對傳統電能質量信號擾動識別存在的人工選取特征困難、計算量較大等缺陷,提出了一種基于深度學習的SFCNN 進行電能質量擾動信號分類,主要工作及結論如下。

1)構造了一種新型的側輸出融合結構,該結構可整合不同卷積層的信息,自動提取特征,實現電能質量擾動信號分類。

2)采用一維卷積處理電能質量擾動信號,將BN層引入SFCNN,以加快網絡收斂速度,防止過擬合。

3)本文所提的SFCNN 可以將傳統電能質量擾動檢測和識別系統的擾動特征提取選擇和分類2 個主要模塊融合到一個學習體中,提高了分類準確率,節省了人力并簡化電能質量擾動信號分類流程;仿真和實測數據驗證了本文所提的SFCNN 可以有效地學習分類電能質量擾動信號,分類準確率較高,且抗噪性能較好;SFCNN 的輸入數據以及融合層輸出特征的t-SNE 可視化結果也從側面說明了SFCNN 的有效性。

附錄見本刊網絡版(http://www.epae.cn)。

猜你喜歡
擾動電能卷積
Bernoulli泛函上典則酉對合的擾動
基于3D-Winograd的快速卷積算法設計及FPGA實現
蘋果皮可以產生電能
電能的生產和運輸
(h)性質及其擾動
從濾波器理解卷積
海風吹來的電能
基于傅里葉域卷積表示的目標跟蹤算法
澎湃電能 助力“四大攻堅”
小噪聲擾動的二維擴散的極大似然估計
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合