武亞光,張才俊,程飛飛
(國家電網(wǎng)有限公司客戶服務(wù)中心,天津 300309)
隨著各種現(xiàn)代化技術(shù)不斷滲透到人們的工作、學習和生活中,對電力能源的需求也隨之不斷增加,因此電力消耗量不斷增加[1]。電力由電力公司提供,通過收取電費來維持公司運營。電費的收取一般以家庭、單位、團體或者組織等為單位進行收費,因此客戶量十分龐大,這使得客戶管理工作量十分龐大。在客戶管理中,發(fā)現(xiàn)用電異常行為是最難的部分。用戶在使用電力時,會通過電表記錄下來,以此來作為收費標準,然而部分用戶為了一時貪念,隨意搭接線路、篡改電表等,進行電力竊取。這種異常用電行為屬于犯罪行為,且隨著高科技的更新,異常用電更難以發(fā)現(xiàn)[2]。
基于上述背景,關(guān)于用電異常行為檢測研究有很多,如嚴勤等人[3]以采集到的用電量數(shù)據(jù)為基礎(chǔ),提取其時序特征,將特征輸入到深度循環(huán)神經(jīng)網(wǎng)絡(luò)當中進行分類檢測,尋找存在異常行為的用戶。鄭思達等人[4]在其研究中從智能電表中采集數(shù)據(jù),然后提取四個特征指標,將提取到的特征構(gòu)成數(shù)據(jù)集,基于聚類技術(shù)計算樣本之間的相似性,以此區(qū)分異常和正常。冉哲等人[5]在其研究中采集用戶用電數(shù)據(jù),然后利用RFE 算法提取用電特征,得到五個代表性特征,利用CatBoost 模型進行分類識別,完成異常用電檢測。
前人研究面對一些表現(xiàn)不明顯的小用戶竊電行為檢測結(jié)果差強人意,因此提出基于FP-growth 算法的多尺度用電異常行為檢測。通過該研究以期提高小用戶異常用電行為排查準確性,保證用電可靠性。
隨著各種竊電技術(shù)的層出不窮,異常用電行為更加難以察覺和發(fā)現(xiàn),尤其是單個居民用戶竊電規(guī)模不大,且不是持續(xù)竊電,很難檢查出用電數(shù)據(jù)異常[6]。針對上述問題,提出一種基于FP-growth 算法的多尺度用電異常行為檢測方法,該方法利用FP-growth 算法挖掘異常用電行為與特征之間的關(guān)聯(lián)規(guī)則,通過計算二者之間的支持度和置信度來判斷竊電行為是否發(fā)生。
對用戶用電異常行為檢測的實質(zhì)是一個數(shù)據(jù)挖掘過程,而數(shù)據(jù)挖掘的前提是有大量的樣本數(shù)據(jù)[7]?;诖?,用電數(shù)據(jù)采集至關(guān)重要,具體過程如下:
步驟1:遠程采集檢測中心發(fā)布采集任務(wù);
步驟2:HTTP 服務(wù)器對用電數(shù)據(jù)采集任務(wù)進行解析;
步驟3:將解析結(jié)果存入數(shù)據(jù)庫;
步驟4:返回入庫結(jié)構(gòu)給HTTP 服務(wù)器,并轉(zhuǎn)發(fā)給監(jiān)控中心;
步驟5:遍歷數(shù)據(jù)庫,獲取滿足條件的采集任務(wù);
步驟6:將任務(wù)進行分解,得到若干子任務(wù),并將其存入數(shù)據(jù)庫;
步驟7:輪詢數(shù)據(jù)庫,獲取需要執(zhí)行的子任務(wù);
步驟8:通過消息總線轉(zhuǎn)發(fā)給協(xié)議棧;
步驟9:解析消息并轉(zhuǎn)發(fā)給協(xié)議模塊;
步驟10:組成相應(yīng)報文,并發(fā)送給集中器;
步驟11:集中器獲取用電數(shù)據(jù);
步驟12:轉(zhuǎn)化集中器上報的數(shù)據(jù)報文為JSON 格式的執(zhí)行結(jié)果;
步驟13:通過消息總線將結(jié)果發(fā)送給任務(wù)執(zhí)行模塊;
步驟14:在任務(wù)執(zhí)行模塊當中將結(jié)果轉(zhuǎn)換為DB文件;
步驟15:將DB 文件反饋給檢測中心。
上述步驟為采集器采集用電數(shù)據(jù)的具體流程,為后續(xù)異常檢測提供可利用和可挖掘的基礎(chǔ)數(shù)據(jù)[8]。
基于上述采集到的用電數(shù)據(jù),進行預(yù)處理,以提高數(shù)據(jù)質(zhì)量。
1)缺失數(shù)據(jù)填補
采集到的用電數(shù)據(jù)中難以避免地會出現(xiàn)部分缺失的情況,若是該數(shù)據(jù)是關(guān)鍵數(shù)據(jù),一旦缺失將直接影響異常檢測的準確性[9]。面對這一情況,通過下述插值公式進行填補:
式中,Xi代表缺失的用電數(shù)據(jù);Xj代表樣本中第j個數(shù)據(jù);n代表樣本中數(shù)據(jù)數(shù)量。
2)數(shù)據(jù)標準化
數(shù)據(jù)標準化的作用是方便不同量綱數(shù)據(jù)之間可以進行同一運算而進行的處理[10]。計算公式如下:
最后的異常行為檢測與識別是以用戶用電數(shù)據(jù)特征作為輸入的,因此選取的特征越具有代表性,檢測結(jié)果越準確[11]?;诖?,進行多尺度特征選取研究,具體過程如下:
步驟1:列舉所有用電數(shù)據(jù)特征,包括用電量標準差、負荷、線損、用電模式、不平衡率等,具體如表1所示[12];
表1 用電數(shù)據(jù)特征表
步驟2:對指標進行向量化;
步驟3:計算每個特征向量的重要性指數(shù),計算公式如下:
式中,Pi代表第i個特征向量的重要性指數(shù);wi代表權(quán)重;Si代表第i個特征向量;m代表特征向量數(shù)量,在這里取值m=14;
步驟4:按照重要性指數(shù)從大到小的順序進行特征向量排序;
步驟5:選取重要性指數(shù)排名前K的特征向量組成新的特征集合;
步驟6:按照下述公式計算特征集合中每個特征的貢獻率,計算公式如下:
式中,Ri代表第i個特征向量的貢獻率;Qi代表i個特征向量的排名;K代表特征集合中特征向量的數(shù)量。
步驟7:根據(jù)貢獻率選取大于1.0 的特征向量作為最優(yōu)特征指標[13]。
基于上述過程完成多尺度特征選取工作,為后續(xù)研究奠定基礎(chǔ)。
將上一節(jié)選出的特征參量作為基礎(chǔ),利用FP-growth 算法挖掘關(guān)聯(lián)規(guī)則,實現(xiàn)用電異常行為檢測[14]。
FP-growth 算法中涉及兩個關(guān)鍵概念,即支持度和置信度。
1)支持度
支持度是指項集A和項集B同時出現(xiàn)的概率[15]。計算公式如下:
式中,Support(A?B)代表支持度;Num(A?B)代表A和B同時出現(xiàn)的次數(shù);Num(Z)代表總事務(wù)集中事務(wù)數(shù)量。
2)置信度
置信度是指同時包含A和B的事務(wù)占包含A的事務(wù)的比例[16]。計算公式如下:
式中,Confidence(A|B)代表置信度;Num(A) 代表包含A的事務(wù)數(shù)量。
基于FP-growth 算法進行關(guān)聯(lián)多尺度用電異常行為檢測,具體過程如下:
步驟1:掃描事務(wù)數(shù)據(jù)庫Z;
步驟2:設(shè)置最小支持度閾值,記為φ為最小置信度閾值;
步驟3:從Z中挖掘滿足條件的頻繁項集,具體過程如下:
1)按照式(5)計算Z中每個項的支持度Support(A?B);
2)判斷Support(A?B)是否不小于φ?若是,將該項加入頻繁項集;否則,刪除該項;
步驟4:再次掃描事務(wù)數(shù)據(jù)庫,生成項頭表。
1)按照式(6)計算Z中每個項的置信度;
2)判斷每個項的置信度是否不小于φ。若大于,將該項加入項頭集;否則,刪除該項;
3)按照置信度大小進行降序排列,生成項頭表。步驟5:構(gòu)造FP-tree 結(jié)構(gòu)。
1)創(chuàng)建根節(jié)點;
2)遍歷頻繁項集中的每項事務(wù);
3)把每項事務(wù)一一映射到FP-tree 結(jié)構(gòu)中。
步驟6:構(gòu)造條件FP-tree;
步驟7:基于條件遞歸挖掘,產(chǎn)生頻繁項集;
步驟8:從頻繁項集中產(chǎn)生關(guān)聯(lián)規(guī)則,即挖掘特征與用電行為之間的關(guān)聯(lián)規(guī)則。
基于以上分析可知,基于關(guān)聯(lián)規(guī)則實現(xiàn)用電異常行為檢測,即當特征與用電行為之間的支持度大于1 時,則認為存在用電異常。
以基于深度循環(huán)神經(jīng)網(wǎng)絡(luò)的檢測方法、基于模糊聚類的檢測方法以及基于RFE+CatBoost 的檢測方法為對比項,進行用電異常行為檢測分析與測試。
該測試中所使用的樣本來自愛爾蘭社會科學數(shù)據(jù)檔案館,該樣本分布情況如圖1 所示。
圖1 樣本分布圖
檢測方法的評價指標為F1 指標,計算公式如下:
式中,P代表查準率;R代表查全率,其余指標來自混淆矩陣,如表2 所示。
表2 混淆矩陣
相同測試條件下,利用所研究方法、基于深度循環(huán)神經(jīng)網(wǎng)絡(luò)的檢測方法、基于模糊聚類的檢測方法以及基于RFE+CatBoost 的檢測方法進行用電異常行為檢測,根據(jù)檢測結(jié)果計算F1 值,結(jié)果如圖2 所示。
圖2 方法異常檢測結(jié)果
從圖2 可以看出,該文方法的F1 值大于基于深度循環(huán)神經(jīng)網(wǎng)絡(luò)的檢測方法、基于模糊聚類的檢測方法以及基于RFE+CatBoost 的檢測方法檢測結(jié)果的F1 值,說明該方法的檢測更為準確。
該文研究了基于FP-growth 算法的多尺度用電異常行為檢測方法,通過測試證明了該研究方法的檢測準確性,即F1 值更大。后續(xù)工作中,在測試環(huán)節(jié)需要進一步將方法應(yīng)用到實際當中,以測試方法的實際應(yīng)用性。