本发明属于电力数据分析,特别涉及一种基于频谱学习与张量分解的用电异常检测方法和系统。
背景技术:
1、随着智能电网的普及,利用智能电网进行营销采集领域中的用户行为检测成为了很有价值的研究内容。通过对用户用电行为的合理推测,电网一方面能够减轻供电负荷压力,另一方面能够避免异常的用电行为影响电网的正常运行或对经济造成损失。用电异常检测主要是指通过判断当前某一时间的用电负荷是否偏离正常的用电量来检测是否发生异常,其中异常主要包括窃电以及计量装置异常。发生用电异常通常会给电网安全带来极大的隐患。
2、传统的异常检测方法可以分为基于密度的方法,基于距离的方法,基于统计学的方法,以及深度学习模型等等。基于密度的方法可以通过lof离群点检测,比较每个观测值周围点的密度来识别相对西游的观测值;基于距离的方法可以通过knn聚类,使用距离度量来检测与其他数据点距离较远的观测值;传统的统计学的方法通过绘制箱线图来显示数据的分布范围和异常值。这些传统方法在短时单变量异常检测的任务下表现良好,但是难以捕捉到长时间多变量的异常数据。近年来,深度学习方法在多变量时间序列的异常检测方面取得了很大的进展,这些方法包括使用重建误差作为异常分数的自编码器(ae)以及与变分自编码器(vae)相关的变种,前者通过对正常数据的重构来检测域原始数据重构误差较大的观测值,后者采用概率方法,将自编码器与高斯混合模型相结合,通过拟合近似分布采样得到观测值。然而,这些方法同样难以捕捉到长时间依赖关系以及变量之间的关系。
技术实现思路
1、为了解决上述技术问题,本发明提出了一种基于频谱学习与张量分解的用电异常检测方法和系统。通过在不同的域中进行学习能够捕捉到周期性或突变,提高异常检测的性能。
2、为实现上述目的,本发明采用以下技术方案:
3、一种基于频谱学习与张量分解的用电异常检测方法,包括以下步骤:
4、获取用户用电数据,在对所述用户用电数据预处理之后,将用户用电序列在时间方向上进行特征映射得到嵌入矩阵;基于所述嵌入矩阵构建数据的拓扑关系得到邻接矩阵;
5、利用嵌入矩阵与邻接矩阵,通过图卷积获得节点层次的第一特征矩阵;将所述第一特征矩阵通过注意力机制得到拓扑结构的第二特征矩阵;将所述第一特征矩阵分解为多个秩为1分解矩阵,利用分解矩阵作为多头注意力机制的张量获得用户用电数据的细粒度特征矩阵;
6、将所述细粒度特征矩阵、第一特征矩阵和第二特征矩阵使用哈达玛积进行特征聚合后得到第三特征矩阵,将所述第三特征矩阵进行频谱图卷积后得到第四特征矩阵;利用所述第四特征矩阵对用户用电数据进行预测,经过全连接层映射到预测值窗口的大小,通过设置的门槛值检测出用电异常。
7、进一步的,所述将用户用电序列在时间方向上进行特征映射得到嵌入矩阵的过程包括:
8、vi=embedding(v′i);
9、其中,v′i为第i个用户用电序列;vi为经过特征映射之后的第i个用户用电序列;i为用户用电序列节点;i∈{1,2,…,n1};n1为用户用电序列节点的总数。
10、进一步的,所述基于所述嵌入矩阵构建数据的拓扑关系得到邻接矩阵的过程包括:用户用电序列节点i所有可能的关系可以表示为:
11、
12、其中,n2表示多变量时间序列的特征数;n1=n2;
13、用户用电序列节点i与其他节点相似度的嵌入向量表示为:
14、
15、aij=1{j∈topk({eki:k∈ci})};
16、其中,eji表示嵌入向量i与嵌入向量j做点积运算的标准化;k表示超参数;a表示邻接矩阵;aij表示节点i与节点j之间有一条边;eki表示k和i之间的关系数值;k表示ci的节点;vj为经过特征映射之后的第j个用户用电序列。
17、进一步的,所述利用嵌入矩阵与邻接矩阵,通过图卷积获得节点层次的第一特征矩阵的过程包括:
18、
19、其中,b表示偏差;w表示gcn层的权重矩阵;n(i)表示节点i与其相邻的节点以及该节点自身组成的节点集合;mi为节点i的特征,所有的节点特征构成第一特征矩阵m;dei表示节点i的度;dej表示节点j的度。
20、进一步的,所述将所述第一特征矩阵通过注意力机制得到拓扑结构的第二特征矩阵的过程包括:
21、
22、其中,c为图的全局信息;w2为神经网络的权重参数;hi为节点i拓扑结构特征,所有的拓扑结构构成第二特征矩阵h。
23、进一步的,将所述第一特征矩阵分解为多个秩为1分解矩阵的过程包括:
24、将第一特征矩阵m采用cp分解算法得到l个秩为1的张量m1,m2,…,ml;对m1,m2,…,ml嵌入到统一纬度的空间中:
25、e1=m1w′1;e2=m2w′2;…;el=mlw′l;
26、其中,wi′为线性变换的矩阵;e1表示经过cp分解的第1个向量经过特征映射后得到的矩阵;el表示经过cp分解的第l个向量经过特征映射后得到的矩阵。
27、所述利用分解矩阵作为多头注意力机制的张量获得用户用电数据的细粒度特征矩阵的过程包括:
28、s=multiheadatt(e1,e2,…,el)
29、其中,s为细粒度特征矩阵。
30、进一步的,将所述细粒度特征矩阵、第一特征矩阵和第二特征矩阵使用哈达玛积进行特征聚合后得到第三特征矩阵的过程包括:
31、y=s⊙m⊙h
32、其中,y为第三特征矩阵。
33、进一步的,将所述第三特征矩阵进行频谱图卷积后得到第四特征矩阵的过程为:将第三特征矩阵y依次经过图傅里叶变换、图卷积和图傅里叶逆变换后得到第四特征矩阵o。
34、进一步的,利用所述第四特征矩阵对用户用电数据进行预测,经过全连接层映射到预测值窗口的大小,通过设置的门槛值检测出用电异常的过程包括:
35、用所述第四特征矩阵对用户用电数据进行预测:output=mlp(o);采用均方误差作为损失函数:loss=mse(output,value);其中,output为预测值,value为训练集用电序列真实值;
36、定义t时刻节点i的异常值为:由于不同特征的偏差值有不同的量纲,因此需要标准化:其中,ai(t)是erri(t)标准化后的值;表示均值;表示的是标准差;erri是一个序列数据,即{erri(1),erri(2),…,erri(t)};
37、取所有特征最大的异常值作为异常分数:threshold=maxiai(t);最后得到的观测值若超过设定的阈值那么该时刻被标记为异常。
38、本发明还提出了一种基于频谱学习与张量分解的用电异常检测系统,包括预处理模块、转换模块和检测模块;
39、所述预处理模块用于获取用户用电数据,在对所述用户用电数据预处理之后,将用户用电序列在时间方向上进行特征映射得到嵌入矩阵;基于所述嵌入矩阵构建数据的拓扑关系得到邻接矩阵;
40、所述转换模块用于利用嵌入矩阵与邻接矩阵,通过图卷积获得节点层次的第一特征矩阵;将所述第一特征矩阵通过注意力机制得到拓扑结构的第二特征矩阵;将所述第一特征矩阵分解为多个秩为1分解矩阵,利用分解矩阵作为多头注意力机制的张量获得用户用电数据的细粒度特征矩阵;
41、所述检测模块用于将所述细粒度特征矩阵、第一特征矩阵和第二特征矩阵使用哈达玛积进行特征聚合后得到第三特征矩阵,将所述第三特征矩阵进行频谱图卷积后得到第四特征矩阵;利用所述第四特征矩阵对用户用电数据进行预测,经过全连接层映射到预测值窗口的大小,通过设置的门槛值检测出用电异常。
42、
技术实现要素:
中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
43、本发明提出了一种基于频谱学习与张量分解的用电异常检测方法和系统,该方法包括以下步骤:获取用户用电数据,在对所述用户用电数据预处理之后,将用户用电序列在时间方向上进行特征映射得到嵌入矩阵;基于所述嵌入矩阵构建数据的拓扑关系得到邻接矩阵;利用嵌入矩阵与邻接矩阵,通过图卷积获得节点层次的第一特征矩阵;将所述第一特征矩阵通过注意力机制得到拓扑结构的第二特征矩阵;将所述第一特征矩阵分解为多个秩为1分解矩阵,利用分解矩阵作为多头注意力机制的张量获得用户用电数据的细粒度特征矩阵;将细粒度特征矩阵、第一特征矩阵和第二特征矩阵使用哈达玛积进行特征聚合后得到第三特征矩阵,将所述第三特征矩阵进行频谱图卷积后得到第四特征矩阵;利用所述第四特征矩阵对用户用电数据进行预测,经过全连接层映射到预测值窗口的大小,通过设置的门槛值检测出用电异常。基于一种基于频谱学习与张量分解的用电异常检测方法,还提出了一种基于频谱学习与张量分解的用电异常检测系统。本发明以历史电力用户用电数据为基础,利用余弦相似度算法获得用户用电数据的拓扑结构表示,使用该算法能够在不知道时序数据特征关系的前提下获得良好的拓扑关系表示,具有良好的泛用性,解决了电力用户采集拓扑图随电力数据动态变化引发的持续构建问题。
44、本发明利用嵌入矩阵与邻接矩阵通过图卷积获得节点层次的特征矩阵,随后使用注意力机制,得到拓扑结构层次的特征矩阵。对节点层次的特征矩阵采用cp分解算法获得细粒度特征矩阵。利用获得的细粒度特征矩阵与邻接矩阵,最后采用图卷积与注意力机制对特征信息进行更新并聚合。本公开在节点与拓扑结构两个维度进行特征学习,并且使用了张量分解的方法获得用电序列的细粒度表示,提高异常检测的性能。通过学习不同特征之间以及特定用户用电数据的特征,并对时间维度的信息进行域变换,解决了电力用户采集拓扑图随电力数据动态变化而引发的演化和完善问题。
45、本发明将获得的时空特征矩阵,通过图傅里叶变换,将特征矩阵由时域与空域转换到谱域与频域进行学习。通过在不同的域中进行学习能够捕捉到周期性或突变,提高异常检测的性能。
1.一种基于频谱学习与张量分解的用电异常检测方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于频谱学习与张量分解的用电异常检测方法,其特征在于,所述将用户用电序列在时间方向上进行特征映射得到嵌入矩阵的过程包括:
3.根据权利要求2所述的一种基于频谱学习与张量分解的用电异常检测方法,其特征在于,所述基于所述嵌入矩阵构建数据的拓扑关系得到邻接矩阵的过程包括:用户用电序列节点i所有可能的关系可以表示为:
4.根据权利要求3所述的一种基于频谱学习与张量分解的用电异常检测方法,其特征在于,所述利用嵌入矩阵与邻接矩阵,通过图卷积获得节点层次的第一特征矩阵的过程包括:
5.根据权利要求4所述的一种基于频谱学习与张量分解的用电异常检测方法,其特征在于,所述将所述第一特征矩阵通过注意力机制得到拓扑结构的第二特征矩阵的过程包括:
6.根据权利要求5所述的一种基于频谱学习与张量分解的用电异常检测方法,其特征在于,将所述第一特征矩阵分解为多个秩为1分解矩阵的过程包括:
7.根据权利要求1所述的一种基于频谱学习与张量分解的用电异常检测方法,其特征在于,将所述细粒度特征矩阵、第一特征矩阵和第二特征矩阵使用哈达玛积进行特征聚合后得到第三特征矩阵的过程包括:
8.根据权利要求1所述的一种基于频谱学习与张量分解的用电异常检测方法,其特征在于,将所述第三特征矩阵进行频谱图卷积后得到第四特征矩阵的过程为:将第三特征矩阵y依次经过图傅里叶变换、图卷积和图傅里叶逆变换后得到第四特征矩阵o。
9.根据权利要求8所述的一种基于频谱学习与张量分解的用电异常检测方法,其特征在于,利用所述第四特征矩阵对用户用电数据进行预测,经过全连接层映射到预测值窗口的大小,通过设置的门槛值检测出用电异常的过程包括:
10.一种基于频谱学习与张量分解的用电异常检测系统,其特征在于,包括预处理模块、转换模块和检测模块;
