APP下载

基于时间卷积网络的用户用电异常检测方法

2021-10-08刘月峰赵潇潇

科技创新与应用 2021年27期
关键词:残差用电卷积

刘月峰,赵潇潇

(内蒙古科技大学 信息工程学院,内蒙古 包头 014010)

在智能电网系统中,电力损耗分为两个领域,基于发电期间的技术领域电力传输固有损耗的技术性损失(TL)和基于输配电线路损耗的非技术性损失(NTL)。

近几年来,为了降低非技术损失,许多国内外专家学者对窃电检测展开了广泛的研究,提出了许多模型。使用无线传感器节点、AM 和RFID 标的检测技术是最早实现检测的技术之一。然而,大多数的模型硬件设备的成本较高效率较低,不适合作为窃电检测方案来实施。随着智能电网的发展,基于机器学习的分类方法近年来引起了专家极大的关注,像模糊聚类和利用局部离群因子算法计算离群因子是常用的无监督的窃电检测方法。逻辑回归、支持向量机(SVM)等方法是较为传统基于机器学习监督学习的检测方法。但以上大部分传统方法对窃电行为的检测精度较低,且不适用于大规模训练样本。文献[1]提出了一种宽而深的卷积神经网络(convolutional neural network,CNN)结构,以检测智能电网环境中的电力盗窃行为。文献[2]利用长短期记忆(LSTM)的特征提取网络和全连接网络(FCN)多层特征匹配网络的组合模型来进行窃电检测。以上方法的提出进一步提高了用电异常检测在大样本情况下的精确度。对于CNN 来说,它虽然在处理大规模并行数据的情况下具有优势,但在对于时间序列分析问题上较差。LSTM 网络虽然在处理时间序列问题上效果较好,但对于大规模并行数据的处理还是存在缺陷,即使存在记忆门,随着序列的增长也无法完全记录所有信息,并且存在存储容量过大问题。为了解决以上局限性,我们将目光放在时间卷积网络(TCN)上,TCN 是基于一维卷积神经网络且能够处理时间序列数据的网络结构[3]。文献[4]利用TCN 来进行短期负荷概率密度预测。文献[5]将TCN 进行改进用于文本分类。其分析结果皆优于LSTM 等算法。目前关于TCN 网络未见将其应用在非技术性损失检测方面的研究。因此,本文提出了一种基于时间卷积网络(TCN)的用户用电异常检测模型。

1 时间卷积网络

时间卷积网络(temporal convolutional network,TCN)是一种基于卷积神经网络且能够处理时间序列数据的网络结构。该网络有两个特点:一是网络的输入长度和输出长度相等;二是TCN 具有时间因果性,即t 时刻的输出结果只和t 时刻之前的输入有关系,并不会有漏接的历史信息。时间卷积网络的结构主要有三部分:因果卷积层(Causal Convolution)、扩张卷积层(Dilated Convolution)、残差连接(Residual Connections)。

1.1 因果卷积

为了使网络的输出与输入长度相等,TCN 使用一位全卷积网络(FCN)通过使用0 填充使得每一层隐层输出序列的长度和输入序列的长度保持一致。为了避免将来信息的泄露和有漏接的历史信息,TCN 使用因果卷积,即在卷积中,t 时间的输出仅与t 时间之前的输入有关。但存在一个问题:若序列的长度过长,则需要增加网络的层数来扩展感受野。因此为了降低网络的复杂性,引入了扩张卷积。

1.2 扩张卷积

扩张卷积是在标准的卷积中注入空洞,以此来增加感受野。输入序列X{x1,x2,….,xn},给出的filter{0,…..,k-1},扩张卷积F 在第s 个输入被定义为:

其中d 代表扩张因子,k 代表滤波器的大小,s-d*i 代表的是过去的方向,f(i)表示卷积核函数。当d=1 时,扩张卷积就为最普通的卷积。当d 的取值大于1 时,扩张因子能够使顶层的输出代表更大的输入范围,有效地扩大了感受野,也就解决了上面使用因果卷积带来的问题。另外,可以通过选择更大的k 和更大的d 来增加感受野,且使用膨胀卷积的每一层的有效感受野为(k-1)d。

1.3 残差连接层

文献[6]首先提出了残差网络的概念,有效解决了梯度消失的问题。其计算公式(2)如下:

其中X 为残差模块的输入,F(X)表示经过残差网络的最后一个隐藏层后的输出,Activation 是两者结合后使用的激活函数,这里使用的是修正线性单元ReLu 函数。并使用一维卷积保证输入输出之间张量的尺度相同。如图1所示,其中曲线表示残差连接。

图1 带有残差连接的扩张因果卷积的结构

2 基于时间卷积网络的用电异常检测模型

为了更好地完成用户用电异常检测,用户的功耗模式中识别出异常用电行为,本文提出了一种基于时间卷积网络(TCN)的用户用电异常检测模型,主要包括三部分:数据处理、模型训练以及模型评估。该模型的具体结构如图2 所示。原始用户用电负荷数据经过数据预处理方法并进行不平衡数据处理合成新的数据集后,将每一个用户的用电消耗数据作为一个样本输入到网络中。对网络进行训练,最后通过测试数据对模型进行评估。

图2 基于时间卷积网络的用户用电异常检测模型

2.1 不平衡数据处理

在大多数的用电用户中,真正进行窃电行为的用户较少,所以数据不平衡现象无法避免。通过对SGCC 的数据集分析,在此数据集中,用电异常用户的数量明显少于用电正常用户的数量,如果使用这种不平衡数据集来训练模型,所得到的模型存在只能对多数类进行分类对少数类不敏感和模型容易过拟合问题,影响结果的准确性。目前常用的不平衡数据处理方法为随机欠采样和随机过采样,随机欠采样会随机丢弃多数类条目以减少多数类实例,但是随机删除可能会丢弃潜在的重要信息,而其余数据可能无法正确表示总体;随机过采样技术复制了少数类,以增加少数实例的数量,但仅仅复制样本可能会使模型过度拟合。SMOTE 算法则是通过生成综合数据,不再是复制少数类来平衡数据集,可以避免过度拟合的问题。因此,本文使用SMOTE 算法处理不平衡数据,假设(x1,x2)是少数类的实例,并且如果将其最近的邻居选择为(x'1,x'2)然后将数据点合成如下公式(3)所示:

2.2 基于时间卷积网络的分类模型

本文所提出的基于TCN 网络分类模型的结构如图3 所示。数据集作为输入X{x1,x2,x3,…,xn},在经过扩张因果卷积计算后,得到输出通过ReLu 激活函数后得到输出X{x1,x2,x3,…,xn}。将其作为下一个扩张因果卷积层的输入并重复上述过程,获得通过一个TCN 块的输出Q(X)。将其进行残差连接后的数据作为下一个TCN 块的输入。在经过多个TCN 块计算之后,数据经过完整的全连接层,得到最后一层的输出yL,并通过softmax 激活函数计算后得到预测序列标签。

图3 基于TCN 网络分类模型的结构

3 实验结果与分析

3.1 实验数据与实验环境

本文采用中国国家电网公司(SGCC)提供的窃电数据集,该数据集是由我国超4 万消费者1035 天的真实用电量数据收集而来,数据集中包含窃电标签。样本总数为42372,其中正常样本数为38757,异常样本数为3615。通过数据预处理以及数据不平衡处理之后的数据集总计84744 条数据,其中经过SMOTE 算法合成数据后,正常用户与异常用户的比例为1:1。将合成后的数据随机选取20%作为模型的测试集,测试集共16948 条。本文实验的操作平台为谷歌colab 平台,其中CUDA 的版本为10.0,编程语言为python3.7,深度学习框架为Pytorch1.6.0。

3.2 实验结果

为了验证本文所提出模型的有效性,我们给出了在逻辑回归LR、支持向量机(SVM)、CNN 模型、LSTM 模型以及本文提出TCN 模型在处理过后测试集下的结果对比,结果如下表1 所示。

从表1 中可以看出,本文中所提出的TCN 模型评价指标结果皆高于较传统LR、SVM 方法,说明本文所提出的模型在用电异常分类上较传统方法具有更好的性能,验证了本文模型在用电检测领域的可用性。通过与CNN、LSTM 深度学习模型进行对比可以看出,本文所提的模型具有更高的准确性,在非技术性损失方面具有优势,所以相比于传统机器学习模型以及常用的深度学习模型,本文提出基于TCN 的模型具有更好的分类效果,进一步证明了本文模型的有效性。

表1 对比实验结果

4 结论

本文提出了一种基于时间卷积网络的用户用电异常检测模型。首先,将原始数据进行缺失值处理;然后,为了解决数据不平衡问题,利用合成少数过采样(SMOTE)技术生成新的数据集;最后,训练基于时间卷积网络的检测模型并进行模型评估。本文将所提模型与传统机器学习方法中的支持向量机和逻辑回归方法,深度学习中方法中的CNN 模型、LSTM 模型进行对比实验,结果表明本文所提出的模型具有较高的准确性。在今后的工作中,将不断深入用电异常检测研究,尝试将TCN 与其他深度学习方法相结合,进一步优化模型,缩短模型训练时间并提高模型的泛化能力。

猜你喜欢

残差用电卷积
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于残差学习的自适应无人机目标跟踪算法
卷积神经网络的分析与设计
基于深度卷积的残差三生网络研究与应用
对输配电及用电工程的自动化运行的几点思考
从滤波器理解卷积
用电安全要注意
用电监察面临的问题及反窃电对策