一、案例綜述
案例編號(hào):
102003
案例名稱(chēng):
電力、熱力、燃?xì)饧八a(chǎn)和供應(yīng)業(yè)——電力竊漏電用戶(hù)識(shí)別
作者姓名(或單位、或來(lái)源):
朱江
案例所屬行業(yè):
D442 電力供應(yīng)
案例所用軟件:
R
案例包含知識(shí)點(diǎn):
案例描述:
目標(biāo):防竊漏電,找出可能存在竊漏電的可疑用戶(hù)做進(jìn)一步處理
傳統(tǒng)方法:定期巡檢、定期校驗(yàn)電表、用戶(hù)舉報(bào)竊電
缺點(diǎn):對(duì)人依賴(lài)性強(qiáng),目標(biāo)不明確,工作量大
目前常用方法:利用計(jì)量異常報(bào)警功能,電能量數(shù)據(jù)查詢(xún)功能,進(jìn)行用戶(hù)用電情況的在線(xiàn)監(jiān)督。采集的信息主要有:電量異常、負(fù)荷異常、終端報(bào)警、主站報(bào)警、線(xiàn)損異常等。根據(jù)報(bào)警事件發(fā)生前后客戶(hù)計(jì)量點(diǎn)有關(guān)的數(shù)據(jù)情況(電流、電壓、負(fù)荷),構(gòu)建基于指標(biāo)加權(quán)的用電異常分析模型。
缺點(diǎn):終端誤報(bào)漏報(bào)過(guò)多,以致無(wú)法高效高速定位。指標(biāo)權(quán)重拍腦門(mén),需要專(zhuān)家的知識(shí)和經(jīng)驗(yàn),主觀(guān)性可能會(huì)導(dǎo)致不準(zhǔn)確。
分析過(guò)程:
要剔除不可能存在漏電的大用戶(hù),如銀行、稅務(wù)、學(xué)校、工商。用電負(fù)荷隨著時(shí)間的變化才有價(jià)值,而終端報(bào)警存在誤報(bào)和漏報(bào),而這些數(shù)據(jù)都能夠幫助總結(jié)用戶(hù)竊漏電的行為規(guī)律,即通過(guò)預(yù)處理提煉出描述用戶(hù)竊漏電
特征的相關(guān)指標(biāo),最終得到建模使用的專(zhuān)家樣本數(shù)據(jù)集,然后開(kāi)始建模等工作。主要步驟如下:
1.從電力計(jì)量自動(dòng)化系統(tǒng)、營(yíng)銷(xiāo)系統(tǒng)有選擇性地抽取部分大用戶(hù)用電負(fù)荷、終端報(bào)警及違約竊電處罰信息等原始數(shù)據(jù)。
2.剔除白名單用戶(hù),即不可能存在漏電的用戶(hù)。描述性和探索性分析正常用戶(hù)和竊漏電用戶(hù)的用電
特征。
3.處理樣本缺失值,通過(guò)經(jīng)驗(yàn)構(gòu)建
特征指標(biāo),形成專(zhuān)家數(shù)據(jù)集
4.構(gòu)建竊漏電用戶(hù)識(shí)別模型
5.模型落地,在線(xiàn)監(jiān)測(cè)用戶(hù)用電負(fù)荷及終端報(bào)警,調(diào)用模型實(shí)現(xiàn)實(shí)時(shí)診斷。
6.通過(guò)對(duì)診斷結(jié)果的評(píng)估,優(yōu)化或者重構(gòu)模型
數(shù)據(jù)預(yù)處理:
剔除白名單用戶(hù),這里把這些用戶(hù)歸為非居民類(lèi)別
剔除節(jié)假日用電數(shù)據(jù),根據(jù)業(yè)務(wù)經(jīng)驗(yàn)節(jié)假日用電量明顯偏低(大部分用戶(hù)為企業(yè)用戶(hù))
如果直接將缺失值剔除,會(huì)嚴(yán)重影響供出電量的計(jì)算結(jié)果,從而導(dǎo)致日線(xiàn)損率誤差很大,故本案例采用拉格朗日插值法對(duì)缺失值填補(bǔ)。
拉格朗日插補(bǔ)可以選取缺失值前后5個(gè)數(shù)據(jù)或者和鄰近缺失值之間的所有數(shù)據(jù),組成一組,使用如下公式:
其中x為缺失值對(duì)應(yīng)的序號(hào),x_i為非缺失值y_i的序號(hào),對(duì)全部缺失值依次填補(bǔ),直到不存在缺失值。
3.數(shù)據(jù)變換
需要通過(guò)新的評(píng)價(jià)指標(biāo)來(lái)表征竊漏電用戶(hù)的行為規(guī)律,故根據(jù)業(yè)務(wù)經(jīng)驗(yàn)和專(zhuān)業(yè)理論引出三個(gè)評(píng)價(jià)指標(biāo):電量趨勢(shì)下降指標(biāo)、線(xiàn)損指標(biāo)、告警類(lèi)指標(biāo)
電量趨勢(shì)下降指標(biāo):取統(tǒng)計(jì)當(dāng)天及前后五天共11天的數(shù)據(jù),通過(guò)線(xiàn)性擬合計(jì)算斜率,如果當(dāng)天的斜率小于前一天的,則計(jì)數(shù)加1,可以據(jù)此計(jì)算敏感時(shí)期內(nèi)的總計(jì)數(shù)。
線(xiàn)損指標(biāo):線(xiàn)損率具體查看相關(guān)電學(xué)知識(shí),取當(dāng)天及前五天線(xiàn)損均值,當(dāng)天及后五天線(xiàn)損均值比較,如果增長(zhǎng)率大于1%,則記為1,否則為0
告警類(lèi)指標(biāo):取自終端報(bào)警次數(shù)總和
本案例共包含五個(gè)知識(shí)點(diǎn):
1.拉格朗日插值法:使用拉格朗日填補(bǔ)法填補(bǔ)缺失值
2.
數(shù)據(jù)清洗及轉(zhuǎn)換:通過(guò)作圖在時(shí)間維度上查看前后5天內(nèi)的電量均值變化趨勢(shì);計(jì)算電量下降趨勢(shì)指標(biāo);計(jì)算線(xiàn)損指標(biāo)
3.數(shù)據(jù)劃分:劃分訓(xùn)練樣本和測(cè)試樣本,方便比對(duì)模型的有效性
6.模型評(píng)價(jià):利用ROC曲線(xiàn)在測(cè)試集上評(píng)價(jià)模型
案例執(zhí)行形式:
單人上機(jī)
二、案例知識(shí)點(diǎn):
知識(shí)點(diǎn)1:
知識(shí)點(diǎn)名稱(chēng):拉格朗日插值法
知識(shí)點(diǎn)所屬工作角色:
知識(shí)點(diǎn)背景:
處理缺失值的一種插補(bǔ)方式
知識(shí)點(diǎn)描述
采用拉格朗日多項(xiàng)式插補(bǔ)公式對(duì)缺失值進(jìn)行插補(bǔ)
知識(shí)點(diǎn)關(guān)鍵詞:
拉格朗日多項(xiàng)式 缺失值插補(bǔ)
知識(shí)點(diǎn)所用軟件:
Rstudio
操作目的:
能夠自主編程實(shí)現(xiàn)拉格朗日插補(bǔ)
知識(shí)點(diǎn)素材(包括數(shù)據(jù)):
missing_data.xls
操作步驟:
1.啟動(dòng)Rstudio
2.使用setwd()函數(shù)設(shè)置工作目錄,將數(shù)據(jù)文件拷貝至工作目錄下
3.加載xlsx包,讀取素材文件,.xls格式
4.根據(jù)拉格朗日插值法創(chuàng)建拉格朗日插值函數(shù)
5.創(chuàng)建自動(dòng)替換數(shù)據(jù)框缺失值的函數(shù),找到每個(gè)缺失值,并且讀取每個(gè)缺失值前后五個(gè)或者距離上個(gè)缺失值之間的數(shù)值,采用之前創(chuàng)建的拉格朗日插值函數(shù)填補(bǔ)。
6.對(duì)讀取到的數(shù)據(jù)應(yīng)用上一步的函數(shù)處理,并且保存
處理前后對(duì)比如下:
操作結(jié)果:
數(shù)據(jù)前后對(duì)比如上圖
將R代碼文件保存為newdata.csv以備后續(xù)使用。
知識(shí)點(diǎn)小結(jié):
拉格朗日插值法目前現(xiàn)成的函數(shù)都是用于擬合多項(xiàng)式,插值填補(bǔ)的話(huà)可以自己寫(xiě)函數(shù)并且取自己覺(jué)得合適的前后數(shù)據(jù)處理
知識(shí)點(diǎn)2:
知識(shí)點(diǎn)所屬工作角色:
知識(shí)點(diǎn)背景:
通過(guò)業(yè)務(wù)邏輯按照條件篩選數(shù)據(jù),關(guān)鍵點(diǎn)在于按照條件篩選,以及理解業(yè)務(wù)邏輯,進(jìn)而計(jì)算需要的指標(biāo)
知識(shí)點(diǎn)描述
使用階躍函數(shù)按條件篩選數(shù)據(jù)
創(chuàng)建函數(shù)
知識(shí)點(diǎn)關(guān)鍵詞:
篩選變量 創(chuàng)建函數(shù)
知識(shí)點(diǎn)所用軟件:
Rstudio
操作目的:
篩選數(shù)據(jù)
按照業(yè)務(wù)邏輯生成新指標(biāo)
知識(shí)點(diǎn)素材(包括數(shù)據(jù)):
用戶(hù)日用電量.xls
操作步驟:
1.讀取數(shù)據(jù):用戶(hù)日用電量.xls
3.通過(guò)循環(huán),用自建函數(shù)篩選觀(guān)測(cè),計(jì)算日均電量,多日電量斜率,日均線(xiàn)損
4.作日均電量的點(diǎn)線(xiàn)圖,注意圖形參數(shù)的調(diào)整,加入回歸線(xiàn),以及原始的電量數(shù)據(jù)
5.將圖形輸出到外部設(shè)備上,即輸出mat.png文件
得到圖形如上所示
使用上上步計(jì)算得到的數(shù)據(jù)計(jì)算電量趨勢(shì)下降指標(biāo)、線(xiàn)損指標(biāo)、并且結(jié)合對(duì)應(yīng)的時(shí)間以區(qū)分
將得到的指標(biāo)放在數(shù)據(jù)框內(nèi),并且輸出到文件pro.csv中
得到的文件部分內(nèi)容如下
操作結(jié)果:
生成圖形觀(guān)察日均電量相對(duì)于原始電量的變化趨勢(shì),從而判斷用戶(hù)是否為可以的竊漏電用戶(hù)
生成新指標(biāo),并且輸出新指標(biāo)的表格
知識(shí)點(diǎn)小結(jié):
主要涉及到通過(guò)階躍函數(shù)按照業(yè)務(wù)邏輯篩選觀(guān)測(cè),按照業(yè)務(wù)邏輯構(gòu)建新指標(biāo),輸出新指標(biāo)的趨勢(shì)圖以及統(tǒng)計(jì)表格
知識(shí)點(diǎn)3:
知識(shí)點(diǎn)名稱(chēng):數(shù)據(jù)劃分
知識(shí)點(diǎn)所屬工作角色:
數(shù)據(jù)劃分
知識(shí)點(diǎn)背景:
數(shù)據(jù)劃分是在進(jìn)行
數(shù)據(jù)清洗和描述性分析后,在建模之前必備的一步,由于很多訓(xùn)練模型很容易出現(xiàn)
過(guò)擬合的狀況,所以需要通過(guò)獨(dú)立于訓(xùn)練數(shù)據(jù)的測(cè)試數(shù)據(jù)來(lái)觀(guān)察模型實(shí)際應(yīng)用在新數(shù)據(jù)上的效果。
知識(shí)點(diǎn)描述
數(shù)據(jù)劃分
知識(shí)點(diǎn)關(guān)鍵詞:
數(shù)據(jù)劃分
知識(shí)點(diǎn)所用軟件:
Rstudio
操作目的:
對(duì)清洗后的數(shù)據(jù)進(jìn)行數(shù)據(jù)劃分
知識(shí)點(diǎn)素材(包括數(shù)據(jù)):
model.csv
操作步驟:
1.讀取數(shù)據(jù),創(chuàng)建符合七三比例的隨機(jī)數(shù)
2.根據(jù)創(chuàng)建的隨機(jī)數(shù)生成訓(xùn)練集和測(cè)試集,并且寫(xiě)入文件
操作結(jié)果:
生成兩個(gè)數(shù)據(jù)文件,訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)
知識(shí)點(diǎn)小結(jié):
本知識(shí)點(diǎn)只是對(duì)數(shù)據(jù)進(jìn)行了簡(jiǎn)單的分割,分成訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù),有興趣的同學(xué)可以進(jìn)一步使用交叉驗(yàn)證進(jìn)行進(jìn)一步的模型選擇
知識(shí)點(diǎn)4:
知識(shí)點(diǎn)所屬工作角色:
知識(shí)點(diǎn)背景:
知識(shí)點(diǎn)描述
知識(shí)點(diǎn)關(guān)鍵詞:
知識(shí)點(diǎn)所用軟件:
Rstudio
操作目的:
知識(shí)點(diǎn)素材(包括數(shù)據(jù)):
traindata.csv
操作步驟:
1.讀取數(shù)據(jù),將預(yù)測(cè)列轉(zhuǎn)換為因子列
3.根據(jù)模型預(yù)測(cè)訓(xùn)練集,計(jì)算
混淆矩陣、準(zhǔn)確率
4.將預(yù)測(cè)結(jié)果與訓(xùn)練集橫向合并并且輸出到output.csv文件,將模型輸出到nnetmodel.RData文件
操作結(jié)果:
得到的準(zhǔn)確率是94.17
知識(shí)點(diǎn)小結(jié):
知識(shí)點(diǎn)5:
知識(shí)點(diǎn)名稱(chēng):構(gòu)建CART
決策樹(shù)模型
知識(shí)點(diǎn)所屬工作角色:
知識(shí)點(diǎn)背景:
知識(shí)點(diǎn)描述
知識(shí)點(diǎn)關(guān)鍵詞:
知識(shí)點(diǎn)所用軟件:
Rstudio
操作目的:
知識(shí)點(diǎn)素材(包括數(shù)據(jù)):
traindata.csv
操作步驟:
1.讀取數(shù)據(jù),將預(yù)測(cè)列轉(zhuǎn)換為因子列
3.根據(jù)模型預(yù)測(cè)訓(xùn)練集,計(jì)算
混淆矩陣、準(zhǔn)確率
4.將預(yù)測(cè)結(jié)果與訓(xùn)練集橫向合并并且輸出到output1.csv文件,將模型輸出到treemodel.RData文件
操作結(jié)果:
得到的準(zhǔn)確率是92.72
知識(shí)點(diǎn)小結(jié):
知識(shí)點(diǎn)6:
知識(shí)點(diǎn)名稱(chēng):模型評(píng)價(jià)
知識(shí)點(diǎn)所屬工作角色:
模型評(píng)價(jià)
知識(shí)點(diǎn)背景:
模型評(píng)價(jià):利用ROC曲線(xiàn)在測(cè)試集上評(píng)價(jià)模型
知識(shí)點(diǎn)描述
模型評(píng)價(jià)
知識(shí)點(diǎn)關(guān)鍵詞:
ROC曲線(xiàn)
知識(shí)點(diǎn)所用軟件:
Rstudio
操作目的:
熟悉使用ROC曲線(xiàn)評(píng)價(jià)模型
知識(shí)點(diǎn)素材(包括數(shù)據(jù)):
testdata.csv nnetmodel.RData treemodel.RData
操作步驟:
1.讀取數(shù)據(jù),讀取兩個(gè)模型數(shù)據(jù)
3.在測(cè)試數(shù)據(jù)集上繪制
決策樹(shù)的ROC曲線(xiàn)
操作結(jié)果:
知識(shí)點(diǎn)小結(jié):
ROC曲線(xiàn)常用來(lái)在測(cè)試集上檢測(cè)用于分類(lèi)的模型的好壞
CDA數(shù)據(jù)分析師考試相關(guān)入口一覽(建議收藏):
? 想報(bào)名CDA認(rèn)證考試,點(diǎn)擊>>>
“CDA報(bào)名”
了解CDA考試詳情;
? 想學(xué)習(xí)CDA考試教材,點(diǎn)擊>>> “CDA教材” 了解CDA考試詳情;
? 想加入CDA考試題庫(kù),點(diǎn)擊>>> “CDA題庫(kù)” 了解CDA考試詳情;
? 想了解CDA考試含金量,點(diǎn)擊>>> “CDA含金量” 了解CDA考試詳情;