劉輝 江煦成
[收稿日期]2022-03-10
[基金項目]國家自然科學基金項目(61903129)
[第一作者]劉??? 輝(1962-),男,湖北武漢人,湖北工業(yè)大學教授,研究方向為電網控制與智能制造
[通信作者]江煦成(1996-),男,湖北黃岡人,湖北工業(yè)大學碩士研究生,研究方向為非侵入式負荷分解
[文章編號]1003-4684(2023)02-0001-06
[摘要]為解決目前非侵入式負荷分解研究中存在的模型數(shù)量多及訓練時間長等問題,將多任務學習引入到非侵入式負荷分解研究中,提出一種基于多門多專家模型的非侵入式負荷分解方法,首先通過seq2point模型將用電設備的功率分解轉換為總功率序列與用電設備在序列中點時刻功率值的映射關系,其次利用MMoE模型的門控函數(shù)及共用的Expert網絡組兼顧不同用電設備功率分解任務的獨特性和關聯(lián)性,最終通過單個MMoE模型同時完成多個用電設備的功率分解。在公開數(shù)據(jù)集上進行驗證,測試算例驗證了方法的有效性。
[關鍵詞]非侵入式負荷分解;多任務學習;MMoE;seq2point
[中圖分類號]TM714? [文獻標識碼]A
目前主流的非侵入式負荷分解(Non-intrusive Load Decomposition , NILD)研究中,通過低頻采樣的功率、電流、電壓等數(shù)據(jù),使用不同算法得到總負荷數(shù)據(jù)序列與不同用電設備的負荷數(shù)據(jù)序列之間的映射關系,實現(xiàn)對不同用電設備運行情況的識別,在深度學習首次引入NILD研究取得很好效果之后[1],越來越多的學者開始使用深度學習模型構建NILD模型,通過深度模型使用回歸或者分類的方法實現(xiàn)對不同電器功率的識別,例如時序卷積網絡[2],卷積注意力塊模型[3],以及seq2seq模型[4]。以上研究,都是通過單任務學習模型,不同用電設備使用不同結構的模型進行負荷分解。雖然能做到較高的準確率,但不同用電設備負荷分解任務需要重新構造模型,操作較為繁瑣,也存在訓練單個模型時間較長的問題。
解決上述問題,可以將用電設備的負荷分解作為不同的子任務導入至多任務學習模型,通過訓練單個多任務學習同時對多個用電設備進行負荷分解。但是一般多任務學習模型訓練中,不同任務之間的相關性對單個任務的最終結果有很大的影響,在任務之間相關性較弱時,多任務學習模型的表現(xiàn)并不比單任務模型更好[5],主要原因在于基于深度神經網絡的多任務學習模型對數(shù)據(jù)分布差別與任務之間的關系較為敏感[6],且真實數(shù)據(jù)模型比較復雜,很難明確各個任務之間的區(qū)別,即使不需要明確任務差別的模型,為適應不同的任務,其模型參數(shù)也較多,計算成本較高[7]。
綜上所述,本文提出一種基于MMoE模型的非侵入式負荷監(jiān)測方法,MMoE通過建模來描述不同用電設備分解任務之間的相關性,利用共享表示學習各分解任務特定的函數(shù),同時自動分配模型參數(shù)去捕捉任務共享或者任務獨有的信息,避免參數(shù)增多的同時,也能提高不同用電設備識別任務的準確度。最后在公開數(shù)據(jù)集上驗證本文所提方法的有效性。
1??? 非侵入式負荷分解模型
1.1??? 模型流程圖
本文的非侵入式負荷分解模型如圖1所示。
本文所需的數(shù)據(jù)為低頻采樣的有功功率數(shù)據(jù),首先通過滑動窗口順序讀取總功率數(shù)據(jù),同時對應讀取滑動窗口中點時刻不同用電設備的功率值,之后拼接多個總功率序列得到總功率矩陣,以及不同用電設備功率序列,將多個電器的負荷分解作為多個任務,將總功率矩陣及不同用電設備功率序列輸入到多任務學習模型中進行訓練,最后輸入待識別的總功率矩陣至訓練好的多任務學習模型,輸出得到各用電設備功率序列。
1.2??? seq2point模型
本文采用seq2point模型來實現(xiàn)負荷分解,具體原理如下式:
xτ=F(Yt:t+w-1)(1)
式中:Yt:t+w-1=[yt,yt+1,…,yt+w-1]是一段總功率序列,其中總功率為不同用電器功率總和,w為滑動窗口長度,yt為t時刻對應的總功率值,xSymboltA@為窗口中心時刻不同用電設備的有功功率值,其中SymboltA@=t+w/2,F(xiàn)表示xSymboltA@與Yt:t+w-1的映射關系。
本文通過訓練多任務模型,找出如式(1)的映射關系,通過輸入總功率序列數(shù)據(jù)至網絡,輸出得到對應序列中點時刻不同用電設備的功率值。
1.3??? MMoE模型
本文使用的多任務學習模型為MMoE[7]。為了更好說明MMoE的改進原理,先介紹傳統(tǒng)的共享底層網絡模型(Shared-Bottom Model , SBM)[8],如圖2所示
圖 2??? 共享底層模型
圖2表明當有兩個任務的時候,傳統(tǒng)的多任務學習模型結構,模型的輸入層之后接一個共享底層網絡,之后與兩個塔層網絡相連,塔層網絡對共享底層輸出的數(shù)據(jù)處理之后,得到不同任務的結果。
當有k個任務時,共享底層網絡與k個塔層網絡連接,假設輸入網絡的數(shù)據(jù)為x,則第k個任務的輸出
yk=hk(f(x))(2)
式中:hk為第k個塔層網絡的函數(shù)表示,f為共享底層的函數(shù)表示。
基于共享底層的網絡結構可以減少模型過擬合的風險,但是由于所有的任務共同使用共享底層的參數(shù)集,所以任務之間的差異容易導致模型優(yōu)化沖突,雖然已有學者通過加設約束條件等做法來改善這種情況[9],但是隨著任務數(shù)目增多,模型中的參數(shù)也大大增加,進一步帶來了需要加大數(shù)據(jù)集等問題,且實驗證明,在任務之間相關性不高時,傳統(tǒng)的共享底層網絡表現(xiàn)不佳。
為解決上述問題,有學者提出將混合專家網絡(Mixture-of-Experts , MoE)層替換傳統(tǒng)網絡中的共享底層,同時對每一個任務都對應配對一個門控網絡,得到MMoE網絡,其具體結構如圖3所示,MMoE網絡將傳統(tǒng)網絡中,共享底層網絡被替換為一組專家網絡,與輸入層以及塔層網絡連接,每個專家網絡為前向網絡。當有k個任務時,輸入層也同時與k個門控網絡進行連接,輸入數(shù)據(jù)x至MMoE模型,得到第k個任務的輸出可以表示為:
yk=hk(∑ni=1gk(x)ifi(x))(3)
∑ni=1gk(x)i=1(4)
式(3)中: fi為第i個專家網絡的函數(shù)表示,gki表示第k個門控網絡在第i個專家網絡上的概率分布,且滿足式(4),hk為第k個塔層網絡的函數(shù)表示,門控網絡為一層softmax變換器,對輸入數(shù)據(jù)進行線性變換:
gk(x)=softmax(Wgkx)(5)
式中:Wgk∈Rn×d為待訓練矩陣,n為專家網絡數(shù)量,d為特征維度。
圖 3??? MMoE模型
通過替換MoE層與對應增加門控網絡之后,MMoE結構可以根據(jù)不同任務的實際數(shù)據(jù)情況,根據(jù)式(5)調整各自門控網絡矩陣參數(shù),得到不同的概率分布并對應轉換為加權數(shù),最后每個任務的輸出為不同專家網絡的加權和表示,這種做法能夠充分考慮單獨任務的特殊性。同時由于多個任務共用一組專家網絡,在一定程度上也能兼顧任務之間的相關性。故MMoE網絡相比于傳統(tǒng)的多任務學習模型魯棒性更好,對于關聯(lián)性較差的任務的訓練效果也更好。
2??? 非侵入式負荷分解
由于實際生活中,不同用電設備的運行并沒有很大的關聯(lián)性,故使用MMoE模型可以很好的解決NILM問題。
2.1??? 數(shù)據(jù)讀取
假設通過對總功率序列使用滑動窗進行數(shù)據(jù)讀取,將每次讀取的短序列總功率數(shù)據(jù)以及用電設備在滑動窗中點時刻對應的功率數(shù)據(jù)進行存儲,最終得到總功率數(shù)據(jù)矩陣X及用電設備m的功率序列Y:
X=x1x2…xwx2x3…xw+1…xnxn+1…xx+w-1(6)
Ym=y1y2yn(7)
式(6)中:xi為i時刻總功率值,w為滑動窗口長度,n為樣本數(shù)量。式(7)中:m為用電設備編號,yj為j個總功率短序列樣本對應滑動窗中點時刻用電設備m的功率值。之后將X與Y數(shù)據(jù)標準化,導入到MMoE模型中進行訓練及測試。
2.2??? 基于MMoE的非侵入式負荷分解
為解決不同用電設備如式(1)的非侵入式負荷分解任務,將標準化后的總功率數(shù)據(jù)矩陣X以及不同用電器的功率序列Y輸入到MMoE模型進行訓練及測試,其具體流程見圖4。
首先設定好MMoE模型的相關參數(shù)和訓練迭代數(shù)T之后,將總功率數(shù)據(jù)矩陣X以及多個用電設備的功率序列Y至網絡。網絡通過遍歷每個分解任務的訓練集樣本數(shù)據(jù),更新各分解任務中式(5)所示的門控網絡數(shù)據(jù)矩陣Wgk以及專家網絡參數(shù),計算各用電設備分解任務的輸出結果、各任務的損失函數(shù)值及整體損失函數(shù)值。迭代次數(shù)到達最大迭代數(shù)T之后,導出訓練好的網絡,輸入待識別的總功率數(shù)據(jù)矩陣,網絡輸出識別的各用電設備的功率序列,完成負荷分解。
本文能夠設置的網絡參數(shù)為專家網絡的數(shù)量以及單元數(shù)以及訓練迭代次數(shù)。通過多次實驗,本文設置專家網絡數(shù)量為270,每個專家網絡中含有的神經單元數(shù)為350,迭代數(shù)為150,優(yōu)化器選用Adam,學習率設為10-5。
3??? 算例分析
本文選用REDD[11]數(shù)據(jù)集來驗證本文所提模型的有效性,REDD數(shù)據(jù)集包含了6個家庭的家用電器功率能耗數(shù)據(jù),功率采樣頻率為1/6 Hz。本文選用數(shù)據(jù)集中冰箱、洗碗機、浴室電器以及微波爐的有功功率數(shù)據(jù)。
3.1??? 數(shù)據(jù)預處理
選取的用電設備其運行情況各有特點,冰箱屬于長時間運行變狀態(tài)設備,洗碗機運行具有多狀態(tài)及變狀態(tài)組合的特點,浴室電器和微波爐皆為啟停狀態(tài)設備,但是浴室電器的高峰大小并不一致,啟動運行功率不穩(wěn)定,微波爐則相對穩(wěn)定。
為最大限度利用數(shù)據(jù),本文取用各電器450 000個采樣點數(shù)據(jù)進行重采樣處理,每個采樣點功率數(shù)據(jù)計算平均值,得到的平均功率作為新的采樣點數(shù)據(jù),將每個設備的原始功率序列轉換為長度為30 000的功率序列,并將幾個用電器的功率序列求和,得到長度為30 000的總和功率序列。
本文通過多次實驗,設置滑動窗口長度為5,同時在總功率序列首端和末端補零,通過滑動窗取值,得到一共30 000條總功率短序列,通過拼接短序列,得到大小為(30 000,5)輸入數(shù)據(jù)矩陣,同時得到4個用電設備長度為30 000的功率序列。將數(shù)據(jù)集的80%作為訓練集,10%作為驗證集,10%作為測試集。各設備功率數(shù)據(jù)信息如表1所示。
3.2??? 負荷分解評價指標
本文選用平均絕對誤差MAE,歸一化信號誤差SAE以及標準化分解誤差NDE來評價實驗結果,如下:
MAE=1M∑mi=1(i-yi)(8)
NDE=∑i(i-yi)2∑iy2i(9)
SAE=∑ii-∑iyi∑iyi(10)
式中:yi表示用電設備在i時刻的真實功率值,i表示用電設備在i時刻的預測功率值。
3.3??? 實驗結果對比
本文選用One-gate Mixture-of-Experts(OMoE)模型[7]、傳統(tǒng)多任務學習模型(SBM)[8]來做多任務學習模型的實驗結果對比,常規(guī)seq2seq預測模型,LSTM預測模型做單任務學習模型的實驗結果進行對比。得到的MAE結果見表2。
由表2可知,MMoE模型大部分電器識別結果的MAE值都較低,說明了MMoE模型識別結果擬合較好,準確度更高。相對于其他模型,OMoE模型的MAE結果與MMoE較為接近,即OMoE識別的準確性較高,模型識別的擬合程度較好,故本文重點比較兩個模型的功率分解結果,洗碗機功率分解結果對比圖5,其余電器對比結果見圖6~圖8。
由圖5~圖8知,MMoE模型相比于OMoE模型能更準確識別電器的狀態(tài)變化,如圖5中洗碗機的運行狀態(tài)識別,MMoE模型能夠更加準確判斷電器的運行情況,同時分解功率值更接近于電器真實運行時的功率值。MMoE模型與各模型功率分解結果的SAE及NDE指標數(shù)據(jù)見表3及表4。
由表3可知,MMoE模型功率分解結果的NDE指標相對于其他模型均較低,即MMoE功率分解曲線的離散程度較小,更符合實際的功率運行情況。
由表4的SAE指標結果可知,MMoE模型對浴室用電的分解結果精度較OMoE模型分解結果有所下降,但是其他電器的分解結果精度則相較OMoE分解結果較好且整體也均優(yōu)于單任務學習模型,即MMoE模型的分解精度結果更好。綜上,MMoE在曲線擬合程度上更好,分解精度也較高,負荷分解的效果更好。
由于深度學習存在模型訓練時間長短的差別,本文將MMoE模型訓練時間與對照模型的訓練時間進行對比見表5。
訓練時間選擇的對照模型為單任務學習模型,不同用電設備的分解選用參數(shù)不同的模型進行訓練,訓練時間為訓練不同參數(shù)模型所用時間的總和。由表5可知,相對于單任務學習模型,MMoE模型可以同時分解多個用電設備的功率且用時最短,效率更高。且由表2、表3及表4的實驗結果,MMoE模型的功率分解結果擬合效果更好,離散度更小,精度更高,模型更具優(yōu)越性。
3.4??? 泛化性驗證
為驗證本文模型的泛化性,通過提取其他房間相同電器的功率數(shù)據(jù)及對應的總功率數(shù)據(jù),進行相同的數(shù)據(jù)處理操作,一共得到20000條功率數(shù)據(jù),以及大小為(20000,5)的總功率數(shù)據(jù)矩陣,輸入之前實驗訓練完成的MMoE模型,得到MMoE模型對其他房間用電設備識別結果,并計算相關指標,且由不同實驗指標結果中,OMoE模型的實驗結果與MMoE實驗結果較為接近,故本文重點對兩模型的泛化性實驗結果進行對比,具體結果見圖9。
(b)OMoE分解結果圖 9??? 泛化性實驗結果對比
由圖9所示,雖然相對于原房間的測試結果各指標都有所下降,但是也仍然維持在較高水平,且也基本優(yōu)于OMoE模型,證明本文所提的模型具有良好的泛化性。
4?? ?結論
本文提出一種基于MMoE模型的非侵入式負荷分解方法,首先將低頻采樣的功率數(shù)據(jù)進行預處理,通過滑動窗讀取用電設備及總功率數(shù)據(jù)之后,將不同用電設備的分解作為不同的任務,通過訓練MMoE模型,輸入總功率數(shù)據(jù)矩陣,同時得到多個用電設備的功率序列,實現(xiàn)負荷分解。通過在REDD上進行實驗,可以得到本文所提模型相對于其他多任務學習模型具有較高的分解精度以及準確性,同時相對于單任務學習模型,多任務學習模型具有更短的訓練時間,更具有實用性。但大功率用電設備運行時,對其他用電設備的分解影響,未來的研究將進一步解決這個問題,也將進一步研究提高模型泛化性的方法。
[參考文獻]
[1]KELLY J, KNOTTENBELT W J. Neural NILM:deep neural networksapplied to energy disaggregation[C].∥Proceedings of the 2nd ACMInternational Conference on Embedded Systems for Energy-Efficient Built Environments .Seoul,Korea: ACM,2015,55-64.
[2]劉仲民,侯坤福,高敬更.基于時間卷積神經網絡的非侵入式居民用電負荷分解方法[J].電力建設,2021,42(03):97-106.
[3]徐曉會,趙書濤,崔克彬.基于卷積塊注意力模型的非侵入式負荷分解算法[J/OL].電網技術:1-8[2021-09-06].https://doi.org/10.13335/j.1000-3673.pst.2020.1487.].
[4]王軻,鐘海旺,余南鵬,等.基于 seq2seq 和 Attention 機制的居民用戶非侵入式負荷分解[J].中國電機工程學報,2019,39(01):75-83.
[5]YANG Y, HOSPEDALES T. Deep multi-task representation learning: a tensor factorisation approach[J/OL]. (2022-03-09).https:∥arxiv.org/abs/1605.06391.
[6]MISRA I, SHRIVASTAVA A, GUPTA A, et al. Cross-stitch networks for multi-task learning[C].∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2016.
[7]MA J, ZHAO Z, YI X, et al. Modeling task relationships in multi-task learning with multi-gate mixture-of-experts[C]. ACM, 2018.[8]Rich Caruana. 1998. Multitask learning. In Learning to learn. Springer, 95-133.
[8]CARUANA R. Multitask learning: a knowledge-based source of inductive bias[C].∥Machine Learning, Proceedings of the Tenth International Conference, University of Massachusetts, Amherst, MA, USA, June 27-29, 1993. DBLP, 1993.
[9]EIGEN D, RANZATO M, SUTSKEVER I. Learning factored representations in a deep mixture of experts[J/OL].(2022-03-09).https://arxiv.org/abs/1312.4314.
[10]JACOBS R, JORDAN M, NOWLAN S, et al. Adaptive mixtures of local experts[J]. Neural Computation, 2014, 3(01):79-87.
[11]KOLTER J Z, Johnson M J. REDD: A public data set for energydisaggregation research[C].∥Workshop on Data Mining Applicationsin Sustainability(SIGKDD), San Diego, CA. 2011, 25(Citeseer): 59-62.
Non-intrusive Load Decomposition Based on Multi-task Learning
LIU Hui, JIANG Xucheng
(Hubei Collaborative Innovation Centerfor Efficient Use of Solar Energy,Hubei Univ. of Tech., Wuhan 430068,China)
Abstract:Non-intrusive load decomposition is one of the key technologies for obtaining user electricity information in the construction of the power grid. In order to solve the problems of the large number of models and long training time in the current non-intrusive load decomposition research, this paper introduces multi-task learning In the study of non-intrusive load decomposition, a non-intrusive load decomposition method based on the Multi-gate Mixture of-Experts (MMoE) model is proposed. First, the power of the electrical equipment is decomposed and converted through the seq2point model. It is the mapping relationship between the total power sequence and the power value of the electrical equipment at the midpoint of the sequence. Secondly, the gating function of the MMoE model and the shared Expert network group are used to take into account the uniqueness and relevance of the power decomposition tasks of different electrical equipment, and finally pass A single MMoE model completes the power decomposition of multiple electrical equipment at the same time. This article verifies the method proposed in this article on the public data set, and the test case verifies the effectiveness of the method in this article.
Keywords:non-intrusive load decomposition; multi-task learning; mmoe; seq2point
[責任編校: 張巖芳]