CN112416643A - 无监督异常检测方法与装置 - Google Patents
无监督异常检测方法与装置 Download PDFInfo
- Publication number
- CN112416643A CN112416643A CN202011355743.2A CN202011355743A CN112416643A CN 112416643 A CN112416643 A CN 112416643A CN 202011355743 A CN202011355743 A CN 202011355743A CN 112416643 A CN112416643 A CN 112416643A
- Authority
- CN
- China
- Prior art keywords
- input data
- network
- data
- inputting
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 69
- 238000012545 processing Methods 0.000 claims abstract description 46
- 230000002159 abnormal effect Effects 0.000 claims abstract description 28
- 239000012634 fragment Substances 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims description 30
- 238000013528 artificial neural network Methods 0.000 claims description 25
- 125000004122 cyclic group Chemical group 0.000 claims description 24
- 230000006870 function Effects 0.000 claims description 14
- 230000005856 abnormality Effects 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 11
- 230000004913 activation Effects 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 4
- 238000000638 solvent extraction Methods 0.000 claims description 4
- 238000004140 cleaning Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims 2
- 238000009826 distribution Methods 0.000 description 12
- 238000012549 training Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000012423 maintenance Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 101000794020 Homo sapiens Bromodomain-containing protein 8 Proteins 0.000 description 1
- 101001006782 Homo sapiens Kinesin-associated protein 3 Proteins 0.000 description 1
- 101000615355 Homo sapiens Small acidic protein Proteins 0.000 description 1
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- WGKGADVPRVLHHZ-ZHRMCQFGSA-N N-[(1R,2R,3S)-2-hydroxy-3-phenoxazin-10-ylcyclohexyl]-4-(trifluoromethoxy)benzenesulfonamide Chemical compound O[C@H]1[C@@H](CCC[C@@H]1N1C2=CC=CC=C2OC2=C1C=CC=C2)NS(=O)(=O)C1=CC=C(OC(F)(F)F)C=C1 WGKGADVPRVLHHZ-ZHRMCQFGSA-N 0.000 description 1
- 102100021255 Small acidic protein Human genes 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- BULVZWIRKLYCBC-UHFFFAOYSA-N phorate Chemical compound CCOP(=S)(OCC)SCSCC BULVZWIRKLYCBC-UHFFFAOYSA-N 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本申请提出一种无监督异常检测方法与装置,包括以下步骤:获取网络模型,其中,网络模型包括变分网络和生成网络;获取输入数据,并将输入数据分割成多时间序列片段数据;将多时间序列片段数据输入变分网络进行处理,获取多时间序列片段的随机隐变量;将多时间序列片段的随机隐变量输入生成网络进行连接处理,获取输入数据的重构值;检测输入数据与重构值是否一致,根据检测结果确定是否异常。由此,在考虑多时间序列随机性和时间依赖性的前提下,对多时间序列的历史正常模式进行学习,从而实现对多时间序列数据更加准确的无监督异常检测。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种无监督异常检测方法与装置。
背景技术
互联网服务是当今互联网的一个重要内容,这些服务部署在互联网公司大量的机器(服务器、虚拟机、容器)上。为了确保这些服务的可靠性并为上层软件和系统提供更好的服务支撑,运维人员需要对机器的运行状态进行质量检测。机器是整个互联网的硬件基础,在运维管理工作中,运维工程师通常会监控采集机器的各个性能指标,这些来自同一机器的不同指标组成了多时间序列。例如一台机器有CPU使用率、网络使用率、内存使用率、磁盘使用率等指标。
在实际使用过程中,由于机器老化、性能过载、恶意攻击等故障,机器性能不可避免的会受到影响,这些监控指标也会发生异常。多时间序列的异常检测是一个非常重要的问题,可以帮助运维工程师迅速发现机器的异常并及时止损。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请的一个目的在于提出一种无监督异常检测方法和装置,在考虑多时间序列随机性和时间依赖性的前提下,对多时间序列的历史正常模式进行学习,从而实现对多时间序列数据更加准确的无监督异常检测。
本申请的另一个目的在于提出一种无监督异常检测装置。
为达到上述目的,本申请实施例提出了一种无监督异常检测方法,包括以下步骤:
获取网络模型,其中,所述网络模型包括变分网络和生成网络;
获取输入数据,并将所述输入数据分割成多时间序列片段数据;
将所述多时间序列片段数据输入所述变分网络进行处理,获取多时间序列片段的随机隐变量;
将所述多时间序列片段的随机隐变量输入所述生成网络进行连接处理,获取所述输入数据的重构值;
检测所述输入数据与所述重构值是否一致,根据检测结果确定是否异常。
本申请实施例的无监督异常检测方法,获取网络模型,其中,网络模型包括变分网络和生成网络;获取输入数据,并将输入数据分割成多时间序列片段数据;将多时间序列片段数据输入变分网络进行处理,获取多时间序列片段的随机隐变量;将多时间序列片段的随机隐变量输入生成网络进行连接处理,获取输入数据的重构值;检测输入数据与重构值是否一致,根据检测结果确定是否异常。由此,在考虑多时间序列随机性和时间依赖性的前提下,对多时间序列的历史正常模式进行学习,从而实现对多时间序列数据更加准确的无监督异常检测。
另外,根据本申请上述实施例的无监督异常检测方法,还可以具有如下附加的技术特征:
进一步地,在本申请的一个实施例中,所述检测所述输入数据与所述重构值是否一致,根据检测结果确定是否异常,包括:
根据所述输入数据与所述重构值确定重构分数值;
若所述重构分数大于正常阈值,则确定检测结果正常;
若所述重构分数小于异常阈值,则确定检测结果异常;其中,所述正常阈值大于所述异常阈值。
进一步地,在本申请的一个实施例中,所述将所述输入数据分割成多时间序列片段数据,包括:
通过滑动窗口算法将所述输入数据分割为长度为t+1的多时间序列片段数据。
进一步地,在本申请的一个实施例中,所述将所述多时间序列片段数据输入所述变分网络进行处理,获取多时间序列片段的随机隐变量,包括:
将t时刻的输入数据xt和t-1时刻的门控循环神经网络隐藏变量et-1输入变分网络的门控循环神经网络单元,生成门控循环神经网络隐藏变量et;
将所述门控循环神经网络隐藏变量et与t-1时刻的随机隐变量zt-1进行拼接;
将拼接后的et与zt-1输入变分网络的全连接层、软加激活函数层和线性层获得t时刻的随机隐变量zt的均值和标准差;
基于所述随机隐变量zt的均值和标准差,采用平面标准化流拟合得到随机隐变量zt。
进一步地,在本申请的一个实施例中,所述平面标准化流拟合具体为:将初始的随机隐变量zt0经过平面映射转化拟合得到最终的随机隐变量zt。
进一步地,在本申请的一个实施例中,所述将所述多时间序列片段的随机隐变量输入所述生成网络进行连接处理,获取所述输入数据的重构值,包括:
采用线性高斯状态空间模型连接相邻时刻的随机隐变量;
将t时刻的随机隐变量zt和t-1时刻的门控循环神经网络隐藏变量dt-1输入生成网络的门控循环神经网络单元生成门控循环神经网络隐藏变量dt;
将所述门控循环神经网络隐藏变量dt输入生成网络的全连接层、软加激活函数层和线性层生成重构值的均值和标准差;
通过所述重构值的均值和标准差计算输入数据的重构值。
进一步地,在本申请的一个实施例中,还包括:对所述输入数据进行数据清洗,并对清洗后的数据进行基于均值方差的标准化处理。
为达到上述目的,本申请第二方面实施例提出了一种无监督异常检测装置,包括:
获取模块,用于获取网络模型和输入数据,其中,所述网络模型包括变分网络和生成网络;
分割模块,用于将所述输入数据分割成多时间序列片段数据;
第一处理模块,用于将所述多时间序列片段数据输入所述变分网络进行处理,获取多时间序列片段的随机隐变量;
第二处理模块,用于将所述多时间序列片段的随机隐变量输入所述生成网络进行连接处理,获取所述输入数据的重构值;
检测模块,用于检测所述输入数据与所述重构值是否一致,根据检测结果确定是否异常。
本申请实施例的无监督异常检测装置,获取网络模型,其中,网络模型包括变分网络和生成网络;获取输入数据,并将输入数据分割成多时间序列片段数据;将多时间序列片段数据输入变分网络进行处理,获取多时间序列片段的随机隐变量;将多时间序列片段的随机隐变量输入生成网络进行连接处理,获取输入数据的重构值;检测输入数据与重构值是否一致,根据检测结果确定是否异常。由此,在考虑多时间序列随机性和时间依赖性的前提下,对多时间序列的历史正常模式进行学习,从而实现对多时间序列数据更加准确的无监督异常检测。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例的一种无监督异常检测方法的流程示例图;
图2是本申请实施例构建网络模型中变分网络模型示意图;
图3是本申请实施例构建网络模型中生成网络模型示意图;
图4是本申请实施例构建网络模型中变分网络结构图;
图5是本申请实施例构建网络模型中生成网络结构图;
图6为本申请实施例提供的一种无监督异常检测装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参照附图描述根据本申请实施例提出的无监督异常检测方法与装置。
具体地,表1列举了现有的无监督算法及其不足,LSTM-NDT算法采用确定性方法对多时间序列进行建模,DAGMM采用随机方法但忽略了时间序列数据的时间依赖性,LSTM-VAE只是简单的将长短期记忆网络和随机变量组合在一起,这些方法都不能很准确地解决多时间序列的随机性和时间依赖性。
表1现有无监督算法及其不足
相关技术在实际应用过程中效果并不好,无法达到满意的检测准确度。首先,有监督的方法需要大量的标注数据进行模型训练并且只能检测出已标注的异常类型,因此,在实际的运维工作中,多时间序列异常检测必须是无监督的方式。其次,卫星、机器等具有不同的软件逻辑控制,并以非常复杂的方式与周围环境、操作员和其他系统进行交互。这些复杂的行为使得多时间序列表现出很大的随机性和强烈的时间依赖性。
目前现有的无监督的多时间序列异常检测方法具有如下局限性:(1)采用确定性方法对多时间序列进行建模;(2)采用随机方法但忽略了时间序列数据的时间依赖性;(3)简单的将长短期记忆网络和随机变量组合在一起;这些方法都不能很准确地解决多时间序列的随机性和时间依赖性。最后,这些研究都只对多时间序列进行异常判断,无法对检测的异常结果提供进一步的解释。
针对上述问题,本申请提出一种无监督异常检测方法,获取网络模型,其中,网络模型包括变分网络和生成网络;获取输入数据,并将输入数据分割成多时间序列片段数据;将多时间序列片段数据输入变分网络进行处理,获取多时间序列片段的随机隐变量;将多时间序列片段的随机隐变量输入生成网络进行连接处理,获取输入数据的重构值;检测输入数据与重构值是否一致,根据检测结果确定是否异常。由此,在考虑多时间序列随机性和时间依赖性的前提下,对多时间序列的历史正常模式进行学习,从而实现对多时间序列数据更加准确的无监督异常检测。
图1为本申请实施例的一种抗散射成像无监督异常检测方法的流程示例图。如图1所示,该抗散射成像无监督异常检测方法,包括:
步骤101,获取网络模型,其中,网络模型包括变分网络和生成网络。
在本申请的实施例中,预先构建网络模型,包括变分网络和生成网络。
具体地,使用GRU(Gated Recurrent Unit,门控循环单元)捕捉原始数据空间(X空间)的多指标数据间的复杂时间依赖关系。其次,应用一种常用的算法——VAE(Variational Auto-Encoder,变分自编码器)将输入变量(即X空间中的数据)映射到随机隐(即Z空间)变量。再次,为了明确地建立Z空间中随机变量之间的时间依赖关系,本申请提出一种随机隐变量连接技术:使用Linear SSM(Linear Gaussian State Space Model,线性高斯状态空间模型)连接随机隐变量,通过将潜在变量构成马尔科夫链,从而使得变量之间具有时序关系,并将随机隐变量与GRU隐藏变量进行拼接。最后,为了帮助变分网络中的随机变量捕获输入数据的复杂分布,本实施例采用planar NF(planar Normalizing Flow,平面标准化流,planar NF通过一系列可优化的线性函数将简单分布映射为更复杂的分布)来学习Z空间中的非高斯后验分布。
更具体地,如图2和3所示,本实施例的模型网络由一个变分网络和一个生成网络组成,本申请提供的变分网络和生成网络为随机循环神经网络,创新性地使用随机隐变量连接技术来挖掘模型的潜在表示,在海量历史数据中无监督地学习多时间序列的正常模式,充分考虑了多时间序列的时序依赖和随机性。。
其中,变分网络的目的是为了优化逼近后验分布,获得良好的随机隐变量。如图4所示的变分网络结构图,在时间t,原始输入数据点xt和t-1时刻的GRU隐藏变量et-1被输入到GRU单元,以生成确定性的GRU隐藏变量et。et的目的是捕获xt及其之前的X空间中数据的长期复杂时间依赖关系。然后,et与t-1时刻的随机隐变量zt-1拼接,先进入Dense层(全连接层),然后进入Soft plus层(软加激活函数层)和线性层,生成随机变量zt的均值和标准差因此,Z空间的变量是明确依赖的。为了学习到复杂的非高斯概率分布本方法使用planar NF去拟合zt,即把一个初始的Z变量zt 0经过一系列的平面映射转化fk得到最终的zt K(即zt)。
在生成网络中,使用隐藏变量zt-T:t来重构输入数据xt-T:t,精确的随机隐变量可以最大限度地减少重构损失。具体的,如图5所示的生成网络结构图,在生成网络中,首先使用线性高斯SSM(Linear Gaussian State Space Model)连接Z变量,使其存在明显依赖关系(Tθ,Oθ为SSM参数,可以在模型训练过程中自动学习)。在时间t,zt和确定性GRU变量dt-1一起被输入到GRU单元,生成dt。dt进入Dense层(全连接层,hθ为网络参数,可以在模型训练过程中自动学习)和Soft plus层(软加激活函数层),生成变量xt'的均值和标准差xt的重构值xt'是从高斯分布中采样得到。如果在时间t发生异常,重构值xt'和原始值xt的差距会变得很大,因此可以通过二者的差异值检测异常。
步骤102,获取输入数据,并将输入数据分割成多时间序列片段数据。
在本申请实施例中,获取输入数据,可以理解的是输入数据为待检测数据比如一台机器有CPU使用率、网络使用率、内存使用率、磁盘使用率等。
在本申请实施例中,对输入数据进行数据清洗,并对清洗后的数据进行基于均值方差的标准化处理,进一步提高后续检测的准确性。
具体地,在生产环境中,数据监控平台可能未能成功采样一些时间点的历史监控数据,或者错误地将一些数据存储为非数值型数据——这些数据被分别称为缺失数据和脏数据。由于这些数据会降低模型的训练和检测的性能,因此需要对数据进行预处理。首先,本实施例将这些缺失数据和脏数据统一设置为零。其次,为了消除不同指标的振幅影响,本申请对数据进行基于均值方差的标准化处理。
在本申请实施例中,通过滑动窗口算法将所述输入数据分割为长度为t+1的多时间序列片段数据,t为正整数。
具体地,对输入数据进行滑动窗口处理,每个窗口是长度为t+1的时间序列片段:
xt-T:t(∈RM×(T+1))={xt-T,xt-T+1,...,xt}。
本申请实施例中,多时间序列数据可以用x表示,x={x1,x2,…,xN},N是数据x的长度,任一时刻t的数据点xt∈RM是一个M维的实数(R)向量:所以x∈RM ×N。多时间序列异常检测工作的目的是判断xt异常与否。
步骤103,将多时间序列片段数据输入变分网络进行处理,获取多时间序列片段的随机隐变量。
在本申请的实施例中,将多时间序列片段数据输入变分网络进行处理,获取多时间序列片段的随机隐变量,包括:将t时刻的输入数据xt和t-1时刻的门控循环神经网络隐藏变量et-1输入变分网络的门控循环神经网络单元,生成门控循环神经网络隐藏变量et;将所述门控循环神经网络隐藏变量et与t-1时刻的随机隐变量zt-1进行拼接;将拼接后的et与zt-1输入变分网络的全连接层、软加激活函数层和线性层获得t时刻的随机隐变量zt的均值和标准差;基于随机隐变量zt的均值和标准差,采用平面标准化流拟合得到随机隐变量zt。
在本申请的实施例中,平面标准化流拟合具体为:将初始的随机隐变量zt0经过平面映射转化拟合得到最终的随机隐变量zt。
如图2所示的变分网络模型示意图,t-T时刻的训练数据xt-T作为输入数据,生成et-T,通过et-T生成t-T时刻的随机隐变量Zt-T,因此,t-T:t时间片段内的其余随机隐变量zt-T:t均采用上述方法不断迭代,最终得到zt。
步骤104,将多时间序列片段的随机隐变量输入生成网络进行连接处理,获取输入数据的重构值。
在本申请的实施例中,将多时间序列片段的随机隐变量输入生成网络进行连接处理,获取输入数据的重构值,包括:采用线性高斯状态空间模型连接相邻时刻的随机隐变量;将t时刻的随机隐变量zt和t-1时刻的门控循环神经网络隐藏变量dt-1输入生成网络的门控循环神经网络单元生成门控循环神经网络隐藏变量dt;将门控循环神经网络隐藏变量dt输入生成网络的全连接层、软加激活函数层和线性层生成重构值的均值和标准差;通过重构值的均值和标准差计算输入数据的重构值。
如图3所示的生成网络模型示意图,在变分网络得到的t-T时刻的t-T时刻的随机隐变量作为输入数据,生成dt-T,通过dt-T生成t-T时刻的xt-T的重构值x't-T,因此,t-T:t时间片段内的其余重构值X't-T:t均采用上述方法不断迭代,最终得到x't。
步骤105,检测输入数据与重构值是否一致,根据检测结果确定是否异常。
在本申请的实施例中,根据输入数据与重构值确定重构分数值,若重构分数大于正常阈值,则确定检测结果正常;若重构分数小于异常阈值,则确定检测结果异常;其中,正常阈值大于异常阈值。即,在充分考虑多时间序列的时序依赖和随机性前提下,通过输入数据与重构值进行异常检测,准确率高。
本申请的无监督异常检测方法还包括:利用增量的训练数据,采用最大化ELBO训练变分网络和生成网络对网络模型进行优化,使得训练的模型可以适应最新的异常模式。
模型的生成网络和变分网络会被同时进行训练以优化模型中的参数。本实施例通过最大化ELBO(evidence of lower bound,证据下限)来训练模型,模型的训练目标函数为:
其中L是采样长度。公式第1项是负重构误差:
Xi的后验概率为:第2项与第3项的和是Kullback–Leibler divergence(KL散度)。其中,第2项Zi通过线性高斯SSM与标准多元正态分布初始化得到。第3项是近似变分网络中zi的真实后验分布:
在更优选的实施例中,为进一步确认某个时间点的数据(xt)是否异常,采用重构概率logpθ(x′t|zt-T:t)来表示异常分数St,logpθ(x′t|zt-T:t)由重构误差得到。高分数表示输入数据xt可以很好地被重构。如果输入数据遵循指标的正常模式,该数据就可以被很好地重构。相反的,分数越小表示重构成功的可能性越小,因此数据为异常的可能性越大。所以,如果St低于异常阈值,那么xt被标记为异常;否则xt是正常的。
在模型离线训练过程中,模型会计算每一个训练数据的重构概率,所有的重构概率形成一个新的指标序列:{S1,S2,...,Sn′}(N'为训练数据长度)。本申请使用POT设置异常阈值thF。POT的基本思想是用带参数的广义帕累托分布(GPD)来计算数据尾部的概率分布。与专注于数据“高值部分”的经典POT应用不同,本申请的重构概率位于低值部分。因此,调整后的GPD函数如下:
th是重构概率的初始阈值,通过一个低比例数值确定。γ和β是GPD的形状和比例参数,S是{S1,S2,...,Sn′}中的任意值。小于阈值th的值被表示为th–S,最终的阈值为thF:
和可以通过最大似然估计得到的γ和β的估计值,q是S<th的期望概率,N'是输入数据长度,N'th是Si<th的长度。对于POT方法,只需要调整低比例数值N'th/N'和q两个参数:例如低比例数值小于7%,q取值10-4。
对异常结果提供解释,异常解释的目的是分析多时间序列数据的每个单时间序列的重构概率,并用排序靠前几个单时间序列来解释检测的实体异常。虽然模型计算的是xt的整体重构概率,但根据可以得出因此xt的重构概率可以被分解为:
St i是xt i的重构概率。对于异常输入数据xt可以通过评估xt每个每个单时间序列的重构概率,即异常贡献来解释它。。对St i进行升序排序,形成列表ASt。在ASt中,排名越高,St i越小,xt i对xt的贡献越大。排序结果将作为异常解释提供给运维人员,排序最靠前的单时间序列可以为运维人员理解和分析检测到的实体异常提供足够的线索。
本实施例在2个公开数据集(2个数据集名字:SMAP和MSL,数据公开链接:https://github.com/khundman/telemanom)和1个互联网公司(数据集名字:SMD,数据公开链接:https://github.com/NetManAIOps/OmniAnomaly/tree/master/ServerMachineDataset)实际生产环境中测试。本实施例可以准确地检测并解释异常,达到0.86的检测F分数(F-score)和0.89的异常解释准确度。如表格2所示的实验结果证明,我们提出的方案比学术界现有的最先进算法都要好。
表2现有算法和本实施例算法的结果对比
本申请实施例的无监督异常检测方法,获取网络模型,其中,网络模型包括变分网络和生成网络;获取输入数据,并将输入数据分割成多时间序列片段数据;将多时间序列片段数据输入变分网络进行处理,获取多时间序列片段的随机隐变量;将多时间序列片段的随机隐变量输入生成网络进行连接处理,获取输入数据的重构值;检测输入数据与重构值是否一致,根据检测结果确定是否异常。由此,在考虑多时间序列随机性和时间依赖性的前提下,对多时间序列的历史正常模式进行学习,从而实现对多时间序列数据更加准确的无监督异常检测。
为了实现上述实施例,本申请还提出一种无监督异常检测装置。
图6为本申请实施例提供的一种无监督异常检测装置的结构示意图。
如图6所示,该装置包括:获取模块601、分割模块602、第一处理模块603、第二处理模块604和检测模块605。
获取模块601,用于获取网络模型和输入数据,其中,所述网络模型包括变分网络和生成网络。
分割模块602,用于将所述输入数据分割成多时间序列片段数据。
第一处理模块603,用于将所述多时间序列片段数据输入所述变分网络进行处理,获取多时间序列片段的随机隐变量。
第二处理模块604,用于将所述多时间序列片段的随机隐变量输入所述生成网络进行连接处理,获取所述输入数据的重构值。
检测模块605,用于检测所述输入数据与所述重构值是否一致,根据检测结果确定是否异常。
需要说明的是,前述对方法实施例的解释说明也适用于该实施例的装置,此处不再赘述。
本申请实施例的无监督异常检测装置,获取网络模型,其中,网络模型包括变分网络和生成网络;获取输入数据,并将输入数据分割成多时间序列片段数据;将多时间序列片段数据输入变分网络进行处理,获取多时间序列片段的随机隐变量;将多时间序列片段的随机隐变量输入生成网络进行连接处理,获取输入数据的重构值;检测输入数据与重构值是否一致,根据检测结果确定是否异常。由此,在考虑多时间序列随机性和时间依赖性的前提下,对多时间序列的历史正常模式进行学习,从而实现对多时间序列数据更加准确的无监督异常检测。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种无监督异常检测方法,其特征在于,所述方法包括:
获取网络模型,其中,所述网络模型包括变分网络和生成网络;
获取输入数据,并将所述输入数据分割成多时间序列片段数据;
将所述多时间序列片段数据输入所述变分网络进行处理,获取多时间序列片段的随机隐藏变量;
将所述多时间序列片段的随机隐变量输入所述生成网络进行连接处理,获取所述输入数据的重构值;
检测所述输入数据与所述重构值是否一致,根据检测结果确定是否异常。
2.如权利要求1所述的一种无监督异常检测方法,其特征在于,所述检测所述输入数据与所述重构值是否一致,根据检测结果确定是否异常,包括:
根据所述输入数据与所述重构值确定重构分数值;
若所述重构分数大于正常阈值,则确定检测结果正常;
若所述重构分数小于异常阈值,则确定检测结果异常;其中,所述正常阈值大于所述异常阈值。
3.如权利要求1所述的一种无监督异常检测方法,其特征在于,所述将所述输入数据分割成多时间序列片段数据,包括:
通过滑动窗口算法将所述输入数据分割为长度为t+1的多时间序列片段数据;其中,t为正整数。
4.如权利要求3所述的一种无监督异常检测方法,其特征在于,所述将所述多时间序列片段数据输入所述变分网络进行处理,获取多时间序列片段的随机隐变量,包括:
将t时刻的输入数据xt和t-1时刻的门控循环神经网络隐藏变量et-1输入变分网络的门控循环神经网络单元,生成门控循环神经网络隐藏变量et;
将所述门控循环神经网络隐藏变量et与t-1时刻的随机隐变量zt-1进行拼接;
将拼接后的et与zt-1输入变分网络的全连接层、软加激活函数层和线性层获得t时刻的随机隐变量zt的均值和标准差;
基于所述随机隐变量zt的均值和标准差,采用平面标准化流拟合得到随机隐变量zt。
5.如权利要求4所述的一种无监督异常检测方法,其特征在于,所述平面标准化流拟合具体为:将初始的随机隐变量zt0经过平面映射转化拟合得到最终的随机隐变量zt。
6.如权利要求4所述的一种无监督异常检测方法,其特征在于,所述将所述多时间序列片段的随机隐变量输入所述生成网络进行连接处理,获取所述输入数据的重构值,包括:
采用线性高斯状态空间模型连接相邻时刻的随机隐变量;
将t时刻的随机隐变量zt和t-1时刻的门控循环神经网络隐藏变量dt-1输入生成网络的门控循环神经网络单元生成门控循环神经网络隐藏变量dt;
将所述门控循环神经网络隐藏变量dt输入生成网络的全连接层、软加激活函数层和线性层生成重构值的均值和标准差;
通过所述重构值的均值和标准差计算输入数据的重构值。
7.如权利要求3所述的一种无监督异常检测方法,其特征在于,还包括:
对所述输入数据进行数据清洗,并对清洗后的数据进行基于均值方差的标准化处理。
8.一种无监督异常检测装置,包括:
获取模块,用于获取网络模型和输入数据,其中,所述网络模型包括变分网络和生成网络;
分割模块,用于将所述输入数据分割成多时间序列片段数据;
第一处理模块,用于将所述多时间序列片段数据输入所述变分网络进行处理,获取多时间序列片段的随机隐变量;
第二处理模块,用于将所述多时间序列片段的随机隐变量输入所述生成网络进行连接处理,获取所述输入数据的重构值;
检测模块,用于检测所述输入数据与所述重构值是否一致,根据检测结果确定是否异常。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器耦合连接的存储器;其中,
所述存储器存储有计算机程序,所述计算机程序能够被所述至少一个处理器执行,以实现权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序被执行时,能够实现权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011355743.2A CN112416643A (zh) | 2020-11-26 | 2020-11-26 | 无监督异常检测方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011355743.2A CN112416643A (zh) | 2020-11-26 | 2020-11-26 | 无监督异常检测方法与装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112416643A true CN112416643A (zh) | 2021-02-26 |
Family
ID=74843601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011355743.2A Pending CN112416643A (zh) | 2020-11-26 | 2020-11-26 | 无监督异常检测方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112416643A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836770A (zh) * | 2021-03-25 | 2021-05-25 | 中国工商银行股份有限公司 | Kpi异常定位分析方法及系统 |
CN113127705A (zh) * | 2021-04-02 | 2021-07-16 | 西华大学 | 一种异构双向生成对抗网络模型及时间序列异常检测方法 |
CN113255835A (zh) * | 2021-06-28 | 2021-08-13 | 国能大渡河大数据服务有限公司 | 一种水电站泵类设备异常检测方法 |
CN113343097A (zh) * | 2021-06-24 | 2021-09-03 | 中山大学 | 基于片段和自注意力机制的序列推荐方法及系统 |
CN113360896A (zh) * | 2021-06-03 | 2021-09-07 | 哈尔滨工业大学 | 一种横向联邦学习架构下的Free Rider攻击检测方法 |
CN113469247A (zh) * | 2021-06-30 | 2021-10-01 | 广州天懋信息系统股份有限公司 | 网络资产异常检测方法 |
CN114664311A (zh) * | 2022-03-01 | 2022-06-24 | 浙江大学 | 一种记忆网络增强的变分推断无声攻击检测方法 |
CN115361307A (zh) * | 2022-08-16 | 2022-11-18 | 中国银行股份有限公司 | 一种数据中心异常检测的方法、装置及相关产品 |
CN116361673A (zh) * | 2023-06-01 | 2023-06-30 | 西南石油大学 | 准周期时间序列无监督异常检测方法、系统及终端 |
CN116664562A (zh) * | 2023-07-28 | 2023-08-29 | 香港理工大学深圳研究院 | 一种基于滑窗变分自编码器的非监督裂缝识别方法 |
WO2024104406A1 (zh) * | 2022-11-15 | 2024-05-23 | 杭州阿里云飞天信息技术有限公司 | 异常检测的方法和云网络平台 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150269050A1 (en) * | 2014-03-18 | 2015-09-24 | Microsoft Corporation | Unsupervised anomaly detection for arbitrary time series |
US20190147300A1 (en) * | 2017-11-16 | 2019-05-16 | International Business Machines Corporation | Anomaly detection in multidimensional time series data |
CN110071913A (zh) * | 2019-03-26 | 2019-07-30 | 同济大学 | 一种基于无监督学习的时间序列异常检测方法 |
CN111277603A (zh) * | 2020-02-03 | 2020-06-12 | 杭州迪普科技股份有限公司 | 无监督异常检测系统和方法 |
-
2020
- 2020-11-26 CN CN202011355743.2A patent/CN112416643A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150269050A1 (en) * | 2014-03-18 | 2015-09-24 | Microsoft Corporation | Unsupervised anomaly detection for arbitrary time series |
US20190147300A1 (en) * | 2017-11-16 | 2019-05-16 | International Business Machines Corporation | Anomaly detection in multidimensional time series data |
CN110071913A (zh) * | 2019-03-26 | 2019-07-30 | 同济大学 | 一种基于无监督学习的时间序列异常检测方法 |
CN111277603A (zh) * | 2020-02-03 | 2020-06-12 | 杭州迪普科技股份有限公司 | 无监督异常检测系统和方法 |
Non-Patent Citations (4)
Title |
---|
LONGYUAN LI等: "Anomaly Detection of Time Series With Smoothness-Inducing Sequential Variational Auto-Encoder", 《 IEEE TRANSACTIONS ON NEURAL NETWORKS AND LEARNING SYSTEMS》 * |
YA SU等: "Robust Anomaly Detection for Multivariate Time Series through Stochastic Recurrent Neural Network", 《HTTPS://DL.ACM.ORG/DOI/ABS/10.1145/3292500.3330672》 * |
曾惟如等: "基于层级实时记忆算法的时间序列异常检测算法", 《电子学报》 * |
魏金萧等: "综合数据清洗及无监督学习技术的电力设备状态评估", 《水电能源科学》 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836770B (zh) * | 2021-03-25 | 2024-02-27 | 中国工商银行股份有限公司 | Kpi异常定位分析方法及系统 |
CN112836770A (zh) * | 2021-03-25 | 2021-05-25 | 中国工商银行股份有限公司 | Kpi异常定位分析方法及系统 |
CN113127705A (zh) * | 2021-04-02 | 2021-07-16 | 西华大学 | 一种异构双向生成对抗网络模型及时间序列异常检测方法 |
CN113360896A (zh) * | 2021-06-03 | 2021-09-07 | 哈尔滨工业大学 | 一种横向联邦学习架构下的Free Rider攻击检测方法 |
CN113343097B (zh) * | 2021-06-24 | 2023-01-13 | 中山大学 | 基于片段和自注意力机制的序列推荐方法及系统 |
CN113343097A (zh) * | 2021-06-24 | 2021-09-03 | 中山大学 | 基于片段和自注意力机制的序列推荐方法及系统 |
CN113255835A (zh) * | 2021-06-28 | 2021-08-13 | 国能大渡河大数据服务有限公司 | 一种水电站泵类设备异常检测方法 |
CN113469247A (zh) * | 2021-06-30 | 2021-10-01 | 广州天懋信息系统股份有限公司 | 网络资产异常检测方法 |
CN114664311A (zh) * | 2022-03-01 | 2022-06-24 | 浙江大学 | 一种记忆网络增强的变分推断无声攻击检测方法 |
CN115361307A (zh) * | 2022-08-16 | 2022-11-18 | 中国银行股份有限公司 | 一种数据中心异常检测的方法、装置及相关产品 |
CN115361307B (zh) * | 2022-08-16 | 2024-06-28 | 中国银行股份有限公司 | 一种数据中心异常检测的方法、装置及相关产品 |
WO2024104406A1 (zh) * | 2022-11-15 | 2024-05-23 | 杭州阿里云飞天信息技术有限公司 | 异常检测的方法和云网络平台 |
CN116361673A (zh) * | 2023-06-01 | 2023-06-30 | 西南石油大学 | 准周期时间序列无监督异常检测方法、系统及终端 |
CN116361673B (zh) * | 2023-06-01 | 2023-08-11 | 西南石油大学 | 准周期时间序列无监督异常检测方法、系统及终端 |
CN116664562A (zh) * | 2023-07-28 | 2023-08-29 | 香港理工大学深圳研究院 | 一种基于滑窗变分自编码器的非监督裂缝识别方法 |
CN116664562B (zh) * | 2023-07-28 | 2023-11-03 | 香港理工大学深圳研究院 | 一种基于滑窗变分自编码器的非监督裂缝识别方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112416643A (zh) | 无监督异常检测方法与装置 | |
US11921566B2 (en) | Abnormality detection system, abnormality detection method, abnormality detection program, and method for generating learned model | |
CN112416662A (zh) | 多时间序列数据异常检测方法与装置 | |
Ying et al. | A hidden Markov model-based algorithm for fault diagnosis with partial and imperfect tests | |
CN111504676B (zh) | 基于多源监控数据融合的设备故障诊断方法、装置及系统 | |
Niu et al. | Intelligent condition monitoring and prognostics system based on data-fusion strategy | |
CN112766342A (zh) | 一种电气设备的异常检测方法 | |
CN109992895B (zh) | 一种设备性能退化趋势提取及预测方法 | |
CN113344134A (zh) | 一种低压配电监控终端数据采集异常检测方法及系统 | |
CN115454778A (zh) | 大规模云网络环境下的时序指标异常智能监控系统 | |
CN117668684B (zh) | 基于大数据分析的电网电能数据异常检测方法 | |
KR20210017651A (ko) | 반도체 제조 공정에서 고장 검출 및 불량 원인 진단을 위한 방법 | |
CN113516174A (zh) | 调用链异常检测方法、计算机设备以及可读存储介质 | |
CN113574480A (zh) | 用于预测设备损坏的装置 | |
CN116992376A (zh) | 用于检测电网中的异常的装置、系统和方法 | |
Atzmueller et al. | Anomaly detection and structural analysis in industrial production environments | |
CN117708738A (zh) | 基于多模态变量相关性的传感器时序异常检测方法及系统 | |
CN118174788A (zh) | 一种光纤配线柜的故障检测方法、装置、设备及存储介质 | |
Jiang et al. | A timeseries supervised learning framework for fault prediction in chiller systems | |
CN113092083A (zh) | 一种基于分形维数和神经网络的机泵故障诊断方法和装置 | |
Aremu et al. | Kullback-leibler divergence constructed health indicator for data-driven predictive maintenance of multi-sensor systems | |
CN118696304A (zh) | 热异常管理 | |
CN114861753A (zh) | 一种基于大规模网络的数据分类方法和装置 | |
KR102667861B1 (ko) | 딥러닝 기반의 고장 예측 모델을 이용한 중전기기 고장 진단 장치 및 그 방법 | |
CN117216701B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210226 |