數據挖掘案例:CART決策樹——用戶竊漏電自動識別
GIF
案例
對竊漏電相關的用電負荷數據、終端報警數據、違約竊電處罰信息以及用戶檔案資料等進行數據處理。選取所有竊漏電用戶及部分正常用戶的電量、告警及線損數據和該用戶在當天是否竊漏電的標識,按竊漏電評價指標進行處理,構建專家樣本庫,得到建模數據。
數據挖掘實踐案例二:CART決策樹
電力竊漏電用戶自動識別
分類與預測:
有目標的對事物進行分類預測,如:客戶流失預測、偷竊電用戶識別等。
CART決策樹
實現竊漏電用戶識別操作過程:
1)讀取建模數據並對數據進行過濾和其它的相關處理
2)將建模數據進行分區處理,數據80%作為訓練樣本,剩餘20%作為測試樣本
3)使用CART決策樹實現分類預測模型
4)利用混淆矩陣對模型進行評價,並分析其預測的效果
需要載入R中的tree包做CART決策樹建模
電力竊漏電用戶自動識別
原始數據樣本情況
1.對數據文件進行相應的操作,需要對原始數據進行過濾,過濾掉數據中無關的屬性。
用電負荷數據,採集時間間隔為15分鐘,可進一步計算該大用戶的用電量。
註:讀入不同格式數據方法請參看早期推送內容。
2. 修改其中某些數據屬性的類型。設置終端報警數據。
終端報警數據:其中與竊漏電相關的報警能較好的識別用戶的竊漏電行為(註:下圖數據已做脫敏處理)
3.用戶違約、竊電處理通知書,裡面記錄了用戶的用電類別和竊電時間
挖掘目標
1.歸納出竊漏電用戶的關鍵特徵,構建竊漏電用戶的識別模型;
2.利用實時監測數據,調用竊漏電用戶識別模型實現實時診斷。
分析方法與過程
1)用電負荷不能直接體現出用戶的竊漏電行為,終端報警存在很多誤報和漏報的情況,故需要進行數據探索和預處理,總結竊漏電用戶的行為規律,再從數據中提煉出描述竊漏電用戶的特徵指標。
2)結合歷史竊漏電用戶信息,整理出識別模型的專家樣本數據集,再進一步構建分類模型,實現竊漏電用戶的自動識別。
總體流程
收集數據
1.與竊漏電相關的原始數據主要有用電負荷數據、終端報警數據、違約竊電處罰信息以及用戶檔案資料等。
2.為了儘可能全面覆蓋各種竊漏電方式,建模樣本要包含不同用電類別的所有竊漏電用戶及部分正常用戶。竊漏電用戶的竊漏電開始時間和結束時間是表徵其竊漏電的關鍵時間節點,在這些時間節點上,用電負荷和終端報警等數據也會有一定的特徵變化,故樣本數據抽取時務必要包含關鍵時間節點前後一定範圍的數據。
3.抽取近5年來所有的竊漏電用戶有關數據和部分不同用電類別正常用電用戶的有關數據。
初步分析
1.竊漏電用戶分布分析。(註:上圖數據已做脫敏處理)
2.用電量周期性分析
數據預處理
從業務以及建模的相關需要方面考慮,篩選出需要的數據
缺失值處理:在原始計量數據,特別是用戶電量抽取過程中,發現存在缺失的現象。若將這些值拋棄掉,會嚴重影響後續分析結果。
這裡我們使用拉格朗日插值法和牛頓插值法:
其中 為缺失值對應的下標序號,Ln(x)為缺失值的插值結果,xi為非缺失值yi的下標序號。
數據變換
1.電量趨勢下降指標 :
從正常用電到竊漏電特徵分析。
若電量趨勢為不斷下降的,則認為具有一定的竊電嫌疑
2. 線損指標:線損公式請查看專業書籍
3.告警類指標:
與竊漏電相關的終端報警主要有電壓缺相、電壓斷相、電流反極性等告警,計算髮生與竊漏電相關的終端報警的次數總和,作為告警類指標。
構建訓練樣本
對收集的所有竊漏電用戶及部分正常用戶的電量、告警及線損數據和該用戶在當天是否竊漏電的標識,按竊漏電評價指標進行處理,得到數據訓練樣本庫。
構建模型
對專家樣本隨機選取20%的作為測試樣本,剩下80%的作為訓練樣本
LM神經網路建模
由混淆矩陣(訓練樣本),分類準確率為94.0%,正常用戶被誤判為竊漏電用戶占正常用戶的3.4%,竊漏電用戶被誤判為正常用戶占正常竊漏電用戶的2.6%。
CART決策樹
由混淆矩陣(訓練樣本),分類準確率為95.3%,正常用戶被誤判為竊漏電用戶占正常用戶的1.3%,竊漏電用戶被誤判為正常用戶占正常竊漏電用戶的3.4%。
模型評價
1)用測試樣本對兩個模型進行評價,評價方法採用ROC曲線進行評估。
2)觀測LM神經網路和CART決策樹ROC曲線的CLASS2折線,經過對比發現LM神經網路的ROC曲線比CART決策樹的ROC曲線更加靠近單位方形的左上角,LM神經網路ROC曲線下的面積更大,說明LM神經網路模型的分類性能較好,能應用於竊漏電用戶識別。
TAG:R語言數據分析與實踐 |