电力窃漏电用户自动识别

上传人:suij****uang 文档编号:139575522 上传时间:2022-08-22 格式:DOCX 页数:14 大小:187.05KB
收藏 版权申诉 举报 下载
电力窃漏电用户自动识别_第1页
第1页 / 共14页
电力窃漏电用户自动识别_第2页
第2页 / 共14页
电力窃漏电用户自动识别_第3页
第3页 / 共14页
资源描述:

《电力窃漏电用户自动识别》由会员分享,可在线阅读,更多相关《电力窃漏电用户自动识别(14页珍藏版)》请在装配图网上搜索。

1、本文完整的叙述了数据分析实战项目“电力窃漏电用户自动识别”,包括数据探索分析、数 据预处理、专家样本的构建、模型的构建以及模型的评价等。1. 背景方面传统的防窃漏电方法主要通过定期巡检、定期校验电表、用户举报窃电等方法来发现窃 电或计量装置故障。但这种方法对人的依赖性太强,抓窃查漏的目标不明确。通过采集电量 异常、负荷异常、终端报警、主站报警、线损异常等信息,建立数据分析模型,来实时监测 窃漏电情况和发现计量装置的故障。本次数据挖掘与数据分析目标:(1)归纳出窃漏电用户的关键特征,构建窃漏电用户的识别模型;(2)利用实时监测数据,调用窃漏电用户识别模型实现实时诊断;2. 分析过程窃漏电用户在电

2、力计量自动化系统的监控大用户中只占一小部分,同时某些大用户也 不可能存在窃漏电行为,如银行、税务、学校和工商等非居民类别,故在数据预处理时候有 必要将这些类别用户剔除。系统中的用电负荷不能直接体现出用户的窃漏电行为,终端报警存在很多误报和漏报 的情况,故需要进行数据探索和预处理,总结窃漏电用户的行为规律,再从数据中提炼出描 述窃漏电用户的特征指标。最后结合历史窃漏电用户信息,整理出识别模型的专家样本数据集,再进一步构建分 类模型,实现窃漏电用户的自动识别。窃漏电用户识别流程如下图所示,主要包括以下步骤:业务系统数据抽取数据探素与预姓理姓天实时抽版4选择性荆垠!模型训够模型并竹建模样本数据-一顼

3、姓理后诊断数据n动诊斯!模型忧化与柬构图6-1窃漏电用户识别流程(1)从电力计量自动化系统、营销系统有选择性地抽取部分大用户用电负荷、终端报警及 违约窃电处罚信息等原始数据。(2)对样本数据探索分析,剔除不可能存在窃漏电行为行业的用户,即白名单用户,初步 审视正常用户和窃漏电用户的用电特征。(3)对样本数据进行预处理,包括数据清洗、缺失值处理和数据变换。(4) 构建专家样本集。(5) 构建窃漏电用户识别模型。(6) 在线监测用户用电负荷及终端报警,调用模型实现实时诊断。数据抽取与窃漏电相关的原始数据主要有用电负荷数据、终端报警数据、违约窃电处罚信息以及用户 档案资料等,故进行窃漏电诊断建模时需

4、从营销系统和计量自动化系统中抽取如下数据。1) 从营销系统抽取的数据主要如下:用户基本信息:用户名称、用户编号、用电地址、用电类别、报装容量、计量方式、电流互 感器变化、电压互感器变比;违约、窃电处理记录;计量方法及依据;2) 从计量自动化系统采集的数据属性主要如下:实时负荷:时间点、计量点、总有功功率、A/B/C相有功功率、A/B/C相电流、A/B/C相电 压、A/B/C相功率因数;终端报警。为了尽可能全面覆盖各种窃漏电方式,建模样本要包含不同用电类别的所有窃漏电用户及部 分正常用户。窃漏电用户的窃漏电开始时间和结束时间是表征其窃漏电的关键时间节点,在 这些时间节点上,用电负荷和终端报警等数

5、据也会有一定的特征变化,故样本数据抽取时务 必包含关键时间节点前后一定范围的数据,并通过用户的负荷数据计算出当天的用电量,公 式如下:f = 0.25* mm科天fl为第l天的用电量,mi为第l天每隔15分钟的总有功功率,对其累加求和得到当天用电 量。3. 数据探索分析(1)数据分布分析对数据所在时间段的所有窃电用户进行分布分析,统计出各个用电类别的窃漏电用户分布 情况,如下图所示。从下面的结果可以看出非居民类别不存在窃漏电情况,故在接下来的分 析中不考虑非居民类别的用电数据。(2)数据周期性分析如下图所示分别为一个正常用电用户和一个窃漏电用户的用电量统计结果。可以 看出正常用户用电量比较平稳

6、,没有太大的波动,这就是用户正常用电的电量指 标特征。而从窃漏电用户的统计中就能看出用户用电量有明显的下降趋势,这就 是用户异常用电的电量指标特征。综上所述,正常用电到窃漏电过程是用电量持续下降的过程。窃电用户电房趋势5000 I r r 1 1 1 1 1 1 1 1 1 1 1 3 1 1 图44窃漏电用户电量趋势图4.数据预处理针对上述问题的数据预处理包括数据清洗、缺失值处理和数据变换等方面。4.1数据清洗数据清洗主要从业务以及建模相关需要方面考虑,筛选出需要的数据。本案例 主要进行以下操作:(1)通过数据的探索分析,发现在用户类别中,非居民用电类别不可能存在窃 漏电现象,需要将非居民用

7、电类别的用电数据过滤掉;(2)结合相关业务分析,节假日用电量与工作日相比,会明显降低。为了尽可 能达到较好的数据效果,过滤掉节假日的用电数据。4.2缺失值处理在原始计量数据,特别是用户电量抽取过程中,发现存在缺失值。若将这些数 据去掉,会严重影响供出电量的计算结果,最终导致日线损率数据误差偏大。为 了达到较好的仿真效果,需要对缺失值处理,本案例采用拉格朗日插值法对缺失 值进行插补。具体方法如下:首先从原始数据中确定因变量和自变量,取出缺失值前后各5个数据(前后数 据中遇到数据不存在或者为空的,直接将其舍去,将仅有的数据组成一组),根 据取出来的10个数据组成一组。拉格朗日公式如下:JIH235

8、.8233350.B333478.3231236.2708351.2708515.4564238.0521353.0521517.0909235.9O&3350.9063514.89236.7604351.7604352.4167486.0912由 7.4167353.S56351J6.233233.65&3237.6042352.S04-2435.3508233.0313353.0313437.675235.0729350.0729235.5313350.5313660.2347349.4688621.2346234.4638611.3408235.5350.5643. OS 63235.6

9、354350.6354642.3482234.5521349.552123&602.9347235,2396350.2396509,3457235.4S96350.4896556.3452235,9603351,9688533347其中,x为缺失值对应的下标序号,Ln(x)为缺失值的插值结果,xi为缺失值yi的下标序号。对全部缺失数据进行插值,直到不存在缺失值为止。library(XLConnect)missing_data - XLConnect:readWorksheetFromFile(file = ./data/missing_data.xls,sheet = 1, header =

10、FALSE)lagrange - function(x, xi, yi) (n - length(xi)lage - 0for (i in 1:n) (li - 1for (j in 1:n) (if (i != j) (li - li * (x - xij) / (xii - xij)lage - li * yii + lagereturn(lage)missdata - missing_datafor (k in 1:3) (x - which(is.na(missing_data, k)x1 - c(0, x)x2 - c(x, nrow(missing_data)x12 - x2 -

11、x1 - 1xx1 - x121:(length(x12) - 1) # 缺失值前面的行数 xx2 - x122:(length(x12) # 缺失值后面的行数j = 5) ( #空值前的判断xi - (m - 5):(m - 1) else (xi = 5) ( #空值后的判断xi - c(xi, (m + 1):(m + 5) else (xi - c(xi, (m + 1):(m + xx2j)yi - missing_dataxi, kmissdatam, k - lagrange(m, xi, yi) print(c(m, missdatam, k) j - j + 14.3数据变换

12、通过电力计量系统采集的电量、负荷,虽然在一定程度上能反映用户窃漏电行为的某些规律,但要作 为构建模型的专家样本,特征不明显,需要进行重新构造。基于数据变换,得到新的评价指标来表征 窃漏电行为所具有的规律,其评价指标体系如图所示。窃漏电评价指标如下:图窃漏电评价指标体系用电量趋势线损增长率U与窃漏电相关的 终端告警数窃漏电评价指标嫁系电怔超势下降指标告警类指拣线损指标(1)电量趋势下降指标对统计当天设定前后5天为统计窗口,计算这11天内的电量趋势下降情况。首先计算这11天每天 的电量趋势,其中第i天的用电量趋势是考虑前后5天期间的用电量斜率,即: (6也X /-C3其中,咕W咕w-化为第f天的电

13、此趋势,方为第/天的用Eillih若电量趋势为不断下降的,则认为具有一定的窃电嫌疑,故计算这11天内,当天比前一天用电量趋势为递减的天数,即设有:则这11天内的电量趋势下降指标为:(6-6)(2)线损指标线损率是用于衡量供电线路的损失比例,同时可结合线户拓扑关系计算出用户所属线路在当天 的线损率,一条线路上同时供给多个用户,若第l天的线路供电量为sl,线路上各个用户的总用电量可 计算出,故线损率公式为:T罕线路表L表 表 4在大用户1大川户2大用户3图6-7线路与大用户的拓才卜关系示意图.;L, _二口 |如果用户发生窃电,则当天的线损率会上升,用户每天用电量存在波动,以天 为单位,误差较大,

14、所以考虑前后几天(5天)的线损率的平均值,判断增长率 是否大于1%,若大于1%,则认为是窃电。前5天的线损率平均值Vi1,后5天 的平均值Vi2,若Vi1比Vi2的增长率大于1%,认为有窃电嫌疑。故定义线 损率指标:(3)告警类指标与窃电相关的终端告警数,计算发生与漏电相关的报警的总次数。5.构建专家样本最终得到的专家样本库如下所示,专家样本共291个。IIJII.用户褊号电量趋势 增仕指标线损指标7篝美指 折是否窃漏 电加4年gjcn990066715141112014|-0 月却口990053943140412014|:9月直【1930058351621112014p-9j14| 1990

15、05311549000也14年叫1衬199004910503100HS4年9月 13H99004615012000知4年9月2NH99004125935021知4 年9.J120H9900366130313120141T-9月其日99003229603000NQL4年9;9199002546731100如4年9月1幻1990019650610131如4年9月16【1990014524810131SL4 年 916【19900137536203020149; 7H99000645374020如坤小H91101038673000KS4 年 9;J23H90101006890030河4 年9JJ2L

16、H891010164090312DM 年 9.JJ11LH8910101209002020141T-9 月 19 日B91010L132814120141T-9 月 19 日B9101003092040的14 年 g.:Jg 18SW10146330102OL4年9:盘【1871010085770002014-9 月 16 日86101015766000即14年9月20H8SL010L0024121即14年9月里H8SL010061170006.模型构建数据划分:随机选取20%数据作为测试样本,剩下的80%作为训练样本。#数据划分#设置工作空间#把“数据及程序”文件夹拷贝到F盘下,再用setw

17、d设置工作空间setwd(F:/数据及程序/chapter6/示例程序)#把数据分为两部分:训练数据、测试数据#读入数据Data - read.csv(./data/model.csv)#数据命名colnames(Data) - c(time, userid, ele_ind, loss_ind, alarm_ind, class)#数据分割set.seed(1234) #设置随机种子#定义序列ind,随机抽取1和2,1的个数占80%,2的个数占20%ind - sample(2, nrow(Data), replace = TRUE, prob = c(0.8, 0.2)trainData

18、- Dataind = 1, # 训练数据testData - Dataind = 2, # 测试数据#数据存储write.csv(trainData, ./tmp/trainData.csv, row.names = FALSE)write.csv(testData, ./tmp/testData.csv, row.names = FALSE)9 oaca2 91 Dbs,. of & varlab es口十问;Fact or w/ 19 1 evel 5 M 20149 IOC . ; 16 11 8 5 813 11 1(用.白;扁呈:-lum 9.9g+09 5. 9e+09 9.9&

19、+02 9. 0由0# Q. Q&+09 .由昌坨咎增长指析:1nT44z9i25334 .籍损柜标;lum 1010100101.告替类指标:1 nt 1410002300.:1ntlL10001100.模型选择:窃漏电用户识别可通过构建分类预测模型来实现,比较常用的分类预测有LM神 经网络和CART决策树,各个模型都有优缺点,故采用这两种方法构建窃漏电用户识别,并 从中选择最优的分类模型。LM神经网络模型构LM神经网络模型如下:输入节点:3,输出节点:1,隐藏节点:10,权值的衰减参数0.05#神经网络模型构建#设置工作空间#把数据及程序”文件夹拷贝到F盘下,再用setwd设置工作空间se

20、twd(F:/数据及程序/chapter6/示例程序”)#读取数据trainData - read.csv(./data/trainData.csv)#将class列转换为factor类型trainData - transform(trainData, class = as.factor(class)#神经网络模型构建library(nnet) # 加载 nnet 包#利用nnet建立神经网络nnet.model - nnet(class ele_ind + loss_ind + alarm_ind, trainData,size = 10, decay = 0.05)summary(nnet

21、.model)#建立混淆矩阵confusion - table(trainData$class, predict(nnet.model, trainData,type = class)accuracy - sum(diag(confusion) * 100 / sum(confusion)#保存输出结果output_nnet.trainData - cbind(trainData, predict(nnet.model, trainData,type = class)colnames(output_nnet.trainData) - c(colnames(trainData), OUTPUT)

22、write.csv(output_nnet.trainData, ./tmp/output_nnet.trainData.csv, row.names = FALSE)#保存神经网络模型save(nnet.model, file = ./tmp/nnet.model.RData)#构建CART决策树模型#设置工作空间#把“数据及程序”文件夹拷贝到F盘下,再用setwd设置工作空间setwd(F:/数据及程序/chapters/示例程序)#读取数据trainData - read.csv(./data/trainData.csv)#将class列转换为factor类型trainData - tr

23、ansform(trainData, class = as.factor(class)#构建CART决策树模型library(tree)#加载 tree 包#利用tree建立CART决策树tree.model - tree(class ele_ind + loss_ind + alarm_ind, trainData) summary(tree.model)#画决策树图plot(tree.model)text(tree.model)#建立混淆矩阵confusion - table(trainData$class, predict(tree.model, trainData, type = cl

24、ass) accuracy - sum(diag(confusion) * 100 / sum(confusion)#保存输出结果output_tree.trainData - cbind(trainData, predict(tree.model, trainData,type - class) colnames(output_tree.trainData) - c(colnames(trainData), OUTPUT) write.csv(output_tree.trainData, ./tmp/output_tree.trainData.csv, row.names = FALSE)#

25、保存CART决策树模型save(tree.model,file = ./tmp/tree.model.RData)ele_ind4.5alarm_i id 1.5alarmj kI e 2.501模型建立后,得到对训练数据的混淆矩阵,通过计算预测准确率等指标对模型进行初步评价。lossjn j0.5为了进一步评估模型的分类性能,利用之前的20%测试样本进行预测。采用ROC曲线评价 方法,一个优秀的分类器所对应的ROC曲线应该是尽可能靠近左上角的。分别画出LM神经 网络和CART决策树在测试样本下的ROC曲线,对模型进一步评估。# ROC曲线#设置工作空间#把“数据及程序”文件夹拷贝到F盘下,再

26、用setwd设置工作空间setwd(F:/数据及程序/chapters/示例程序)#读取数据testData - read.csv(./data/testData.csv)#读取模型load(./tmp/tree.model.RData)load(./tmp/nnet.model.RData)# ROC曲线library(ROCR) # 加载 ROCR 包#画出神经网络模型的ROC曲线nnet.pred - prediction(predict(nnet.model, testData), testData$class) nnet.perf - performance(nnet.pred, t

27、pr, fpr)plot(nnet.perf)#画出CART决策的ROC曲线tree.pred - prediction(predict(tree.model, testData), 2, testData$class) tree.perf - performance(tree.pred, tpr, fpr)plot(tree.perf)04JS0.9f削阳pcsiiivg何彩1 r.-r0.00.2CMO&g10f 创仲 posibTO rateLM神经网络模型中,通过混淆矩阵可知,分类准确率为(149+70)/(149+70+5+8)=94.39%, 正常用户被误判为窃漏电用户占正常用户的8/(149+8)=5.09%,窃漏电用户被误判为正常用 户占正常窃漏电用户的5/(5+70)=6.66%。CART决策树模型中,通过混淆矩阵可知,分类准确率为(164+56)/(164+56+4+8)=94.82%, 正常用户被误判为窃漏电用户占正常用户的8/(164+8)=4.65%,窃漏电用户被误判为正常用 户占正常窃漏电用户的4/(4+56)=6.66%。可见从准确率的角度,两个模型的效果差不多。但是从ROC曲线可以看出,LM模型的 曲线更加靠近单位方形的左上角,即ROC曲线下的面积(AUC)更大,说明LM神经网络模 型更优。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!