本发明涉及工业过程故障诊断,尤其涉及一种基于概率慢特征对比学习的工业过程微小故障诊断方法。
背景技术:
1、工业过程是否处于健康状态,直接决定着产品的质量、经济效益和人身安全,因此故障诊断一直是热点课题。随着科技的快速发展,工业过程正变得自动化、大型化和复杂化。与生产效率的提高一同而来的,是故障的影响越发具有破坏性,即使是早期的微小故障,随着时间的进程,也会演变为危害整个系统的重大故障。在这样的背景下,研究人员相继提出了许多故障检测与诊断算法,如一些传统的多元统计分析方法:主成分分析(pca)、慢特征分析(sfa)等。
2、sfa作为一种新型的无监督的数据变换和降维方法,可以从快速变化的时间序列数据中提取出不变或慢变的数据分量。在工业过程中,sfa所具备的强大动态分析能力使其更易发现数据中的异常。在专利cn116204775a中公开了一种基于慢特征分析的机械设备故障诊断方法,从二维特征中提取慢特征方阵图并进行模型训练,提高了故障诊断能力。然而由于多元统计分析方法的数学原理相对简单,提取的特征大多较浅,提取的特征质量较低,诊断准确率较低,单一的基于多元统计方法的故障诊断策略逐渐遭到冷落。
3、另一方面随着过程数据的激增和深度学习的快速发展,为故障诊断领域带来了新的研究方向,基于深度学习的智能故障诊断方法得到了认可和广泛应用。研究者相继提出了一系列智能诊断方法,如卷积神经网络(cnn)、长短期记忆网络(lstm)等。在专利cn115165363b中,提出了一种基于cnn的轻型轴承故障诊断方法及系统,构建的轻型网络取得了良好的诊断效果。
4、然而,在研究过程中发现,尽管深度学习的引入使得故障特征的提取能力得到了显著提升,在其帮助下能够实现对大多数故障类型的检测与诊断,但多变量复杂工业过程中微小故障的诊断效果依旧不理想。这些微小故障往往发生在过程早期,具有幅值低、变化缓慢、易被过程干扰和测量噪声淹没等特点,其早期数据特征与正常数据极为相似,对它们的有效检测与诊断一直是工业过程故障诊断领域的难题之一。因此,如何从复杂的非线性工业过程数据中,深度挖掘有效的微小故障特征,实现对其的及时监测与诊断,是目前研究中充满挑战性的一个重要问题。
技术实现思路
1、本发明针对传统数据驱动机器学习算法难以对复杂非线性工业过程的微小故障进行有效诊断的技术问题,提供了一种基于概率慢特征对比学习的工业过程微小故障诊断方法;该方法将js散度与sfa算法结合,提取数据的概率慢特征,然后以提取的概率慢特征构建正负对,输入到基于对比学习的特征提取器网络进行训练,实现微小故障特征的精细化提取,最后将提取的特征输入softmax分类器实现故障诊断。设计的两步特征提取方法不仅将传统的慢特征提取方法拓展到概率空间,还首次将其与对比学习相结合,实现了对微小故障特征的高效提取,极大提高了复杂非线性工业过程微小故障诊断的准确率。
2、为了实现上述发明目的,本发明采用技术方案具体为:一种基于概率慢特征对比学习的工业过程微小故障诊断方法,包括以下步骤:
3、步骤s1:获取历史数据库中的正常工况数据x0,利用其均值mean(x0)和标准差std(x0)对历史数据xold标准化,得到标准化后的训练数据x;
4、步骤s2:利用慢特征分析方法从训练数据x中提取主要慢特征s=[s1,s2,...,sm];
5、步骤s3:引入js散度,结合滑动窗口方法处理慢特征s,将其映射到概率空间,得到训练数据x的概率慢特征p=[p1,p2,...,pm];
6、步骤s4:数据集制备:重复步骤s2和步骤s3,得到正常工况及各故障类型的若干概率慢特征数据样本,标记故障标签,作为训练数据集;
7、步骤s5:利用训练数据集构建对比学习样本对;
8、步骤s6:利用训练数据集样本对训练以1d-cnn为主干网络的对比学习特征提取器;
9、步骤s7:利用经过训练的特征提取器提取的特征训练softmax分类器;
10、步骤s8:到达设定训练轮次后,保存训练好的对比学习特征提取器和softmax分类器的网络参数;
11、步骤s9:采集工业生产过程中的数据作为测试数据xnew,按照与步骤s1到步骤s4同样的方法制备得到无标签测试数据集;
12、步骤s10:将制备好的无标签测试数据集依次输入训练好的对比学习特征提取器和softmax分类器,得到故障分类结果。
13、进一步的,在所述步骤s1中,对历史数据xold利用正常数据x0均值mean(x0)和标准差std(x0)进行标准化的具体表达式为:
14、x=(xold-mean(x0))/std(x0)(1)
15、式中,x=[x1,x2,...,xn]t∈rn×m,n为样本数,m为变量数。
16、进一步的,在所述步骤s2中,利用慢特征分析方法从训练数据x中提取主要慢特征的具体步骤为:
17、(1)从历史数据库中可得到正常工况数据x0;
18、(2)求白化矩阵:对正常数据x0的协方差矩阵进行奇异值分解:
19、得到白化矩阵q=λ-1/2ut,x0的白化变换则为:
20、(3)求变换矩阵:对白化数据b的一阶导的协方差矩阵进行奇异值分解:
21、求得变换矩阵w=pλ-1/2ut;
22、(4)训练数据x的全部慢特征即按如下公式计算:s=wx,其中
23、s=[s1,s2,...,sm]∈rn×m;
24、(5)计算正常工况数据x0中各变量的慢度δ(x0j),依据公式确定主要慢特征个数m,其中q=0.1代表集合
25、{δ(xj)}的0.1上分位数;
26、(6)得到训练数据x的主要慢特征s=[s1,s2,...,sm]∈rn×m,其中m<m,代表主要慢特征个数,n为样本数。
27、进一步的,在所述步骤s3中,利用js散度采用滑动窗口方法计算训练数据x的概率慢特征p的具体步骤为:
28、滑动窗口算法的参数设置为:窗宽设置为h,步长设置为1,每个采样时刻向后移动一次,数据样本个数为n,共有n=n-h+1个采样时刻;
29、将历史数据库中正常工况数据x0作为基准数据,经过与步骤s1、s2同样的处理后得到基准数据主要慢特征sb=[sb1,sb2,...,sbm]∈rn×m;
30、计算sb的均值和方差作为基准均值μb和基准方差λb;
31、计算第k个采样时刻训练数据x的主要慢特征s的均值μs(k)和方差λs(k);
32、由公式(2)计算训练数据x的第k个采样时刻的概率慢特征p,公式(2)的表达式如下:
33、
34、计算得到p=[p1,p2,...,pm]∈rn×m,n为采样时刻数,m为主要慢特征数。
35、进一步的,在所述步骤s5中,利用训练数据集构建对比学习样本对的具体步骤为:
36、训练数据集可表示为d={pi,yi},其中p为样本数据,y∈{1,...,k}代表故障标签,i∈i≡{1,2,...,n}代表样本索引;
37、在数据集d中,对于任意两个不同的样本[pi,pj],如果yi=yj,即故障标签相同,则它们可以构成一个正样本对,否则构成负样本对;
38、可得到正样本对集:
39、负样本对集:
40、样本对总集合:a={p+,p-}。
41、进一步的,在所述步骤s6中,利用训练数据集样本对训练以1d-cnn为主干网络的对比学习特征提取器的具体步骤为:
42、s601、根据训练数据慢度调整对比损失温度系数τ;
43、s602、利用1d-cnn为主干的特征提取网络提取样本pi的特征zi;
44、s603、利用提取的特征zi计算慢特征对比损失lsf;
45、s604、使用自适应矩估计算法(adam优化器)更新网络参数,保存参数。
46、再进一步的,所述步骤s601中,根据训练数据慢度调整对比损失温度系数τ的具体方法为:
47、慢度是慢特征分析中的重要概念,慢度的大小是衡量数据变化快慢情况的重要指标,随时间变化较快的慢特征为噪声特征,而随时间变化较慢的慢特征反映数据真实的变化情况;
48、温度系数τ是对比损失的重要参数,其取值范围为0-1,决定着对比学习中模型对样本的区分度。温度系数值越接近于0,模型越关注困难样本,但同时也容易导致模型收敛缓慢、泛化能力差,反之若值设的过大接近1,则会导致模型学习没有轻重;
49、依据特征慢度计算公式:可计算得到训练数据所有特征的平均慢度δ(s),最大慢度δ(s)max,最小慢度δ(s)min;从正常的历史数据中,可计算得到正常特征的标准慢度δ(s)n;
50、通过下式,可实现由数据慢度确定温度系数τ:
51、
52、由该式计算的温度系数相比通过经验设定的温度系数,可以帮助特征提取器更准确的提取特征,更快的收敛模型。
53、再进一步的,所述步骤s602中,输入信号在1d-cnn为主干的特征提取网络中的依次经过输入层、第一卷积层、第一池化层、第二卷积层、第二池化层,展平层、输出层,具体参数及作用如下:
54、输入层:接受概率慢特征数据作为输入信号pi;
55、第一卷积层:卷积核大小为3,用于提取输入信号的特征;
56、第一池化层:池化核大小为2,用于减少每个特征图的空间尺寸;
57、第二卷积层:卷积核大小为3,用于进一步提取经过一次卷积处理后的信号特征;
58、第二池化层:池化核大小为2,用于减少每个特征图的空间尺寸;
59、展平层:将得到的多维特征展平为一维特征向量;
60、输出层:输出经过提取的特征zi。
61、再进一步的,在所述步骤s603中,利用提取的特征zi计算慢特征对比损失lsf的具体步骤为:
62、假设一个训练批次的样本总数为n,则对比损失可被计算为lsf
63、
64、其中,函数dis(·)用于计算两个特征之间的欧式距离,τ是温度系数;
65、训练该损失可实现最大化正样本对的相似度和最小化负样本对的相似度效果,使同标签样本更相似,并放大不同标签样本之间的差异。
66、进一步的,在所述步骤s7中,利用经过训练的特征提取器提取的特征训练softmax分类器的具体步骤为:
67、可定义至步骤s6为止所述特征提取操作为函数f(),则zi=f(xi)。
68、首先根据输入数据的维度,使用一个或多个全连接层将zi转换为与分类数相同长度的向量,则softmax分类器的输出可表示为:
69、
70、其中,θ为待优化的全连接层参数;
71、使用adam优化器优化参数θ,损失函数如下:
72、
73、其中,y为样本真实标签,优化完后保留参数。
74、进一步的,在所述步骤s9、s10中,在线测试数据从安装在工业生产设备上的多种传感器获得,将该数据经过处理后,输入步骤s8保存的已训练的对比学习模型中,输出微小故障类型。
75、上述方法中,步骤s1至s3为概率慢特征提取阶段,步骤s4至s8为慢特征对比学习阶段,步骤s9至s10为在线数据故障诊断阶段。
76、与现有技术相比,本发明的有益效果为:
77、1、本发明提供的工业过程微小故障诊断方法,引入了js散度,并将js散度与慢特征分析结合,实现了概率慢特征的提取。
78、2、本发明提出了一种根据数据慢度确定对比学习中关键超参数温度系数的方法,帮助对比学习模型更快速的收敛,获得更好的特征提取能力。
79、3、本发明采用两步特征提取方法,创新性的将慢特征分析与对比学习融合,利用对比学习构建特征提取器实现了对微小故障特征的精细化提取。
80、4、与现有的深度学习微小故障诊断方法相比,构建的特征提取网络仅包含两个卷积层,内存及计算资源占用更小,这有助于模型应用于更多场景。
1.一种基于概率慢特征对比学习的工业过程微小故障诊断方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于概率慢特征对比学习的工业过程微小故障诊断方法,其特征在于,在所述步骤s1中,对历史数据xold利用正常数据x0均值mean(x0)和标准差std(x0)进行标准化的表达式为:
3.根据权利要求1所述的基于概率慢特征对比学习的工业过程微小故障诊断方法,其特征在于,在步骤s2中,利用慢特征分析方法从训练数据x中提取慢特征的具体步骤为:
4.根据权利要求1所述的基于概率慢特征对比学习的工业过程微小故障诊断方法,其特征在于,在步骤s3中,利用js散度采用滑动窗口方法计算训练数据x的概率慢特征p的具体步骤为:
5.根据权利要求1所述的基于概率慢特征对比学习的工业过程微小故障诊断方法,其特征在于,在步骤s5中,利用训练数据集构建对比学习样本对的具体步骤为:
6.根据权利要求1所述的基于概率慢特征对比学习的工业过程微小故障诊断方法,其特征在于,在步骤s6中,利用训练数据集样本对训练以1d-cnn为主干网络的对比学习特征提取器的具体步骤为:
7.根据权利要求1所述的基于概率慢特征对比学习的工业过程微小故障诊断方法,其特征在于,在步骤s7中,利用经过训练的特征提取器提取的特征训练softmax分类器的具体步骤为:
8.根据权利要求1所述的基于概率慢特征对比学习的工业过程微小故障诊断方法,其特征在于,在步骤s9、s10中,在线测试数据从安装在工业生产设备上的多种传感器获得,将该数据经过处理后,输入步骤s8保存的已训练的对比学习模型中,输出微小故障诊断结果。
9.根据权利要求1所述的基于概率慢特征对比学习的工业过程微小故障诊断方法,其特征在于,步骤s1至s3为概率慢特征提取阶段,步骤s4至s8为慢特征对比学习训练阶段,步骤s9至s10为在线数据故障诊断阶段。
