异常检测模型的构建方法、异常检测方法及异常检测系统

文档序号:37767234发布日期:2024-04-25 10:53阅读:10来源:国知局
异常检测模型的构建方法、异常检测方法及异常检测系统

本发明涉及机器学习,尤其涉及工业系统的故障或异常检测。


背景技术:

1、现代工业系统复杂性和集成化程度日益升高,同时面临着任务和运行环境动态多样性的挑战,由此带来的可靠性、安全性问题也日趋突出。与此同时,随着低成本传感与通信技术的发展,现代工业系统通常安装有各种故障、异常的监督检测系统,在线监测记录系统的状态、性能、运行环境及载荷等参数。

2、现有的故障、异常的监督检测系统,通常可以分为以下两种:

3、1.利用传感器采集系统正常运行状态和异常运行状态下的数据,并通过分析建模工具分别建立正常和异常状态的数学模型,寻找正常运行状态和异常运行状态的数据的分类边界完成对异常的检测。常用的分析建模工具,如svm(支持向量机)、rf(随机森林算法)、深度学习等;

4、2.利用传感器采集系统正常运行状态下的数据,并通过分析建模工具建立正常状态的数学模型,寻找正常运行状态的数据的边界或捕获正常运行状态相对于异常运行状态具有区分度的特征完成对异常的检测。常用的分析建模工具,如pca(主成分分析技术)、one-class svm(单类支持向量机)、深度学习等方法。

5、相比于普通的需要进行异常检测的系统来说,工业系统具有以下特点:首先,工业系统通常具有庞大和复杂的组成,传感器采集得到的数据往往都是大量非线性数据;其次,随着传感器技术的进步使得数据收集变得越来越容易,导致数据库规模越来越大、复杂性越来越高,需要分析处理的数据维度也越来越高;再次,工业领域采集的数据还具有时序相关性较强的特点,所谓时序相关性,是指数据的发生与时间变化的相关程度,相关程度越高则时序相关性越强。

6、将现有的故障、异常的监督检测系统,应用于具有上述特征的工业系统时,出现了以下问题:

7、1.现有技术的异常检测模型对非线性数据的特征提取能力弱,进而降低了对工业系统中非线性数据进行异常检测的准确率;

8、2.现有技术的异常检测模型对时序性强的数据的特征捕捉能力不足,进而降低了对工业系统中强时序性数据进行异常检测的准确率;

9、3.现有技术的异常检测模型对高维度数据的分析能力弱,进而降低了对工业系统进行异常检测的效率;

10、4.现有技术的异常检测模型在确定异常检测阈值时,需要将数据的初始分布作为参数用以确定阈值,但又无法明确判断数据的初始分布,常用的技术手段是将数据的初始分布近似地认定为高斯分布,这样建立的模型就带有一定的误差,进而降低了对工业系统进行异常检测的准确率;

11、5.现有技术的异常检测模型在确定异常检测阈值时,需要手动设置一些参数,这些参数的设置依赖于个人经验,不同的初始参数会导致建立的数据模型的不同,从而得到的异常检测的结果也不同,进而导致对工业系统进行异常检测的准确率依赖于人工检验、不同人检测的结果一致性差;

12、6.现有技术的异常检测模型确定异常检测阈值的常用方法是采用3σ方法或者极值理论方法,这两种方法确定的阈值都是固定阈值,不能根据环境参数的变化动态地调整阈值,导致对工业系统进行异常检测的环境适应性差,进而导致在不同工作环境下对工业系统进行异常检测准确率低。

13、7.现有技术中的异常检测方法或异常检测系统,采用现有技术的异常检测模型,针对工业系统运行异常的检测,数据提取分析能力差导致检测结果准确率低,异常检测阈值参数设置依赖人工经验导致检测结果的准确性和一致性差,异常检测阈值不能自适应调整导致检测方法或系统对不同工作环境的适应性差。


技术实现思路

1、本发明的目的在于提出异常检测模型的构建方法、异常检测方法及异常检测系统,以解决现有技术所存在的上述技术问题:

2、本发明的上述技术问题主要是通过下述技术方案得以解决的:

3、本发明所述的一种异常检测模型的构建方法,其技术方案如下:

4、所述一种异常检测模型的构建方法,包括:

5、s1、在待测工业系统无异常的稳定运行工况下,采集所述待测工业系统多个状态参数的数据作为原始训练时序数据样本,所述原始训练时序数据样本的集合即为工业系统无异常状态下的原始训练时序数据集;

6、s2、对所述原始训练时序数据样本进行数据预处理,得到训练数据样本,所述训练数据样本的集合即为工业系统无异常状态下的训练数据集;

7、s3、利用lstm深度模型所具有的长时间序列建模能力,并依据自编码器原理构建初步lstm-ae模型;

8、s4、利用所述训练数据集对所述初步lstm-ae模型进行重构训练,优化所述初步lstm-ae模型的网络权重值,得到训练后的lstm-ae模型以及训练数据样本的误差序列;

9、s5、利用所述训练数据集的误差序列,获得待测工业系统的自适应阈值公式,公式中包含一个训练数据重构误差参数,通过赋予训练数据重构误差参数一个数值,可以获得自适应阈值的值,自适应阈值的值用于异常值的判断,完成异常检测模型的构建。

10、进一步的,提供一个优选实施方式,所述步骤s1中:

11、所述原始训练时序数据样本,表示为:

12、

13、所述原始训练时序数据集,表示为:

14、x={x(1),x(2),....,x(i),....,x(n)}

15、其中,

16、i∈[1,n],j∈[1,m]

17、式中,n表示采集了n个时间点的原始训练时序数据样本,m表示原始训练时序数据样本由m个维度的特征组成,表示第i个时间点采集的原始训练时序数据样本的第j个维度的数据。

18、进一步的,提供一个优选实施方式,所述步骤s2,具体如下:

19、s2.1、对采集的原始训练时序数据样本中的每一个维度的数据进行标椎化处理,用公式表示为:

20、

21、标准化后的原始训练时序数据样本,表示为:

22、

23、标准化后的原始训练时序数据集,表示为:

24、x*={x(*1),x(*2),....,x(*i),...,x(*n)}

25、其中,

26、j∈[1,m]

27、式中,表示标准化后的第i时间点采集的原始训练时序数据样本的第j个维度的数据,u(xj)表示n个原始训练时序数据样本在第j个维度上的均值,σ(xj)表示n个原始训练时序数据样本在第j个维度上的方差;

28、s2.2、对标准化后的原始训练时序数据样本进行等时间间隔提取,得到训练数据样本,具体过程如下:

29、设i为提取间隔,l为提取长度,则提取的第一个训练数据样本为:

30、a(1)={x(*1),x(*2),...,x(*l)}

31、提取的第k个训练数据样本,表示为:

32、a(k)={x(*(1+(k-1)i)),x(*(2+(k-1)i)),....,x(*(l+(k-1)i))}

33、设n为提取的训练数据样本的总个数,则提取的第n个训练数据样本的最后一项数据:

34、

35、其中,

36、

37、n个训练数据样本的集合为训练数据集,表示为

38、a={a(1),a(2),...,a(k),...,a(n)}。

39、进一步的,提供一个优选实施方式,所述步骤s3,具体如下:

40、所述初步lstm-ae模型分为三层,其中两层属于lstm层,另外一层属于线性全连接层;

41、所述两层lstm层分别为编码层和解码层;

42、编码层、解码层以及线性全连接层的输入参数的维度和输出参数的维度均设置为m,即与输入初步lstm-ae模型的数据样本具有相同的维度;

43、编码层由l个lstm单元构成,编码层的每个lstm单元的表示t时刻的编码隐藏状态;

44、解码层也由l个lstm单元构成,解码层的每个lstm单元的表示t时刻的解码隐藏状态;

45、在神经网络的前向传播中,设置解码层的解码隐藏状态与编码层的编码隐藏状态,在t=l时相同,即在1≤t≤l-1时,设置解码层的解码隐藏状态为其中,fd表示解码层lstm单元的运算过程,为t+1时刻解码层的解码隐藏状态,xt为中t时刻所对应的初步lstm-ae模型的输入;

46、设置解码层的解码隐藏状态为线性全连接层t时刻的输入,则线性连接层t时刻的输出为即为初步lstm-ae模型的t时刻对应的重构输出,f表示激活函数,w和b均为初步lstm-ae模型的网络权重值。

47、进一步的,提供一个优选实施方式,所述步骤s4,具体如下:

48、s4.1、构建神经网络损失函数,其具体过程如下:

49、将训练数据集a中的训练数据样本a(k)作为初步lstm-ae模型的输入,则对应的重构输出序列为:

50、

51、其中,为t时刻的重构输出,其与训练数据样本a(k)中的x(*(t+(k-1)i))相对应,记x(*(t+(k-1)i))为xt,则构建的神经网络损失函数为:

52、

53、s4.2、对初步lstm-ae模型进行重构训练,更新优化网络权重值,其具体过程如下:

54、设定一个预定义的训练次数,将训练数据集a中的所有训练数据样本依次循环输入初步lstm-ae模型,以最小化神经网络损失函数为目标,更新优化网络权重值,当循环的次数达到预定义的训练次数时,训练结束,得到训练后的lstm-ae模型。

55、s4.3、训练结束后,将训练数据集a中的训练数据样本a(k)作为训练后的lstm-ae模型的输入,则对应的重构输出序列为:

56、

57、其中,为训练后的lstm-ae模型在t时刻的重构输出,其与训练数据样本a(k)中的x(*(t+(k-1)i))相对应,记x(*(t+(k-1)i))为xt,则xt对应的重构误差为:

58、

59、则训练数据样本a(k)对应的误差序列为:

60、etr={e1,e2,...,et,....,el}。

61、进一步的,提供一个优选实施方式,所述步骤s5,具体如下:

62、s5.1、计算误差阈值的计算公式,公式中包含一个待设置的参数异常概率值q,其具体过程如下:

63、计算训练数据集误差序列中极值的分布,公式为:

64、

65、其中,

66、γ∈r,1+γx>0

67、式中,x为误差序列中的数据;γ为极值系数,其取决于误差序列数据的初始分布;

68、利用基于第二极值定理的方法,对误差序列中极值的分布进行拟合,当且仅当存在σ时,对于x∈r且1+γx>0,则有:

69、

70、式中,ft(x)表示x的累计分布函数,t为初始阈值,x-t为超过阈值t的部分;极值的分布在x-t的部分符合广义帕累托分布,基于第二极值定理的方法利用广义帕累托分布将极值拟合到x-t部分;其中,极值系数γ和σ的估计,利用极大似然法得到,表示为和得到误差阈值的计算公式:

71、

72、其中,nt表示x-t的个数,n是数据个数,q是异常概率值,通过设置异常概率值q的值可以得到误差阈值ttr;

73、s5.2、通过公式法自动获取最优异常概率值,将误差阈值的计算公式中的异常概率值q设置为最优异常概率值,计算得出误差阈值ttr,其具体过程如下:

74、将异常概率值q的确定等价成一个优化过程,其优化目标与计算过程为:

75、

76、其中,ttr为误差阈值;etr为误差序列;δμ(etr)和δσ2(etr)表示去除异常值后误差序列均值和方差的变化;|ea|表示异常的个数,可以解释为q值确定的目标为去掉超过阈值部分的数据后,使得etr均值和标准差衰减最大时的值;

77、当第一个公式的值最大时,公式中异常概率值q的值为最优异常概率值;

78、在误差阈值的计算公式中,设置异常概率值q等于最优异常概率值,得到误差阈值ttr;

79、s5.3、自适应阈值公式为:

80、

81、式中,ε为系数;η为一个超参数系数;trc为训练数据重构误差参数,通过给训练数据重构误差参数赋予不同的值,可以对误差阈值ttr进行实时调整。

82、本发明所述的一种基于lstm-ae和动态阈值调整异常检测方法,其技术方案如下:

83、s6、在待测工业系统的待测试运行工况下,采集待测工业系统多个状态参数的实时数据作为原始测试时序数据样本,原始测试时序数据样本的集合即为工业系统待测试状态下的原始测试时序数据集;

84、s7、对采集的原始测试时序数据样本进行数据预处理,得到测试数据样本,测试数据样本的集合即为工业系统待测试状态下的测试数据集;

85、s8、将测试数据样本作为异常检测模型的输入,计算出每个测试数据样本的重构误差和误差序列,并将测试数据样本的重构误差的值赋予所述训练数据重构误差参数,获得自适应阈值的值;所述异常检测模型为上述任意一个实施方式所述构建方法构建获得;

86、s9、比较测试数据样本的重构误差与自适应阈值的值的大小关系,判断待测工业系统是否有异常。

87、进一步的,提供一个优选实施方式,所述步骤s6中:

88、所述原始测试时序数据样本,表示为:

89、

90、所述原始测试时序数据集,表示为:

91、y={y(1),y(2),...,y(i),...,y(n)}

92、其中,

93、i∈[1,n′],j∈[1,m]

94、式中,n′表示采集了n′个时间点的原始测试时序数据样本,m表示原始测试时序数据样本由m个维度的特征组成,表示第i个时间点采集的原始测试时序数据样本的第j个维度的数据。

95、进一步的,提供一个优选实施方式,所述步骤s7,具体如下:

96、s7.1、对采集的原始测试时序数据样本中的每一个维度的数据都进行标椎化处理,用公式表示为:

97、

98、标准化后的原始测试时序数据样本,表示为:

99、

100、标准化后的原始训练时序数据集,可表示为:

101、y*={y(*1),y(*2),....,y(*i),...,y(*n′)}

102、其中,

103、j∈[1,m]

104、式中,表示标准化后的第i时间点采集的原始测试时序数据样本的第j个维度的数据,u(yj)和表示的n′个原始训练时序数据样本在第j个维度上的均值,σ(yj)表示n′个原始测试时序数据样本在在第j个维度上的方差;

105、s7.2、对标准化后的原始测试时序数据样本进行等时间间隔提取,得到测试数据样本,具体过程如下:

106、设i为提取间隔,l为提取长度,则提取的第一个测试数据样本为:

107、b(1)={y(*1),y(*2),...,y(*l)}

108、提取的第k个测试数据样本,表示为:

109、b(k)={y(*(1+(k-1)i)),y(*(2+(k-1)i)),....,y(*(l+(k-1)i))}

110、设n′为提取的测试数据样本的总个数,则提取的第n′个测试数据样本的最后一项数据:

111、

112、可知,

113、

114、其中,n′为的标椎化后的多维时序数据中样本数据的个数;

115、n′个测试数据样本的集合为测试数据集,表示为

116、b={b(1),b(2),...,b(k),...,b(n′)}。

117、本发明所述一种异常检测系统,其技术方案如下:

118、该系统包括:处理器和存储器,其特征在于,所述存储器用于存储所述处理器的可执行指令,所述处理器配置为经由执行所述可执行指令来执行上述任意一个实施方式所述的一种异常检测方法。

119、本发明有以下有益效果:

120、本发明应用于工业系统的异常检测领域,对工业系统运行数据中的异常数据可以进行有效的检测。

121、1.针对现有技术的异常检测模型对非线性或时序性强的数据的特征提取能力弱,导致对工业系统进行异常检测的准确率低的问题,本发明所述异常检测模型通过利用lstm-ae所具有的对非线性数据的处理能力和长时间序列依赖的记忆能力,能有效适应工业领域数据的非线性和时序性强的特点,提高了对工业系统进行异常检测的准确率。

122、2.针对现有技术的异常检测模型对高维度数据的分析能力弱,导致对工业系统进行异常检测的效率率低的问题,本发明所述异常检测模型通过利用lstm-ae所具有的对高维度数据的分析能力,能快速高效的对高维度数据进行分析建模,提高了对工业系统进行异常检测的效率。

123、3.针对现有技术的异常检测模型在确定异常检测阈值时,使用数据初始分布的近似高斯分布作为参数,导致建立的初始数据模型存在误差,进而降低了对工业系统进行异常检测的准确率的问题,本发明所述异常检测模型提出了将极值理论用于重构误差的分析并得到异常检测阈值的方法,这种方法不依赖数据的初始分布,不会存在将数据的初始分布近似地认定为高斯分布产生的误差,提高了对工业系统进行异常检测的准确率。

124、4.针对现有技术的异常检测模型在确定异常检测阈值时,需要手动设置一些参数,导致对工业系统进行异常检测的准确率依赖于人工检验、不同人检测的结果一致性差的问题,本发明所述异常检测模型提出了一种自动确定极值理论的参数设置方法,可自动得到误差阈值,无需人为调整参数,减轻了异常检测对人为经验的依赖,避免了因个人经验的不同导致异常检测的准确率忽高忽低,能够长期稳定对异常进行检测。

125、5.针对现有技术的异常检测模型在进行阈值判定时,大多采用3σ方法或者极值理论方法,不能根据环境参数的变化动态地调整阈值,导致对工业系统进行异常检测的环境适应性差,进而导致在不同工作环境下对工业系统进行异常检测准确率低的问题,本发明所述异常检测模型提出一种利用公式对阈值进行动态调整的方法,提高了构建的模型的自适应能力,进而提高了对工业系统进行异常检测的环境适应性,同时避免了传统固定阈值在异常状态检测准确率上的局限性,提高了在不同工作环境中对工业系统进行异常检测的准确率。

126、6.本发明所述一种基于lstm-ae和动态阈值调整的异常检测方法以及所述一种异常检测系统,采用本发明所述异常检测模型,针对工业系统运行异常的检测,提高了准确率,减少了对人工经验的依赖,提高了检测的结果的准确性和一致性,提高了对不同工作环境的适应性。

127、本发明所述异常检测模型、所述异常检测方法以及所述异常检测系统应用于对工业系统进行异常检测。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1