CN115098563A - 基于gcn和注意力vae的时序异常检测方法及*** - Google Patents

基于gcn和注意力vae的时序异常检测方法及*** Download PDF

Info

Publication number
CN115098563A
CN115098563A CN202210824024.3A CN202210824024A CN115098563A CN 115098563 A CN115098563 A CN 115098563A CN 202210824024 A CN202210824024 A CN 202210824024A CN 115098563 A CN115098563 A CN 115098563A
Authority
CN
China
Prior art keywords
variables
variable
data
module
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210824024.3A
Other languages
English (en)
Other versions
CN115098563B (zh
Inventor
于彦伟
史云菲
董军宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ocean University of China
Original Assignee
Ocean University of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ocean University of China filed Critical Ocean University of China
Priority to CN202210824024.3A priority Critical patent/CN115098563B/zh
Publication of CN115098563A publication Critical patent/CN115098563A/zh
Application granted granted Critical
Publication of CN115098563B publication Critical patent/CN115098563B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2474Sequence data queries, e.g. querying versioned data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Fuzzy Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Databases & Information Systems (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种基于GCN和注意力VAE的时序异常检测方法及***,属于深度学习与数据处理技术领域。本发明同时考虑了变量之间的联系以及不同变量的不同重要性两方面的影响因素;以变量为节点,用皮尔森相关系数衡量两个变量之间的关系,并在相似的变量之间建边,从而得到变量的关系图;然后利用GCN通过聚合邻居节点的信息来获得本节点的表征向量的特点,获取变量之间的相互关联;还设计了基于注意力VAE的重构模块,提出了基于LSTM的注意力机制;再在此基础上对表征向量进行重构,并根据重构的误差判断异常。本发明提高了检测的准确性;为不同的变量赋予不同的权重,减少了无关变量的干扰。

Description

基于GCN和注意力VAE的时序异常检测方法及***
技术领域
本发明具体涉及一种基于时序GCN和注意力VAE的多元时间序列异常检测的方法及***,属于深度学习和数据处理技术领域。
背景技术
异常检测的目的是要找到同一数据集中明显不同于大多数数据的实例,我们之所以关注这些“不正常”的数据,是因为在现实生活中正是“不正常”数据的存在,才会带来问题与损失。而我们要做的就是及时的发现问题,把损失降到最低。异常检测有非常广泛的应用领域,比如在交通领域中检测违反交通规则的车辆;在医疗领域中检测视网膜的损伤程度;在物联网领域中检测大数据中的异常数据。而我们主要研究是在数据挖掘领域中备受关注的多元时间序列(Multivariate Time Series)的异常检测问题。多元时间序列大多数是由工业设备(如服务器、航天器、机器人辅助***)中的传感器产生,在制造业和IT 行业中,多元时间序列异常检测被广泛用于监测设备的状态。
在异常检测领域中,传统的异常检测方法包括基于统计方法的、基于距离的、基于密度的等。但是这些方法无法捕获数据在时间上的依赖性,因此并不适用于时间序列的异常检测。而且随着大数据时代的到来,传统的方法也无法在有效的时间内处理庞大的数据。深度学习的发展为时间序列的异常检测带来了新的可能性,比如将RNN嵌入到VAE框架中,用RNN捕获时间上的依赖性,用VAE对数据进行重构,根据重构的结果判断异常;或者将对抗训练的思想与AE相结合,进一步拉大正常数据与异常数据之间的差距。这些方法在多元时间序列的异常检测中取得了显著的成果,但是仍然有提升的空间。
通过对现有的多元时间序列异常检测方法进行分析总结,已有的方法在以下几个方面存在不足:1)没有考虑多元时间序列变量之间的联系。多元时间序列并不是由单元时间序列堆叠而成的,多元时间序列的变量之间是存在联系的,就比如网速与下载速度。2)没有考虑不同变量的重要性是不同的。尽管在多元时间序列中有几十个甚至上百个变量,但是这些变量的作用地位是不同的。有些变量非常的重要,但是也有些变量是无关紧要的。
发明内容
为解决高效检测多元时间序列中的异常问题,本发明的目的是提出一种基于GCN和注意力VAE的时序异常检测方法及***。
为实现上述发明目的,本发明的技术方案如下:
一种基于GCN和注意力VAE的时序异常检测方法,该检测方法包括如下步骤:
S1:获取一段时间内的待测数据,将时间序列划分成时间窗口,定义了在t时刻,长度为
Figure 2267DEST_PATH_IMAGE001
的时间窗口
Figure 622604DEST_PATH_IMAGE002
;多元时间序列定义为
Figure 24242DEST_PATH_IMAGE003
,其中nX的长度,每个实例
Figure 312004DEST_PATH_IMAGE004
是在时间
Figure 511036DEST_PATH_IMAGE005
m维向量,其中m是变量的个数;对于时间序列来说,历史数据会对当前的数据产生影响。因此,定义了在t时刻,长度为
Figure 353090DEST_PATH_IMAGE001
的时间窗口
Figure 561348DEST_PATH_IMAGE002
,用时间窗口
Figure 438037DEST_PATH_IMAGE006
来计算t时刻的异常得分,而不是仅使用
Figure 73549DEST_PATH_IMAGE007
S2:为时间窗口
Figure 402899DEST_PATH_IMAGE006
构建特征图
Figure 406060DEST_PATH_IMAGE008
:用k-NN为每个时间窗口
Figure 809359DEST_PATH_IMAGE006
构建特征图
Figure 865040DEST_PATH_IMAGE008
S3:为了获得变量之间的潜在联系,使用图卷积神经网络GCN(GraphConvolutional Network);使用GCN对每个特征图进行卷积运算,以聚合相邻变量的信息,获取变量之间的潜在联系,GCN 的最终输出是每个时间窗口中所有变量随时间变化的表征向量,表示为
Figure 166839DEST_PATH_IMAGE009
S4:为表征向量赋予权重,以体现不同变量的作用。为了捕获多元时间序列的时间依赖性,获得时间窗口中不同变量的重要性,提出一种基于 LSTM 的注意力机制来实现这一目标。把时间窗口内变量的表征向量作为LSTM的输入,并通过线性层和softmax层获得当前时间窗口中变量的权重;然后,使用获得权重的表征向量作为 LSTM 的输入,以更新LSTM,获得下一时间窗口中表征变量的权重;
S5:把获得权重后的表征向量输入到VAE中进行重构;VAE通过降维把高维的数据
Figure 231747DEST_PATH_IMAGE010
压缩成低维的隐藏层表征
Figure 568182DEST_PATH_IMAGE011
,然后通过重构获得
Figure 591502DEST_PATH_IMAGE012
S6:所述GCN模型与LSTM和VAE构成了MUTANT 模型,利用训练数据集对MUTANT 模型进行训练;且设计了一个联合学习的目标函数实现了端到端的训练;
S7:基于训练好的MUTANT模型检测异常:检测t时刻的数据是否是异常,则需要把
Figure 646176DEST_PATH_IMAGE006
输入到训练好的MUTANT模型中,并获得一个重构结果;然后根据重构的误差,即异常分数来判断是否是异常;这里定义异常分数为
Figure 249196DEST_PATH_IMAGE013
Figure 437207DEST_PATH_IMAGE014
;如果
Figure 303532DEST_PATH_IMAGE013
高于阈值,那么
Figure 579924DEST_PATH_IMAGE007
就被认为是异常。
进一步的,所述S2中,特征图
Figure 986634DEST_PATH_IMAGE015
以所有的变量为节点,让每个变量与它最相似的k个变量建边;具体而言,把当前时间窗口中每个变量
Figure 297661DEST_PATH_IMAGE016
的值视为其特征,例如
Figure 131625DEST_PATH_IMAGE017
;然后计算特征空间中m个变量之间的相关性矩阵
Figure 895313DEST_PATH_IMAGE018
,使用Pearson 相关系数(公式(1))来计算这个矩阵;
Figure 840135DEST_PATH_IMAGE019
(1)
其中,
Figure 8598DEST_PATH_IMAGE020
Figure 92092DEST_PATH_IMAGE021
Figure 264447DEST_PATH_IMAGE022
的协方差,
Figure 12960DEST_PATH_IMAGE023
Figure 33000DEST_PATH_IMAGE024
的方差,
Figure 208766DEST_PATH_IMAGE025
Figure 947046DEST_PATH_IMAGE026
的方差。使用邻接矩阵
Figure 233671DEST_PATH_IMAGE027
来表示图
Figure 370867DEST_PATH_IMAGE028
,若节点
Figure 451955DEST_PATH_IMAGE029
Figure 677532DEST_PATH_IMAGE030
之间存在边,那么
Figure 502268DEST_PATH_IMAGE031
进一步的,所述S3中,在多层卷积神经网络按照公式(2)进行传播:
Figure 293638DEST_PATH_IMAGE032
(2)
其中,
Figure 545627DEST_PATH_IMAGE033
是第l层可训练的权重矩阵,
Figure 992920DEST_PATH_IMAGE034
Figure 621348DEST_PATH_IMAGE035
Figure 750714DEST_PATH_IMAGE036
Figure 111288DEST_PATH_IMAGE037
是时间窗口在第l层的输出,d是表征的维度。
进一步的,所述S4中,具体来说,首先把LSTM的隐藏层的变量
Figure 373773DEST_PATH_IMAGE038
Figure 477996DEST_PATH_IMAGE039
Figure 696487DEST_PATH_IMAGE040
拼接起来,然后它们输入到线性层中获得
Figure 306591DEST_PATH_IMAGE041
,最后经过softmax层的归一化处理得到最终的权重
Figure 712165DEST_PATH_IMAGE042
。这一过程的公式表示是:
Figure 433127DEST_PATH_IMAGE043
(3)
Figure 506126DEST_PATH_IMAGE044
(4)
Figure 80939DEST_PATH_IMAGE045
(5)
其中,
Figure 973809DEST_PATH_IMAGE046
是第i个变量在时间窗口
Figure 764041DEST_PATH_IMAGE006
上的表征向量,
Figure 425967DEST_PATH_IMAGE047
是变量表征乘以相应权重之后的结果。然后,
Figure 377873DEST_PATH_IMAGE048
Figure 23618DEST_PATH_IMAGE049
Figure 351963DEST_PATH_IMAGE050
将会输入到LSTM中,以获得
Figure 806078DEST_PATH_IMAGE051
Figure 178153DEST_PATH_IMAGE052
,为获得下一个时间窗口内的权重做准备。
进一步的,所述S5中,重构的损失函数是:
Figure 64856DEST_PATH_IMAGE053
(6)
其中,θФ分别是推理网络与生成网络的参数;第一项通过从
Figure 915001DEST_PATH_IMAGE054
抽样,最大化
Figure 567830DEST_PATH_IMAGE055
,从而实现对
Figure 110807DEST_PATH_IMAGE050
的重构;第二项通过最小化潜在变量的近似后验值和先验值之间的KL(Kullback-Leibler)散度来正则化潜在变量
Figure 278614DEST_PATH_IMAGE056
。值得注意的是,通过最小化
Figure 932449DEST_PATH_IMAGE057
Figure 174206DEST_PATH_IMAGE058
的差距来训练VAE模型,而不是最小化
Figure 153663DEST_PATH_IMAGE050
Figure 743520DEST_PATH_IMAGE058
的误差;这是因为不仅需要训练重构网络,还希望此损失函数能指导基于LSTM的注意力机制中的权重学习,在此基础上达到减少重构误差的目的。
进一步的,所述S6中,对于MUTANT的学习,采用负采样的方法,使用以下二进制交叉熵损失函数来优化时序MUTANT模型:
Figure 873150DEST_PATH_IMAGE059
(7)
其中,
Figure 828468DEST_PATH_IMAGE060
是第i个变量在时间窗口
Figure 385351DEST_PATH_IMAGE006
上的表征变量,T表示矩阵转置,
Figure 714701DEST_PATH_IMAGE061
是任意的向量相似性度量函数(比如内积)。Ω是从
Figure 726651DEST_PATH_IMAGE062
中随机选取的正样本集合,
Figure 536475DEST_PATH_IMAGE063
是从
Figure 857735DEST_PATH_IMAGE062
中随机选取的负样本集合;也就是说,如果
Figure 150745DEST_PATH_IMAGE064
,那么
Figure 215653DEST_PATH_IMAGE065
;如果
Figure 286509DEST_PATH_IMAGE066
,那么
Figure 778670DEST_PATH_IMAGE067
然后,用以下损失函数来训练重构模块:
Figure 754716DEST_PATH_IMAGE068
(8)
其中,
Figure 170785DEST_PATH_IMAGE069
表示
Figure 548677DEST_PATH_IMAGE057
Figure 24788DEST_PATH_IMAGE058
的交叉熵,J
Figure 488131DEST_PATH_IMAGE056
的维度。
最后,通过结合这两部分的损失函数来端到端的训练模型,并用超参数
Figure 704961DEST_PATH_IMAGE070
来平衡表征学习与重构模型的重要性,模型的最终损失函数是:
Figure 937359DEST_PATH_IMAGE071
(9)
使用准确率(precision)、召回率(recall)和F1分数(F1-socre)来衡量检测的效果,并通过调整参数,使得F1分数达到最高。
基于上述多元时序异常检测方法的检测***,包括:数据预处理模块、时间窗口划分模块、构建变量关系图模块、获取变量表征模块、为变量赋予权重模块、数据重构模块、获得异常得分模块以及判断异常模块组成。
进一步的,所述数据预处理模块:收集原始的数据集,由多个变量随时间生成的数据组成,并对原始的时间序列进行归一化处理;
所述时间窗口划分模块:将把时间序列划分成长度为
Figure 849952DEST_PATH_IMAGE001
的时间窗口
Figure 535011DEST_PATH_IMAGE006
所述构建变量关系图模块:根据变量之间的相似性程度,获得变量之间的关系图;
所述获取变量表征模块:利用GCN在获取节点表征时会考虑邻居节点信息的特点,获得包含变量关系的变量表征;输入时间变量之间的关系图,输出时每个变量的表征向量;
所述为变量赋予权重模块:首先把t时刻的变量表征以及t-1时刻LSTM的隐藏层变量输入到线性层中,然后经过softmax层的归一化处理获得不同的权重,再把权重与相应的变量表征乘起来,就得到了获得了权重的变量,并输入到LSTM中,为下一时刻学习权重做准备;
所述数据重构模块:利用VAE网络对获得权重之后的变量数据进行降维、重构;
所述获得异常得分模块:训练好模型后,把VAE重构的数据与原始的表征数据的误差作为数据
Figure 558462DEST_PATH_IMAGE007
的异常得分;
所述判断异常模块:把每个数据的异常得分与异常阈值进行比较,如果大于阈值,就被认为是异常数据,否则就是正常数据。
本发明的优点和技术效果:
本发明在进行多元时间序列异常检测时同时考虑了变量之间的联系以及不同变量的不同重要性两方面的影响因素。本发明以变量为节点,用皮尔森相关系数衡量两个变量之间的关系,并在相似的变量之间建边,从而得到变量的关系图;然后利用GCN通过聚合邻居节点的信息来获得本节点的表征向量的特点,获取变量之间的相互关联;还设计了基于注意力VAE的重构模块,提出了基于LSTM的注意力机制,在获得变量在时间上的联系的同时,为不同的变量赋予不同的权重,从而体现了不同变量的重要性;再在此基础上对表征向量进行重构,并根据重构的误差判断异常。
本发明相比于传统的异常检测方法,能够获得数据在时间上依赖关系;与大多数的深度学习的方法相比,获得了变量之间的联系,进一步提高了检测的准确性;为不同的变量赋予不同的权重,减少了无关变量的干扰。
本发明综合利用了变量之间的关系以及变量的重要性对时间序列进行更完善的建模,从而提高检测的准确性,为多元时间序列的异常检测问题提供方法与技术上的支持。
附图说明
图1是本发明的整体流程图。
图2是本发明的***框架图。
图3是本发明中获得的变量之间的关系图。
图4是本发明基于LSTM的注意力机制图。
图5是实施例的实验结果图。
具体实施方式
下面将结合附图1-5及与实施例对本发明做进一步说明。
实施例1:
一种基于GCN和注意力VAE的多元时序异常检测方法,如图1所示,该检测方法包括如下步骤:
S1:将多元时间序列X的原始数据进行归一化处理等预处理,然后划分成时间窗口
Figure 645366DEST_PATH_IMAGE006
,用
Figure 728860DEST_PATH_IMAGE006
中的信息来衡量
Figure 901215DEST_PATH_IMAGE007
是否为异常;具体为获取一段时间内的待测数据,将时间序列划分成时间窗口,定义了在t时刻,长度为
Figure 465708DEST_PATH_IMAGE001
的时间窗口
Figure 672698DEST_PATH_IMAGE002
;多元时间序列定义为
Figure 927093DEST_PATH_IMAGE003
,其中nX的长度,每个实例
Figure 586744DEST_PATH_IMAGE072
是在时间
Figure 951998DEST_PATH_IMAGE005
m维向量,其中m是变量的个数;对于时间序列来说,历史数据会对当前的数据产生影响。因此,定义了在t时刻,长度为
Figure 747915DEST_PATH_IMAGE001
的时间窗口
Figure 845316DEST_PATH_IMAGE002
,用时间窗口
Figure 320159DEST_PATH_IMAGE006
来计算t时刻的异常得分,而不是仅使用
Figure 158278DEST_PATH_IMAGE007
S2:为时间窗口
Figure 136598DEST_PATH_IMAGE006
构建特征图
Figure 139320DEST_PATH_IMAGE008
:用k-NN为每个时间窗口
Figure 101460DEST_PATH_IMAGE006
构建特征图
Figure 480620DEST_PATH_IMAGE008
;为时间窗口
Figure 844605DEST_PATH_IMAGE006
构建特征图
Figure 814966DEST_PATH_IMAGE008
:用k-NN为每个时间窗口
Figure 264402DEST_PATH_IMAGE006
构建特征图
Figure 461901DEST_PATH_IMAGE008
S3:为了获得变量之间的潜在联系,使用图卷积神经网络GCN(GraphConvolutional Network);使用GCN对每个特征图进行卷积运算,以聚合相邻变量的信息,获取变量之间的潜在联系,GCN 的最终输出是每个时间窗口中所有变量随时间变化的表征向量,表示为
Figure 149235DEST_PATH_IMAGE009
S4:为表征向量赋予权重,以体现不同变量的作用。为了捕获多元时间序列的时间依赖性,获得时间窗口中不同变量的重要性,提出一种基于 LSTM 的注意力机制来实现这一目标。把时间窗口内变量的表征向量作为LSTM的输入,并通过线性层和softmax层获得当前时间窗口中变量的权重;然后,使用获得权重的表征向量作为 LSTM 的输入,以更新LSTM,获得下一时间窗口中表征变量的权重;
S5:把获得权重后的表征向量输入到VAE中进行重构;VAE通过降维把高维的数据
Figure 680710DEST_PATH_IMAGE010
压缩成低维的隐藏层表征
Figure 102595DEST_PATH_IMAGE011
,然后通过重构获得
Figure 338405DEST_PATH_IMAGE012
;进一步获得时间序列中的隐藏的信息;并将重构数据与原始的
Figure 896556DEST_PATH_IMAGE006
的表征向量的误差作为异常得分;
S6:所述GCN模型与LSTM和VAE构成了MUTANT 模型,利用训练数据集对MUTANT 模型进行训练;且设计了一个联合学***均F1-score的值取得最大值的时候,认为该参数被调整到最优。接着再取下一个未被调整的参数,重复上述步骤,直到所有参数都被调整为最优。
S7:基于训练好的MUTANT模型检测异常:检测t时刻的数据是否是异常,则需要把
Figure 926829DEST_PATH_IMAGE006
输入到训练好的MUTANT模型中,并获得一个重构结果;然后根据重构的误差,即异常分数来判断是否是异常;这里定义异常分数为
Figure 836010DEST_PATH_IMAGE013
Figure 406669DEST_PATH_IMAGE014
;如果
Figure 285239DEST_PATH_IMAGE013
高于阈值,那么
Figure 283151DEST_PATH_IMAGE007
就被认为是异常。
进一步的,所述S2中,特征图
Figure 882890DEST_PATH_IMAGE015
以所有的变量为节点,让每个变量与它最相似的k个变量建边;具体而言,把当前时间窗口中每个变量
Figure 991661DEST_PATH_IMAGE016
的值视为其特征,例如
Figure 993246DEST_PATH_IMAGE017
;然后计算特征空间中m个变量之间的相关性矩阵
Figure 365321DEST_PATH_IMAGE018
,使用Pearson 相关系数(公式(1))来计算这个矩阵;
Figure 514674DEST_PATH_IMAGE019
(1)
其中,
Figure 364818DEST_PATH_IMAGE020
Figure 286157DEST_PATH_IMAGE021
Figure 563554DEST_PATH_IMAGE022
的协方差,
Figure 669045DEST_PATH_IMAGE023
Figure 588459DEST_PATH_IMAGE024
的方差,
Figure 361374DEST_PATH_IMAGE025
Figure 809673DEST_PATH_IMAGE026
的方差。使用邻接矩阵
Figure 668039DEST_PATH_IMAGE027
来表示图
Figure 922302DEST_PATH_IMAGE028
,若节点
Figure 484477DEST_PATH_IMAGE029
Figure 431574DEST_PATH_IMAGE030
之间存在边,那么
Figure 714919DEST_PATH_IMAGE031
进一步的,所述S3中,在多层卷积神经网络按照公式(2)进行传播:
Figure 772873DEST_PATH_IMAGE032
(2)
其中,
Figure 192485DEST_PATH_IMAGE033
是第l层可训练的权重矩阵,
Figure 513744DEST_PATH_IMAGE034
Figure 346702DEST_PATH_IMAGE035
Figure 880452DEST_PATH_IMAGE036
Figure 208097DEST_PATH_IMAGE037
是时间窗口在第l层的输出,d是表征的维度。
进一步的,所述S4中,具体来说,首先把LSTM的隐藏层的变量
Figure 496996DEST_PATH_IMAGE038
Figure 489354DEST_PATH_IMAGE039
Figure 92374DEST_PATH_IMAGE040
拼接起来,然后它们输入到线性层中获得
Figure 548894DEST_PATH_IMAGE041
,最后经过softmax层的归一化处理得到最终的权重
Figure 743115DEST_PATH_IMAGE042
。这一过程的公式表示是:
Figure 488348DEST_PATH_IMAGE043
(3)
Figure 426217DEST_PATH_IMAGE044
(4)
Figure 734314DEST_PATH_IMAGE045
(5)
其中,
Figure 302699DEST_PATH_IMAGE046
是第i个变量在时间窗口
Figure 66387DEST_PATH_IMAGE006
上的表征向量,
Figure 11209DEST_PATH_IMAGE047
是变量表征乘以相应权重之后的结果。然后,
Figure 176742DEST_PATH_IMAGE048
Figure 181607DEST_PATH_IMAGE049
Figure 432591DEST_PATH_IMAGE050
将会输入到LSTM中,以获得
Figure 915525DEST_PATH_IMAGE051
Figure 122516DEST_PATH_IMAGE052
,为获得下一个时间窗口内的权重做准备。
进一步的,所述S5中,重构的损失函数是:
Figure 786365DEST_PATH_IMAGE053
(6)
其中,θФ分别是推理网络与生成网络的参数;第一项通过从
Figure 773912DEST_PATH_IMAGE054
抽样,最大化
Figure 545691DEST_PATH_IMAGE055
,从而实现对
Figure 935084DEST_PATH_IMAGE050
的重构;第二项通过最小化潜在变量的近似后验值和先验值之间的KL(Kullback-Leibler)散度来正则化潜在变量
Figure 32484DEST_PATH_IMAGE056
。值得注意的是,通过最小化
Figure 507327DEST_PATH_IMAGE057
Figure 879534DEST_PATH_IMAGE058
的差距来训练VAE模型,而不是最小化
Figure 123434DEST_PATH_IMAGE050
Figure 123226DEST_PATH_IMAGE058
的误差;这是因为不仅需要训练重构网络,还希望此损失函数能指导基于LSTM的注意力机制中的权重学习,在此基础上达到减少重构误差的目的。
进一步的,所述S6中,对于MUTANT的学习,采用负采样的方法,使用以下二进制交叉熵损失函数来优化时序MUTANT模型:
Figure 85366DEST_PATH_IMAGE073
(7)
其中,
Figure 464526DEST_PATH_IMAGE060
是第i个变量在时间窗口
Figure 562932DEST_PATH_IMAGE006
上的表征变量,T表示矩阵转置,
Figure 2134DEST_PATH_IMAGE061
是任意的向量相似性度量函数(比如内积)。Ω是从
Figure 123674DEST_PATH_IMAGE062
中随机选取的正样本集合,
Figure 368842DEST_PATH_IMAGE063
是从
Figure 259438DEST_PATH_IMAGE062
中随机选取的负样本集合;也就是说,如果
Figure 853230DEST_PATH_IMAGE064
,那么
Figure 289764DEST_PATH_IMAGE065
;如果
Figure 525573DEST_PATH_IMAGE066
,那么
Figure 146041DEST_PATH_IMAGE067
然后,用以下损失函数来训练重构模块:
Figure 910735DEST_PATH_IMAGE074
(8)
其中,
Figure 819916DEST_PATH_IMAGE069
表示
Figure 362DEST_PATH_IMAGE057
Figure 193446DEST_PATH_IMAGE058
的交叉熵,J
Figure 145352DEST_PATH_IMAGE056
的维度。
最后,通过结合这两部分的损失函数来端到端的训练模型,并用超参数
Figure 525518DEST_PATH_IMAGE070
来平衡表征学习与重构模型的重要性,模型的最终损失函数是:
Figure 585353DEST_PATH_IMAGE071
(9)
使用准确率(precision)、召回率(recall)和F1分数(F1-socre)来衡量检测的效果,并通过调整参数,使得F1分数达到最高。
实施例2:
基于实施例1多元时序异常检测方法的检测***,包括:
数据预处理模块、时间窗口划分模块、构建变量关系图模块、获取变量表征模块、为变量赋予权重模块、数据重构模块、获得异常得分模块以及判断异常模块组成,如图2所示,以下对各部分进行详细说明:
所述数据预处理模块:收集原始的数据集,由多个变量随时间生成的数据组成,并对原始的时间序列进行归一化处理;
所述时间窗口划分模块:将把时间序列划分成长度为
Figure 429681DEST_PATH_IMAGE075
的时间窗口
Figure 552489DEST_PATH_IMAGE076
所述构建变量关系图模块:根据变量之间的相似性程度,获得变量之间的关系图,如图3所示;
所述获取变量表征模块:利用GCN在获取节点表征时会考虑邻居节点信息的特点,获得包含变量关系的变量表征;输入时间变量之间的关系图,输出时每个变量的表征向量;
所述为变量赋予权重模块:如图4所示,首先把t时刻的变量表征以及t-1时刻LSTM的隐藏层变量输入到线性层中,然后经过softmax层的归一化处理获得不同的权重,再把权重与相应的变量表征乘起来,就得到了获得了权重的变量,并输入到LSTM中,为下一时刻学习权重做准备;
所述数据重构模块:利用VAE网络对获得权重之后的变量数据进行降维、重构;
所述获得异常得分模块:训练好模型后,把VAE重构的数据与原始的表征数据的误差作为数据
Figure 419951DEST_PATH_IMAGE077
的异常得分;
所述判断异常模块:把每个数据的异常得分与异常阈值进行比较,如果大于阈值,就被认为是异常数据,否则就是正常数据。
实施例3:基于上述模型和方法进行实际实验验证。
为了验证本发明提出模型的检测异常的准确性,在四个工业数据集(MSL、SMAP、SWaT和WADI)上进行了实验,为了综合考虑准确率和召回率的两方面的效果,选取了F1分数(F1-score)作为评价指标,并与六个已有的模型进行了比较。
最终的实验结果如图5所示,其中MUTANT是本发明所提供的方法。可以看到在四个真实的数据集上,本发明提供的检测方法的F1-score都要高于其他的方法,这也就说明,本发明构建的模型优于其他现有模型,数据异常检测判断的准确度较高。
以上计划方案,仅为本发明中的实施方法,但本发明的保护范围不限于此,所有熟悉该技术的人员在本发明所披露的技术范围以内,可理解想到的替换或者变换,都应该包含在本发明的保护范围之内,所以,本发明的保护范围应以权利要求书的保护范围为准。

Claims (8)

1.一种基于GCN和注意力VAE的多元时序异常检测方法,其特征在于,该检测方法包括如下步骤:
S1:获取一段时间内的待测数据,将时间序列划分成时间窗口,定义了在t时刻,长度为
Figure 756710DEST_PATH_IMAGE001
的时间窗口
Figure 942972DEST_PATH_IMAGE002
;多元时间序列定义为
Figure 430191DEST_PATH_IMAGE003
,其中nX的长度,每个实例
Figure 369197DEST_PATH_IMAGE004
是在时间
Figure 348917DEST_PATH_IMAGE005
m维向量,其中m是变量的个数;
S2:为时间窗口
Figure 6163DEST_PATH_IMAGE006
构建特征图
Figure 642548DEST_PATH_IMAGE007
:用k-NN为每个时间窗口
Figure 452372DEST_PATH_IMAGE006
构建特征图
Figure 101528DEST_PATH_IMAGE007
S3:使用GCN对每个特征图进行卷积运算,以聚合相邻变量的信息,获取变量之间的潜在联系,GCN的最终输出是每个时间窗口中所有变量随时间变化的表征向量,表示为
Figure 13115DEST_PATH_IMAGE008
S4:把时间窗口内变量的表征向量作为LSTM的输入,并通过线性层和softmax层获得当前时间窗口中变量的权重;然后,使用获得权重的表征向量作为 LSTM 的输入,以更新LSTM,获得下一时间窗口中表征变量的权重;
S5:把获得权重后的表征向量输入到VAE中进行重构;VAE通过降维把高维的数据
Figure 405919DEST_PATH_IMAGE009
压缩成低维的隐藏层表征
Figure 83631DEST_PATH_IMAGE010
,然后通过重构获得
Figure 920000DEST_PATH_IMAGE011
S6:所述GCN模型与LSTM和VAE构成了MUTANT模型,利用训练数据集对MUTANT 模型进行训练;且设计了一个联合学习的目标函数实现了端到端的训练;
S7:基于训练好的MUTANT模型检测异常:检测t时刻的数据是否是异常,则需要把
Figure 286260DEST_PATH_IMAGE006
输入到训练好的MUTANT模型中,并获得一个重构结果;然后根据重构的误差,即异常分数来判断是否是异常;这里定义异常分数为
Figure 206723DEST_PATH_IMAGE012
Figure 663243DEST_PATH_IMAGE013
;如果
Figure 388623DEST_PATH_IMAGE012
高于阈值,那么
Figure 258490DEST_PATH_IMAGE014
就被认为是异常。
2.如权利要求1所述的多元时序异常检测方法,其特征在于,所述S2中,特征图
Figure 773523DEST_PATH_IMAGE015
以所有的变量为节点,让每个变量与它最相似的k个变量建边;具体而言,把当前时间窗口中每个变量
Figure 864975DEST_PATH_IMAGE016
的值视为其特征,如
Figure 847407DEST_PATH_IMAGE017
;然后计算特征空间中m个变量之间的相关性矩阵
Figure 437526DEST_PATH_IMAGE018
,使用Pearson 相关系数,公式(1)来计算这个矩阵;
Figure 444665DEST_PATH_IMAGE019
(1)
其中,
Figure 954406DEST_PATH_IMAGE020
Figure 818326DEST_PATH_IMAGE021
Figure 193944DEST_PATH_IMAGE022
的协方差,
Figure 774748DEST_PATH_IMAGE023
Figure 185000DEST_PATH_IMAGE024
的方差,
Figure 954242DEST_PATH_IMAGE025
Figure 302309DEST_PATH_IMAGE026
的方差;使用邻接矩阵
Figure 198721DEST_PATH_IMAGE027
来表示图
Figure 712748DEST_PATH_IMAGE028
,若节点
Figure 200361DEST_PATH_IMAGE029
Figure 32794DEST_PATH_IMAGE030
之间存在边,那么
Figure 467318DEST_PATH_IMAGE031
3.如权利要求1所述的多元时序异常检测方法,其特征在于,所述S3中,按照公式(2)进行传播:
Figure 835851DEST_PATH_IMAGE032
(2)
其中,
Figure 228786DEST_PATH_IMAGE033
是第l层可训练的权重矩阵,
Figure 82604DEST_PATH_IMAGE034
Figure 586398DEST_PATH_IMAGE035
Figure 809437DEST_PATH_IMAGE036
Figure 638853DEST_PATH_IMAGE037
是时间窗口在第l层的输出,d是表征的维度。
4.如权利要求1所述的多元时序异常检测方法,其特征在于,所述S4中,首先把LSTM的隐藏层的变量
Figure 729036DEST_PATH_IMAGE038
Figure 770941DEST_PATH_IMAGE039
Figure 114067DEST_PATH_IMAGE040
拼接起来,然后输入到线性层中获得
Figure 114384DEST_PATH_IMAGE041
,最后经过softmax层的归一化处理得到最终的权重
Figure 411635DEST_PATH_IMAGE042
;这一过程的公式表示是:
Figure 522811DEST_PATH_IMAGE043
(3)
Figure 720443DEST_PATH_IMAGE044
(4)
Figure 891661DEST_PATH_IMAGE045
(5)
其中,
Figure 925476DEST_PATH_IMAGE046
是第i个变量在时间窗口
Figure 56987DEST_PATH_IMAGE006
上的表征向量,
Figure 391016DEST_PATH_IMAGE047
是变量表征乘以相应权重之后的结果;然后,
Figure 982404DEST_PATH_IMAGE048
Figure 503515DEST_PATH_IMAGE049
Figure 441646DEST_PATH_IMAGE050
将会输入到LSTM中,以获得
Figure 630182DEST_PATH_IMAGE051
Figure 126891DEST_PATH_IMAGE052
,为获得下一个时间窗口内的权重做准备。
5.如权利要求1所述的多元时序异常检测方法,其特征在于, 所述S5中,重构的损失函数是:
Figure DEST_PATH_IMAGE053
(6)
其中,θФ分别是推理网络与生成网络的参数;第一项通过从
Figure 338561DEST_PATH_IMAGE054
抽样,最大化
Figure 817734DEST_PATH_IMAGE055
,从而实现对
Figure 860776DEST_PATH_IMAGE050
的重构;第二项通过最小化潜在变量的近似后验值和先验值之间的KL散度来正则化潜在变量
Figure 262807DEST_PATH_IMAGE056
6.如权利要求1所述的多元时序异常检测方法,其特征在于,所述S6中,对于MUTANT的学习,采用负采样的方法,使用以下二进制交叉熵损失函数来优化时序MUTANT模型:
Figure 758511DEST_PATH_IMAGE057
(7)
其中,
Figure 304024DEST_PATH_IMAGE058
是第i个变量在时间窗口
Figure 935993DEST_PATH_IMAGE006
上的表征变量,T表示矩阵转置,
Figure 40084DEST_PATH_IMAGE059
是任意的向量相似性度量函数(比如内积);Ω是从
Figure 23084DEST_PATH_IMAGE060
中随机选取的正样本集合,
Figure 369358DEST_PATH_IMAGE061
是从
Figure 855834DEST_PATH_IMAGE060
中随机选取的负样本集合;也就是说,如果
Figure 396406DEST_PATH_IMAGE062
,那么
Figure 601122DEST_PATH_IMAGE063
;如果
Figure 737706DEST_PATH_IMAGE064
,那么
Figure 95000DEST_PATH_IMAGE065
;然后,用以下损失函数来训练重构模块:
Figure 291626DEST_PATH_IMAGE066
(8)
其中,
Figure 967327DEST_PATH_IMAGE067
表示
Figure 173180DEST_PATH_IMAGE068
Figure 376192DEST_PATH_IMAGE069
的交叉熵,J
Figure 478140DEST_PATH_IMAGE056
的维度;
最后,通过结合这两部分的损失函数来端到端的训练模型,并用超参数
Figure 906716DEST_PATH_IMAGE070
来平衡表征学习与重构模型的重要性,模型的最终损失函数是:
Figure 385102DEST_PATH_IMAGE071
(9)。
7.基于权利要求1所述多元时序异常检测方法的检测***,其特征在于,该检测***包括:数据预处理模块、时间窗口划分模块、构建变量关系图模块、获取变量表征模块、为变量赋予权重模块、数据重构模块、获得异常得分模块以及判断异常模块。
8.如权利要求7所述的检测***,其特征在于,所述数据预处理模块:收集原始的数据集,由多个变量随时间生成的数据组成,并对原始的时间序列进行归一化处理;
所述时间窗口划分模块:将把时间序列划分成长度为
Figure 451410DEST_PATH_IMAGE001
的时间窗口
Figure 989838DEST_PATH_IMAGE006
所述构建变量关系图模块:根据变量之间的相似性程度,获得变量之间的关系图;
所述获取变量表征模块:利用GCN在获取节点表征时会考虑邻居节点信息的特点,获得包含变量关系的变量表征;输入时间变量之间的关系图,输出时每个变量的表征向量;
所述为变量赋予权重模块:首先把t时刻的变量表征以及t-1时刻LSTM的隐藏层变量输入到线性层中,然后经过softmax层的归一化处理获得不同的权重,再把权重与相应的变量表征乘起来,就得到了获得了权重的变量,并输入到LSTM中,为下一时刻学习权重做准备;
所述数据重构模块:利用VAE网络对获得权重之后的变量数据进行降维、重构;
所述获得异常得分模块:训练好模型后,把VAE重构的数据与原始的表征数据的误差作为数据
Figure 640131DEST_PATH_IMAGE014
的异常得分;
所述判断异常模块:把每个数据的异常得分与异常阈值进行比较,如果大于阈值,就被认为是异常数据,否则就是正常数据。
CN202210824024.3A 2022-07-14 2022-07-14 基于gcn和注意力vae的时序异常检测方法及*** Active CN115098563B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210824024.3A CN115098563B (zh) 2022-07-14 2022-07-14 基于gcn和注意力vae的时序异常检测方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210824024.3A CN115098563B (zh) 2022-07-14 2022-07-14 基于gcn和注意力vae的时序异常检测方法及***

Publications (2)

Publication Number Publication Date
CN115098563A true CN115098563A (zh) 2022-09-23
CN115098563B CN115098563B (zh) 2022-11-11

Family

ID=83297415

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210824024.3A Active CN115098563B (zh) 2022-07-14 2022-07-14 基于gcn和注意力vae的时序异常检测方法及***

Country Status (1)

Country Link
CN (1) CN115098563B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117349770A (zh) * 2023-09-19 2024-01-05 武汉理工大学 一种结构健康监测多应变传感器数据异常检测与修复方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111861272A (zh) * 2020-07-31 2020-10-30 西安交通大学 一种基于多源数据的复杂机电***异常状态检测方法
US20210075805A1 (en) * 2019-09-06 2021-03-11 Paypal, Inc. Anomaly behavior detection in interactive networks
CN112685272A (zh) * 2020-12-29 2021-04-20 中国科学院信息工程研究所 一种具备可解释性的用户行为异常检测方法
CN113051822A (zh) * 2021-03-25 2021-06-29 浙江工业大学 基于图注意力网络与lstm自动编码模型的工业***异常检测方法
CN113159071A (zh) * 2021-04-20 2021-07-23 复旦大学 一种跨模态图像-文本关联异常检测方法
US20210256355A1 (en) * 2020-02-13 2021-08-19 International Business Machines Corporation Evolving graph convolutional networks for dynamic graphs
CN113516226A (zh) * 2021-05-18 2021-10-19 长沙理工大学 一种基于图神经网络的混合模型多元时序异常检测方法
CN113553245A (zh) * 2021-05-20 2021-10-26 中国海洋大学 结合双向切片gru与门控注意力机制日志异常检测方法
CN113936117A (zh) * 2021-12-14 2022-01-14 中国海洋大学 基于深度学习的高频区域增强的光度立体三维重建方法
CN114090396A (zh) * 2022-01-24 2022-02-25 华南理工大学 一种云环境多指标无监督异常检测和根因分析方法
CN114239712A (zh) * 2021-12-06 2022-03-25 中国人民解放军国防科技大学 基于异构信息网络元学习架构的异常检测方法
CN114676778A (zh) * 2022-03-28 2022-06-28 北京科技大学 用于盾构装备数据协同互馈的异常数据检测方法及装置

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210075805A1 (en) * 2019-09-06 2021-03-11 Paypal, Inc. Anomaly behavior detection in interactive networks
US20210256355A1 (en) * 2020-02-13 2021-08-19 International Business Machines Corporation Evolving graph convolutional networks for dynamic graphs
CN111861272A (zh) * 2020-07-31 2020-10-30 西安交通大学 一种基于多源数据的复杂机电***异常状态检测方法
CN112685272A (zh) * 2020-12-29 2021-04-20 中国科学院信息工程研究所 一种具备可解释性的用户行为异常检测方法
CN113051822A (zh) * 2021-03-25 2021-06-29 浙江工业大学 基于图注意力网络与lstm自动编码模型的工业***异常检测方法
CN113159071A (zh) * 2021-04-20 2021-07-23 复旦大学 一种跨模态图像-文本关联异常检测方法
CN113516226A (zh) * 2021-05-18 2021-10-19 长沙理工大学 一种基于图神经网络的混合模型多元时序异常检测方法
CN113553245A (zh) * 2021-05-20 2021-10-26 中国海洋大学 结合双向切片gru与门控注意力机制日志异常检测方法
CN114239712A (zh) * 2021-12-06 2022-03-25 中国人民解放军国防科技大学 基于异构信息网络元学习架构的异常检测方法
CN113936117A (zh) * 2021-12-14 2022-01-14 中国海洋大学 基于深度学习的高频区域增强的光度立体三维重建方法
CN114090396A (zh) * 2022-01-24 2022-02-25 华南理工大学 一种云环境多指标无监督异常检测和根因分析方法
CN114676778A (zh) * 2022-03-28 2022-06-28 北京科技大学 用于盾构装备数据协同互馈的异常数据检测方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
李昊天等: "单时序特征图卷积网络融合预测方法", 《计算机与现代化》 *
杨顺成等: "基于GCN和Bi-LSTM的微博立场检测方法", 《重庆理工大学学报(自然科学)》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117349770A (zh) * 2023-09-19 2024-01-05 武汉理工大学 一种结构健康监测多应变传感器数据异常检测与修复方法
CN117349770B (zh) * 2023-09-19 2024-05-14 武汉理工大学 一种结构健康监测多应变传感器数据异常检测与修复方法

Also Published As

Publication number Publication date
CN115098563B (zh) 2022-11-11

Similar Documents

Publication Publication Date Title
Yang et al. SuperGraph: Spatial-temporal graph-based feature extraction for rotating machinery diagnosis
CN110427654B (zh) 一种基于敏感状态的滑坡预测模型构建方法及***
CN114818515A (zh) 一种基于自注意力机制和图卷积网络的多维时序预测方法
CN109635763B (zh) 一种人群密度估计方法
CN111127435B (zh) 基于双流卷积神经网络的无参考图像质量评估方法
CN107832789B (zh) 基于平均影响值数据变换的特征加权k近邻故障诊断方法
CN115098563B (zh) 基于gcn和注意力vae的时序异常检测方法及***
CN111046961A (zh) 基于双向长短时记忆单元和胶囊网络的故障分类方法
CN116402825B (zh) 轴承故障红外诊断方法、***、电子设备及存储介质
CN115051929B (zh) 基于自监督目标感知神经网络的网络故障预测方法及装置
CN115510975A (zh) 基于并行Transofmer-GRU的多变量时序异常检测方法及***
Chen et al. Discovering state variables hidden in experimental data
CN115174178A (zh) 基于生成对抗网络的半监督网络流量异常检测方法
CN114638291A (zh) 一种基于多层前馈神经网络算法的食源性致病菌分类方法
Chen et al. A novel method of combining generalized frequency response function and convolutional neural network for complex system fault diagnosis
CN111814403B (zh) 一种配电主设备分布式状态传感器可靠性评估方法
CN111859241B (zh) 一种基于声传递函数学习的非监督声源定向方法
Li et al. Nonlinear model identification from multiple data sets using an orthogonal forward search algorithm
CN116658433A (zh) 一种耐颗粒型磁力泵智能检测方法及***
CN110839253A (zh) 一种确定无线网格网络流量的方法
CN115936473A (zh) 一种联合预测与重构的无监督kpi异常检测方法
CN114760128A (zh) 一种基于重采样的网络异常流量检测方法
CN111045861B (zh) 一种基于深度神经网络的传感器数据恢复方法
Buchnik et al. GSP-KalmanNet: Tracking Graph Signals via Neural-Aided Kalman Filtering
CN112414446A (zh) 一种数据驱动的变速器传感器故障诊断方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant