廣東電網有限責任公司客戶服務中心 白艷玲 廖云亭 蘇立偉 楊英勃
電費差錯是計量系統發生錯誤或人為竊電行為導致出現的異常電費數據,這類異常用電數據給電網公司帶來了經濟和人力上的損失。電網公司采用的傳統電費差錯分析方法是通過人工制定規則對電費差錯數據進行篩查,其一方面依賴于人工經驗,具有較高的不確定性,另一方面無法有效利用電網公司已有的電費大數據資源。由于上述原因,該方法的命中率與查全率并不理想,導致后續的人工復核工作量較大,花費的工作時間較長。因此,通過合理的技術手段利用已有的電網數據資源進行電費差錯分析是現階段研究的方向。電費差錯數據分析方法一直是全球范圍內的研究熱點,近年來機器學習與人工智能技術的應用越來越廣泛,國內外均有學者提出基于機器學習或人工智能的異常用電檢測方法,其中包括決策樹、支持向量機、神經網絡等算法模型。
楊光[1]利用有監督的多隱藏層的神經網絡算法篩選出用電量異常用戶;吳剛[2]提出了基于數據內在特性和LSTM的用戶用電數據異常檢測算法,提高了異常檢測的準確率和命中率;吳蕊等[3]提出了一種基于改進K-means算法的電力數據異常檢測方法,可更有效地檢測出異常電力數據;Julina Zhang等[4]通過對比局部離群因子和孤立森林的性能,發現孤立森林在異常數據上比局部離群點有更好的識別度,其對于少量且特殊的異常點具有更好的識別能力;Ramos[5]等提出了一種基于最優路徑森林的異常用電檢測方法,對比神經網絡等技術取得了更好的效果;Depuru S[6]等用從智能電表收集的數據訓練支持向量機,對非法用電的檢測達到了較高的準確率。
隨機森林是由多個決策樹構成的分類器,屬于集成學習的bagging算法的一種擴展算法。隨機森林的bagging思想是將若干個弱分類器的分類結果進行投票選擇,從而組成一個強分類器。決策樹是樹狀結構的分類模型,其每個內部節點代表一次特征上的測試,根據特征區分進入對應的子節點,直到進入葉子節點即完成決策過程,每個葉子節點代表具體的分類類別,以此達到分類的效果。常用的決策樹算法有ID4、C4.5、CART等。
bagging算法通過自助采樣法(bootstrap sampling)采樣出若干個含有固定數量訓練樣本的采樣集,然后基于每個采樣集訓練一個基學習器,將這些基學習器的結果進行投票表決得到分類結果。隨機森林在bagging的基礎上將基學習器均設置為決策樹,同時在決策樹的訓練過程中進一步引入隨機特征選擇。因此隨機森林的隨機性體現在兩個方面:每棵決策樹的特征是從M個總特征中選出的m個特征子集;每棵決策樹隨機有放回地從訓練集中抽取N個訓練樣本作為該樹的訓練集。
隨機森林能有效運行在大數據集上,能處理具有高維特征的輸入樣本,對離散型和連續型數據都有很好的魯棒性。同時,由于兩個隨機性的加入使得隨機森林不容易陷入過擬合。綜上所述,隨機森林非常適合電費數據的特點,能有效學習電費數據的相關特征以構建電費差錯分析模型。
本文使用的數據集來自電網公司采集的2020年某月的某市用電數據抽樣,數據規模為2500條數據(其中電費差錯數據共有1139條,非電費差錯數據共有1361條),包含65個特征字段,如DSJ、YHLBDM、YDLBDM、JLDBH等,分別表示地市局、用戶類別代碼、用電類別代碼、計量點編號等電費數據特征。
本文數據來源于電網公司采集的真實電費數據,所以數據不可避免的存在數據缺失、特征冗余等情況。因此,在使用隨機森林模型進行訓練前應該對數據進行相應的預處理,以求得到更好的模型訓練效果。本文采用了刪除冗余特征、缺失值填補、特征歸一化三個預處理工作。原始電費數據中存在大量與電費差錯無關的特征,如用戶編號、計量點編號等,因此對這些冗余特征字段進行刪除,使特征維度由原來的65降至47。刪除冗余特征后能夠加速模型訓練,同時避免無關特征影響模型學習效果。
為使存在缺失值的數據能更好表現用戶的用電行為特征,本文選擇使用固定值填充法進行缺失值填充,其中填充的固定值為0。在模型訓練過程中,對比其他缺失值填充方法此方法效果最好。由于不同的特征往往具有不同的量綱和量綱單位,會影響到數據分析以及模型訓練的效果,為消除這些特征間量綱的影響,需對其進行特征歸一化處理。通過特征歸一化能使不同量綱的特征處于同一量級,減少方差大的特征的影響,使模型更準確。本文采用均值方差歸一化方法進行特征歸一化,公式為Xscaled=(X-Xmean)/Xstd,其中Xmean為數據集中的均值,為數據集的標準差。
在基于隨機森林的電費差錯分析模型中,電費差錯數據標簽為1,非電費差錯數據標簽為0,對于此類二分類問題可根據樣本真實類別與模型預測類別進行以下劃分:
真正例(True Positive)。即電費差錯分析模型判定為電費差錯數據的樣本中真正屬于電費差錯樣本的數據量;假正例(False Positive)。即電費差錯分析模型判定為電費差錯數據的樣本中屬于非電費差錯樣本的數據量;真反例(True Negative)。即電費差錯分析模型判定為非電費差錯數據的樣本中真正屬于非電費差錯樣本的數據量;假反例(False Negative)。即電費差錯分析模型判定為非電費差錯數據的樣本中屬于電費差錯樣本的數據量。
電費差錯分析模型的混淆矩陣如表1,在以上數據劃分的基礎上可得到以下模型的性能評價指標:準確率(Accuracy)代表模型預測正確的樣本占總樣本的比例,公式為A=(TP+TN)/(TP+TN+FP+FN);查準率(precision)代表模型預測為正例的樣本中真正例占的比例,公式為P=TP/(TP+FP);召回率(recall)代表模型預測為反例的樣本中真反例占的比例,公式為R=TP/(TP+FN);F1值(F1 Score)綜合查準率和召回率的調和平均結果,公式為F1=2×PR/(P+R]。本文使用上述四種性能評價標準對本文提出的基于隨機森林的電費差錯分析模型進行科學評估。

表1 電費差錯分析模型混淆矩陣
本文將預處理后的電費數據按照8:2的比例劃分訓練集和測試集,即訓練集2000條測試集500條,其中訓練集中有電費差錯數據911條,測試集中有電費差錯數據228條。使用訓練集進行隨機森林模型訓練,使用測試集進行模型測試,測試結果為準確率0.914、查準率0.904、召回率0.908、F1值0.906,四項評價指標均達到了0.90以上,其中查準率和召回率較好的表現說明該模型對電費差錯與非電費差錯數據均有良好的分類效果,能避免實際使用過程中因數據正負樣本比例懸殊導致模型效果嚴重下降的問題。綜合四個評價指標,可看出本文提出的基于隨機森林的電費差錯分析方法較好完成了電費差錯分析的任務。
綜上,本文提出了基于隨機森林的電費差錯分析方法,在電網公司的數據集上取得了準確率、查準率等四項指標均大于0.90的效果,相比傳統基于人工規則的電費差錯分析方法取得了大幅度的提升。總之,基于隨機森林的電費差錯分析方法能夠大幅度提升電費差錯分析工作的效率,對于減少電網公司的成本損失以及后續復核工作的人力成本有良好的效果。