黃悅華 郭思涵 鮑 剛 程江洲 諶 橋 王藝潔
(三峽大學 電氣與新能源學院, 湖北 宜昌 443002)
隨著用電用戶的迅速增加和智能電表的普及,供電企業能夠從配電網中收集到海量的運行數據[1],因此電力企業需要對用戶用電信息采集系統收集到的數據進行整理與挖掘,獲取隱藏其中的信息[2].用電數據信息來源廣,結構復雜,對企業進行數據分析造成了困難[3].數據挖掘技術能實現數據整理、數據分類、異常數據查找等功能[4],以此推動泛在電力物聯網的建設,提升電網的全息感知能力[5].
目前按照對用電行為的定義方式分類,基于用電信息采集系統的研究主要有兩類:第一類是抽取、提煉用電負荷曲線,從中提取用電特征再對其進行分析.文獻[6]提出了一種融合K-means聚類算法和異常點查找算法的竊電識別方法;文獻[7]提出了基于無監督學習的異常用電模型檢測方法,將網格分析的方法引入異常點查找算法.以上文獻聚焦于異常數據點的查找,通過結合不同的聚類方法減少異常點檢測算法所計算的數據點,能顯著提高檢測效率.文獻[8]基于改進的K-means聚類算法對用戶負荷數據進行日負荷曲線的特性分類,但文中并未針對竊電情形對分類中出現的異常情況進行挖掘.第二類是基于用戶用電過程中產生的電參量記錄,從與其有關的時間序列中選取特征,將其描述為樣本點后再進行分析.文獻[9]提出一種基于深度學習的用戶異常用電模式檢測模型,構建了特征提取網絡和多層特征匹配網絡,具有較高的準確性,但在實際應用的過程中,需要大量帶有標記的訓練集才能獲得模型的較高準確性.文獻[10]使用基于距離的離群點查找方法,繪出竊電方法魚骨圖對所研究用戶電流電壓曲線進行研究,通過觀測對象與質心的歐幾里得距離甄別竊電用戶,但文中并未考慮供電及測量裝置故障等因素導致的異常觀測點.文獻[11]利用大數據針對多種類型竊電手段,建立竊電特征模型,但并未將高級測量體系(advanced metering infrastruc-ture,AMI)下對智能電表的攻擊納入考慮.
本文提出針對專變用戶基于用電模式特征的無監督方式異常用電檢測方法.首先引入LOF(local outlier factor)離群點檢測算法,基于電參量的時間序列考慮攻擊者行為特點,構建異常用電特征;然后設計異常用電評價流程量化用戶用電的異常程度,得到用戶異常行為的發生時刻;最后綜合考慮異常用電評價指標與異常用電持續時間減小技術性因素帶來的誤差.
目前用戶用電采集系統能進行一定程度的異常用電分析并記錄,通過接口上報到相關部門[12-14].對這些數據的技術分析能探查到一定數量的異常用電用戶,跟蹤重點用戶用電情況,但隨著AMI體系下異常用電模式的多樣化,竊電行為越來越隱蔽,異常用電行為與正常用電行為的區分度越來越小,造成了管理難度的加大[15].
專變用戶的電能計量采取高供高計、高供低計的方式.根據用戶接線方式的不同,采集樣本中存在不同類型的數據.高供高計采用三相三線的計量方式,高供低計采用三相四線的計量方式.在數據收集與分析的過程中,將高供低計三元件計量方式產生的三相數據記為A、B、C三相,高供高計二元件計量方式產生的兩項數據記為A、C兩相.
電網運行中的輸配電損失可分為技術性損失和非技術性損失.常見技術性損失有計量裝置的故障以及線路故障.智能電表在使用過程中產生故障和失誤造成計量異常,這些情況會使用電信息數據呈現出異常的波動,甚至超出計量范圍,另一個因素線路故障即供電異常也會導致用電數據的異常,這些故障導致的用電數據的異常容易從用電信息采集數據所返回的數據判斷出來.非技術損失以竊電形成的異常用電行為為首,是造成供電企業經濟損失的主要原因.竊電行為不僅嚴重影響了企業的收益,對配電網的安全運行和發展造成阻礙,而且由于竊電行為一般通過對計量裝置和供電回路的私自改裝實施,極易發生安全事故,使用高電壓、高用電量的專變用戶更是如此.因互感器變比較大,僅需電表較少的走字誤差即能獲得較大的非法收益[16].因此在異常用電行為的挖掘過程中,對于高壓專變用戶的竊電行為的防范應是重中之重.除傳統的欠流法、欠壓法之外,AMI下又催生惡意攻擊通信系統,篡改數據管理系統中電表測量值的情形,加大了竊電行為發掘的難度[17].
用戶用電采集系統采集的主要數據項有電能量數據,交流模擬量、工況數據、電能質量越限統計數據、事件記錄數據以及費控信息等數據[18],目前供電企業對以上數據的分析限于統計,大量數據隱含的信息被浪費.因此需要提出AMI下針對專變用戶的更精細的特征提取方法.用戶用電采集系統所獲取的數據在時間序列上呈現出高維度的特點.首先對96點電參量數據采取降維處理后,構建異常用電特征集合U.集合U由用電不平衡特征、電壓異常特征、電流異常特征3個子集構成.
用戶在正常用電行為時呈現出三相用電平衡的特征,電表讀取的電壓數據在額定值的上下有輕微的浮動,電流的不平衡也在數值0附近波動.三相用電的專變用戶出現的竊電行為能夠從電壓和電流不平衡率的偏移中體現出來.按照下式分別定義高供高計、高供低計專變用戶電壓、電流不平衡:

其中:Ui.n表示i相在時刻n的電壓采集數值,xV.n表示時刻n的電壓不平衡度,Ii.n為i相在時刻n的電流采集數值,xI.n表示時刻n的電流不平衡度.
建立用電不平衡特征矩陣Xn表征用戶在時刻n的用電不平衡度.

其中,XV=(xV.1,xV.2,…,xV.n),XI=(xI.1,xI.2,…,xI.n).
對二維空間中用電不平衡特征矩陣Xn所構成的樣本點進行離群點分析.局部離群因子(local outlier factor,LOF)檢測算法是一種基于密度的無監督離群點檢測算法,對離群點有較高的靈敏性.離群點指的是在樣本空間中與其他數據特征顯著不一致的數據.雖然這些數據總量較少,但包含著大量研究者需要重點研究的信息.離群點挖掘將有效地識別出數據集中的異常數據并從中挖掘出有意義的潛在信息作為目標,使它適用于用戶用電行為分析[19].若用戶的用電行為正常,則用電不平衡特征矩陣每一行所對應的二維觀測點在樣本空間中應是密集的簇,不應存在顯著偏離簇的觀測點,此時的局部離群因子即LOF值接近1;當異常用電發生時電壓和電流的不平衡度會產生較大偏移,LOF值非常大,進而形成離群點.
離群點檢測步驟如下[20]:
Step1:定義各觀測點與距其第k個最近的觀測點的距離為第K距離Kdist(p);
Step2:計算各觀測點的第k距離鄰域Nk(p)={q∈N/{p}|dist(p,q)≤Kdist(p)|},其中,dist(p,q)表示數據中第p個觀測點與第q個觀測點之間的距離;
Step3:計算各觀測點的局部可達距離Dreach(p,q)=max{Kdist(p)dist(p,q)};
Step4:計算各觀測點的局部可達密度lrdk(p):

其中:o表示被計算的第k距離鄰域Nk(p)中任意觀測點;
Step5:定義各對象的局部異常因子LOFk(p)
經過離群點分析后,n時刻數據計算所得局部異常因子LOFk(p)記為xn,形成關于時間的用電不平衡特征序列X=(x1,x2,…,xn).
電壓異常表現為在某時刻電壓記錄值偏移額定值或趨于零,電壓數值異常降低通常能夠判斷存在竊電行為發生.定義電壓異常特征序列反映用戶用電過程中的電壓偏移額定值的用電行為.
用戶電能計量裝置的失壓記錄可能存在兩種情況,計量回路斷開或供電異常.目前國內各地供電可靠性逐步提高,用戶平均停電時間4~5 h[21],因此設置失壓持續時間剔除無計劃停電所造成的失壓記錄,避免因短時停電事故造成的技術性損失重復報警.采取4 h作為失壓持續時間的評判標準.失壓持續時間在4 h以內記為暫時的供電異常,不記錄為電壓異常.電壓異常特征序列生成過程如圖1所示.
其中電壓異常特征序列表示為n維向量Y=(y1,y2,y3,…,yn).未失壓時由式(6)分別定義高供低計、高供高計用戶用電壓采集數值與額定電壓的偏移程度.

圖1 電壓異常特征序列生成流程
由電能計算公式W=U·I·cosφ·t可知,在功率因數cosφ和電壓U較為恒定的情況下,改變電流I的計量能夠達到用戶竊電的目的,即減少電費的計量.非法用戶可能會將某時段內的電流計量修改為0,或將電流曲線進行移峰,使用電曲線的峰值轉移到低電價時段[15].而對專變用戶來說,每日電力負荷曲線是相似的,這就決定了正常用電用戶的每日電流曲線也同樣具有相似性.如圖2所示的某專變用戶的日電流曲線集合,能夠看出每日A相電流曲線的波動有較大的相似性.

圖2 某專變用戶電流曲線
若電流曲線相較于前幾日電流曲線的聚類中心有較大波動,則可能發生異常用電行為.
計算電流異常特征序列步驟如下:
Step1:選取A相電流作為參考,計算前10日電流記錄值聚類中心(本文中按照均值計算),得到聚類中心曲線.其中時刻t對應的聚類中心取值mean(IA.t)=∑d=(0,1,2,…,10)IA.d.t.其中IA.d.t表示前d日t時刻的A相電流記錄值;
Step2:計算每日時刻t的電流記錄值與前10日電流聚類中心曲線時刻t的距離zD.t=|mean(IA.t)-IA.D.t|;
Step3:生成電流異常特征序列Z=(zD.t)=(z1,z2,…,zn).其中,n=24D+t,序列Z表示將每日zD.t按照時刻排序所得到的序列.
本文采用專變用戶電流電壓曲線數據作為挖掘樣本.根據專變用戶的用電特征和常見的竊電手法提出了一種基于用電特征分析的無監督異常用電檢測方法.引入離群點分析算法,將采集數據進行特征提取,凝練出用電特征序列,隨后對其進行特征分析,得到異常指數序列,將用電行為的異常程度進行量化并通過所提出的異常用電評價流程在持續時間上作出劃分以減少誤報的可能性.異常用電檢測方法總體設計如圖3所示.

圖3 異常用電檢測方法總體設計
第2節基于電參量構建了用電特征以表征用電異常程度,但無法從某個單一的特征做出判別.因此本文建立異常用電評價指標綜合量化用戶在時間序列上的用電異常程度,為異常用電的判別提供依據.
對原始數據進行歸一化處理,以消除量綱對計算結果的影響.由公式(6)容易看出yn∈[0,1],因此電壓異常特征序列Y=(y1,y2,y3,…,yn)所有取值都在[0,1]之間,不需要采取歸一化這一步驟.將用電不平衡特征序列X=(x1,x2,x3,…,xn)、電流異常特征序列Z=(z1,z2,z3,…,zn)進行歸一化處理.轉換結果如下:

轉換函數為

定義異常用電評價指標

得到異常指數序列

以10日作為一個檢測周期進行計算,將序列T=(t1,t2,…,t240)中的成分進行排序,輸出序列T中的前p%數值作為閾值T1,排序中前q%數值作為閾值T2,返回數據集查找用戶的異常用電時刻.此處p、q取值可參考臺區以往竊電率.查找異常用電時刻流程如圖4所示.

圖4 異常用電評價流程
由于竊電行為通常持續數小時[22],因此檢測過程中將異常用電評價指標持續5 h超過閾值T1判斷為持續異常用電行為,此時的用電行為容易指向竊電的發生.異常用電評價指標超過閾值T2,判斷為暫時異常用電行為,有較大的可能為采集異常或是供電異常.此方法能夠剔除因閾值設置造成評價指標靠前的正常用電用戶和技術性損失造成的異常用電記錄,減少誤報發生的可能性.
根據電力公司實際采集的數據,基于高斯分布生成大規模模擬數據,驗證所提出檢測方法的可行性.模擬數據集中添加異常數據,共446400條.其中異常數據占比2.68%.根據模擬數據集規模對參數k、p、q進行選取.此次實驗中選取k=20,p=5,q=2時能達到較好的分類效果.根據典型竊電電參量曲線構建異常樣本,其中包括:(a)電壓不平衡;(b)電流不平衡;(c)電流異常降低;(d)電流曲線移峰;(e)電壓異常降低及供電異常.各類異常數據部分電參量曲線如圖5所示.

圖5 各類異常數據曲線
異常用電檢測過程的實質是二元分類問題,所有樣本將被劃分為正類(異常數據)或負類(正常數據),當檢測樣本中的正、負類樣本分布極端不均衡時,直接使用檢測結果的正確率衡量其檢測效果將失去意義.因此為了檢驗檢測方法的可行性,用二元分類問題評判標準混淆矩陣及相關參數評判檢測方法的可行性.異常用電檢測結果組成的混淆矩陣見表1.

表1 異常用電檢測結果
從表中能夠得到本文所提出的異常用電檢測方法針對大規模數據的查準率達到0.80,召回率為0.81.其中,查準率為被正確分類的樣本與總樣本的比值,召回率為被正確分類樣本與真實正類樣本的比值.查準率和召回率的調和平均值F1值達到0.81,檢測方法的分類效果良好.
本文采用的數據集為某市級供電公司智能電表采集的經脫敏處理含有竊電用戶的50戶專變用戶電壓、電流數據.將正常用電時刻標記為0,暫時異常時刻標記為1,持續異常標記為2.部分驗證結果見表2.

表2 異常用電指數及判別結果
計算結果與真實情況基本相符.值得注意的是在挖掘過程中,異常用電行為首先會被判定為暫時異常用電行為,當異常用電時間超過設定的持續時間閾值后將被判定為持續異常用電行為.稽查人員能夠通過異常種類和發生頻率判斷異常用電發生時刻.當異常用電行為經常發生時,可以判斷用戶發生了竊電行為,需要工作人員實施現場勘查.在實際應用中,此檢測方法能夠為監控人員追蹤竊電行為提供有力參考.
本文提出了基于用電特征分析的無監督方式異常用電檢測方法,解決了竊電檢測需要大規模訓練集的問題.通過用戶用電信息采集系統采集的電參量曲線,引入離群點檢測算法設計用電特征提取手段,量化用電異常.建立異常用電評價指標,對用電過程中的用電異常情況進行分類,以異常持續時間進行劃分,得出更加精準的分析結果.該方法不存在迭代的過程,計算量較小,能有效檢測出高用電量專變用戶持續性的異常用電行為.通過模擬數據的分析和算例的驗證,證明了本方法對于異常用電行為檢測的有效性.檢測方法仍需要進行完善,后續將研究應對電力公司多渠道來源、多數據種類海量數據,將異常用電檢測方法運用到反竊電系統研究中,進一步提高對異常用電檢測的準確性以滿足企業及時精準探查竊電行為的需求.