一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于ARNN-KM模型的系统数据异常检测方法与流程

2022-10-13 07:23:09 来源:中国专利 TAG:

基于arnn-km模型的系统数据异常检测方法
技术领域
1.本发明涉及电力系统配电领域用电业务分析检测,尤其涉及一种基于arnn-km模型的系统数据异常检测方法。


背景技术:

2.随着电网互联工作的开展,用电业务数据规模增大。如何利用目前先进的智能技术对业务大数据进行深度信息挖掘,成为用电管理工作的关键。
3.传统的机器学习方法(例如k-means分析)使用的相似性度量方法在高维数据上的性能通常较差,且通常在大规模数据集上具有很高的计算复杂度,从而降低了运行效果。因而目前针对大规模用电数据的分析和异常检测效果不佳,给工作人员带来很大困难。


技术实现要素:

4.发明目的:针对以上问题,本发明提出一种基于arnn-km模型的系统数据异常检测方法,将循环神经网络与k-means网络进行结合,对用户用电数据进行特征分析,根据分析结果进行用户用电异常数据的检测。
5.技术方案:为实现本发明的目的,本发明所采用的技术方案是:一种基于arnn-km模型的系统数据异常检测方法,包括步骤:
6.(1)初始化模型参数;
7.(2)更新输入序列数据;
8.(3)将输入序列数据分成n个片段,patch_k,k=1,2,

n,确定每个片段的长度和起始点;
9.(4)将输入序列数据片段patch_k输入到arnn模型中,进行并行化处理,进行特征分析,提取特征值;所述arnn模型为循环神经网络,采用导师驱动模型,将期望值(而非隐藏层的值)作为下一时刻的输入,产生循环连接;
10.(5)对n个数据片段并行化处理输出结果进行拼接;
11.(6)数据转换之后,利用k-means方法分析得到聚类结果;
12.(7)重复步骤2~6,更新聚类分析结果;
13.(8)将新的聚类分析结果与以往结果进行比较,如果未发生变化则认为数据正常;否则进入步骤9进一步判断;
14.(9)根据用户用电数据,判断用电变化量是否大于设定阈值,如果大于阈值则认为是异常数据;否则认为是正常数据。
15.进一步地,每个数据片段的处理过程为:将数据片段输入到arnn模型中,更新网络参数,直到达到最大迭代次数时输出处理结果。
16.进一步地,初始化模型参数包括隐藏单元个数、批处理大小、迭代次数。
17.进一步地,输入序列数据包括馈线与变电站关系信息、变电站与用户关系信息、用户用电信息。
18.进一步地,arnn模型提取特征包括:用户类型特征、用户区域特征、用户用电时段特征。
19.进一步地,利用concat层对n个数据片段并行化处理输出结果进行拼接。
20.有益效果:本发明将arnn神经网络模型自动提取特征和k-means模型简单方便的优势进行结合。针对用电数据的时序特征,采用循环网络模型,并考虑历史数据和状态对当前特征提取的影响。
21.本发明针对数据规模较大的特点,采用易于进行并行化处理的arnn模型,并采用导师驱动模型,该模型将输出层的值(而非隐藏层的值)进行反馈,从而消除相邻时间点隐藏层之间的连接。不仅减少了中间状态值的存储,还实现了基于模型输出和训练目标值之间的解耦,从而在模型训练时可以进行并行化处理。
附图说明
22.图1是本发明所述的基于arnn-km模型的系统数据异常检测方法流程图;
23.图2是导师驱动过程训练过程示意图;
24.图3是导师驱动过程测试过程示意图;
25.图4是本发明实施例中用户2019年3月至4月间用电变化曲线;
26.图5是用户4月26日用电数据异常检测表。
具体实施方式
27.下面结合附图和实施例对本发明的技术方案作进一步的说明。
28.如图1所示,本发明所述的基于arnn-km模型的系统数据异常检测方法,包括:
29.(1)模型初始化,包括初始化模型参数,包括隐藏单元个数、批处理大小、迭代次数等;
30.(2)更新输入序列数据,包括馈线与变电站关系信息,变电站与用户关系信息,用户用电信息;
31.(3)将输入序列数据分成n个片段,patch_k,k=1,2,

n,确定每个片段的长度和起始点;
32.(4)将输入序列数据片段patch_k输入到arnn模型中,进行并行化处理,对用户用电数据进行特征分析,提取特征值,实现降维;
33.每个片段的处理过程为:将片段输入到arnn模型中,更新网络参数,直到达到最大迭代次数时输出处理结果。
34.arnn模型输出结果随着特征选取的不同而发生变化,本发明依据arnn模型自动提取三个不同特征,包括用户类型特征、用户区域特征、用户用电时段特征。
35.(5)对n个数据片段并行化处理输出结果进行拼接;
36.具体地,利用concat层对n个数据片段并行化处理输出结果进行拼接。
37.(6)数据转换之后,利用k-means方法分析得到聚类结果;
38.(7)重复步骤2~6,更新聚类分析结果;
39.(8)将更新的聚类分析结果与以往结果进行比较,如果未发生变化则认为数据正常;否则进入步骤9进一步判断;
40.(9)观察该用户用电数据时间曲线,比较用电变化,判断用电变化量是否大于设定阈值,如果大于阈值则认为是异常数据;否则认为是正常数据。
41.为了便于大规模数据的并行化处理,本发明的模型在使用测试前,需要对模型进行训练,采用导师驱动过程对模型进行训练。
42.arrn模型训练时,采用的训练模型结构如附图2(图中,x
(t-1)
表示模型在t-1时刻的输入,h
(t-1)
表示模型在t-1时刻隐藏层的状态,o
(t-1)
表示模型在t-1时刻的输出,y
(t-1)
表示模型在t-1时刻训练集输入对应的实际输出,l
(t-1)
表示模型在t-1时刻模型输出o
(t-1)
与真实输出y
(t-1)之间
的差值)所示,该模型的特殊之处在于将当前时刻训练集中正确的输出值(或者期望值)作为下一时刻的输入,而非如传统循环神经网络中那样将当前时刻隐藏层状态值作为下一时刻的输入。
43.模型的输入层单元个数为:30,隐藏层神经元个数分别为:10,输出层神经元个数为:3。训练时的误差为:0.001,参数更新时的学习速率为:0.01,参数更新方法采用基于随机梯度下降法。
44.arnn-km模型分为arnn模型和k-means模型两个部分。arnn模型为循环神经网络,为导师驱动模型,该模型将输出层的值进行反馈,输出反馈到模型,从而产生循环连接。而非隐藏层的值,从而消除了相邻时间点隐藏层之间的连接。不仅减少了中间状态值的存储,还实现了任何基于模型输出和训练目标值之间的解耦,从而在模型训练时可以进行并行化处理。
45.如图2所示,模型训练时,导师驱动过程在时刻t接收真实值y
(t-1)
作为输入。条件最大似然准则为:
46.log p(y
(t-1)
,y
(t)
|x
(t-1)
,x
(t)
)
47.=log p(y
(t)
|y
(t-1)
,x
(t-1)
,x
(t)
) log p(y
(t-1)
|x
(t-1)
,x
(t)
)
ꢀꢀꢀ
(1)
48.如图3所示,模型测试时,由于真正的输出未知,需要用模型的输出来近似真正的输出。
49.为了对本发明技术方案进行详细分析,以某典型地区一年的数据为例进行分析,原始数据包括:10条馈线及所连接配电变压器关系信息(包括公变和转变),配电变压器及所连接用电用户关系信息,用户2019年全年365天的用电数据。
50.由于原始数据量巨大,为了研究方便,本实施例取500个用户的一年数据进行分析,研究数据如表1所示。
51.表1
[0052][0053]
其详细实现步骤如下:
[0054]
s1、初始化模型参数,包括隐藏单元个数、批处理大小、迭代次数等;
[0055]
s2、更新输入序列数据,包括馈线与变电站关系信息,变电站与用户关系信息,用户用电信息;将输入序列数据分成n个片段,patch_k,k=1,2,

n,确定每个片段的长度和起始点;
[0056]
s3、将输入序列片段patch_k输入到arnn-km模型中,进行并行化处理,从而实现特征值提取和降维;
[0057]
s4、利用concat层对n个patch输出进行拼接;
[0058]
s5、利用k-means方法得到聚类分析结果;
[0059]
模型结果随着特征选取的不同而发生变化,本实施例依据arnn模型自动提取的三个不同特征进行分析。包括:特征a:用户类型,特征b:用户所在区域,特征c:用户的用电时段。
[0060]
(1)根据用户类型特征;
[0061]
采用arnn-km模型,当根据用户的用电特点(特征a)进行分析时,得到结果,用户依据用电特点可以大致分为4个类别:重工业用户的用电,大型商场及办公楼的用电,小型服务业的用电,普通居民的用电。
[0062]
(2)根据用户区域特征;
[0063]
当根据用户的用电特点(特征b)进行分析时,得到分析结果,用户依据用电特点可以大致分为5个类别:沿南d768线区域的用户用电情况,欧梓d619线区域,刘黄d211线区域的用户,黄辛d754线区域,用户位于其他区域。
[0064]
(3)根据用户用电时段特征分析;
[0065]
当根据用户的用电特点(特征c)进行时,得到结果,用户依据用电特点可以大致分为4个类别:用户用电主要集中在早晨6:01-9:00时段,用户用电主要集中在白天9:01-15:00时段,用户用电主要集中在晚上15:01-22:00时段,用户用电主要集中在夜间22:01-6:00时段。
[0066]
s6、重复步骤s2-s5,更新分析结果;
[0067]
s7、将更新结果与以往结果进行比较,如果新得到的结果未发生变化则认为数据正常;否则进入步骤s8进一步判断;
[0068]
采用arnn-km模型进行分析2019年全年数据时,发现2019年4月26日某用户在特征a下的结果由原来的服务业用户变为大型商场及办公楼用电变为普通居民用电。
[0069]
s8、观察该用户用电数据时间曲线,判断曲线的变化是否大于阈值,如果大于阈值则认为是异常数据;否则认为是正常数据。
[0070]
如图4所示,观察该用户用电数据曲线发现,在该日发生较大波动,变化量量为824%,远远大于设定的变化阈值(设定变化阈值为65%),因此认为该数据为异常数据。
[0071]
经核查发现错误原因该用户的数据由原来的186kw*h误改为18.6kw*h,如图5所示。
[0072]
为了说明本发明所述模型的优势,利用上述同数据集采用不同的算法(传统的k-means算法和不同lstm算法以及本发明arnn-km算法)进行分析,并从运行时间和分析效果两个方面进行对比。
[0073]
为了评估效果,从簇内的聚集程度和簇间的离散程度两个方面进行综合考虑,采用传统的轮廓系数calinski-harabase index进行度量。calinski-harabase index分数值(简称为ch值),该值以s大小进行表征,计算公式如式2所示:
[0074][0075]
式中,m表示训练样本数,k为类别数;bk为类别间的协方差矩阵;mk为类别内部数据的协方差矩阵;tr为矩阵的迹。
[0076]
分析表达式发现s
(k)
越大代表着类自身越紧密,类与类之间越分散,效果更优。对比结果如表2所示。
[0077]
表2
[0078][0079]
对比三种模型的运算结果发现,k-means模型的运算速度最快,这是因为k-means模型本身算法简单,其次是本发明所提出的arnn-km模型,其速度快于传统lstm的主要原因是进行了并行化运算。在s值比较上,arnn-km模型的ch值明显高于k-means模型和lstm模型。从而验证了本发明方法的优势。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献