陳克緒,徐春華,劉 玲,胡 濤
(1. 國網江西省電力有限公司供電服務管理中心,江西 南昌 330096;2. 國網江西省電力有限公司南昌供電分公司,江西 南昌 330012)
隨著電網建設的發展,電力供應能力大幅提升,以電能為能量提供形式的不同種類的用電設備也不斷增加,負荷側的組成結構和負荷特性等也愈發復雜[1]。開展負荷側用電特性研究,掌握負荷側用電情況,對保障電力系統安全可靠運行具有重要指導意義[2]。通過對負荷識別進行研究,可以統計分析出電力用戶負荷組成,為建設堅強智能電網提供有力數據支撐。
根據負荷識別設備安裝位置的不同,可分為侵入式和非侵入式兩種方法[3-4]。侵入式方法是指在室內所有的用電設備上都安裝一個負荷識別設備(主要是數據采集和分析裝置),這種方式負荷識別準確,缺點是安裝和維護困難,成本也相對較高。非侵入式識別不需要在用戶的電器上安裝負荷識別設備,僅在用戶電能表進線處安裝相應的監測設備,對采集到的信號進行分析,通過設備內預設的負荷識別算法識別出用戶負荷類別并計算電量,大大節約了成本,使用方便,實用性強,有良好的發展前景[5]。國內外學者對非侵入式負荷識別已經做了很多研究,也提出了許多不同的方法,例如 DTW 距離算法[6]、K 近鄰算法[7]、遺傳優化算法[8]、模糊 C 均值聚類[9]等。然而,上述研究方法計算復雜,對設備性能要求較高,無法實時進行負荷識別。
神經網絡具有大規模并行、自學習及自適應能力,訓練完成后計算速度快等優點,在非侵入式負荷識別中得到廣泛應用。高云等[10]將模糊聚類算法用于分類識別電力負荷,但這種方法首先需要確認類別數目。黃友金等[11]采用卷積神經網絡,同時結合幅值特征閾值,實現了在低采樣頻率下能夠有效辨識負荷。江帆等[12]采用廣義回歸神經網絡進行負荷分類研究,這種方法具有良好的魯棒性,同時也提升了網絡的訓練速度。徐春華等[13]在電力負荷識別中采用深度學習和深度置信網絡方法,能準確別出了各類負荷,取得了良好的效果。
目前,通過人工方式選擇電力用戶負荷特征比較困難,針對此問題,本文采用深度學習堆棧降噪自編碼網絡(stacked de-noising auto-encoder, SDAE)方法。該方法有效地解決電力用戶負荷特征選擇的困難,實現了對監測設備采集的現場電力負荷數據自主進行分類識別。SDAE是一種深度神經網絡架構,將多個降噪自編碼器(de-noising auto-encoder,DAE)進行堆疊,最后用一層后向傳播(BP)神經網絡進行微調。深度學習主要是通過分層預訓練的機制[14-15],從大量的訓練數據中提煉出隱含的關鍵特征。深度學習早期是用于解決圖像識別問題,現在已經滲入到機器學習的各領域,在語音識別、目標檢測識別等各領域均有很好的應用。本文提出的SDAE方法在對電力用戶負荷識別的應用中具有良好的識別效果,其識別準確率超過96%。
電力負荷主要有電動機、電弧爐、照明裝置等。近年來,接入電網的非線性負荷越來越多,造成了電網電壓、電流信號畸變現象集聚增多。另外,家用電器(如空調、冰箱等)也越來越多地采用變頻等電力電子技術,使居民用電呈現出非線性化。而非線性設備不僅產生諧波,而且會使電流發生畸變。例如開關電源、變頻器等都會有諧波分量產生,這與整流電路的非線性有關。隨著社會的發展,用戶對供電可靠性和供電質量的需求將不斷提高,對電網中存在的電力負荷進行分類識別,將有助于為電力用戶提供優質服務。
通過在現場采集到的工業用戶電力負荷波形數據,建立了相應的工業電力負荷數據庫。本文從數據庫內選取8種負荷類型,如表1所示。首先選擇一定的樣本數據進行多次訓練學習,自動提取電力用戶負荷數據的特征信息;然后再根據提取的特征信息進行電力負荷識別檢驗。
表1 負荷類型及采樣地點
自編碼器(auto-encoder, AE)屬于一種特征提取算法,包括編碼器和解碼器兩部分。編碼器把輸入數據變成一個隱藏的空間表示,解碼器將隱藏空間的表示重構輸出,其中輸入、輸出的數據空間維度相同。編碼是在輸入層與隱含層之間通過特征提取實現的,解碼是將隱含層的數據重構輸出的過程。AE首先通過預訓練得到一個大致的網絡參數模型,然后根據反向傳播算法對網絡中的參數進行更新,使該網絡能更好地識別出數據的特征。一個AE的結構如圖1所示。
圖1 自編碼器
降噪自編碼器(de-noising auto-encoder, DAE)是自編碼器(AE)的一種改進形式,DAE是在AE的基礎上,為輸入的原始信號添加了高斯白噪聲,如此可以增加隱含層對輸入信號中存在干擾噪聲的魯棒性。
對于DAE而言,重構輸出的信號與原始輸入的信號之間差異越小,其隱含層對信號特征識別的能力越好。
為得到最小的重構誤差,本文采用了梯度下降法更新參數W和b,對于每一次迭代有:
選用一層和多層DAE均能對電力負荷數據進行特征提取,但是采用一層DAE提取的特征信息不夠準確,因此本文采用多個DAE堆疊,形成多層網絡,以提取出更加可靠的數據特征。本文分別采用了堆疊2層和3層DAE網絡識別電力負荷數據的本質特征,并增加了BP神經網絡的監督微調環節,對堆疊DAE識別的特征信息進行實時監督和微調,最后再將電力負荷數據進行分類輸出。堆疊三層DAE網絡結構如圖2所示。
圖2 堆棧降噪自編碼網絡
采用逐層訓練的方式提取特征,從低層開始訓練,完成后進行下一層的訓練。低層訓練輸出的結果直接用作下一層訓練的輸入,直到最高一層訓練完成為止。在多個DAE堆疊訓練完成之后,通過頂層的BP神經網絡對前面訓練好的最終結果進行微調,可以進一步提高識別準確率。
在對電力負荷進行識別的過程中,首先是將原始數據分為訓練和測試兩大類,然后對其進行預處理與歸一化,再將處理后的訓練數據作為輸入數據對SDAE模型進行訓練,訓練完的SDAE模型可以有效地提取出電力負荷工作時的特征。雖然SDAE選擇與提取特征的過程不明確,但是可以自動提取電力負荷的內在特征。將測試數據輸入到訓練好的SDAE模型中,通過輸出的最終結果與類別標簽對比計算,可得出SDAE模型的負荷類型識別率。實驗大致流程如圖3所示。
圖3 實驗流程圖
使用國網江西電科院自主研制的0.02級電能表現場參數記錄儀,采用非侵入方式采集現場工業用戶的波形數據用于分析及識別研究。為保證采樣波形數據的完整和實時性,設置設備在存儲數據時不進行同步電壓電流波形采集,裝置的采樣頻率設定為50 kHz,每個負荷點均采集10次,每次采集時長均設置為5 min,對電壓、電流波形和用于計量的電能表脈沖進行同步采集。國內電網基波頻率為工頻50 Hz,根據裝置設置數據計算出此時一個周波采樣 1 000 點,5 min 采樣 15000 周波,每個負荷點采集50 min,共計采樣 150 000周波。電力負荷類型及江西采樣現場情況如表1所示。
將采集的原始數據通過現場參數記錄儀內設的數據分析處理軟件進行解析,得到通用格式的樣本數據。首先,根據使用需要,將樣本數據進一步分解,得到電壓、電流和采樣時間等信息;然后,用Matlab工具對樣本數據進行分析處理,將數據切割為10周波一行,共分割成15 000行;最后將處理后的電流波形數據用作負荷識別分析的依據。各種負荷的樣本數據均為一行10個周波,其采樣點數為10 000 點,最終得到的數據樣本為 15 000×10 000的矩陣。選取其中12 500個(行)數據作為訓練數據,剩余的2 500個(行)數據作為測試數據。采用SDAE方法進行訓練和測試。在進行訓練前首先對所采集的樣本數據進行歸一化處理:
x——原信號;
xmax——原信號的最大值;
xmin——原信號的最小值。
實驗中,8種用電力負荷的電流歸一化波形如圖4所示。
圖4 歸一化波形圖
為了進一步掌握8種電力負荷的內在特征,通過快速傅里葉變換對電流信號進行分析處理,從圖5中可以看出,8種電力負荷的諧波分布及含量各不相同。
圖5 8種負荷電流的各次諧波分量
由于樣本數據多,將試驗平均分成5組進行,每組仍有8種負荷類型,且每種類型由2 500個訓練數據與500個測試數據組成,即訓練數據與測試數據分別為 20 000×10 000 的矩陣和 4000×10 000的矩陣。最終負荷識別的準確率采用5組實驗結果的平均值。
實驗環境為 Inter Core i7-6500U、CPU 主頻為2.5 GHz、12 GB 內存、64 位操作系統的計算機。實驗時DAE網絡分別為2層和3層,選用2層DAE網絡時,將隱含層的神經元數量依次設為100和50,其網絡結構為10000-100-50-8;選用3層DAE網絡時,將隱含層的神經元數量依次設為100、50和50,網絡結構為 10000-100-50-50-8。訓練時,DAE 每一層迭代次數都設定為500次,學習速率設為0.02,信噪比例設為0.2 dB;DAE模型訓練完成之后,用BP神經網絡進行微調,微調600次,學習速率設為0.01。
選擇使用兩層DAE時,在第一層提取負荷的初始特征,在第二層提取負荷的深入特征,完成各層訓練后再對最終的網絡結構進行微調,第一層的權重可視化如圖6所示,第二層的權重可視化如圖7所示。圖6中的區塊對應著第一層DAE隱含單元的權重,與圖7中第二層DAE區塊類似。
圖6 第一個RBM的可視化權重
圖7 第二個RBM的可視化權重
圖8為DAE迭代次數為600次時,識別率與微調次數關系的曲線圖。從圖中可以看出微調次數越多,負荷識別準確率越高,當微調次數達到500次之后,電力負荷的分類準確率已無太大的上升空間,基本保持不變。
圖8 分類準確率隨微調次數變化曲線
在DAE實驗后,文中采用非線性的3層BP神經網絡算法進行實驗。訓練時,采樣相同的訓練集對BP進行訓練,神經網絡的迭代次數設定為500次,學習速率設為0.02,訓練完成后進行負荷識別。實驗得到的8種電力負荷的測試數據樣本的識別率如表2所示。
表2 負荷類型識別率 %
當采用基于SDAE的電力負荷識別方法后平均識別率為96.23%,取得了良好的識別效果。當使用3層網絡后,平均識別率提高到97.68%,較2層網絡識別率提高了1.45%,較4層網絡識別率提高了0.67%。在迭代次數與微調次數均相同的條件下,3層DAE的識別率較3層BP神經網絡(BP neural network, BP)提升了2.93%,其識別率明顯優于BP。
開展對比實驗,選擇3層DAE網絡,設置不同迭代次數和微調次數,從而進一步檢驗DAE能否有效分類識別電力負荷類型。網絡結構依然為10000-100-50-50-8,分別進行兩組實驗:第一組的迭代次數以及微調次數均為300,第二組的迭代次數以及微調次數均為500。實驗結果如表3所示。
表3 8種負荷類型識別率
由表3可以看出,在一定范圍內,通過增加迭代次數及微調次數可以顯著提高分類識別率。SDAE通過自主學習可以得到不錯的網絡模型,這也說明了深度學習方法在電力負荷識別中具有良好的效果。
本文提出了基于堆棧降噪自編碼網絡的電力負荷識別方法,并且通過現場真實采集的電力負荷數據進行了試驗驗證,可以得出以下結論:
1)基于堆棧降噪自編碼網絡的電力負荷識別方法可自動提取現場實際采集的數據特征,DAE網絡的迭代次數、DAE層數以及微調次數需要經過試驗獲取。通過試驗得出:3層DAE迭代、微調500次可以達到較好的效果,最終負荷識別準確率能達到96%以上。
2)基于堆棧降噪自編碼網絡(SDAE)的電力負荷識別方法可廣泛用于各類電力負荷波形數據的特征提取和準確識別。首先,廣泛采集現場各類典型電力負荷的電流波形數據;然后通過SDAE自動提取電力負荷的內在特征,建立典型負荷特征庫;最后根據建立的特征庫準確識別現場的電力負荷類型。
現場實際采集的數據為非線性負荷,其中含有較多的噪聲,傳統人工特征提取方法不能很好地區分特征。后期,我們將對負荷數據進行噪聲處理,再將傳統分類算法與SDAE算法相結合,以獲得更佳的負荷識別效果。下一步將采集更多的實測數據,建立更完善的電力負荷數據集,以便有效識別更多的電力負荷類型。