楊冠群,劉 蔭,鄭海杰,張聞彬,湯琳琳,王高洲
(國(guó)網(wǎng)山東省電力公司信息通信公司,山東濟(jì)南 250021)
隨著電力系統(tǒng)信息化水平的提高,電力行業(yè)積累了豐富的用戶用電數(shù)據(jù)。然而,由于輸變電設(shè)備故障、網(wǎng)絡(luò)波動(dòng)、用戶竊電等原因,用電數(shù)據(jù)中存在大量異常數(shù)據(jù)。異常用電數(shù)據(jù)識(shí)別是指利用相關(guān)方法從海量數(shù)據(jù)中識(shí)別出異常數(shù)據(jù),幫助電力系統(tǒng)工程師快速定位故障原因、發(fā)現(xiàn)可疑的用電異常行為,進(jìn)而提高電力系統(tǒng)的穩(wěn)定性,避免異常用電行為對(duì)企業(yè)和社會(huì)造成更大損失。
異常用電數(shù)據(jù)識(shí)別是一種典型的二分類任務(wù),即基于給定的用戶用電輸入數(shù)據(jù)預(yù)測(cè)該用戶是否為異常用電用戶。數(shù)據(jù)驅(qū)動(dòng)下的異常用電識(shí)別已成為當(dāng)前主流的研究方法,其中包括基于機(jī)器學(xué)習(xí)的識(shí)別方法和基于深度學(xué)習(xí)的識(shí)別方法?;跈C(jī)器學(xué)習(xí)的識(shí)別方法首先從用戶用電數(shù)據(jù)中提取相關(guān)特征,然后基于提取的特征構(gòu)建異常識(shí)別模型[1-2]。盡管基于特征分析和機(jī)器學(xué)習(xí)的異常用電數(shù)據(jù)識(shí)別已取得成功,但是特征構(gòu)建需要專業(yè)的知識(shí)背景,且手工構(gòu)建的特征質(zhì)量對(duì)檢測(cè)結(jié)果會(huì)造成較大擾動(dòng)。目前,深度學(xué)習(xí)技術(shù)已成功應(yīng)用于各個(gè)領(lǐng)域,基于深度學(xué)習(xí)的異常用電數(shù)據(jù)識(shí)別已成為電力行業(yè)數(shù)據(jù)分析的主要手段。與基于機(jī)器學(xué)習(xí)識(shí)別方法不同的是,基于深度學(xué)習(xí)的異常用電數(shù)據(jù)識(shí)別方法從原始的用戶用電數(shù)據(jù)中挖掘潛在的用電模式及其變化規(guī)律,不需要額外提取特征,減小了特征提取質(zhì)量對(duì)識(shí)別結(jié)果的擾動(dòng)[3]。常用于用戶異常識(shí)別的深度學(xué)習(xí)算法包括卷積神經(jīng)網(wǎng)絡(luò)[4]、圖神經(jīng)網(wǎng)絡(luò)[5]、自注意力機(jī)制[6]等。
現(xiàn)有基于深度學(xué)習(xí)的異常用電數(shù)據(jù)識(shí)別方法要求將存儲(chǔ)在各個(gè)供電公司的用戶用電數(shù)據(jù)匯集起來(lái),進(jìn)行模型的統(tǒng)一訓(xùn)練。然而,這種方式存在數(shù)據(jù)隱私泄露、數(shù)據(jù)傳輸困難等問(wèn)題。為了解決該問(wèn)題,本文提出一種基于信息熵的聯(lián)邦學(xué)習(xí)異常用電識(shí)別模型。該模型將聯(lián)邦學(xué)習(xí)引入到異常用電數(shù)據(jù)識(shí)別模型訓(xùn)練過(guò)程中,用于解決分公司之間存在的“數(shù)據(jù)孤島”問(wèn)題。聯(lián)邦學(xué)習(xí)模型在訓(xùn)練過(guò)程中不需要將各客戶端中分散的原始數(shù)據(jù)收集起來(lái),而是直接在各個(gè)客戶端進(jìn)行模型本地訓(xùn)練,只需匯集各個(gè)客戶端所產(chǎn)生的中間參數(shù),避免了因原始數(shù)據(jù)傳輸而出現(xiàn)數(shù)據(jù)泄露等問(wèn)題。此外,由于經(jīng)濟(jì)發(fā)展水平不同,作為聯(lián)邦學(xué)習(xí)客戶端的各個(gè)供電公司中的用戶用電數(shù)據(jù)分布存在差異,可能會(huì)給模型性能帶來(lái)潛在影響。具體來(lái)說(shuō),在參數(shù)聚合過(guò)程中,數(shù)據(jù)質(zhì)量較高的客戶端中間參數(shù)對(duì)最終聚合參數(shù)的貢獻(xiàn)較大,反之亦然。為此,本文提出通過(guò)k-近鄰評(píng)估算法計(jì)算各個(gè)客戶端數(shù)據(jù)集的信息熵。信息熵作為數(shù)據(jù)集的一種統(tǒng)計(jì)量,能夠反映該數(shù)據(jù)集的分布質(zhì)量,用于表示各個(gè)客戶端中間參數(shù)在聚合過(guò)程中對(duì)模型最終參數(shù)的貢獻(xiàn)。
基于機(jī)器學(xué)習(xí)的異常用電數(shù)據(jù)識(shí)別方法主要包括聚類分析[7-8]、回歸分析、特征分解[9]等。文獻(xiàn)[10]提出一種基于回歸方法的用電數(shù)據(jù)異常檢測(cè)方法,該方法依據(jù)完整性、唯一性、一致性、準(zhǔn)確性等評(píng)價(jià)指標(biāo)對(duì)用電數(shù)據(jù)進(jìn)行回歸分析,實(shí)現(xiàn)對(duì)停上電數(shù)據(jù)缺陷進(jìn)行辨別與處理。文獻(xiàn)[11]提出一種基于線性判別分析和密度峰值聚類的雙判據(jù)無(wú)監(jiān)督異常用電檢測(cè)模型,該模型遵循“特征構(gòu)造—維度規(guī)約—聚類—異常檢測(cè)”的流程,借助聚類算法對(duì)用電模式不同的用戶分類后再進(jìn)行檢測(cè),在維度規(guī)約模塊使用線性判別分析將用戶的臺(tái)區(qū)號(hào)輸入檢測(cè)模型,提升了模型的檢出率和精確率;在異常檢測(cè)模塊設(shè)置雙判據(jù)檢測(cè)標(biāo)準(zhǔn),減小了模型對(duì)參數(shù)攝動(dòng)的敏感程度。文獻(xiàn)[12]針對(duì)無(wú)大量已知異常用電用戶樣本的情況,提出一種基于改進(jìn)模糊C 均值聚類的竊電行為檢測(cè)模型,該模型首先通過(guò)因子分析對(duì)用戶用電特征(包括用電負(fù)荷數(shù)據(jù)和電能表異常事件)進(jìn)行維度規(guī)約,提升模型檢測(cè)效率,再利用遺傳模擬退火算法對(duì)模糊C 均值聚類算法進(jìn)行改進(jìn),進(jìn)而實(shí)現(xiàn)對(duì)用戶用電特征進(jìn)行檢測(cè)。文獻(xiàn)[13]針對(duì)異常用電行為的時(shí)頻特性往往具有強(qiáng)隨機(jī)不確定性的情況,提出一種基于經(jīng)驗(yàn)?zāi)J椒纸獾漠惓S秒姍z測(cè)方法,該方法首先進(jìn)行相關(guān)特征篩選,然后對(duì)用戶用電量和線損電量序列進(jìn)行自適應(yīng)分解,提取高頻分量,通過(guò)對(duì)其變化趨勢(shì)和相關(guān)性進(jìn)行分析,實(shí)現(xiàn)對(duì)異常用電行為的檢測(cè)與識(shí)別。
隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展,深度學(xué)習(xí)技術(shù)在眾多領(lǐng)域得到了廣泛應(yīng)用,例如自然語(yǔ)言處理[14-15]、推薦系統(tǒng)[16-17]、計(jì)算機(jī)視覺(jué)[18-19]等。對(duì)于異常用電數(shù)據(jù)識(shí)別任務(wù),深度學(xué)習(xí)方法逐漸得到重視。例如,文獻(xiàn)[20]針對(duì)電網(wǎng)中的用電異常行為,提出一種基于時(shí)間卷積網(wǎng)絡(luò)的端到端用戶用電異常檢測(cè)模型,該模型主要包括數(shù)據(jù)預(yù)處理、卷積操作、殘差連接等模塊。通過(guò)在真實(shí)數(shù)據(jù)集上對(duì)模型性能進(jìn)行驗(yàn)證,結(jié)果表明該模型表現(xiàn)優(yōu)于支持向量機(jī)、邏輯回歸等傳統(tǒng)檢測(cè)方法。文獻(xiàn)[21]提出一種基于強(qiáng)化學(xué)習(xí)的異常用電判決方法,該方法首先獲取分類器輸出的數(shù)個(gè)用戶短期行為的異常概率,然后輸入到強(qiáng)化學(xué)習(xí)模型深度遞歸Q網(wǎng)絡(luò)中,實(shí)驗(yàn)結(jié)果表明,該模型具有較好的泛化性能。文獻(xiàn)[22]提出基于實(shí)值深度置信網(wǎng)絡(luò)的用戶側(cè)竊電行為檢測(cè)模型,該模型首先利用因子分析進(jìn)行數(shù)據(jù)降維,利用隨機(jī)欠采樣和套索算法應(yīng)對(duì)數(shù)據(jù)不平衡問(wèn)題。同時(shí)該模型為了優(yōu)化實(shí)值深度置信網(wǎng)絡(luò)因隨機(jī)初始化產(chǎn)生的局部最優(yōu)化問(wèn)題,通過(guò)螢火蟲(chóng)算法對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行全局尋優(yōu)。文獻(xiàn)[23]提出基于數(shù)據(jù)內(nèi)在特性和長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)的用戶用電數(shù)據(jù)異常檢測(cè)算法,該算法使用多層LSTM神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)高維數(shù)據(jù)特征提取,從而提高了異常用電數(shù)據(jù)識(shí)別的準(zhǔn)確率。文獻(xiàn)[24]提出一種基于主成分分析和深度循環(huán)神經(jīng)網(wǎng)絡(luò)的異常用電行為檢測(cè)方法,該方法首先利用核主成分分析方法對(duì)電力負(fù)荷數(shù)據(jù)進(jìn)行降維,生成主成分特征子集,然后基于LSTM和門(mén)控循環(huán)單元構(gòu)建深度循環(huán)神經(jīng)網(wǎng)絡(luò)模型,用于檢測(cè)異常用電行為。
然而,以上方法在構(gòu)建模型時(shí),都未考慮對(duì)用戶用電數(shù)據(jù)隱私進(jìn)行保護(hù)。本文通過(guò)引入聯(lián)邦學(xué)習(xí)方法,進(jìn)行基于信息熵的聯(lián)邦學(xué)習(xí)異常用電識(shí)別研究,彌補(bǔ)了現(xiàn)有方法存在的隱私性問(wèn)題,同時(shí)提出利用信息熵估算算法改進(jìn)聯(lián)邦學(xué)習(xí)中的梯度聚合,以提高模型準(zhǔn)確性。
如圖1所示,該模型主要包括以下3個(gè)模塊:
(1)基于Transformer 的客戶端模型訓(xùn)練模塊?;诟鱾€(gè)客戶端分布式存儲(chǔ)的私有數(shù)據(jù),分別在各個(gè)客戶端訓(xùn)練Transformer 異常識(shí)別神經(jīng)網(wǎng)絡(luò)模型,并且不同客戶端中的Transformer 神經(jīng)網(wǎng)絡(luò)具有相同的拓?fù)浣Y(jié)構(gòu)。
(2)基于差分隱私算法的客戶端梯度上傳模塊。利用局部差分隱私算法,將各個(gè)客戶端的Transformer 異常識(shí)別神經(jīng)網(wǎng)絡(luò)參數(shù)的梯度進(jìn)行加密,并上傳到服務(wù)器端中。與上傳模型參數(shù)不同的是,上傳參數(shù)梯度需要傳輸?shù)臄?shù)據(jù)量少,具有更高的通信效率。
(3)基于信息熵加權(quán)平均的服務(wù)器端梯度聚合模塊。在服務(wù)器端對(duì)來(lái)自不同客戶端的模型參數(shù)梯度進(jìn)行基于信息熵的加權(quán)平均聚合,得到包含各個(gè)客戶端訓(xùn)練信息的聚合梯度?;诘玫降木酆咸荻葘?duì)模型參數(shù)進(jìn)行更新,隨后將服務(wù)器端更新后的模型分發(fā)到各個(gè)客戶端中,替換原有的神經(jīng)網(wǎng)絡(luò)模型。
重復(fù)以上步驟(1)-(3),直至模型收斂,完成最終的異常用電識(shí)別模型構(gòu)建。
Fig.1 Information entropy-based federal learning model for identifying abnormal electricity consumption圖1 基于信息熵的聯(lián)邦學(xué)習(xí)異常用電識(shí)別模型
Transformer[25]神經(jīng)網(wǎng)絡(luò)模型以其強(qiáng)大的序列建模能力在眾多任務(wù)上得到了廣泛應(yīng)用。在客戶端模型訓(xùn)練過(guò)程中,選擇Transformer 作為異常用電識(shí)別神經(jīng)網(wǎng)絡(luò),用于建模用戶用電序列。Transformer 神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖2所示。
在第n個(gè)客戶端中,用戶u的用電序列記為X=[x1,x2,…,xl,…,xL]∈RL×D,其中L表示用電序列長(zhǎng)度,D表示特征維度。Transformer 中的注意力機(jī)制采用查詢—鍵—值(Query-Key-Value,QKV)模式進(jìn)行注意力得分計(jì)算。對(duì)于輸入序列X,首先對(duì)其進(jìn)行線性變化,將其映射到不同的向量空間中,即:
式中,Wq∈RD×Dq,Wk∈RD×Dk,Wv∈RD×Dv分別為查詢—鍵—值的線性映射參數(shù)矩陣,且Dq=Dk=Dv;Q、K、V分別為查詢矩陣、鍵矩陣、值矩陣。采用縮放點(diǎn)積的形式進(jìn)行注意力計(jì)算,即:
式中,Softmax(·)表示歸一化函數(shù),H 表示注意力機(jī)制的輸出矩陣。在多頭注意力機(jī)制中,假設(shè)有H 個(gè)頭,則多頭注意力機(jī)制的輸出如下所示:
式中,Concat(·)表示向量拼接操作,Hh表示第h個(gè)注意力頭的輸出向量,Wm表示訓(xùn)練參數(shù),M 表示多頭注意力機(jī)制的輸出矩陣。為避免模型在訓(xùn)練過(guò)程中出現(xiàn)梯度消失的情況,將殘差連接和層歸一化作用于M,即:
Fig.2 Transformer neural networks圖2 Transformer神經(jīng)網(wǎng)絡(luò)
式中,LayerNorm(·)表示層歸一化操作,Mt表示中間向量。如圖2 所示,前饋神經(jīng)網(wǎng)絡(luò)用于解決層數(shù)加深所帶來(lái)的信息損失問(wèn)題,即:
式中,Wt、Wr、bt、br表示可訓(xùn)練參數(shù),F(xiàn) 表示前饋神經(jīng)網(wǎng)絡(luò)輸出矩陣。之后再次進(jìn)行殘差連接和層歸一化操作,即:
式中,O 表示經(jīng)過(guò)殘差連接和層歸一化之后的輸出矩陣。將其輸入到輸出層為1 的單層感知機(jī)中,對(duì)用戶用電序列輸出矩陣進(jìn)行壓縮,得到用戶表示向量如下:
式中,Wp、bp表示可訓(xùn)練參數(shù)表示輸入用戶用電序列所對(duì)應(yīng)的異常概率值。在模型訓(xùn)練過(guò)程中,給定預(yù)測(cè)的異常概率值和真實(shí)值y,本文采用交叉熵?fù)p失構(gòu)建以下優(yōu)化目標(biāo)函數(shù),即:
式中,B表示客戶端訓(xùn)練批大小,L 表示損失值。
客戶端梯度上傳是指將各個(gè)客戶端中的模型參數(shù)梯度通過(guò)加密后上傳到服務(wù)器端,用于梯度聚合和模型更新。與傳統(tǒng)方法所要求的數(shù)據(jù)集中式存儲(chǔ)不同的是,基于聯(lián)邦學(xué)習(xí)的方法只需要服務(wù)器端收集加密之后的模型參數(shù)梯度,原始數(shù)據(jù)依舊分布式地存儲(chǔ)在各個(gè)客戶端,不進(jìn)行原始數(shù)據(jù)傳輸,從而大大提升了通信效率與安全性。以客戶端n為例,根據(jù)公式(10)計(jì)算其損失值Ln,客戶端中Transformer 神經(jīng)網(wǎng)絡(luò)模型的參數(shù)集合記為Φn=,則客戶端n的模型參數(shù)梯度gn可通過(guò)以下方式計(jì)算:
對(duì)于梯度gn,本模型采用局部差分隱私(Local Differential Privacy,LDP)[26]方法進(jìn)行梯度加密,以保證上傳梯度的安全性。局部差分隱私方法通過(guò)在模型參數(shù)上添加滿足差分隱私的噪聲數(shù)據(jù),以實(shí)現(xiàn)聯(lián)邦學(xué)習(xí)中的隱私保護(hù)目的。局部差分隱私是建立在嚴(yán)格數(shù)學(xué)理論基礎(chǔ)上的強(qiáng)隱私保護(hù)模型,目前已成為聯(lián)邦學(xué)習(xí)研究工作中一種主流的參數(shù)加密手段,其有效性得到了廣泛認(rèn)可[27]。LDP 加密方式可表示成以下形式:
式中,clip(gn,δ)利用縮放系數(shù)δ限制梯度gn的大小,以避免出現(xiàn)梯度爆炸的情況;Laplace(0,λ)表示均值為0的拉普拉斯噪聲,其中λ用于控制所施加噪聲的強(qiáng)度。聯(lián)邦學(xué)習(xí)中的差分隱私算法通過(guò)向梯度添加噪聲,不僅可保證梯度在傳遞過(guò)程中不被逆向破解,保證梯度的安全性,而且可將其看作一種梯度噪聲注入正則化手段,防止模型出現(xiàn)過(guò)擬合現(xiàn)象[28]。之后將客戶端n中加密后的梯度上傳到服務(wù)器端用于梯度聚合。
服務(wù)器端梯度聚合是指將客戶端上傳到服務(wù)器端的加密梯度按照某種方式聚合起來(lái),以獲取包含全局梯度信息的聚合梯度,用來(lái)進(jìn)行梯度更新。聯(lián)邦學(xué)習(xí)的性能很大程度上取決于聚合策略。目前,研究者大多使用FedAvg[29]模型中的梯度聚合策略,即:
式中,wn表示第n個(gè)客戶端上傳的參數(shù),|Dn|表示第n個(gè)客戶端中數(shù)據(jù)塊n的數(shù)據(jù)量,|D|表示全局?jǐn)?shù)據(jù)量,w表示聚合之后的全局模型參數(shù)。
由于氣候差異、消費(fèi)水平及用電習(xí)慣的不同,作為聯(lián)邦學(xué)習(xí)客戶端的各個(gè)供電公司中的數(shù)據(jù)質(zhì)量存在差異,呈現(xiàn)出非獨(dú)立同分布的特點(diǎn)(Non-Independently and Identically Distributed,Non-IID),導(dǎo)致各個(gè)客戶端訓(xùn)練出來(lái)的模型性能也有所差異。如式(13)所示FedAvg 模型中的聚合策略僅根據(jù)各個(gè)客戶端上的數(shù)據(jù)量與全局?jǐn)?shù)據(jù)量之間的比值確定其參數(shù)在聚合過(guò)程中的權(quán)重,即數(shù)據(jù)量越大,該客戶端貢獻(xiàn)越大。然而,客戶端的數(shù)據(jù)量無(wú)法反映該客戶端中的模型性能,依據(jù)數(shù)據(jù)量比值確定其聚合權(quán)重,存在一定的不合理性。通常情況下,數(shù)據(jù)集的樣本分布情況往往反映出數(shù)據(jù)質(zhì)量,樣本分布規(guī)律性越強(qiáng),數(shù)據(jù)質(zhì)量越高,進(jìn)而訓(xùn)練出的模型性能越好[30]。
為解決上述問(wèn)題,提出利用信息熵估算算法量化各個(gè)客戶端中的數(shù)據(jù)分布情況。信息熵是一種常用的衡量給定變量分布規(guī)律的統(tǒng)計(jì)量。如圖1 所示,本模型采用Kozachenko-Leonenko k 近鄰算法[31]估算數(shù)據(jù)集的信息熵,具體計(jì)算公式如下:
式中,εi是客戶端n中樣本ti到其第k個(gè)鄰居的歐式距離,本模型中k取為1;樣本ti為客戶端n中第i個(gè)用戶(樣本)用電序列的向量均值;D為樣本特征維度;M為樣本數(shù)量;cD=πD/2Γ(1 +D/2),其中Γ(·)為Gamma 函數(shù);ψ(·)為Digamma 函數(shù);Hn為估算得到的客戶端n數(shù)據(jù)集的信息熵。Γ(·)和ψ(·)函數(shù)定義如下:
信息熵越小的數(shù)據(jù)集,數(shù)據(jù)混亂程度越低,樣本分布規(guī)律性越強(qiáng)[32],進(jìn)而訓(xùn)練出來(lái)的模型性能越好,其模型參數(shù)聚合權(quán)重越高。因此,利用信息熵的倒數(shù)對(duì)相應(yīng)客戶端的梯度進(jìn)行加權(quán)聚合,聚合公式如下:
在服務(wù)器端中維護(hù)一個(gè)與各客戶端具有相同網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的Transformer 模型,該模型中的可訓(xùn)練參數(shù)集合為Φs。服務(wù)器端參數(shù)更新是指利用聚合梯度對(duì)可訓(xùn)練參數(shù)集合Φs進(jìn)行更新,更新方式如下:
式中,η表示學(xué)習(xí)率。將更新后的模型參數(shù)Φs更新到服務(wù)器端的模型中,并將更新后的模型分發(fā)到各個(gè)客戶端??蛻舳酥懈潞蟮哪P蜁?huì)基于本地?cái)?shù)據(jù)進(jìn)行新一輪迭代訓(xùn)練。重復(fù)上述步驟直至模型收斂,完成模型訓(xùn)練。訓(xùn)練完成后,基于服務(wù)器端中更新的模型進(jìn)行異常用電數(shù)據(jù)識(shí)別與模型性能測(cè)試。
本文在真實(shí)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),以驗(yàn)證所提出方法的有效性。數(shù)據(jù)集來(lái)自于某電力總部的用戶用電信息采集系統(tǒng),數(shù)據(jù)統(tǒng)計(jì)如表1所示。
Table 1 Dataset description表1 數(shù)據(jù)集介紹
從系統(tǒng)中抽取來(lái)源于3 個(gè)不同供電公司共計(jì)996 個(gè)用戶(包括126 個(gè)異常用戶,870 個(gè)正常用戶)的用電數(shù)據(jù),采集頻率為24 次/天,采集范圍為2019 年9 月1 日-2019 年9月14 日,因此用戶序列長(zhǎng)度為336。序列數(shù)據(jù)特征包含溫度、風(fēng)速、人口數(shù)、用電功率、電壓等信息,共計(jì)32 個(gè)特征維度。訓(xùn)練集和測(cè)試集的比例設(shè)置為3:1,即將各個(gè)客戶端中的數(shù)據(jù)按照3:1 的比例劃分為訓(xùn)練集和測(cè)試集。隨后匯總各個(gè)客戶端中的測(cè)試數(shù)據(jù),將其輸入到服務(wù)器端訓(xùn)練好的模型中進(jìn)行模型性能測(cè)試。
為驗(yàn)證本文方法的有效性,本實(shí)驗(yàn)選擇7 個(gè)常用的異常用電用戶識(shí)別模型作為基線模型與本文方法進(jìn)行對(duì)比?;€模型包括LDA+DPeaks[11]、FCM[12]、EMD[13]、TCN[20]、DRQN[21]、RDBN[22]、LSTM[23]。其中,LDA+DPeaks、FCM、EMD 為基于機(jī)器學(xué)習(xí)的異常數(shù)據(jù)檢測(cè)模型,TCN、DRQN、RDBN、LSTM 為基于深度學(xué)習(xí)的異常數(shù)據(jù)檢測(cè)模型。為全面評(píng)價(jià)模型性能,本實(shí)驗(yàn)選用5 個(gè)評(píng)價(jià)指標(biāo)對(duì)模型性能進(jìn)行驗(yàn)證,分別為:正確率(Accuracy)、召回率(Recall)、F1值、受試者工作特征曲線下面積(AUROC)與精確率—召回率曲線(AUPRC)。為保證實(shí)驗(yàn)結(jié)果的準(zhǔn)確性,本文在測(cè)試數(shù)據(jù)集上對(duì)每個(gè)模型進(jìn)行了5 次實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果取平均值。
實(shí)驗(yàn)運(yùn)行環(huán)境如下:操作系統(tǒng)為Ubuntu 18.04.3 LTS,隨機(jī)存儲(chǔ)器(RAM)為128 GB DDR4@3200MHz,中央處理器(CPU)為Intel(R)Core(TM)i9-9980XE CPU @ 3.00 GHz,圖形處理器(GPU)為2*NVIDIA TITAN RTX,主要環(huán)境庫(kù)為Scikit-learn 0.22、Python 3.7.0、Pytorch 1.10.1、Numpy 1.21.2、Pandas 1.1.5。
實(shí)驗(yàn)超參數(shù)設(shè)置如下:序列長(zhǎng)度為336,迭代次數(shù)為1 000,訓(xùn)練批大小為100,學(xué)習(xí)率為0.000 1,特征維度D、Dq、Dk、Dv為32,多頭注意力機(jī)制頭個(gè)數(shù)為4,縮放系數(shù)為0.005,噪聲強(qiáng)度為0.015。部分超參數(shù)采用網(wǎng)格搜索方式確定。
實(shí)驗(yàn)結(jié)果如圖3、表2 所示。圖3 展示了各個(gè)客戶端中模型訓(xùn)練損失值變化曲線及其平均值曲線,表2 展示了本文模型與多種基線模型在5 種不同評(píng)價(jià)指標(biāo)下的異常用電用戶識(shí)別性能。
從圖3 可看出,當(dāng)更新次數(shù)達(dá)到200 次時(shí),模型趨于收斂,此時(shí)模型在訓(xùn)練集上達(dá)到最優(yōu)性能。從表2 可看出,本文模型在5 個(gè)指標(biāo)上均達(dá)到最優(yōu)性能,其中Accuracy 為0.958 2,Recall 為0.454 3,F(xiàn)1 為0.535 4,AUROC 為0.692 6,AUPRC 為0.358 1。具體來(lái)說(shuō),以LDA+DPeaks、FCM、EMD為代表的機(jī)器學(xué)習(xí)異常用電檢測(cè)模型相對(duì)于TCN、DRQN、RDBN、LSTM 深度學(xué)習(xí)模型而言,缺乏挖掘序列數(shù)據(jù)中上下文關(guān)系的能力,因此基于機(jī)器學(xué)習(xí)算法的檢測(cè)模型整體表現(xiàn)不如深度學(xué)習(xí)模型。相比于TCN、DRQN、RDBN 等神經(jīng)網(wǎng)絡(luò)模型,LSTM 中的門(mén)控機(jī)制能夠捕獲用戶用電序列中的長(zhǎng)程依賴信息,提高對(duì)序列數(shù)據(jù)的建模能力。以上實(shí)驗(yàn)結(jié)果表明,本文提出的模型不僅在性能上優(yōu)于基線模型,同時(shí)能夠以聯(lián)邦學(xué)習(xí)的方式進(jìn)行模型構(gòu)建,保護(hù)數(shù)據(jù)隱私。
Fig.3 Model training loss curves圖3 模型訓(xùn)練損失曲線
Table 2 Comparison of experimental results表2 實(shí)驗(yàn)結(jié)果對(duì)比
為驗(yàn)證所提出的基于信息熵加權(quán)平均的服務(wù)器端梯度聚合方法的有效性,進(jìn)行以下消融實(shí)驗(yàn)。在保證其他模塊不變的情況下,將本文提出的梯度聚合方法與FedAvg算法中的梯度聚合方法進(jìn)行對(duì)比,通過(guò)實(shí)驗(yàn)驗(yàn)證本文提出的基于信息熵加權(quán)平均梯度聚合方法的有效性。從表3的實(shí)驗(yàn)結(jié)果可知,本文提出的基于信息熵加權(quán)平均的梯度聚合方法優(yōu)于FedAvg 中基于客戶端數(shù)據(jù)量比值的梯度聚合方法。
Table 3 Ablation for gradient aggregation method表3 梯度聚合方法消融實(shí)驗(yàn)
為研究本文提出的基于信息熵的聯(lián)邦學(xué)習(xí)異常用電識(shí)別方法中參數(shù)的敏感性,分析模型在不同超參數(shù)設(shè)置下的異常識(shí)別性能,本文進(jìn)行了模型超參數(shù)分析實(shí)驗(yàn)。本實(shí)驗(yàn)對(duì)注意力機(jī)制參數(shù)矩陣的隱層特征維度Dk(Dk=Dq=Dv)和多頭注意力機(jī)制頭個(gè)數(shù)H進(jìn)行分析,實(shí)驗(yàn)結(jié)果如圖4、圖5所示。
Fig.4 Sensitivity analysis for hidden feature dimension圖4 隱層特征維度敏感性分析
Fig.5 Sensitivity analysis for multi-head attention mechanism圖5 多頭注意力機(jī)制頭個(gè)數(shù)敏感性分析
由圖4 可知,隨著隱層特征維度的變化,異常識(shí)別性能會(huì)有不同程度的波動(dòng),當(dāng)維度為32 時(shí),模型取得最佳性能。當(dāng)維度過(guò)小時(shí),輸入數(shù)據(jù)包含的特征有限,因此性能出現(xiàn)衰退;當(dāng)維度增大時(shí),容易導(dǎo)致模型出現(xiàn)過(guò)擬合的情況,使模型過(guò)度訓(xùn)練,無(wú)法獲得最佳異常用電用戶識(shí)別性能。由圖5 可知,設(shè)置不同的多頭注意力機(jī)制頭個(gè)數(shù),模型具有不同的性能表現(xiàn),表明本文提出的模型對(duì)多頭注意力機(jī)制頭個(gè)數(shù)具有一定程度的敏感性。具體地,當(dāng)H=4時(shí),模型表現(xiàn)最佳;當(dāng)H>4 時(shí),模型性能出現(xiàn)衰退。出現(xiàn)這種現(xiàn)象的一個(gè)潛在原因在于,當(dāng)多頭注意力機(jī)制頭個(gè)數(shù)增加時(shí),模型參數(shù)增加,導(dǎo)致模型訓(xùn)練不夠充分。
為識(shí)別出異常用電數(shù)據(jù),同時(shí)保證用戶用電數(shù)據(jù)的隱私性,本文提出一種基于信息熵的聯(lián)邦學(xué)習(xí)異常用電識(shí)別模型。該模型引入聯(lián)邦學(xué)習(xí)到異常用電數(shù)據(jù)識(shí)別中,避免了集中式模型訓(xùn)練所帶來(lái)的潛在數(shù)據(jù)泄露的風(fēng)險(xiǎn)。同時(shí),為提高基于聯(lián)邦學(xué)習(xí)的服務(wù)器端梯度聚合效果,引入Kozachenko-Leonenko k 近鄰算法估算數(shù)據(jù)集的信息熵,根據(jù)信息熵進(jìn)行服務(wù)器端梯度加權(quán)聚合。實(shí)驗(yàn)結(jié)果表明,本文提出的基于信息熵的聯(lián)邦學(xué)習(xí)異常用電識(shí)別模型能夠在保證數(shù)據(jù)隱私的情況下,取得比現(xiàn)有方法更優(yōu)異的異常用電用戶識(shí)別效果。
本文研究重點(diǎn)在于如何解決聯(lián)邦學(xué)習(xí)實(shí)際面臨的客戶端不均衡數(shù)據(jù)在服務(wù)器端參數(shù)梯度聚合過(guò)程中的貢獻(xiàn)評(píng)估問(wèn)題。然而,在現(xiàn)實(shí)應(yīng)用中,客戶端數(shù)據(jù)所具有的不均衡特點(diǎn)可能會(huì)導(dǎo)致各個(gè)客戶端在本地模型訓(xùn)練時(shí)存在效率差異,進(jìn)而導(dǎo)致時(shí)延問(wèn)題,影響總體模型訓(xùn)練效率,該問(wèn)題是實(shí)現(xiàn)高效聯(lián)邦學(xué)習(xí)所面臨的重要挑戰(zhàn)。本文將在下一步研究中對(duì)該問(wèn)題進(jìn)行研究,目前已形成初步的研究思路,即對(duì)各個(gè)客戶端的數(shù)據(jù)特點(diǎn)、計(jì)算能力、網(wǎng)絡(luò)通信等資源進(jìn)行全面量化,根據(jù)客戶端資源量化指標(biāo)對(duì)模型訓(xùn)練過(guò)程進(jìn)行反饋控制,以實(shí)現(xiàn)模型訓(xùn)練超參數(shù)的差異性配置,解決分布式客戶端所面臨的“木桶效應(yīng)”,提高聯(lián)邦學(xué)習(xí)模型的訓(xùn)練效率。