馬臨超,楊 捷,肖 鵬,曾 杰
(1.河南工學院電氣工程與自動化學院,河南新鄉(xiāng) 453003;2.云南電網(wǎng)有限責任公司,云南昆明 650000;3.東北電力大學電氣工程學院,吉林長春 132012)
非侵入式負載監(jiān)測(Non-intrusive Load Monitoring,NILM)的目的是通過負載總耗電量來估計某一特定設備的耗電量,并將多個設備的總耗電量分解為單個設備的能耗量[1-2]。NILM 的優(yōu)勢是終端用戶可獲取單個設備的能耗數(shù)據(jù),并優(yōu)化單個設備的能耗行為[3]。已有研究表明,獲取單個設備的用能行為有利于為用戶節(jié)省12%的能源,因此,NILM 有利于電網(wǎng)公司和用戶降低自身運行和用能成本[4-5]。NILM 的方法一般可分為有監(jiān)督算法和無監(jiān)督算法2 類。有監(jiān)督算法指通過已有的單個設備能耗數(shù)據(jù)訓練樣本去訓練得到一個最優(yōu)模型,再利用這個模型將所有的輸入映射為相應的輸出,對輸出進行簡單地判斷,從而實現(xiàn)預測和分類的目的,具有了對未知數(shù)據(jù)進行預測和分類的能力[6-7]。無監(jiān)督算法事先無任何設備能耗的訓練樣本,直接對數(shù)據(jù)進行建模,通過聚類對數(shù)據(jù)進行處理。有監(jiān)督算法與無監(jiān)督算法的區(qū)別在于數(shù)據(jù)是否存在標簽[8-11],且有監(jiān)督算法更適合于解決復雜負載監(jiān)測問題[12-13]。然而,2 種方法在某些方面具有一定局限性[14-17],如精度較低、未考慮負載數(shù)據(jù)多時間尺度耦合特性等,故需要研究更為精確全面的有監(jiān)督型NILM 方法。
隨著深度神經(jīng)網(wǎng)絡的發(fā)展,提出多種基于神經(jīng)網(wǎng)絡的有監(jiān)督NILM 方法[18-20]。神經(jīng)網(wǎng)絡在NILM中的應用始于遞歸神經(jīng)網(wǎng)絡(Recurrent Neural Networks,RNN)、卷積神經(jīng)網(wǎng)絡(Convolutional Neural Networks,CNN)和去噪自編碼器(Denoising Auto-Encoders,DAE)。CNN 結(jié)構(gòu)靈活性較大,受到國內(nèi)外學者的廣泛關注[21-22],提出了各種改進CNN模型,如序列對點、序列對序列等,進一步豐富了CNN 架構(gòu)的設計。文獻[23-25]通過增加開/關狀態(tài)分類子網(wǎng)絡,使模型可以直接學習開/關狀態(tài)信息,從而提升CNN 網(wǎng)絡的估計精度。文獻[26-28]通過增強CNN 多時間尺度特征,以對更多層次進行采樣,并實現(xiàn)多時間尺度特征的關聯(lián),其廣泛應用于目標檢測、語義分割等計算機視覺任務中,以獲取多尺度信息及耦合關系。文獻[29]指出當信息前后的相關性較高時,通過增加自我關注機制,可有效提升模型的預測精度??紤]到不同設備的能耗特性往往不同,不同設備的負載特性曲線差異性較大,當多個設備組合使用時其負載曲線特性將更為復雜[30],因此,NILM 需要具備處理大規(guī)模復雜負載變化的能力。除了短時間尺度本地信息外,考慮大規(guī)模負載在時間上的耦合特性,挖掘能耗行為具有重要意義。因此,在處理大規(guī)模復雜負載集群過程中會產(chǎn)生很高的錯誤率。
基于此,本文提出了一種基于可縮放感知卷積神經(jīng)網(wǎng)絡的非侵入式負載監(jiān)測方法,模型包括多時間尺度感知與特征提取模塊、自我關注模塊和對抗損失模塊等。多時間尺度感知與特征提取模塊可獲取與整合不同時間尺度負載數(shù)據(jù)的耦合特征,自我關注模塊和對抗損失模塊根據(jù)耦合特性來進一步提高監(jiān)測模型的估計精度。本文設計了一種多時間尺度感知與特征提取的CNN 結(jié)構(gòu),極大地提高了對多種用能設備能量分解的準確度,并能挖掘不同設備的用能相關性;在所建模型中增加了對抗性損失,有效提高模型的準確度和廣泛性。最后,通過實例仿真驗證了所提模型的有效性和優(yōu)越性。
監(jiān)測模型具有2 個子網(wǎng)絡[31-32],即fpow和fon。為表示第i個設備開關狀態(tài)的輔助序列,預測的開關狀態(tài)概率序列為因此,模型的最終輸出為:
式中:⊙為相乘。
1.2.1 尺度感知特征提取
模型的尺度感知是通過在原始網(wǎng)絡中加入不同擴張率的平行分支,并通過簡單的門控機制將2個子網(wǎng)絡中的分支連接起來,使回歸網(wǎng)絡只保留最重要的部分以不同比例繪圖。圖1 為不同擴張率(rd=1,2,3)的擴張卷積圖。
圖1 不同擴張率的擴張卷積圖Fig.1 An illustration of dilated convolution with different dilation rates
由圖1 可知,相同的層數(shù)和參數(shù)下,更大的rd使輸出節(jié)點對輸入時間范圍響應更大。因此,不同rd分支的輸出將反映輸入時不同時間尺度的元素。同時,當使用更大的rd時,輸入端的元素將影響更多的輸出節(jié)點。為fpow支的輸出,為含s激活函數(shù)的fon分支的輸出,2個子網(wǎng)絡之間的門控機制可表示為:
由于門控制機制是針對每個擴張率單獨進行的,所以可以在不同的時間尺度上實現(xiàn)豐富的特征組合。將連接起來,得到p(2)和s(2)。p(2)和s(2)都經(jīng)過核大小為1 的卷積層處理,生成p(3)和s(3)作為自我關注模塊的輸入。
1.2.2 前后信息感知特征的關聯(lián)性
前后信息感知特征的關聯(lián)性是通過自我關注模塊實現(xiàn)的,模塊含L時間步長和C通道的輸入z∈RC×L。模塊學習1 個額外的特征映射r∈RC×L,每個時間步長值通過關注z中的所有時間步長得到的。首先,映射輸入z含g(z)=Wgz和g(z)=Wgz,自我關注矩陣A中的元素可表示為:
式中:aj,i為計算第j個時間步長的響應時分配給第i個時間步長的關注值。
計算額外的特征圖r為:
自我關注模塊的輸出定義為:z+γr,γ初始化為0,在訓練模型時進行更新,使模型可以首先依賴局部前后信息,逐漸學習提取全局前后信息中的關聯(lián)性。權矩陣Wg,Wh和Wd運用到卷積層,其核大小為1。
對于2 個子網(wǎng)絡,自我關注模塊可以表示為:p(4)=p(3)+γprp和s(4)=s(3)+γsrs,其中,γp和rp為附加特征映射;γs和rs為相關系數(shù)。模型的損失函數(shù)和2 個子網(wǎng)由L=Lout+Lon得到,其中,Lout為采用均方誤差測量整個解集模型的誤差;Lon為采用二進制測量開/關狀態(tài)分類子網(wǎng)絡的誤差。
通過在模型中增加對抗性損失,進一步提高監(jiān)測模型的性能。本文在模型中加入1 個對抗網(wǎng)絡,使模型可以部分訓練為帶有梯度懲罰的Wasserstein 模型。原始模型由產(chǎn)生器G 和鑒別器D 之間的極小-極大對策來表述,即:
式中:Pr為真實數(shù)據(jù)的分布;Pg為=G(b),b~p(b)產(chǎn)生的數(shù)據(jù)分布,表示G 的輸入是從某個噪聲分布中采樣的。
鑒別器的目標是獲得區(qū)分真實樣本和生成樣本的能力,生成器試圖通過學習生成真實的數(shù)據(jù)樣本來混淆鑒別器。輪流訓練產(chǎn)生器和鑒別器,使產(chǎn)生器逐漸獲得產(chǎn)生真實樣本的能力。本文采用WGAN-GP 模型[25],該模型采用Wasserstein 距離來穩(wěn)定模型的訓練。WGAN-GP 中的梯度懲罰是D的梯度的范數(shù),而不是裁剪D中的權重。WGANGP 損失可表述為:
其中,前兩項為Pr和Pg之間的Wasserstein 距離。最后一項為梯度懲罰,a~Pa為從Pr和Pg采樣的線段連接點進行均勻采樣。本文采用產(chǎn)生網(wǎng)絡fout(xt)作為發(fā)生器,不是從噪聲分布中生成樣本。本文在模型中增加了對抗性損失Ladv,這樣整體損失函數(shù)變?yōu)椋?/p>
式中:λadv為對抗性損失的權重。
期望對抗性損失可以幫助模型產(chǎn)生更真實的輸出序列,特別是當訓練數(shù)據(jù)集的大小相對較小的時候。此外,本文采用通路狀態(tài)增加來解決用電設備負載需求的變化。給定設備,確定最大偏移量e-和e+,將每個輸出序列y替換為y+eo,其中,e~U(e-,e+)。添加同樣數(shù)量的通路狀態(tài)偏移量到相應的輸入序列x中。在模型的訓練過程中應用這個增量。本文將通態(tài)增量應用于家用冰箱,因為通態(tài)功率的偏差估計是分解誤差的主要來源。
本文使用2 個真實的數(shù)據(jù)集REDD[26]和UKDALE[27]來評價所提模型的性能。REDD 數(shù)據(jù)集包含來自美國6 個家庭的測量數(shù)據(jù),不同家庭的數(shù)據(jù)集時間跨度為23~48 d。每1 s 記錄1 次電力消耗,每3 s 記錄1 次電器消耗。UKDALE 數(shù)據(jù)集包括5 個英國家庭的數(shù)據(jù),每6 s 記錄1 次總消耗和個人電器的消耗。1 號家庭的監(jiān)測時間超過600 d,其余房屋的監(jiān)測時間范圍為39~234 d。本文采用2-6 號家庭的數(shù)據(jù)創(chuàng)建訓練集,保留1 號家庭的數(shù)據(jù)作為REDD 數(shù)據(jù)集的測試集。家用電器有冰箱、洗碗機和微波爐。此外,本文使用的REDD 數(shù)據(jù)集的預處理數(shù)據(jù)方法出自文獻[2]。對于UKDALE 數(shù)據(jù)集,本文使用1 和5 號家庭進行訓練,使用2 號家庭進行測試。為了使數(shù)據(jù)歸一化,本文將2 個數(shù)據(jù)集的功耗值除以612,這是REDD 數(shù)據(jù)集中2~5房屋的總功耗的標準差。
子任務網(wǎng)絡(Subtusk Gated Netword,SGN)中每個子網(wǎng)中有6 個卷積層和2 個全連接層(Fully Connected Layer,F(xiàn)C)層。每層的濾波器個數(shù)分別為30,30,40,50,50,50,核大小分別為10,8,6,5,5,5。所有卷積層都以步長1 和“相同”的填充來實現(xiàn),權重為“正常”初始化器初始化。第1 層FC 有1024 個隱藏節(jié)點,第2 層FC 有與模型輸出相同的節(jié)點數(shù)。除了最后一層以外,所有的層都使用了ReLU 激活函數(shù)。對于REDD 數(shù)據(jù)集,輸出序列大小s為64,附加窗口大小w為400,而UKDALE 數(shù)據(jù)集s和w分別為32 和200。由于UKDALE 數(shù)據(jù)集的輸入和輸出大小減少了一半,故將內(nèi)核大小更改為5,4,3,3,3 和3,而其他超參數(shù)保持不變。此外,本文采用初始學習率為0.000 1 的Adam 優(yōu)化器,對模型進行5 個時期的訓練,批處理規(guī)模為16。對于所提模型,從第4 個卷積層開始,在每個子網(wǎng)絡上增加2 個并行分支rd=2 和rd=3,并產(chǎn)生p(3)和s(3)的層有64個過濾器,因此,對于自我關注模塊C=64,本文設置Cˉ為32。本文模型的超參數(shù)來自文獻[2],所有模型都是在Python 3.6 和Keras 2.1.6 中實現(xiàn)。
輸入樣本是通過滾動采樣周期在具有特定步長的輸入序列上運行產(chǎn)生的,對于REDD 數(shù)據(jù)集,步長設置為2。微波爐、洗碗機、冰箱、洗衣機和熱水壺的步長分別為4,8,32,32。UK-DALE 數(shù)據(jù)集為32。本文通過確保SGN 模型的性能不低于文獻[2]來選擇步長。1 個步長為2 的滾動采樣周期生成輸入樣本,將多個重疊輸出序列取平均值以產(chǎn)生最終輸出。此外,作為通路狀態(tài)事件在一些設備中相對比較少見,故通路狀態(tài)的不平衡會給模型的訓練帶來困難,因此,本文從一些設備的訓練數(shù)據(jù)集中隨機刪除非狀態(tài)樣本。對于REDD 數(shù)據(jù)集保持斷開狀態(tài)樣本的概率,洗碗機為0.2。對于UK-DALE數(shù)據(jù)集,洗碗機、微波爐和熱水壺的概率分別為0.02,0.05 和0.1。
為了實現(xiàn)WGAN-GP,本文給出了1 個簡單的對抗網(wǎng)絡,它有4 個卷積層,每層有32 個濾波器。內(nèi)核大小設置為3,用256 個隱藏節(jié)點的FC 層連接卷積層和輸出節(jié)點,Ladv的權值λadv為0.5。本文采用平均絕對誤差(EMA)和信號累積誤差(ESA)作為每個設備的評價指標[2]。具體來說,給定1 個T個時間步長的預測輸出序列,,其中,N為長度為M的不相交時間段的個數(shù);T=NxM;τ為第r個時間段的預測總功耗;rτ為對應的真值。本文設置N=1 200,對于REDD 數(shù)據(jù)集,每個時間段大約對應1 h,對于UKDALE 數(shù)據(jù)集,每個時間段大約對應2 h。
2.2.1 實驗結(jié)果對比
表1 和表2 分別為REDD 和UK-DALE 數(shù)據(jù)集的評估指標比較表。每個值均為3 次試驗結(jié)果的平均值。從表1 和表2 中可知,所提模型在所有設備上,尤其是REDD 上的EMA和ESA都低于SGN數(shù)據(jù)集,平均EMA和ESA提升了22.39%和28.60%。UKDALE 數(shù)據(jù)集的平均提升也超過了10%。
表1 REDD數(shù)據(jù)集的評價指標表Table 1 Evaluation index table of REDD dataset W
表2 UKDALE數(shù)據(jù)集的評價指標表Table 2 Evaluation index table of UKDALE dataset W
圖2 為針對微波爐的SGN 和所提模型的分解結(jié)果圖。其中,數(shù)據(jù)時間跨度大約為100 h。
圖2 REDD數(shù)據(jù)集下SGN和所提模型對微波爐的比較圖Fig.2 Decomposition result of SGN and proposed model for microwave oven under REDD dataset
由圖2 可知,本文所提模型在功耗水平上更準確,且誤差較小。
圖3 和圖4 為本文所提方法與SGN 下樣本分解結(jié)果比較。其中橫坐標為采樣周期,用步長表示,每步長時間3 s。下同。由圖3 和圖4 可知,所提模型比SGN 解聚結(jié)果更為精確,這是因為通態(tài)增強有助于模型捕獲冰箱的通態(tài)功耗。
圖3 REDD數(shù)據(jù)集樣本解聚結(jié)果Fig.3 Samples disaggregation results of REDD dataset
2.2.2 特征可視化圖分析
圖4(b)中2 個子網(wǎng)絡分支末端的激活如圖5所示。其中,右側(cè)漸變圖例表示激活度,負值表示抑制。無量綱。下同。
圖4 UKDALE數(shù)據(jù)集樣本解聚結(jié)果Fig.4 Samples disaggregation results of UKDALE dataset
圖5 REDD數(shù)據(jù)集下微波爐多尺度特征的可視化圖Fig.5 Visualization of multiple scales feature maps for microwave oven under REDD dataset
圖5 中繪制了可視化樣本中256 個時間步長。每個特征圖包含256 個時間步長和50 個通道。很明顯,這些分支都可對微波爐負載信號中的上升邊和下降邊做出響應,其中很大一部分是選通信號抑制了回歸子網(wǎng)絡的選通信號激活。因此,特征圖p(3)的激活程度一般要低得多。另外,本文還用圖4(b)的案例來說明自我關注模塊的作用機制。
圖6 為圖4(b)案例下將分類子網(wǎng)絡中的關注矩陣的可視化圖。由圖6 可知,該模型主要關注一定時間范圍內(nèi)的邊,3 條上升邊的關注值最高,即當觀察其中1 條邊為上升邊時,模型指是所有上升邊。
圖6 圖4(b)的關注矩陣Fig.6 Attention matrix for Fig.4(b)
圖7 為圖4(b)的情況下,分類子網(wǎng)絡的自我關注模塊的輸入S(3)和輸出S(4),以及在所有3 個上升邊高度激活的附加特征圖rs。
圖7 REDD數(shù)據(jù)集微波爐開關狀態(tài)分類子網(wǎng)絡可視特征圖Fig.7 Visual feature maps in on/off state classification subnetwork for microwave oven under REDD dataset
針對大規(guī)模負載能耗的復雜特性,為實現(xiàn)精確的NILM,本文提出了一種基于可縮放感知卷積神經(jīng)網(wǎng)絡的非侵入式負載監(jiān)測方法。實驗結(jié)果表明,所提方法能較好地降低設備功耗的估計誤差。此外,驗證了通過增加的對抗性損失和通態(tài)增強有利于對用能設備的精確監(jiān)測。與其他NILM 方法比較,本文所提可縮放感知模塊有助于提高負載分解精度,從而提高了NILM 的監(jiān)測精度。為了提升本文所提NILM 技術的適用范圍,未來工作的一個重要方向就是將監(jiān)督學習和非監(jiān)督學習的優(yōu)點結(jié)合起來,以產(chǎn)生更好的負載分解效果。