趙艷龍 汪卓俊 楊勇勝 章建華 蔣 鐘 劉一民
(1.國網(wǎng)浙江省電力有限公司安吉縣供電公司 2.國網(wǎng)浙江省電力有限公司湖州供電公司)
電網(wǎng)的損失主要分為技術(shù)損失和非技術(shù)損失[1]。電阻損耗、變壓器損耗和老化損耗等是造成技術(shù)損失的原因,該損失難以解決[2];而竊電則是造成電網(wǎng)非技術(shù)損失的主要原因。隨著用戶的竊電方式從早期修改電表結(jié)構(gòu)、私自連接電線到篡改智能電表數(shù)據(jù)[3]。竊電手段越來越智能化和多樣化,檢測竊電用戶的難度也越來越大[4]。
2017年美國因為竊電造成的損失已達100億美元[5]。中國國家電網(wǎng)也在過去追回了近130億元的竊電資金。隨著AMⅠ的應用與普及,用電信息數(shù)據(jù)呈爆炸式增長[6]。通過挖掘、分析和有效利用這些海量數(shù)據(jù)來檢測竊電是當前研究的熱點[7,8],同時對保證電網(wǎng)的供電質(zhì)量和效率具有重要意義[9]。
闕華坤等人搭建了基于隨機森林的竊電檢測模型,并以南方電網(wǎng)數(shù)據(jù)作為輸入,驗證了模型的檢測效果,但是沒有用合理的指標加以說明模型的性能[10]。黃剛等人提出了一種基于多層次非負稀疏編碼的竊電檢測方法,用愛爾蘭數(shù)據(jù)集驗證了其準確率[11]。但該方法的竊電用戶需要以月度單位的連續(xù)數(shù)據(jù)作為證據(jù)才能識別,當電表故障時存在用電量記錄缺失,該情況會使得竊電檢測效率降低。
為了實現(xiàn)在線竊電檢測,本文提出了基于多重特征提取的DNN竊電行為檢測方法。首先,采用主成分分析法(PCA)對經(jīng)過預處理和不平衡處理的數(shù)據(jù)進行特征初步提取,得到初始的基本特征量。然后,將用戶的用電曲線分離為背景曲線和過濾曲線,分別對兩條曲線進行特征值再提取。最后,利用深度學習網(wǎng)絡(DNN)構(gòu)建竊電檢測模型,實現(xiàn)對竊電用戶的檢測。
本文采用國家電網(wǎng)發(fā)布的數(shù)據(jù)集(SGCC)進行實驗[12]。該數(shù)據(jù)集包含了2014年1月1日至2016年10月31日的42372個客戶每日的用電量記錄如表1所示。
表1 國家電網(wǎng)數(shù)據(jù)集
該數(shù)據(jù)集一共有近420萬條數(shù)據(jù),足夠用以搭建與驗證模型。但是,該數(shù)據(jù)集存在兩種問題。首先,數(shù)據(jù)集中存在大量的缺失值。其次,正常用戶和竊電用戶的比例為10.72,這種數(shù)據(jù)分布會導致竊電模型的分析出現(xiàn)數(shù)據(jù)不平衡問題。
數(shù)據(jù)不平衡會導致模型更傾向于更多地學習多數(shù)類的特征,導致錯誤將少數(shù)類樣本預測為多數(shù)類,從而產(chǎn)生較高的假陰性率。通常當多數(shù)樣本大于少數(shù)樣本的10倍時會導致模型在竊電檢測方面的準確率下降,因為它更容易將真正的竊電行為樣本錯誤地分類為非竊電行為。
針對不同用戶的數(shù)據(jù)缺失情況擬定不同的處理辦法。當某位用戶的用電數(shù)據(jù)缺失數(shù)量過多時,無論采用何種插值法去補充缺失部分,都會使得數(shù)據(jù)的不穩(wěn)定性和偏差性影響竊電檢測模型的效果。因此在處理缺失值的過程中,設定一個30%的閾值,當缺失值占比超過該用戶的30%時,將此樣本舍棄。在對所有樣本進行篩選后,剩余數(shù)據(jù)的分布如表2所示。
表2 缺失值過濾后的數(shù)據(jù)集
在時間序列的用電量數(shù)據(jù)中,采用線性插值法來填充缺失值占比少于30%的用戶樣本,其公式如下:
式中,x0、y0和x1和y1是距離缺失值最近的數(shù)據(jù)點。經(jīng)過線性插值法處理前后的某用戶日功率曲線如圖1(а)和圖1(b)所示。
圖1 某用戶功率曲線圖
文獻[13]介紹了六種用于合成竊電樣本數(shù)據(jù)的函數(shù),分別是式(2)-式(7)。我們采用這些函數(shù)結(jié)合SGCC正常用戶數(shù)據(jù)來生成竊電用戶數(shù)據(jù),目的是為了平衡數(shù)據(jù)集并創(chuàng)建更實用和真實的異常用電消費模式。
具體而言,y1函數(shù)將每日實際用電量乘以0.1到0.9之間的隨機數(shù)值,這個處理效果類似于電磁干擾竊電導致的情況。y2函數(shù)則將一段時間的實際用電量乘以0.1到0.9之間的隨機數(shù),反映用戶采取欠壓竊電和欠流竊電所導致的結(jié)果。y3函數(shù)代表了用戶不連續(xù)的竊電行為。而后三種函數(shù)則模擬了針對于數(shù)據(jù)漏洞的竊電行為。在y4和y5函數(shù)中,竊電者在電表數(shù)據(jù)傳輸過程中結(jié)合平均用電量,在不易察覺的情況下修改上報讀數(shù)。而y6函數(shù)則通過相反的順序發(fā)送用電讀數(shù),目的是保證高電量消耗發(fā)生在低價時間段。以某用戶一周用電曲線來展示不同函數(shù)合成的數(shù)據(jù)效果,如圖2所示。
圖2 合成效果對比
我們在SGCC缺失值處理后的25932名正常用戶中,隨機抽取了6000名用戶,并將其分為六組。每組分別采用上述函數(shù)來合成竊電樣本。在最終用于后續(xù)模型訓練的數(shù)據(jù)中,正常樣本數(shù)為19932,竊電樣本數(shù)為8063,比例為2.472比1,這有效解決了數(shù)據(jù)不平衡的問題。
由于DNN模型的精度極易受到稀疏和未縮放數(shù)據(jù)的影響,因此采用min-mаx數(shù)據(jù)縮放方法將所有用戶的用電量歸至0與1之間,如下式所示:
其中mаx(x)和min(x)代表該用電用戶自身1034天的用電量最小值和最大值。
本文提出的基于多重特征提取的DNN竊電檢測模型如圖3所示,該模型通過三階段提取特征值將原本包含1034天用電數(shù)據(jù)的一位用戶樣本減小至僅有20個特征值,在保留用戶信息的同時極大地減小了后續(xù)工作的計算量。然后使用深度神經(jīng)網(wǎng)絡(DNN)作為竊電檢測模型的核心,并通過不斷優(yōu)化模型參數(shù),提高模型的準確性和性能。
圖3 竊電檢測模型架構(gòu)
利用PCA對用戶每日用電量進行初步特征提取。PCA將多個變量指標類型轉(zhuǎn)化為少數(shù)幾個主成分,這些主成分能夠代表原始數(shù)據(jù)的信息。
在利用PCA提取用戶進行數(shù)據(jù)處理之后的用電量X′=[x′1,x′2,x′3,…,x′1034]時,將每天的用電量視為其用電特征。以某一用戶A為例,其歸一化日用電曲線如圖4所示。
圖4 用戶A每日用電曲線
其中,第一主成分由下式計算而來:
同樣,第二主成分被給出為:
以此類推,本文選擇PCA計算所得的前10個主成分p=[p1,p2,…,p10]作為特征值,從而在保存保存大量數(shù)據(jù)集信息的條件下,將特征維度減小至10。用戶A的PCA主特征值如圖5所示。
圖5 用戶A主成分值
接下來,利用背景值提取方法,將用戶的日用電曲線分離為背景曲線和過濾曲線。背景值的判斷標準如式8所示。
式中,xα是用戶1034d日用電量的非零眾數(shù),在眾數(shù)不存在的情況下用平均數(shù)作為替代。
背景曲線代表用戶通常情況下的用電情況,它能夠在一定程度上反映用戶的經(jīng)濟水平等信息。過濾曲線表明用戶在某些特殊情況下的用電,比如節(jié)假日、家庭聚會。用戶A的過濾曲線和背景曲線如圖6所示。
圖6 用戶A過濾曲線與背景曲線
對背景曲線和過濾曲線分別提取共10個特征值,從而補充PCA主成分分析所包含的信息。背景曲線和過濾曲線所提取的特征值如表3所示。
背景曲線4 5 1 2 3 4 5偏斜度標準差平均值非零值最長持續(xù)時間連續(xù)度月平均值增長率高峰季持續(xù)時間
表3 輔助特征值
DNN是深層人工神經(jīng)網(wǎng)絡(ANN)的產(chǎn)物。能夠?qū)W習比淺層人工神經(jīng)網(wǎng)絡更復雜和抽象的特征,其主要架構(gòu)如圖7所示[14]。
圖7 DNN網(wǎng)絡架構(gòu)
其中,輸入層x由輸入數(shù)據(jù)的特征值組成,wi是連接輸入層和隱藏層的權(quán)重。隱藏層位于輸出層和輸入層之間,用于分析輸入和輸出信號之間的關系,則為隱藏層之間相互連接的權(quán)重。輸出層作為DNN網(wǎng)絡的最后一層給出了網(wǎng)絡的輸出,wo是連接隱藏層和輸出層之間的權(quán)重。
為了更快地更新參數(shù)并使其收斂,我們采用隨機梯度下降法對DNN中各層的權(quán)重進行優(yōu)化。該方法每次使用一個樣本或者一小批樣本來計算并更新權(quán)重,因此其更適用于大規(guī)模數(shù)據(jù)集。
在訓練過程中,使用二分類交叉熵損失函數(shù)比較數(shù)據(jù)真實分布和模型預測分布,其值越小,則表明模型預測的準確率越高。其中,交叉熵的定義如式12所示。
式中,p(x)i是隨機變量xi分類正確的真實概率,q(x)i是模型預測xi的分類正確概率。
為了更好評估基于特征提取的DNN竊電檢測模型,本文采用準確率(ACC)、誤報率(FDR)、假陽率(FPR)和F1度量(F1-scorе)作為指標。在評估之前將所有用戶根據(jù)實際歸屬和檢測模型的結(jié)果劃分為四類:真陽性(TP)、真陰性(TN)、假陽性(FP)、假陰性(FN),如表4所示。
表4 異常用電模型評估分類
根據(jù)上述劃分,四類指標的意義和計算方法如下所示:
(а)ACC:正確分類的樣本占總樣本的比例,能夠反映整個檢測器的準確性。
(b)FDR:異常用電用戶被判定為正常用戶占所有被判定為正常用戶的比例。
(c)FPR:異常用電用戶被判斷為正常用電用戶占所有異常用戶的比例。
(d)F1-scorе:取值范圍為0-1用于衡量綜合衡量分類器性能,綜合了分類器的精確率和召回率。
其中精確率precison=TP/(TP+FP),召回率Recall=TP/(TP+FN)。
為了驗證基于多重特征值提取的特征選擇算法的性能和效果,選取兩個數(shù)據(jù)集進行實驗。數(shù)據(jù)組1是在數(shù)據(jù)平衡前,竊電用戶數(shù)為2063;數(shù)據(jù)組2是在數(shù)據(jù)平衡后,竊電用戶數(shù)為8063。為了控制其他因素,統(tǒng)一采用3層的CNN進行竊電檢測模型的訓練。圖7展示了PCA、時頻域、隨機森林特征選擇以及多重特征提取等4種特征提取方法的實驗分析結(jié)果。
如圖8所示,基于多重特征提取的方法在數(shù)據(jù)組1上的準確率分別比PCA、時頻域和隨機森林高出4.2%、11.8%和7.9%。在數(shù)據(jù)組2上,本文所提出的算法相比于PCA、時頻域和隨機森林分別提升了5.1%、13.3%和7.1%。
圖8 不同特征提取方法效果比較
通過分析FDR和FPR這兩個指標,發(fā)現(xiàn)其在兩組數(shù)據(jù)上基于多重特征提取的方法較其他三種算法表現(xiàn)顯著優(yōu)越。這說明本文提出的方法能夠更好地適應不同模式下的竊電檢測。
對于模型在不同數(shù)據(jù)組下的F1-scorе得分進行橫向比較,我們可以發(fā)現(xiàn)采用本文提出的方法來解決數(shù)據(jù)不平衡問題可以明顯提升竊電檢測模型的性能。值得注意的是,基于多重特征提取的方法訓練的簡單竊電檢測在數(shù)據(jù)組2的F1-scorе得分可達0.7975,這表明利用本文提出的算法來提取特征可以提高正常用戶被正確預測的比例,有效防止誤判。
將經(jīng)過數(shù)據(jù)處理后的數(shù)據(jù)集分別放入常用的竊電檢測分類模型中,如隨機森林、SVM(支持向量機)和ELM(極限學習機)中。為了驗證本文提出的模型對竊電問題的分類效果,DNN選用8層網(wǎng)絡的架構(gòu),測試結(jié)果如表5所示。
表5 檢測方法效果比較
由表5可以看出,基于多重特征的DNN檢測方法優(yōu)于隨機森林、SVM和ELM,ACC分別高7.93%、68.6%和4.64%;FPR分別低8.63%、7.63%和5.02%。雖然ELM方法的ACC可以達到87.25%,但是其FPR達到了10.94%。這意味著要消除被錯誤分類為竊電的正常用戶所需的人力資源相當大。綜合考慮以上指標,可以明確本文提出的方法優(yōu)于其他三種方法。
本文針對竊電檢測問題提出了一種多重特征提取的新的檢測方法,并結(jié)合DNN技術(shù)訓練了竊電檢測模型。通過在рytorch上對國家電網(wǎng)數(shù)據(jù)集進行實驗,并與其他竊電檢測器進行對比分析,結(jié)果表明本文所提出的方法在精確度和性能方面具有更好的表現(xiàn)。雖然該方法能夠充分利用大數(shù)據(jù)的優(yōu)勢,但是研究所用數(shù)據(jù)的獲取來源相對較為單一。為了進一步完善該方法,未來的工作將考慮對電力系統(tǒng)網(wǎng)絡參數(shù)進行分析,以實現(xiàn)對竊電行為的高效且精準檢測,同時在多維度、多方位和多因素上進行研究。