logo好方法网

一种基于长短期记忆网络的异常电量数据检测方法


技术摘要:
本发明涉及一种基于长短期记忆网络的异常电量数据检测方法。将所预测的电量数据作为实际电量数据的比较对象,并提出了一种时间窗口滑动检测方式,对所预测的电量数据加区间阈值,设置一定的天数作为时间窗口阈值,时间窗口由前向后滑动依次检测,通过检测实际值在连续  全部
背景技术:
随着智能电网不断建设发展,智能电表等用电信息采集设备普遍安装,使得电网 公司从用户侧获取的电量数据越来越多。然而,在海量的电量数据中也存在着大量的异常 电量数据,这些异常电量数据产生的原因主要有两个:一是智能表计等采集设备故障使得 数据出现异常;二是由用户的窃电行为而引起电量数据异常。无论是基于何种原因,电网公 司都需要快速锁定这些产生异常电量数据的用户,对其进行针对性处理以减少用户和电网 公司自身的经济损失,同时提高电网运行稳定性。 现有的异常电量数据检测方法主要有两类:一种是传统的统计学方法,一种是基 于聚类的离群点检测方法。 传统的统计学对于异常电量数据检测主要有两种方式:一是依据简单的统计量分 析数据的合理性,如判断电量数据的极值是否异常。二是通过箱型图分析方式,依靠数据与 均值之间的差异程度判断是否异常。上述方式依赖于单一设定值的合理性,而用户的用电 行为是多样的,每天的用电量是随之变化的,通过每天的电量数据与同一个值对比容易形 成误判和漏判。 基于聚类的离群点检测是一种无监督的学习方式,将大部分相似的电量数据聚集 为多个类,筛选出孤立的电量数据。然而,此种方式只适用于检测一些异常数据点,而不能 应用于电表故障检测和窃电检测的连续性异常电量数据分析。 同时,无论是上述何种方式,都只适用于电表偶尔采集错误所带来的短时异常数 据,对于电表故障及窃电行为引起的长时异常数据难以检测。 长短期记忆网络(LSTM,Long  Short-TermMemory)是一种时间循环神经网络,能够 用来进行时间序列预测,而用户的日用电量作为一种典型的时间序列数据,具有一定的规 律性,当天的电量数据与前多天的电量数据之间有一定的关联性。通过LSTM可以选择性地 训练预测模型,预测电量数据的大致值,并与真实值对比而判断是否出现异常。 因此,本发明提出一种基于LSTM的异常电量数据检测方法,用以快速检测异常电 量数据,能够为故障电表监测和窃电行为检测提供依据。
技术实现要素:
本发明的目的在于提供一种基于长短期记忆网络的异常电量数据检测方法,适用 于长时异常电量数据检测,能够快速检测由电表长期故障或者窃电行为引起的异常电量变 化。 为实现上述目的,本发明的技术方案是:一种基于长短期记忆网络的异常电量数 据检测方法,通过采集用电量数据搭建基于LSTM的异常电量数据预测模型,并基于建立的 模型得到预测的电量数据;对所预测的电量数据加区间预测阈值,设置时间窗口由前向后 4 CN 111612651 A 说 明 书 2/7 页 滑动依次检测,通过检测实际电量数据在连续的时间窗口内是否处于预测阈值之外而判断 是否为异常电量数据。 在本发明一实施例中,该方法具体实现步骤如下: 步骤S1、采集用户的历史日用电量数据以及需要检测的日用电量数据,将历史日 用电量数据划分为训练集A1(t)、验证集A2(t),检测数据为测试集A3(t),验证集的数据量大 小与测试集一致,三个数据集依次连接整合形成数据集A(t),其存储形式如下: 式中,1,2,...,n表示日期,仅代表时间先后顺序; 步骤S2、利用式(2)对A(t)进行归一化处理: 其中,x′i表示经归一化处理后的日用电量数据,xi表示原始日用电量数据,xmax和 xmin分别表示原始日用电量数据集里的最大值和最小值; 归一化后的数据存储形式如下: [a(1)  a(2)  a(3)  …  a(n-1)  a(n)]T (3) 步骤S3、将归一化后的一维数据集转化为有标签的二维数据集,作为基于LSTM的 电量预测模型的输入数据,其存储形式如下: 同样依次划分为训练集(train_X,train_Y)、验证集(test1_X,test1_Y)、测试集 (test2_X,test2_Y); 步骤S4、搭建基于LSTM的异常电量数据预测模型,具体过程如下: 在keras深度学习框架的Sequential模型中直接导入LSTM模块,设置LSTM的隐藏 层个数为1,隐藏层神经元个数为50,输入层大小由步长和特征两部分组成,步长为n_day, 其意义为利用用户前n_day天的日电量数据,预测用户第n_day 1天的日用电量数据,由于 只对单一电量特征进行预测,特征值为1,输出层由一个全连接层Dense构成,输出单元个数 为1; 采用随机梯度下降算法优化损失函数,损失函数为均方根误差函数,其计算公式 如下: 5 CN 111612651 A 说 明 书 3/7 页 其中,ai和bi分别表示i时刻的预测值和真实值; 为防止过拟合和欠拟合,模型训练次数参数epoch依次设置为200至500,将训练集 (train_X,train_Y)直接导入建好的预测模型,以优化LSTM中的各权重值;然后将验证集 (test1_X,test1_Y)导入训练好的模型,计算训练损失loss和验证损失val_loss,使得当训 练次数增加时,loss和val_loss之间的差值趋于一个较小的稳定值,此时的epoch即为最佳 训练次数; 步骤S5、将测试集(test2_X,test2_Y)直接导入已经建立好的基于LSTM的异常电 量数据预测模型,输出经归一化的预测数据prediction_Y,此后将prediction_Y和test_Y 分别存储于两个表格中,完成电量预测过程; 步骤S6、采用滑动时间窗口检测方式,设置时间窗口l=5,阈值t=0.1,对每个预 测数据上下加阈值形成预测曲线带,具体公式如下: 其中,Upbound为曲线带上边界,Lowbound为曲线带下边界; 由前向后依次判断时间窗口内的l个实际电量数据是否均在曲线带之外,窗口依 次向后滑动一天,如果由前向后不存在一个窗口内l个实际电量数据在预测曲线带之外,则 不存在疑似电表故障或者窃电行为引起的异常电量数据,反之,则用户存在疑似电表故障 或者窃电行为;具体判断公式如下: 在本发明一实施例中,步骤S1中,历史日用电量数据为与需要检测的日用电量数 据相近日期的用电量数据,且历史日用电量数据的数据量大小大于需要检测的日用电量数 据的数据量大小。 在本发明一实施例中,步骤S4中,参数n_day的设置方式为:将参数n_day分别取1 至10,然后训练基于LSTM的电量数据预测模型,通过验证集(test1_X,test1_Y)验证,使得 预测数据和实际数据之间的均方误差达到较小时,选择此时的n_day为其参数值。 相较于现有技术,本发明具有以下有益效果: 本发明提出的一种基于LSTM的异常电量数据检测方法,适用于长时异常电量数据 检测,能够快速检测由电表长期故障或者窃电行为引起的异常电量变化。其主要优点如下: (1)将预测算法应用于异常电量数据检测中,生成一组用于比较实际电量数据的 预测电量数据,预测模型有选择性地通过用户历史正常电量数据进行训练,能够抓取用户 的历史用电特征;模型训练所需数据量小,数据维度小,训练速度快; (2)时间窗口滑动比较方式可依据用户其它因素设置窗口大小和阈值大小,控制 检测的严格程度,同时可以检测产生异常电量数据的大致开始时间和持续时间。 附图说明 图1为本发明方法流程图。 6 CN 111612651 A 说 明 书 4/7 页
下载此资料需消耗2积分,
分享到:
收藏