CN106815639A - 流数据的异常点检测方法及装置 - Google Patents
流数据的异常点检测方法及装置 Download PDFInfo
- Publication number
- CN106815639A CN106815639A CN201611229506.5A CN201611229506A CN106815639A CN 106815639 A CN106815639 A CN 106815639A CN 201611229506 A CN201611229506 A CN 201611229506A CN 106815639 A CN106815639 A CN 106815639A
- Authority
- CN
- China
- Prior art keywords
- data
- lstm models
- class
- detected
- historical juncture
- 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
Classifications
-
- 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/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Testing Or Calibration Of Command Recording Devices (AREA)
Abstract
本发明涉及一种流数据的异常点检测方法及装置,用以解决现有技术对流数据异常点检测的准确度较低的技术问题。该方法包括:根据每类传感器在历史时刻检测到的数据,以及每一所述历史时刻的实测异常点数据训练长短时记忆递归神经网络LSTM模型,形成已训练LSTM模型,其中,每类所述传感器在所述历史时刻检测到的数据作为训练所述LSTM模型的一个输入向量;将每类所述传感器在当前时刻检测到的数据作为所述已训练LSTM模型的输入,得到所述已训练LSTM模型输出的异常点数据检测结果。
Description
技术领域
本发明涉及数据处理领域,具体地,涉及一种流数据的异常点检测方法及装置。
背景技术
流数据是一组顺序、大量、快速、连续到达的数据序列,一般情况下,数据流可被视为一个随时间延续而无限增长的动态数据集合。对于各个领域来说,例如,物联网、航空航天、气象测控和金融服务等领域,流数据可以理解为是多种多类的传感器在各个时刻检测到的数据。
对流数据进行异常点检测,有利于预测未来可能发生的故障,并进行诊断。目前,对流数据进行异常检测的研究主要基于统计和机器学习的方法。
其中,基于统计的方法通过分析统计数据的分布情况,找到不符合该数据分布的异常点。这种方法需要了解数据分布情况,同时检测出的异常点可能被不同的分布模型检测到,即检测这些异常点的机制可能不唯一。基于机器学习的方法主要将异常点检测看作聚类或分类问题,解决了基于统计方法产生的异常点多义性问题。但现有技术通常采用浅层机器学习模型进行,仅将流数据直接用于模型学习,未考虑数据特征间的内在联系,异常点检测的准确度较低。
发明内容
本发明的主要目的是提供一种流数据的异常点检测方法及装置,用以解决现有技术对流数据异常点检测的准确度较低的技术问题。
为了实现上述目的,本发明第一方面提供一种流数据的异常点检测方法,所述流数据包括每类传感器在历史时刻检测到的数据,以及在每一所述历史时刻的实测异常点数据,所述方法包括:
根据每类所述传感器在所述历史时刻检测到的数据,以及所述实测异常点数据训练长短时记忆递归神经网络LSTM模型,形成已训练LSTM模型,其中,每类所述传感器在所述历史时刻检测到的数据作为训练所述LSTM模型的一个输入向量;
将每类所述传感器在当前时刻检测到的数据作为所述已训练LSTM模型的输入,得到所述已训练LSTM模型输出的异常点数据检测结果。
可选地,所述根据每类所述传感器在所述历史时刻检测到的数据,以及所述实测异常点数据训练长短时记忆递归神经网络LSTM模型,形成已训练LSTM模型,包括:
利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),其中,正常点标签y的值为1;
根据正常点的标签及所述目标概率值P(y=1|h),计算获得交叉熵,其中,所述交叉熵作为模型的损失函数,用于衡量概率值与标签的相似性;
根据所述损失函数调整所述LSTM模型的参数。
可选地,所述利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),包括:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到隐藏向量表示;
将所述隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述目标概率值P(y=1|h)。
可选地,所述利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),包括:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到第一隐藏向量表示;
将所述第一隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述第一概率值P(y=1|h1);
利用所述LSTM模型的流数据滑动窗口学习所有传感器在所述历史时刻检测到的数据的特征,得到第二隐藏向量表示;
将所述第二隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到第二概率值P(y=1|h2);
根据所述第一概率值P(y=1|h1)和所述第二概率值P(y=1|h2)通过如下公式计算得到所述目标概率值P(y=1|h):
P(y=1|h)=sigmoid(α·P(y=1|h1)+β·P(y=1|h2));
其中,α大于0,β大于0,且α+β=1,sigmoid为激活函数。
可选地,所述根据正常点的标签及所述目标概率值P(y=1|h),计算获得交叉熵,包括:
通过如下公式计算正常点的标签及所述目标概率值P(y=1|h)的交叉熵L(θ):
L(θ)=-(ylogP(y=1|h)+(1-y)log(1-P(y=1|h)))。
可选地,所述根据所述损失函数调整所述LSTM模型的参数,包括:
根据所述损失函数L(θ)通过随机梯度下降算法对模型参数进行调整。
本发明第二方面提供一种检测装置,包括:
训练模块,用于根据每类传感器在历史时刻检测到的数据,以及每一所述历史时刻的实测异常点数据训练长短时记忆递归神经网络LSTM模型,形成已训练LSTM模型,其中,每类所述传感器在所述历史时刻检测到的数据作为训练所述LSTM模型的一个输入向量;
检测模块,用于将每类所述传感器在当前时刻检测到的数据作为所述已训练LSTM模型的输入,得到所述已训练LSTM模型输出的异常点数据检测结果。
可选地,所述训练模块包括:
数据特征学习模块,用于利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),其中,正常点标签y的值为1;
计算模块,用于根据正常点的标签及所述目标概率值P(y=1|h),计算获得交叉熵,其中,所述交叉熵作为模型的损失函数,用于衡量概率值与标签的相似性;
参数调整模块,用于根据所述损失函数调整所述LSTM模型的参数。
可选地,所述数据特征学习模块具体用于:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到隐藏向量表示;
将所述隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述目标概率值P(y=1|h)。
可选地,所述数据特征学习模块具体用于:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到第一隐藏向量表示;
将所述第一隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述第一概率值P(y=1|h1);
利用所述LSTM模型的流数据滑动窗口学习所有传感器在所述历史时刻检测到的数据的特征,得到第二隐藏向量表示;
将所述第二隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到第二概率值P(y=1|h2);
根据所述第一概率值P(y=1|h1)和所述第二概率值P(y=1|h2)通过如下公式计算得到所述目标概率值P(y=1|h):
P(y=1|h)=sigmoid(α·P(y=1|h1)+β·P(y=1|h2));
其中,α大于0,β大于0,且α+β=1,sigmoid为激活函数。
可选地,所述计算模块用于:
通过如下公式计算正常点的标签及所述目标概率值P(y=1|h)的交叉熵L(θ):
L(θ)=-(ylogP(y=1|h)+(1-y)log(1-P(y=1|h)))。
可选地,所述参数调整模块具体用于:
根据所述损失函数L(θ)通过随机梯度下降算法对模型参数进行调整。
通过上述技术方案,将每类传感器在历史时刻检测到的数据作为训练LSTM模型的输入向量,基于LSTM模型本身的特性,其在训练时考虑了不同输入向量之间的关系,从而在使用各类传感器检测到的数据训练LSTM模型时,保证了LSTM模型能够学习高各类传感器之间的联系。相比现有技术在检测流数据的异常点时未考虑数据特征间的内在联系,本发明使用已训练的LSTM模型能够更准确地检测出异常点。
本发明的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1是LSTM模型的计算单元的结构示意图;
图2是本发明实施例提供的一种流数据的异常点检测方法的流程示意图;
图3是本发明实施例提供的一种流数据滑动学习窗口学习数据特征的示意图;
图4是本发明实施例提供的一种LSTM模型的训练过程的示意图;
图5是本发明实施例提供的另一种LSTM模型的训练过程的示意图;
图6A是本发明实施例提供的一种检测装置的结构示意图;
图6B是本发明实施例提供的另一种检测装置的结构示意图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
为了使本领域技术人员更容易理解本发明实施例提供的技术方案,下面首先对涉及到的相关技术进行简单介绍。
LSTM(Long Short-term Memory Recurrent Neural Network,长短时递归神经网络)模型是一种时间递归神经网络。通过引入忘记门机制f,解决了传统的递归神经网络(Recurrent Neural Network,RNN)产生的传播信息丢失及梯度弥散现象,更适合于处理和预测时间序列中间隔和延迟非常长的重要事件。
如图1所示,LSTM模型中的计算单元如图1所示,由图可知,每一计算单元的计算过程如下式所示:
it=σ(W(i)xt+U(i)ht-1+b(i))
ft=σ(W(f)xt+U(f)ht-1+b(f))
ct=ft⊙ct-1+it⊙tanh(W(c)xt+U(c)ht-1+b(c))
ot=σ(W(o)xt+U(o)ht-1+b(o))
ht=ot⊙tanh(ct)
一般地,流数据产生的异常点多数与其历史数据有关。通过分析历史数据,有助于判断被预测数据的异常情况。上式展示了任一类传感器在t时刻隐藏向量表示(ht)的计算方法。首先,xt为t时刻该类传感器的向量表示,其分量为t时刻该类传感器中各个传感器采集的数值,ht-1为t-1时刻的隐藏向量表示,W(i),U(i)以及b(i)分别为计算输入门向量表示(it)的参数。基于sigmoid激活函数,可以计算获得只包含0和1的向量表示it。类似地,W(f),U(f)以及b(f)分别为计算忘记门向量表示(ft)的参数。然后,基于it和ft的加权和,自动获取流数据在t-1时刻重要的信息,同时过滤掉无用的信息,计算获得t时刻的记忆元向量表示(ct)。同样,基于sigmoid激活函数,可以获取流数据在t时刻的输出门向量ot。最后,计算ot与记忆元ct之间的点积,获得流数据在t时刻的隐藏向量表示ht,用于计算t+1时刻的隐藏向量表示。
输入向量xt经过LSTM后,计算获得对应的隐藏向量表示ht,包含了t时刻之前的历史流数据变化信息。基于ht进行训练或者预测,相比单纯使用xt而言,更有助于捕获各个时刻传感器信息,提高异常点检测模型的性能。
基于LSTM模型,本发明实施例提供一种流数据的异常点检测方法,其中,所述流数据包括每类传感器在历史时刻检测到的数据,以及在每一所述历史时刻的实测异常点数据。如图2所示,该方法包括:
S201、根据每类所述传感器在所述历史时刻检测到的数据,以及所述实测异常点数据训练长短时记忆递归神经网络LSTM模型,形成已训练LSTM模型,其中,每类所述传感器在所述历史时刻检测到的数据作为训练所述LSTM模型的一个输入向量。
具体地,同一传感器在多个历史时刻检测到的数据是一数据序列,将该数据序列作为输入向量,数据序列中的每一数据即为输入向量中的每一个元素。
S202、将每类所述传感器在当前时刻检测到的数据作为所述已训练LSTM模型的输入,得到所述已训练LSTM模型输出的异常点数据检测结果。
参照上述对LSTM模型的介绍,本发明实施例将每类传感器在历史时刻检测到的数据作为训练LSTM模型的输入向量,在具有n类传感器的情况下,可以认为是LSTM模型运行了n个时间单位,在每个时间单位上,LSTM模型的输入向量为一类传感器在历史时刻检测到的数据。基于LSTM模型本身的特性,其在训练时考虑了不同输入向量之间的关系,从而在使用各类传感器检测到的数据训练LSTM模型时,保证了LSTM模型能够学习高各类传感器之间的联系。相比现有技术在检测流数据的异常点时未考虑数据特征间的内在联系,本发明实施例使用已训练的LSTM模型能够更准确地检测出异常点。也就是说,本发明实施例将对流数据的异常点检测看作基于时间序列的分类问题,考虑了各类传感器之间的关系,提高了异常点检测的准确度。
为了使本领域技术人员更加理解本发明实施例提供的技术方案,下面上述步骤进行详细说明。
具体地,上述步骤S201可以包括:利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),其中,正常点标签y的值为1;根据正常点的标签及所述目标概率值P(y=1|h),计算获得交叉熵,其中,所述交叉熵作为模型的损失函数,用于衡量概率值与标签的相似性;根据所述损失函数调整所述LSTM模型的参数。
值得说明的是,流数据滑动学习窗口的大小表示了每次学习的步长,流数据滑动学习窗口的大小具体可以根据输入向量动态调整,也可以预设为固定值。
图4是流数据滑动学习窗口学习数据特征的示意图。其中,图中最上层的每一个圆圈表示输入向量的一个元素,也即传感器在某一历史时刻检测到的数据。流数据滑动学习窗口的大小为4,即每次学习4个元素的数据特征。k1、k2和k3表示各层神经网络参数,具体参照图1所示的计算单元,每一层的神经网络参数包括如图1所示的计算单元中涉及到的参数。经过每一层神经网络参数处理后,得到相应的隐藏向量表示,如图4中示出的ht-2、ht-1和ht。由图1可知,上一层的隐藏向量表示将作为下一层隐藏向量表示。
这样,针对每一输入向量依次学习数据特征得到隐藏向量表示后,将隐藏向量表示经过逻辑回归层处理,即得到正常点的目标概率值P(y=1|h)。也就是说,正常点标签y的值为1,异常点标签y的值为0。目标概率值P(y=1|h)是指被检测的数据属于正常点的概率值,从而,被检测的数据属于异常点的概率值即为1-P(y=1|h)。另外,损失函数用于衡量概率值与标签的相似性,若相似性满足预设阈值,则可以停止训练,得到所述已训练LSTM模型;可替换地,在训练次数达到阈值时,也可以停止训练,得到所述已训练LSTM模型。
在本发明实施例的一种可能的实现方式中,所述利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),包括:利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到隐藏向量表示;将所述隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述目标概率值P(y=1|h)。
示例地,3类传感器在每一历史时刻tn-w到tn分别检测到数据,其中,传感器的分类可以按照传感器检测到的数据类型进行分类,例如上述3类传感器可以分别为温度类传感器、湿度类传感器、压力类传感器。并且,每一类传感器的数量可以为多个。以tn时刻举例,tn时刻的流数据其中,{xt1,xt2}是温度类传感器在tn检测到的数据,{xh1}是湿度类传感器在tn时刻检测到的数据,{xp1,xp2,xp3}是压力类传感器在tn时刻检测到的数据。这样,本发明实施例在该种可能的实现方式中,将每一类传感器在tn-w至tn时刻检测到的数据作为训练LSTM模型的输入向量。
具体地,如图4所示,采用LSTMt学习温度类传感器在tn-w至tn时刻检测到的数据序列的数据特征,采用LSTMh学习温度类传感器在tn-w至tn时刻检测到的数据序列的数据特征,采用LSTMp学习温度类传感器在tn-w至tn时刻检测到的数据序列的数据特征,在经过多个中间层的学习后,分别获得隐藏向量表示ht,hh,hp。进一步地,将ht,hh,hp作为逻辑回归层的输入向量hs,即hs=[ht,hh,hp],在经过逻辑回归层的激活函数处理后,得到目标概率值P(y=1|h)。
示例地,假设hs=[x1,x2,......xn],需要学习到y=a1x1+a2x2+......+b,即y=wl.hs+b,则可以做如下变换:令y=log(p/(1-p)),其中p是[0,1]之间的数值,可以认为是某件事情发生的可能性,针对y=log(p/(1-p))做进一步变换可得:
上述即为逻辑回归模型的函数形式,也叫做sigmoid函数。由上式可知p在[0,1]之间在整个实数域曲线连续且可导。在解决二分类问题的时候,可以设定一个阈值,当p大于阈值的时候,分为类别A,否则,分为类别B。则在本发明实施例中,对于正常点和异常点分类的问题,检测的数据为正常点的目标概率P(y=1|h)即为:
检测的数据为异常点的目标概率P(y=0|h)即为:
进一步地,通过以下公式可以获得目标概率P(y=1|h)与标签y之间的交叉熵L(θ):
L(θ)=-y log(P(y=1|h))+(1-y)log(1-P(y=1|h));
值得说明的是,交叉熵越小表示目标概率与标签越相似,从而可以将该交叉熵作为损失函数,对LSTM模型的各层参数进行调整。并且在进行参数调整后,参照图4所示的过程,继续基于3类传感器在tn-w至tn时刻检测到的数据对LSTM模型进行训练,直到训练出的目标概率与标签之间的相似性达到预设阈值,或者,直到训练次数达到阈值,停止训练,得到已训练LSTM模型。
在本发明实施例的另一种可能的实现方式中,所述利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),包括:利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到第一隐藏向量表示;将所述第一隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述第一概率值P(y=1|h1);利用所述LSTM模型的流数据滑动窗口学习所有传感器在所述历史时刻检测到的数据的特征,得到第二隐藏向量表示;将所述第二隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到第二概率值P(y=1|h2);根据所述第一概率值P(y=1|h1)和所述第二概率值P(y=1|h2)通过如下公式计算得到所述目标概率值P(y=1|h):
P(y=1|h)=sigmoid(α·P(y=1|h1)+β·P(y=1|h2))
其中,α大于0,β大于0,且α+β=1,sigmoid为激活函数。
基于图4的例子进行举例。如图5所示,参照上述对图4描述的过程,将hs=[ht,hh,hp]经过逻辑回归层的激活函数处理得到第一概率值P(y=1|h1)后,通过LSTMa学习所有传感器在tn-w至tn时刻检测到的数据的特征,得到隐藏向量表示ha,将ha经过逻辑回归层的激活函数处理得到第二概率值P(y=1|h2)。最终得到的目标概率值P(y=1|h)是第一概率值P(y=1|h1)和第二概率值P(y=1|h2)的加权求和,其中,权值α和β可以根据实际需求预先设定。
通过该种可能的实现方式计算得到目标概率值P(y=1|h)后,同样,可以计算交叉熵L(θ):L(θ)=-(ylogP(y=1|h)+(1-y)log(1-P(y=1|h))),并根据L(θ)对LSTM模型的参数进行调整。
在上述可能的实现方式中,LSTM模型在训练时,每一类传感器检测到的数据作为训练LSTM模型的输入向量,从而考虑到了相邻两类传感器之间的联系,同时为了捕获不同类别传感器之间的联系,将所有类别的传感器检测到的数据作为另一输入向量直接输入LSTM模型,有助于LSTM模型学习到不同类别传感器之间的更深层次的联系,进一步提高检测准确度。
进一步地,本发明实施例还可以根据所述交叉熵L(θ)通过SGD(StochasticGradient Descent,随机梯度下降)算法对模型参数进行调整。
具体地,参数调整如以下公式所示:
θ={Ws (i),Ws (f),Ws (c),Ws (o),Us (i),Us (f),Us (c),Us (o),
bs (i),bs (f),bs (c)bs (o),wl,b(i)},s={t,h,p,...,a}
其中,l是学习率,θ表示当前LSTM模型各层的参数,表示调整后的参数,表示交叉熵L(θ)对θ求导。参照图1,每个计算单元的参数包括W(i),U(i)以及b(i),即计算输入门向量表示的参数,以及W(f),U(f)以及b(f),即计算忘记门向量表示的参数,以及W(c),U(c)以及b(c),即计算记忆元向量表示的参数,以及W(o),U(o)以及b(o),即计算输出门向量表示的参数,另外,还包括点积等运算使用的相关参数。对应到图4和图5中,图中所示的每一LSTMt代表每一层,每一层的结构参照图1所示的计算单元。针对每层的每一参数通过上述公式计算可以求得调整后的参数。其中,LSTMh、LSTMp和LSTMa同理,这样,根据调整后的参数再次训练LSTM模型,直到交叉熵符合要求的数值或者训练次数达到阈值结束,得到已训练的LSTM模型。
值得说明的是,使用随机梯度下降算法可以使LSTM模型的各层参数朝最大梯度方向收敛,从而保证每次训练的交叉熵越来小,使得每一次训练后的交叉熵越来越接近符合要求的数值。
本发明实施例还提供一种检测装置60,用于实施上述方法实施例提供的一种流数据的异常点检测方法,如图6A所示,该检测装置60包括:
训练模块601,用于根据每类传感器在历史时刻检测到的数据,以及每一所述历史时刻的实测异常点数据训练长短时记忆递归神经网络LSTM模型,形成已训练LSTM模型,其中,每类所述传感器在所述历史时刻检测到的数据作为训练所述LSTM模型的一个输入向量;
检测模块602,用于将每类所述传感器在当前时刻检测到的数据作为所述已训练LSTM模型的输入,得到所述已训练LSTM模型输出的异常点数据检测结果。
具体地,如图6B所示,所述训练模块601包括:
数据特征学习模块6011,用于利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),其中,正常点标签y的值为1;
计算模块6012,用于根据正常点的标签及所述目标概率值P(y=1|h),计算获得交叉熵,其中,所述交叉熵作为模型的损失函数,用于衡量概率值与标签的相似性;
参数调整模块6013,用于根据所述损失函数调整所述LSTM模型的参数。
可选地,所述数据特征学习模块6011具体用于:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到隐藏向量表示;
将所述隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述目标概率值P(y=1|h)。
可选地,所述数据特征学习模块6011具体用于:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到第一隐藏向量表示;
将所述第一隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述第一概率值P(y=1|h1);
利用所述LSTM模型的流数据滑动窗口学习所有传感器在所述历史时刻检测到的数据的特征,得到第二隐藏向量表示;
将所述第二隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到第二概率值P(y=1|h2);
根据所述第一概率值P(y=1|h1)和所述第二概率值P(y=1|h2)通过如下公式计算得到所述目标概率值P(y=1|h):
P(y=1|h)=sigmoid(α·P(y=1|h1)+β·P(y=1|h2))
其中,α大于0,β大于0,且α+β=1,sigmoid为激活函数。
可选地,所述计算模块6012用于:
通过如下公式计算正常点的标签及所述目标概率值P(y=1|h)的交叉熵L(θ):
L(θ)=-(ylogP(y=1|h)+(1-y)log(1-P(y=1|h)))。
可选地,所述参数调整模块6013具体用于:
根据所述损失函数L(θ)通过随机梯度下降算法对模型参数进行调整。
本领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述功能模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
采用上述检测装置,该检测装置将每类传感器在历史时刻检测到的数据作为训练LSTM模型的输入向量,基于LSTM模型本身的特性,其在训练时考虑了不同输入向量之间的关系,从而在使用各类传感器检测到的数据训练LSTM模型时,保证了LSTM模型能够学习高各类传感器之间的联系。相比现有技术在检测流数据的异常点时未考虑数据特征间的内在联系,本发明使用已训练的LSTM模型能够更准确地检测出异常点。
在本申请所提供的实施例中,应该理解到,所公开的装置和方法,可以通过其它的方式实现。例如,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、RAM(Random Access Memory,随机存取存储器)、磁碟或者光盘等各种可以存储数据的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种流数据的异常点检测方法,其特征在于,所述流数据包括每类传感器在历史时刻检测到的数据,以及在每一所述历史时刻的实测异常点数据,所述方法包括:
根据每类所述传感器在所述历史时刻检测到的数据,以及所述实测异常点数据训练长短时记忆递归神经网络LSTM模型,形成已训练LSTM模型,其中,每类所述传感器在所述历史时刻检测到的数据作为训练所述LSTM模型的一个输入向量;
将每类所述传感器在当前时刻检测到的数据作为所述已训练LSTM模型的输入,得到所述已训练LSTM模型输出的异常点数据检测结果。
2.根据权利要求1所述的方法,其特征在于,所述根据每类所述传感器在所述历史时刻检测到的数据,以及所述实测异常点数据训练长短时记忆递归神经网络LSTM模型,形成已训练LSTM模型,包括:
利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),其中,正常点标签y的值为1;
根据正常点的标签及所述目标概率值P(y=1|h),计算获得交叉熵,其中,所述交叉熵作为模型的损失函数,用于衡量概率值与标签的相似性;
根据所述损失函数调整所述LSTM模型的参数。
3.根据权利要求2所述的方法,其特征在于,所述利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),包括:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到隐藏向量表示;
将所述隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述目标概率值P(y=1|h)。
4.根据权利要求2所述的方法,其特征在于,所述利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),包括:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到第一隐藏向量表示;
将所述第一隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述第一概率值P(y=1|h1);
利用所述LSTM模型的流数据滑动窗口学习所有传感器在所述历史时刻检测到的数据的特征,得到第二隐藏向量表示;
将所述第二隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到第二概率值P(y=1|h2);
根据所述第一概率值P(y=1|h1)和所述第二概率值P(y=1|h2)通过如下公式计算得到所述目标概率值P(y=1|h):
P(y=1|h)=sigmoid(α·P(y=1|h1)+β·P(y=1|h2));
其中,α大于0,β大于0,且α+β=1,sigmoid为激活函数。
5.根据权利要求2至4任一项所述的方法,其特征在于,所述根据正常点的标签及所述目标概率值P(y=1|h),计算获得交叉熵,包括:
通过如下公式计算正常点的标签及所述目标概率值P(y=1|h)的交叉熵L(θ):
L(θ)=-(ylogP(y=1|h)+(1-y)log(1-P(y=1|h)))。
6.根据权利要求5所述的方法,其特征在于,所述根据所述损失函数调整所述LSTM模型的参数,包括:
根据所述损失函数L(θ)通过随机梯度下降算法对模型参数进行调整。
7.一种检测装置,其特征在于,包括:
训练模块,用于根据每类传感器在历史时刻检测到的数据,以及每一所述历史时刻的实测异常点数据训练长短时记忆递归神经网络LSTM模型,形成已训练LSTM模型,其中,每类所述传感器在所述历史时刻检测到的数据作为训练所述LSTM模型的一个输入向量;
检测模块,用于将每类所述传感器在当前时刻检测到的数据作为所述已训练LSTM模型的输入,得到所述已训练LSTM模型输出的异常点数据检测结果。
8.根据权利要求7所述的装置,其特征在于,所述训练模块包括:
数据特征学习模块,用于利用所述LSTM模型的流数据滑动窗口学习每类所述传感器在所述历史时刻检测到的数据,得到正常点的目标概率值P(y=1|h),其中,正常点标签y的值为1;
计算模块,用于根据正常点的标签及所述目标概率值P(y=1|h),计算获得交叉熵,其中,所述交叉熵作为模型的损失函数,用于衡量概率值与标签的相似性;
参数调整模块,用于根据所述损失函数调整所述LSTM模型的参数。
9.根据权利要求8所述的装置,其特征在于,所述数据特征学习模块具体用于:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到隐藏向量表示;
将所述隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述目标概率值P(y=1|h)。
10.根据权利要求8所述的装置,其特征在于,所述数据特征学习模块具体用于:
利用所述LSTM模型的流数据滑动窗口分别学习每一类传感器在所述历史时刻检测到的数据的特征,得到第一隐藏向量表示;
将所述第一隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到所述第一概率值P(y=1|h1);
利用所述LSTM模型的流数据滑动窗口学习所有传感器在所述历史时刻检测到的数据的特征,得到第二隐藏向量表示;
将所述第二隐藏向量表示通过所述LSTM模型的逻辑回归层处理,得到第二概率值P(y=1|h2);
根据所述第一概率值P(y=1|h1)和所述第二概率值P(y=1|h2)通过如下公式计算得到所述目标概率值P(y=1|h):
P(y=1|h)=sigmoid(α·P(y=1|h1)+β·P(y=1|h2));
其中,α大于0,β大于0,且α+β=1,sigmoid为激活函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611229506.5A CN106815639A (zh) | 2016-12-27 | 2016-12-27 | 流数据的异常点检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611229506.5A CN106815639A (zh) | 2016-12-27 | 2016-12-27 | 流数据的异常点检测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106815639A true CN106815639A (zh) | 2017-06-09 |
Family
ID=59110168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611229506.5A Pending CN106815639A (zh) | 2016-12-27 | 2016-12-27 | 流数据的异常点检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106815639A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109447305A (zh) * | 2018-06-23 | 2019-03-08 | 四川大学 | 一种基于量子加权长短时记忆神经网络的趋势预测方法 |
CN109871764A (zh) * | 2019-01-16 | 2019-06-11 | 深兰科技(上海)有限公司 | 一种异常行为识别方法、装置及存储介质 |
CN110287439A (zh) * | 2019-06-27 | 2019-09-27 | 电子科技大学 | 一种基于lstm的网络行为异常检测方法 |
CN110430183A (zh) * | 2019-07-31 | 2019-11-08 | 福建师范大学 | 基于会话特征相似性的mh-lstm异常检测方法 |
CN111351664A (zh) * | 2020-02-13 | 2020-06-30 | 成都运达科技股份有限公司 | 一种基于lstm模型的轴承温度预测和报警诊断方法 |
CN111611218A (zh) * | 2020-04-24 | 2020-09-01 | 武汉大学 | 一种基于深度学习的分布式异常日志自动识别方法 |
CN112101400A (zh) * | 2019-12-19 | 2020-12-18 | 国网江西省电力有限公司电力科学研究院 | 工业控制***异常检测方法、设备和服务器、存储介质 |
CN112585926A (zh) * | 2018-08-23 | 2021-03-30 | 摩根士丹利服务集团有限公司 | 分布式***部件故障识别 |
CN112862127A (zh) * | 2021-04-23 | 2021-05-28 | 北京瑞莱智慧科技有限公司 | 一种传感器数据的异常处理方法、装置、电子设备及介质 |
CN115952465A (zh) * | 2023-03-10 | 2023-04-11 | 畅捷通信息技术股份有限公司 | 一种传感器数据异常检测的方法、装置及计算机存储介质 |
-
2016
- 2016-12-27 CN CN201611229506.5A patent/CN106815639A/zh active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109447305A (zh) * | 2018-06-23 | 2019-03-08 | 四川大学 | 一种基于量子加权长短时记忆神经网络的趋势预测方法 |
CN109447305B (zh) * | 2018-06-23 | 2021-09-07 | 四川大学 | 一种基于量子加权长短时记忆神经网络的趋势预测方法 |
CN112585926A (zh) * | 2018-08-23 | 2021-03-30 | 摩根士丹利服务集团有限公司 | 分布式***部件故障识别 |
CN109871764A (zh) * | 2019-01-16 | 2019-06-11 | 深兰科技(上海)有限公司 | 一种异常行为识别方法、装置及存储介质 |
CN110287439A (zh) * | 2019-06-27 | 2019-09-27 | 电子科技大学 | 一种基于lstm的网络行为异常检测方法 |
CN110430183A (zh) * | 2019-07-31 | 2019-11-08 | 福建师范大学 | 基于会话特征相似性的mh-lstm异常检测方法 |
CN112101400A (zh) * | 2019-12-19 | 2020-12-18 | 国网江西省电力有限公司电力科学研究院 | 工业控制***异常检测方法、设备和服务器、存储介质 |
CN111351664A (zh) * | 2020-02-13 | 2020-06-30 | 成都运达科技股份有限公司 | 一种基于lstm模型的轴承温度预测和报警诊断方法 |
CN111611218A (zh) * | 2020-04-24 | 2020-09-01 | 武汉大学 | 一种基于深度学习的分布式异常日志自动识别方法 |
CN112862127A (zh) * | 2021-04-23 | 2021-05-28 | 北京瑞莱智慧科技有限公司 | 一种传感器数据的异常处理方法、装置、电子设备及介质 |
CN112862127B (zh) * | 2021-04-23 | 2021-07-23 | 北京瑞莱智慧科技有限公司 | 一种传感器数据的异常处理方法、装置、电子设备及介质 |
CN115952465A (zh) * | 2023-03-10 | 2023-04-11 | 畅捷通信息技术股份有限公司 | 一种传感器数据异常检测的方法、装置及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106815639A (zh) | 流数据的异常点检测方法及装置 | |
WO2021042935A1 (zh) | 基于隐马尔科夫模型和迁移学习的轴承寿命预测方法 | |
CN108900546A (zh) | 基于lstm的时间序列网络异常检测的方法与装置 | |
US20200231466A1 (en) | Intelligent systems and methods for process and asset health diagnosis, anomoly detection and control in wastewater treatment plants or drinking water plants | |
CN106326984A (zh) | 用户意图识别方法和装置、自动应答*** | |
CN108664690A (zh) | 基于深度信念网络的多应力下长寿命电子器件可靠性寿命评估方法 | |
Ayodeji et al. | Causal augmented ConvNet: A temporal memory dilated convolution model for long-sequence time series prediction | |
US11593648B2 (en) | Methods and systems for detection and isolation of bias in predictive models | |
US11379685B2 (en) | Machine learning classification system | |
Ozawa et al. | A multitask learning model for online pattern recognition | |
CN108647643A (zh) | 一种基于深度学习的填料塔液泛状态在线辨识方法 | |
CN113360763A (zh) | 基于人工智能的业务关注倾向预测方法及人工智能云*** | |
CN112116002A (zh) | 一种检测模型的确定方法、验证方法和装置 | |
CN111079348B (zh) | 一种缓变信号检测方法和装置 | |
US20220187772A1 (en) | Method and device for the probabilistic prediction of sensor data | |
KR20220049573A (ko) | 거리 기반 학습 신뢰 모델 | |
CN110263808B (zh) | 一种基于lstm网络和注意力机制的图像情感分类方法 | |
CN111949496B (zh) | 一种数据检测方法及装置 | |
Ding et al. | A zero-shot soft sensor modeling approach using adversarial learning for robustness against sensor fault | |
Prisacaru et al. | Degradation prediction of electronic packages using machine learning | |
Wang et al. | Three‐stage feature selection approach for deep learning‐based RUL prediction methods | |
CN113156473A (zh) | 信息融合定位***卫星信号环境的自适应判别方法 | |
Lo | Predicting software reliability with support vector machines | |
CN107038143A (zh) | 基于改进的多层人工免疫网络模型的皮带秤故障诊断方法 | |
CN105468887B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170609 |
|
RJ01 | Rejection of invention patent application after publication |