一、背景运挖掘目标
(一)、背景
- 1、传统的防窃漏电方法主要通过定期巡查、定期校验电表、用户举报窃电等方法来发现窃电或计量装置故障,这种传统方法依赖性太强,抓窃查漏的目标不明确。
- 2、现有的电力计量自动化系统能够采集到各相电流、电压、功率因数等用户负荷数据以及用电异常等终端报警信息。
(二)、挖掘目标
- 1、归纳出窃漏电用户的关键特征,构建窃漏电用户的识别模型
- 2、利用实时监测数据,调用窃漏电用户识别模型实现实时诊断
二、分析方法与过程
(一)、分析方法
- 1、某些大用户不可能存在窃漏电行为,如银行、学校和工商等非居民类别,剔除这类用户
- 2、系统中的用电负荷不能直接体现出用户的窃漏电行为,因此需要进行数据探索和预处理,总结窃漏电用户的行为规律,再从数据中提炼窃漏电用户的特征指标
(二)、过程
- 1、有选择性的抽取部分大用户'用电负荷'、'终端报警'及'违约窃电处罚信息'等原始数据
- 2、对样本数据探索分析,去除不可能窃漏电用户,初步分析正常和窃漏电用户的用电特征
- 3、对样本数据进行预处理,包括数据清洗、缺失值处理和数据变换
- 4、构建专家样本集
- 5、构建窃漏电用户识别模型
- 6、在线检测用户用电负荷及终端报警,调用模型实现实
- 时诊断
三、采集数据
(一)、从营销系统抽取的数据
- (1) 用户基本信息:用户名称、编号、用电类别、计量方式等
- (2) 违约、窃电处理记录。
- (3) 计量方法及依据
(二)、从计量自动化系统采集的数据属性
- (1) 实时负荷:时间点、计量点、总有功功率、A/B/C相有功功率、电流、电压和功率因数
- (2) 终端报警:
- 本案例抽取某市近 5 年来所有的窃漏电用户有关数据和部分正常用户数据
四、数据处理
(一)、数据探索分析
(二)、数据预处理
1、数据预处理
- (1) 通过数据的探索分析,发现在用电类别中,非居民不存在漏电行为,将其剔除过滤掉
- (2) 结合本案例的业务,节假日与工作日相比,会明显偏低。为了尽可能达到较好的数据效果,过滤掉节假日的用电数据
2、缺失值处理
在用户电量的抽取过程中,发现存在缺失的现在,如果直接
丢掉缺失值会影响到建模的预测效果。本案例采取'拉格朗日插
值法'对缺失值进行插补
用户电量中有缺失值,样本数据如下:
[代码清单 1]
代码:采用拉格朗日插值法处理缺失值
- 3-1、通过电力计量系统采集的电量、负荷,虽然也能反映某些规律,但要作为构建模型的专家样本,特征不明显,需要进行重新构造属性。
- 3-2、评价指标体系如下 3 个指标:
(1) 电量趋势下降指标(2) 线损指标(3) 告警类指标
- 3-3、根据 3-2 构建专家样本,在 ../data/model.xls 中
四、构建窃漏电用户识别模型
在专家样本准备完成后,需要划分测试样本和训练样本,随
机选取 20% 作为测试样本,剩下的作为训练样本。
窃漏电用户识别可通过构建分类预测模型来实现,比较常用
的分类预测模型有 LM 神经网络和 CART 决策树。
- (一)、数据划分:20% 作为测试集,80% 作为训练样本
- (二)、LM 神经网络和 CART 决策树分类模型构造
- (三)、数据可视化:
数据可视化可以更加直观的展示预测结果的规律
(四)、模型评价:
1、为了进一步评估分类的性能,采用 ROC 曲线评价方法进
行评估,一个优秀分类器所对应的 ROC 曲线应该靠近左上角的。
2、利用测试集来评估模型的性能优劣
[代码清单 2]
专家样本数据如下:
代码:划分训练集和测试集
代码:决策树算法模型
代码:数据可视化展示
运行结果如下截图所示:
代码:模型评价
模型评价结果如下图像所示:
五、进行窃漏电诊断
预测结果如下:
根据分类算法的预测结果和实际稽查结果对比,窃漏电诊断的准确率是比较高的,模型可以实际运用。
声明:文章是根据'python数据分析和数据挖掘'一书总结的