基于智慧工业的数据异常检测方法、存储介质及终端与流程
未命名
07-15
阅读:135
评论:0
1.本发明涉及异常检测技术领域,尤其涉及基于智慧工业的数据异常检测方法、存储介质及终端。
背景技术:
2.随着工业大数据、工业物联网等技术的应用,工业界开始数字化转型,世界各国出台了对应的发展战略,如美国工业互联网、中国制造2025、德国工业4.0等。工业活动中,传感器短时间内产生的数据是海量的,人工难以基于海量传感器数据分析设备的潜在异常。
3.近年来,已经有大量的研究者研究机器学习方法,提取数据流的特征进行数据流异常检测。根据异常检测的建模类型,数据流的异常检测方法分为三类:统计建模方法、时序特征建模方法、空间特征建模方法。按照异常检测算法安装是否需要人工标注好数据集,则可分为有监督学习异常检测算法和无监督学习异常检测算法。
4.现有技术利用k-means聚类算法检测无线传感网络(wsn)的入侵异常,具体通过分析数据流的统计特征,计算出正常数据和异常数据的聚类中心,并通过计算wsn数据与聚类中心的欧式距离进行异常检测,对特定种类的入侵异常有较高的检测准确率。现有技术还提出将som算法与k-means聚类结合,实现了在线异常检测;该算法通过实时更新的网络结构,并利用新数据的适应程度重建异常簇或拆分正常簇,实现了对新型异常的检测。上述两种算法在检测统计异常时具有较高的检测准确率,并且不需要提前标注数据集,是无监督异常检测算法。然而上述算法也有一些缺点:
5.1、容易受到噪声点和孤立点影响,在计算各个簇的中心点时,计算出的均值与实际的均值会有很大的误差;
6.2、算法中的k值不容易获得,一般是通过个人经验来选取k值,或采用误平方和和轮廓系数法来获取,但这些方法往往不能得到真实的聚类数目,导致降低了聚类效果;
7.3、只适用于簇为凸型状和数值型的数据集,对于其他数据集,性能仍待提高;
8.4、初始聚类中心的选取对最后结果的分类影响较大,若初始聚类中心选取不当,可能导致聚类失败。
9.不同于上述聚类算法,现有技术还提出将长短期记忆(lstm)算法应用至工业物联网传感器数据流异常检测中。具体地,使用lstm模型预测未来数据,通过预测值与实际值的误差检测异常数据。此外,现有技术还提出利用lstm模型提取工业控制系统数据的时序特征,并使用softmax分类异常数据。上述方法利用rnn提取数据流的时序特征,通过预测算法预测未来数据,并利用预测值与真实值的误差检测异常值;或者使用分类算法检测异常数据。这类算法对于具有确定时序特征的数据流具有良好的检测准确率,而针对不具有确定时序特征的数据流无法实现准确检测,检测性能仍待进一步提高。
10.另外,工业场景中,由于多种数据采集器问题造成信息源不统一,各数据采集器如传感器的精度不同、工况不同,针对同一单位的测量可能出现不同结果,降低了后续异常检测准确度。
技术实现要素:
11.本发明的目的在于克服现有技术的问题,提供了一种基于智慧工业的数据异常检测方法、存储介质及终端。
12.本发明的目的是通过以下技术方案来实现的:一种基于智慧工业的数据异常检测方法,该方法包括以下步骤:
13.将各种工业数据分别进行卡尔曼滤波处理,再输入第一神经网络模型进行异常预测,所述卡尔曼滤波处理的协方差矩阵更新包括:
14.通过第二神经网络模型学习卡尔曼滤波算法的协方差矩阵的变化趋势,进而更新协方差矩阵。
15.在一示例中,所述协方差矩阵的更新公式为:
[0016][0017]
其中,函数f(
·
)是通过第二神经网络模型学习拟合协方差矩阵的变化趋势;p
k-1
表示上一时刻协方差矩阵。
[0018]
在一示例中,所述学习卡尔曼滤波算法的协方差矩阵的变化趋势包括:
[0019]
根据k-1时刻的状态预测k时刻的状态
[0020]
由k-1时刻的误差协方差矩阵p
k-1
推出中间变量
[0021]
通过中间变量更新卡尔曼增益系数kk;
[0022]
根据卡尔曼增益系数kk获得k时刻状态最优估计
[0023]
更新k时刻的协方差矩阵pk。
[0024]
在一示例中,所述通过第二神经网络模型学习卡尔曼滤波算法的协方差矩阵的变化趋势前还包括:
[0025]
将状态转移矩阵、过程激励噪声协方差矩阵、初始协方差矩阵作为输入,对第二神经网络模型进行训练,进而得到能够预测更新协方差矩阵的第二神经网络模型。
[0026]
在一示例中,所述第一神经网络模型为应用注意力机制的门控循环神经网络,或应用注意力机制的长短期记忆网络。
[0027]
在一示例中,所述应用注意力机制的门控循环神经网络进行预测时,包括:
[0028]
采用注意力机制将门控循环神经网络中各隐藏单元的输出结果与权重矩阵进行点乘处理。
[0029]
在一示例中,所述第二神经网络模型为门控循环神经网络或长短期记忆网络。
[0030]
在一示例中,所述将采集的工业数据进行卡尔曼滤波处理前还包括:
[0031]
对工业数据进行异常值处理、缺失值处理以及归一化处理。
[0032]
需要进一步说明的是,上述各示例对应的技术特征可以相互组合或替换构成新的技术方案。
[0033]
本发明还包括一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述任一示例或多个示例组成形成的所述基于智慧工业的数据异常检测方法的步骤。
[0034]
本发明还包括一种终端,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行上述任一示例或多个示例组成形成的所述基于智慧工业的数据异常检测方法的步骤。
[0035]
与现有技术相比,本发明有益效果是:
[0036]
本发明通过第一神经网络模型捕捉kf算法的协方差矩阵的变化趋势,能够动态调整过程激励噪声协方差矩阵q,使更新后的协方差矩阵p更加接近真实值,以此降低噪声对kf算法的影响,提高了卡尔曼滤波处理精度,进而保证了后续神经网络模型的异常预测准确性与可靠性;同时,采用改进kf算法对工业数据进行处理,能够剔除冗余数据,对各信息源进行统一处理,以此保证测量准确性;同时改进的kf算法还能够确定工业数据流的时序特征,进而使本方法能够对不具有时序特征的数据流进行准确异常检测。
附图说明
[0037]
下面结合附图对本发明的具体实施方式作进一步详细的说明,此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,在这些附图中使用相同的参考标号来表示相同或相似的部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。
[0038]
图1为本发明一示例中的异常检测方法流程图;
[0039]
图2为本发明一示例中的改进kf算法结构图;
[0040]
图3为本发明优选示例异常检测方法结构图;
[0041]
图4为本发明优选示例异常检测方法流程图。
具体实施方式
[0042]
下面结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0043]
在本发明的描述中,需要说明的是,属于“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方向或位置关系为基于附图所述的方向或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,使用序数词(例如,“第一和第二”、“第一至第四”等)是为了对物体进行区分,并不限于该顺序,而不能理解为指示或暗示相对重要性。
[0044]
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,属于“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
[0045]
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
[0046]
在一示例中,如图1所示,一种基于智慧工业的数据异常检测方法,该方法具体包括以下步骤:
[0047]
s1’:通过第二神经网络模型学习卡尔曼滤波算法的协方差矩阵的变化趋势,进而更新协方差矩阵p,以此实现对kf算法(卡尔曼滤波算法)的改进,再采用改进的kf算法分别
对各种工业数据进行处理,完成局部特征提取;
[0048]
s2’:将完成卡尔曼滤波处理后的工业数据输入第一神经网络模型,完成多种数据的数据融合,进一步挖掘各数据间的关系,进而实现异常预测。
[0049]
具体地,步骤s1中,第二神经网络模型可以为门控循环神经网络(gru网络)或长短期记忆网络(lstm网络),本示例优选为gru网络。进一步地,将不同数据采集器如传感器采集的数据作为一种工业数据,包括温度数据、气压数据、流量数据等,本步骤中各种工业数据可以是一种类型的数据,如均为温度数据,区别在于通过不同数据采集器进行采集,可以为不同装置或相同装置不同部位的温度数据等。
[0050]
进一步地,卡尔曼滤波算法为现有算法,包括预测部分与更新部分,预测部分的具体数据处理公式包括:
[0051][0052][0053]
其中,表示k时刻的估计状态;表示k-1时刻的估计状态;a表示状态转移矩阵;b表示控制矩阵,uk表示k时刻输入;p表示噪声协方差矩阵;p
k-1
表示上一时刻协方差矩阵;表示协方差矩阵的中间变量;q表示过程激励噪声协方差矩阵。由公式(2)可知协方差矩阵p的更新方程,由状态转移矩阵a和过程噪声矩阵q确定,而噪声矩阵q的选取,对于卡尔曼滤波状态更新有着巨大影响。
[0054]
状态更新部分的具体数据处理公式包括:
[0055][0056][0057][0058]
其中,kk表示卡尔曼系数;pk表示k时刻的协方差矩阵;c表示观测矩阵;t表示矩阵转置;r表示观测噪声协方差矩阵;yk表示观测量;i表示单位矩阵。
[0059]
kf算法在推测时考虑了噪声的影响,噪声通过协方差矩阵p传递给下个状态值。如果能够精准的更新协方差矩阵p,就能提高滤波精度,防止滤波发散。本发明中,改进的kf算法,是利用神经网络模型超强的表征能力,准确捕捉协方差矩阵的状态变更,即利用神经网络模型捕捉kf算法的协方差矩阵的变化趋势,能够动态调整过程激励噪声协方差矩阵q(现有kf算法中,q为经验定值),使更新后的协方差矩阵p更加接近真实值,以此降低噪声对kf算法的影响,提高了卡尔曼滤波处理精度,进而保证了后续神经网络模型的异常预测准确性与可靠性。同时,需要说明的是,本发明方法基于改进kf算法结合神经网络模型进行异常检测,由于未采用聚类算法,因此不存在现有基于聚类算法进行异常检测的无监督算法中存在的缺点。且卡尔曼滤波对初值友好,通常情况可以随机选取初值或用初始时刻测量值代替,即使有偏差,经过慢慢迭代,也会使偏差急剧缩小。在迭代过程中,卡尔曼滤波考虑观测噪声和系统噪声,结合观测值与估计值综合考虑,得到最优估计值,不易受到噪声与孤立点的影响。
[0060]
进一步地,本发明采用改进kf算法对工业数据进行处理,能够剔除冗余数据,对各信息源进行统一处理,以此保证测量准确性;同时改进的kf算法还能够确定工业数据流的
时序特征,进而使本方法能够对不具有时序特征的数据流进行准确异常检测。
[0061]
在一示例中,协方差矩阵的更新公式为:
[0062][0063]
其中,函数f(
·
)是通过第二神经网络模型学习拟合协方差矩阵的变化趋势。
[0064]
在一示例中,如图2所示,利用第二神经网络模型学习卡尔曼滤波算法的协方差矩阵的变化趋势包括:
[0065]
s11’:根据k-1时刻的状态预测k时刻的状态具体基于上述公式(1)进行预测;
[0066]
s12’:由k-1时刻的误差协方差矩阵p
k-1
推出中间变量基于上述公式(6)进行推导;
[0067]
s13’:通过中间变量更新卡尔曼增益系数kk,具体基于上述公式(3)进行更新;
[0068]
s14’:根据卡尔曼增益系数kk获得k时刻状态最优估计具体基于上述公式(4)进行处理;
[0069]
s15’:更新k时刻的协方差矩阵pk,具体基于上述公式(5)进行更新。需要进一步说明的是,图2中,“predict”表示预测,“update”表示更新。
[0070]
在一示例中,通过第二神经网络模型学习卡尔曼滤波算法的协方差矩阵的变化趋势前还包括:
[0071]
将状态转移矩阵a、过程激励噪声协方差矩阵q、初始协方差矩阵p作为输入,对第二神经网络模型进行训练,进而得到能够预测更新协方差矩阵的第二神经网络模型,基于第二神经网络模型的非线性处理能力进而动态调整过程激励噪声协方差矩阵q。
[0072]
在一示例中,第一神经网络模型为应用注意力机制的门控循环神经网络,即gru_attention网络。当然,作为一选项,也可采用应用注意力机制的长短期记忆网络,即lstm_attention网络。
[0073]
在一示例中,将完成卡尔曼滤波处理后的工业数据输入第一神经网络模型前还包括:
[0074]
s02’:构建gru_attention网络。具体地,工业数据具有较强的时序性,时间特征的充分准确提取对于精确预测未来数据十分关键,因此本发明采用能够处理时序数据的gru网络,并在gru的基础上应用attention机制,将各隐藏单元的输出结果与一个相关性权重矩阵进行点乘,获得更完整的时间特征,进一步保证了本发明对不具有时序特征的数据流进行异常检测的准确度,提高了网络的异常检测性能。根据样本数据序列的长度,设置gru中隐藏层单元个数为g。本发明采用一层激活函数为softmax的全连层来实现attention机制,其输入为gru隐藏层各单元的输出,其输出为各隐藏层输出结果与最后预测目标的相关性权重。
[0075]
采用gru_attention网络提取数据的时间特征具体实现方式为:
[0076]
gru网络中每一个重复模块都包含了更新门和重置门。重置门的输入为上一时刻的隐藏状态h
t-1
和当前时刻的输入x
t
,经过合并之后,得到[h
t-1
,x
t
],再乘上权重之后重新输入到sigmoid函数中,得到一个0~1之间的向量r
t
,公式如下:
[0077]rt
=σ(wr·
[h
t-1
,x
t
])
ꢀꢀ
(7)
[0078]rt
决定了上一时刻传来的隐藏状态中的信息,哪些需要被剔除,哪些需要被保留。若值为1时,表示隐藏状态信息全部被保留。计算备选隐藏状态公式如下:
[0079][0080]
其中,tanh()为双曲线激活函数,w为权重参数。更新门用于控制上一个gru单元的状态变量h
t-1
和新进入gru单元的向量对新状态向量h
t
的影响程度,主要根据下列两个公式实现:
[0081]zt
=σ(wz·
[h
t-1
,x
t
])
ꢀꢀ
(9)
[0082][0083]
其中wz为更新门参数,通过gru得到不同时刻的隐藏状态hn,将其作为attention机制层的输入。attention机制层的权重系数具体通过以下几个公式进行计算:
[0084]et
=utanh(wh
t
+b)
ꢀꢀ
(11)
[0085][0086][0087]
其中,e
t
、ej表示由gru输出向量在t、j时刻确定的注意力概率分布的值,u和w是权重系数,b是偏置系数,s
t
表示attention层在时间t的输出。输出层实现公式如下:
[0088]yt
=softmax(ws
t
+b1)
ꢀꢀ
(14)
[0089]
其中,w表示全连层的权重矩阵,b1表示全连层的偏置,y
t
为输出的预测标签,进而得到当前异常检测结果。
[0090]
在一示例中,将采集的工业数据进行卡尔曼滤波处理前还包括数据预处理:
[0091]
s0’:对工业数据进行异常值处理、缺失值处理以及归一化处理。具体地,可将与平均值的偏差超过三倍标准差的测定值称为高度异常的异常值,异常值处理即剔除异常值,以此保证数据流的可靠性。缺失值处理即填补缺失的数据,可通过相同状态下历史值或者前后相邻数据平均值进行填补。归一化处理即将数据流转换为标量,便于后续数据处理。
[0092]
将上述示例进行组合,得到本发明的优选示例,如图3-4所示,此时该异常检测方法包括以下步骤:
[0093]
s1:采集工业样本数据;
[0094]
s2:对工业数据进行异常值处理、缺失值处理以及归一化处理;
[0095]
s3:将各种完成预处理的数据分别输入改进的卡尔曼滤波器进行处理;
[0096]
s4:构建gru_attention网络;
[0097]
s5:将完成卡尔曼滤波的不同数据数据进行拼接,并输入gru_attention网络进行异常预测;
[0098]
s6:对预测数据进行逆向归一化变化处理得到最终异常检测结果。
[0099]
当然,作为一选项,s4构建gru_attention网络也可在步骤s3前执行。
[0100]
本技术还包括一种存储介质,与上述任一示例或多个示例组成的基于智慧工业的数据异常检测方法具有相同的发明构思,其上存储有计算机指令,所述计算机指令运行时
执行上述基于智慧工业的数据异常检测方法的步骤。
[0101]
基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0102]
本技术还包括一种终端,与上述任一示例或多个示例组成的基于智慧工业的数据异常检测方法具有相同的发明构思,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行上述基于智慧工业的数据异常检测方法的步骤。处理器可以是单核或者多核中央处理单元或者特定的集成电路,或者配置成实施本发明的一个或者多个集成电路。
[0103]
在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0104]
以上具体实施方式是对本发明的详细说明,不能认定本发明的具体实施方式只局限于这些说明,对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演和替代,都应当视为属于本发明的保护范围。
技术特征:
1.一种基于智慧工业的数据异常检测方法,其特征在于:包括以下步骤:将各种工业数据分别进行卡尔曼滤波处理,再输入第一神经网络模型进行异常预测,所述卡尔曼滤波处理的协方差矩阵更新包括:通过第二神经网络模型学习卡尔曼滤波算法的协方差矩阵的变化趋势,进而更新协方差矩阵。2.根据权利要求1所述的基于智慧工业的数据异常检测方法,其特征在于:所述协方差矩阵的更新公式为:其中,函数f(
·
)是通过第二神经网络模型学习拟合协方差矩阵的变化趋势;p
k-1
表示上一时刻协方差矩阵。3.根据权利要求1所述的基于智慧工业的数据异常检测方法,其特征在于:所述学习卡尔曼滤波算法的协方差矩阵的变化趋势包括:根据k-1时刻的状态预测k时刻的状态由k-1时刻的误差协方差矩阵p
k-1
推出中间变量通过中间变量更新卡尔曼增益系数k
k
;根据卡尔曼增益系数k
k
获得k时刻状态最优估计更新k时刻的协方差矩阵p
k
。4.根据权利要求1所述的基于智慧工业的数据异常检测方法,其特征在于:所述通过第二神经网络模型学习卡尔曼滤波算法的协方差矩阵的变化趋势前还包括:将状态转移矩阵、过程激励噪声协方差矩阵、初始协方差矩阵作为输入,对第二神经网络模型进行训练,进而得到能够预测更新协方差矩阵的第二神经网络模型。5.根据权利要求1所述的基于智慧工业的数据异常检测方法,其特征在于:所述第一神经网络模型为应用注意力机制的门控循环神经网络,或应用注意力机制的长短期记忆网络。6.根据权利要求5所述的基于智慧工业的数据异常检测方法,其特征在于:所述应用注意力机制的门控循环神经网络进行预测时,包括:采用注意力机制将门控循环神经网络中各隐藏单元的输出结果与权重矩阵进行点乘处理。7.根据权利要求1所述的基于智慧工业的数据异常检测方法,其特征在于:所述第二神经网络模型为门控循环神经网络或长短期记忆网络。8.根据权利要求1所述的基于智慧工业的数据异常检测方法,其特征在于:所述将采集的工业数据进行卡尔曼滤波处理前还包括:对工业数据进行异常值处理、缺失值处理以及归一化处理。9.一种存储介质,其上存储有计算机指令,其特征在于:所述计算机指令运行时执行权利要求1-8任意一项所述的基于智慧工业的数据异常检测方法的步骤。10.一种终端,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令,其特征在于:所述处理器运行所述计算机指令时执行权利要求1-8任意一项所述的基于智慧工业的数据异常检测方法的步骤。
技术总结
本发明公开了基于智慧工业的数据异常检测方法、存储介质及终端,属于异常检测技术领域,采用改进的KF算法对分别各种工业数据进行处理后,再输入第一神经网络模型进行异常预测。改进KF算法具体通过第二神经网络模型学习其协方差矩阵的变化趋势,进而实现协方差矩阵的更新。本发明改进后的KF算法能够动态调整过程激励噪声协方差矩阵Q,以此降低噪声对KF算法的影响,进而保证了后续神经网络模型的异常预测准确性与可靠性;同时,采用改进KF算法对工业数据进行处理,能够剔除冗余数据,对各信息源进行统一处理,以此保证测量准确性;同时改进的KF算法还能够确定工业数据流的时序特征,进而使本方法能够对不具有时序特征的数据流进行准确异常检测。流进行准确异常检测。流进行准确异常检测。
技术研发人员:李晓瑜 姚艳玲 文怡 周秋宇 郑德生 钱伟中 周永
受保护的技术使用者:中国航发四川燃气涡轮研究院
技术研发日:2023.02.28
技术公布日:2023/7/12
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
