作者简介:郭金玉(1975—),沈阳化工大学副教授、博士.研究方向:故障诊断、生物特征识别算法及应用. E-mail: 969554959@qq.com
GUO Jinyu,YU Huan,and LI Yuan.Related and independent variable fault detection method based on KPCA-SVM[J].Journal of Shenzhen University Science and Engineering,2023,40(1):14-21.[doi:10.3724/SP.J.1249.2023.01014]
College of Information Engineering, Shenyang University of Chemical Technology, Shenyang110142, Liaoning Province, P. R. China
automatic control technology; kernel principal component analysis; support vector machine; fault detection; related variables; independent variables
DOI: 10.3724/SP.J.1249.2023.01014
备注
作者简介:郭金玉(1975—),沈阳化工大学副教授、博士.研究方向:故障诊断、生物特征识别算法及应用. E-mail: 969554959@qq.com
引言
随着现代工业规模不断发展扩大,对工业生产过程进行故障监测和诊断,在保证生产安全和提高产品质量等方面发挥了重要作用.过程监控日益受到学术界和工业领域研究人员的广泛关注[1-2].在各种监测方法中,数据驱动方法,尤其是多元统计过程监控(multivariate statistical process monitoring, MSPM)近年来得到了迅速发展[3-5].一些具有代表性的方法,如主成分分析(principal component analysis, PCA)、典型变量分析(canonical variate analysis,CVA)和偏最小二乘(partial least squares, PLS)方法等,已被广泛用于过程监控和故障诊断[6].
作为最普遍的MSPM方法,PCA已经得到了深入的研究.PCA方法将线性数据矩阵投影到含有所有相关信息的低维子空间上实现降维,同时保留了重要信息.PCA方法使用平方预测误差(squared prediction error,SPE)和Hotellings T 2统计量对样本进行监控[7].然而,工业过程中数据变量之间的非线性和动态性会导致传统PCA方法的检测性能较差.针对此类非线性问题,SCHÖLKOPF等[8]提出核主成分分析(kernel principal component analysis, KPCA)方法,通过使用核函数避免了复杂的非线性优化过程;LEE等[9]首先将KPCA应用于故障检测;CHOI等[10]开发了用于故障识别的KPCA贡献图;ZHANG等[11]将小波分解技术与滑动中值滤波相结合,提出改进的KPCA方法;FAN等[12]提出的核独立成分分析-主成分分析(independent component analysis-principal component analysis,KICA-PCA)方法利用了局部数据结构分析的同时考虑了非线性和非高斯特性;JENSSEN[13]提出核熵成分分析(ker‐nel entropy component analysis,KECA)方法,并用于无高斯假设的非线性工业过程故障检测.然而,传统的PCA、KPCA和PLS方法都是基于全局模型,忽略了局部结构信息.DENG等[14]提出一种2步局部KPCA(two-step localized KPCA,TSLKPCA)方法,通过设计一种2步局部信息挖掘框架,在提取核成分的同时,保留了全局和局部数据结构信息,有效地提高了早期故障诊断的性能.邓晓刚等[15]提出一种基于双层局部KPCA的非线性检测方法,将过程变量划分为多个变量块,通过构建函数挖掘样本局部信息,提高故障检测能力.为改善这些全局方法在故障检测中的不足,几种局部方法,如等距特征映射、局部线性嵌入和局部保持投影(locality pre‐serving projections,LPP)[16]在故障检测中被广泛使用.这些方法的主要思想是寻找数据集中存在的局部结构.LPP是一种线性投影方法,可以保留数据的局部特征,提高故障检测的性能.ZHANG等[17]提出一种全局-局部结构(global-local structure analy‐sis,GLSA)方法,利用底层局部几何流形的同时保留了全局信息.该方法结合了LPP和PCA的优点.在实际应用中,正常条件下的数据较多,而关于故障状态的信息较少.在故障样本有限的情况下,提高学习能力具有重要意义.支持向量机(support vector machine,SVM)[18]是一种经典的模式分类方法,对小样本、非线性数据进行故障检测时效果更显著,在解决高维模式识别和函数拟合等问题时具有许多优势,是统计学习理论中结构风险最小化原则的一种实现[19].SVM将采集到的数据通过函数映射到高维特征空间,并在高维特征空间中建立最优分离超平面,有效地解决了非线性数据分类问题.XUE等[20]构建了一个先进的故障检测与诊断框架,通过引入高斯核支持向量机递归特征消除方法,提取非线性特征并选择出最优参数,该方法用于解决故障检测中的非线性问题.然而,这种方法没有考虑过程变量间的相关性,这会影响SVM的故障检测性能.
HUANG等[21]提出一种相关和独立变量划分策略并运用不同方法检测这2类变量.本研究将相关和独立变量的特征作为变量划分的基础,提出一种基于KPCA-SVM的相关和独立变量故障检测方法.传统的KPCA方法假设变量之间的关系是非线性的,但在工业过程中,有些变量是独立于其他变量的,这类变量应被单独分离和监控.首先,采用互信息来判断变量是否独立.互信息值接近0表示两个变量之间不相关.互信息向量是由变量与其他变量之间的互信息生成的,如果互信息向量中的每个值都接近于0,则认为该变量是独立的.对每个变量进行检验后,可完成独立变量与相关变量的划分.然后,对独立变量和相关变量分别采用SVM和KPCA进行故障检测.
-
1 KPCA和SVM方法原理
1. 1 KPCA原理PCA是一种线性降维方法,在处理非线性相关的数据时不能很好地发挥作用.KPCA的思想是将原始输入数据通过非线性核函数映射到高维特征空间,在高维特征空间中计算核矩阵的特征值和特征向量.KPCA方法可以对非线性数据进行有效监控.设输入数据矩阵X=[x 1,x 2,⋯,xn ] T∈R n×m ,其中,xi ( i=1 ,2 ,…,n )∈R m , n为样本数, m为变量数.利用非线性映射函数Φ将原始空间的数据映射到高维特征空间F,则特征空间中样本的协方差矩阵为
设C的特征值为λ,特征向量为V,则有
其中,符号 表示内积;V在特征空间中表示为
其中,αi为线性相关系数.
在式(2)等号两边同时用Φ ( xk ) ( k=1 ,2 ,⋯,n )做内积,结合式(3)可得
为避免高维运算,引入n×n维的核矩阵
内积可通过引入核函数计算.本研究采用高斯核函数
其中,σ为窗口宽度.则式(4)可简化为
对核矩阵K=( Kij )∈Rn×n进行中心化处理,可得
Kˉ =K-IK-KI+IKI(8)
其中,I为系数为1/n的n阶单位矩阵.
将式(7)进一步简化,可得
为了保证V Ti Vi=1 ,i=1 ,2 ,⋯,n.由式(3)和式(9)得到α=[ α 1 ,α 2 ,⋯,αn ] T归一化的条件为
核主成分的选取取决于λ的值,本研究仅选取前k(k<n)个较大的特征值对应的特征向量,实现对数据的降维,k个特征向量组成的矩阵记为Vl=[ V 1,V 2,…,Vk ].
提取测试样本xnew的核主成分,计算其在特征向量上的投影为
测试样本的T 2和SPE统计量分别为其中,Λ为对角矩阵,其元素是核矩阵
的前k个较大的特征值.
1. 2 SVM原理SVM是机器学习中经典的分类方法之一,通过构造一个决策超平面,对正负样本进行有效分类,以最大超平面分离得到最好的泛化能力.在处理线性数据时,SVM能够构建最大间隔超平面并对数据进行分类.给定一组训练数据样本{( xi,yi ),i=1,2,∙∙∙,n},xi∈R m,yi∈{-1,}+1 ,则最优超平面将由少数样本(支持向量)的最近点决定.超平面( ω,b)的基本形式为
ωx+b=0(14)
其中,ω为特征空间中分离超平面的法向量;b为位移项.若( ω,b)能够正确分类样本,则有
其中,ω为特征空间中分离超平面的法向量;b为位移项.
2个类别的支持向量到超平面的间隔距离之和为γ.为找到能使分类间隔最大的超平面,对分离超平面SVM的优化问题进行归一化.SVM的基本形为
为降低SVM模型对噪声点的敏感性,提高模型的泛化能力,引入惩罚因子C>0和松弛变量ξi≥0,则SVM基本形可改写为
为求解式(17)问题,将该原始问题转化为对偶问题,构造拉格朗日函数
其中,拉格朗日乘子αi≥0, μi≥0. L ( ω,α,b,μ,ξ )对ω、 b和ξi的偏导,令其结果等于0,求解式(18),可得
处理非线性样本问题时,通过非线性映射函数Φ将输入数据映射到高维空间并建立最大超平面.通过定义合适的内积核函数可避免高维运算.
K ( xi,xj )= Φ ( xi ),Φ ( xj )(20)
引入核函数后的SVM模型表示为
其中,sgn为符号函数.
-
2 基于KPCA-SVM的故障检测方法
2. 1 相关变量和独立变量的划分传统的故障检测方法通常假设变量之间是相关的.然而,在实际工业过程中,各变量之间关系复杂,有些是线性相关,有些是非线性相关,还有些是相互独立的或弱相关.因此,应该对独立变量和相关变量进行分离和独立监测.变量划分可以突出相关变量之间的强相关性,消除不相关变量对检测结果的影响.
给定数据矩阵X =[ x 1,x 2,⋯,xn ] T∈R n×m ,采用互信息探讨任意两个变量之间的相关关系.互信息对线性和非线性依赖关系敏感,可估计二阶或高阶关系.互信息作为衡量随机变量间独立性的指标,由其理论背景信息定义[21].变量之间的相关程度可由互信息的值反映.当且仅当2个变量相互独立时,互信息等于0.
变量xi的香农熵估计为
其中,p(xi)是变量xi的概率密度.因此,两变量x1和x2互信息为
用x1和x2的熵表示式(23),则有
I(x1,x2)=H(x1)+H(x2)-H(x1,x2) (24)
其中,H ( x1,x2 )是x1和x2的联合熵.
对变量xi ∈Rm建立互信息向量pi ∈Rm-1,其中元素是变量xi与其他m-1变量之间的互信息值.计算pi的范数为Di= pi .
生成随机矩阵R=[ r 1,r 2,⋯,rm-1 ]T∈Rn×( m-1),其中, ri ( i=1,2,⋯,m-1 )是零均值单位方差的高斯分布数据.计算xi与R中其余m-1个变量的互信息得到互信息向量qi∈Rm-1.R中任意两个变量都是不相关的,且任意ri都独立于原始数据矩阵X中的变量xi.这意味着qi中每个元素的值都接近0.计算qi的范数Ni= qi ,Di<Ni表示变量xi独立于其他变量,此时xi要分到独立变量矩阵XI中,其余变量则分到相关变量矩阵XR中.通过独立变量的划分将原始数据分成XI和XR两部分,即X=[ XI,XR ].
2. 2 KPCA-SVM的故障检测步骤将原始数据矩阵X划分为相关变量矩阵XI和独立变量矩阵XI,XR的变量之间包括线性和非线性相关关系,KPCA对非线性相关问题有很好的处理效果.利用KPCA对相关变量进行检测,分别得到T 2和SPE的控制限T 2lim和SPE lim.对于独立变量,采用SVM进行分类.最终,KPCA-SVM的统计量KS定义为
离线建模流程为
1)在正常条件下,采集训练数据矩阵X并进行标准化;
2)对于X中的每个变量xi ,计算对应的互信息向量pi和qi;
3)计算Di和Ni ,并划分相关变量和独立变量;4)将X划分为相关变量矩阵XR和独立变量矩阵XI;
5)建立相关变量矩阵XR的KPCA模型,运用核密度估计得到控制限T 2lim和SPElim;
6)使用训练数据和部分故障数据的独立变量矩阵生成SVM模型的训练数据,并对训练数据贴标签,其中正常数据标签为0,故障数据标签为1,用其训练SVM模型.
在线故障检测流程为
1)收集测试数据Y,使用离线建模数据的均值和标准差进行标准化,再将测试数据划分为相关变量矩阵YR和独立变量矩阵YI;
2)将Y R投影到KPCA模型上,计算统计量T2和SPE进行故障检测;
3)运用SVM模型对YI进行故障分类,分类标签为0的数据为正常数据,而分类标签为1的数据为故障数据;
4)根据式(25)得到最终统计量,计算故障检测率.
-
3 仿真实验
3. 1 TE过程目前,田纳西-伊斯曼(Tennessee-Eastman,TE)过程[22]已被广泛用于检验故障检测方法的效果,包括5个主要单元,在化学反应中存在4种反应物A、C、D、E和惰性气体B,产生产物G、H和副产物F.在TE过程仿真数据集中有22个连续测量和12个操纵变量.基准数据集包括33个变量和960个样本.其中,第161~960个样本产生了21种不同类型的故障,本研究选用其中12种过程故障(表1)来验证KPCA-SVM方法的有效性.
3. 2 数据采集以TE工业过程为背景,选取500个正常样本作为KPCA的训练数据集,选取后300个故障样本作为测试数据集.基于互信息变量划分策略的变量划分结果如图1.由图1可见,变量1、7、9、10、12、13、15、16、17、18、19、20、25、27、28、29、30、31和33为相关变量,其余变量为独立变量.KPCA、KECA以及KPCA-SVM方法的置信度设为0. 99,通过寻优测试设置KPCA和KECA中核函数参数σ=2 500.SVM和KPCA-SVM方法采用高斯核函数处理非线性数据,通过寻优测试设惩罚因子C=0. 25,窗宽=0. 05.
表1 12种TE过程故障Table 1 12 faults of TE process
图1 TE过程变量划分柱状图Fig. 1 Bar graph of variable division in TE process.
3. 3 仿真结果故障3是反应物D的进料温度出现阶跃变化, KPCA、 KECA、 SVM和KPCA-SVM四种方法对故障3的后300个故障样本的检测效果如图2.
KECA方法中柯西-施瓦茨(Cauchy-Schwarz, CS)统计量表示了角度信息,比KPCA方法的SPE统计量检测效果有所提升.传统的SVM方法在训练时加入了故障数据,能够有效学习到故障的变化特征,因此检测效果优于KPCA和KECA.KPCA-SVM方法在独立变量空间中的故障检测效果比传统SVM有明显提升,说明剔除相关变量后可改进传统SVM的检测效果.
图2 (a)KPCA、(b)KECA、(c)SVM 、(d)KPCA-SVM检测相关变量和(e)KPCA-SVM检测独立变量方法对故障3的检测结果Fig. 2 (Color online) Detection results of (a) KPCA, (b) KECA, (c) SVM, (d) KPCA-SVM detecting related variables and (e) KPCA-SVM detecting independent variables methods for fault 3. In (a), (b) and (d), the solid line is for test set and the dash line is for 99% control limit.
故障5为冷凝器的冷却水入口温度出现阶跃变化,冷却水的流量也随之发生变化.但是,由于控制系统的存在,阶跃变化会在一段时间后得到补偿.本研究选择后300个故障样本进行检测,此时故障已经非常微小.KPCA、KECA、SVM和KPCA-SVM四种方法对故障5的检测效果如图3.
图3 (a)KPCA、(b)KECA、(c)SVM、(d)KPCA-SVM检测相关变量和(e)KPCA-SVM检测独立变量方法对故障5的检测结果Fig. 3 (Color online) Detection results of (a) KPCA, (b) KECA, (c) SVM, (d) KPCA-SVM detecting related variables and (e) KPCA-SVM detecting independent variables methods for fault 5. In (a), (b) and (d), the solid line is for test set and the dash line is for 99% control limit.
传统KPCA方法的故障检测效果并不理想,在控制限上方的故障样本数较少,说明在故障补偿时KPCA方法不能很好地检测到故障.KECA的检测效果好于KPCA的T2,但是低于KPCA的SPE.由于故障5是微小故障,统计分析方法很难检测出来.传统SVM方法由于在训练时加入了故障数据,能够有效地学习到故障的变化特征,检测效果优于KPCA和KECA.相比KPCA、KECA和SVM方法, KPCA-SVM方法在相关变量空间中的SPE统计量总是超出控制限,因为KPCA方法能够很好地去除变量的相关性.对比图3(a)和(d),可以明显看出, KPCA-SVM方法对相关变量数据的检测效果更好,并且能够检测到微小故障.
表2是4种故障检测方法对不同故障类型的故障检测率对比.由表2可见,KPCA-SVM算法的故障检测率部分有明显提升,表明该方法整体检测效果较好.其中,对故障1、2、5、8、12、13和18的故障检测率达到100%;对故障3、5、10、15、19和20的故障检测率都有不同程度的提升.
表2 KPCA、KECA、SVM和KPCA-SVM方法对TE过程故障检测率对比1) Table 2 Comparison of fault detection rates of KPCA, KECA、SVM, and KPCA-SVM for TE process
-
结 语
提出一种基于KPCA-SVM的故障检测方法,采用基于互信息的变量划分策略将原始数据变量划分为相关变量和独立变量,运用KPCA和SVM方法分别检测相关变量空间和独立变量空间.将KPCA-SVM方法应用到TE过程中,仿真结果表明,与KPCA、KECA和SVM方法相比,KPCA-SVM方法有效提高了故障检测率.本研究主要研究KPCA-SVM方法在工业过程故障检测的实现与仿真,然而,实际工业中的过程数据变量之间关系往往更加复杂,对检测方法要求更高,未来可对变量进行更细致地划分并分别采用不同的方法检测,以提升方法的检测效果.本研究尚缺少实际工业数据的检测结果,这也是未来研究工作的方向.
- [1]TAO Yang, SHI Hongbo, SONG Bing, et al. A novel dynamic weight principal component analysis method and hierarchical monitoring strategy for process fault detection and diagnosis [J]. IEEE Transactions on Industrial Elec‐tronics, 2020, 67(9): 7994-8004.
- [2]LAN Ting, TONG Chudong, YU Haizhen, et al. Nonlinear process monitoring based on decentralized generalized regression neural networks [J]. Expert Systems with Appli‐cations, 2020, 150: 113273.
- [3]GE Zhiqiang. Review on data-driven modeling and moni‐toring for plant-wide industrial processes [J]. Chemomet‐rics and Intelligent Laboratory Systems, 2017, 171: 16-25.
- [4]HE Q P, WANG Jin. Statistical process monitoring as a big data analytics tool for smart manufacturing [J]. Journal of Process Control, 2018, 67: 35-43.
- [5]WANG Youqing, SI Yabin, HUANG Biao, et al. Survey on the theoretical research and engineering applications of multivariate statistics process monitoring algorithms:2008—2017 [J]. The Canadian Journal of Chemical Engi‐neering, 2018, 96(10): 2073-2085.
- [6]LI Ning, GUO Shaojun, WANG Youqing. Weighted preliminary-summation-based principal component analy‐sis for non-Gaussian processes [J]. Control Engineering Practice, 2019, 87: 122-132.
- [7]张成,郭青秀,冯立伟,等.基于局部保持投影-加权k近邻规则的多模态间歇过程故障检测策略[J].控制理论与应用,2019,36(10):1682-1689. ZHANG Cheng, GUO Qingxiu, FENG Liwei, et al. Fault detection strategy based on locality preserving projections-weighted k nearest neighbors in multimodal batch pro‐cesses [J]. Control Theory & Applications, 2019, 36(10):1682-1689. (in Chinese)
- [8]SCHÖLKOPF B, SMOLA A, MÜLLER K R. Nonlinear component analysis as a kernel eigenvalue problem [J]. Neural Computation, 1998, 10(5): 1299-1319.
- [9]LEE J M, YOO C K, CHOI S W, et al. Nonlinear process monitoring using kernel principal component analysis [J]. Chemical Engineering Science, 2004, 59(1): 223-234.
- [10]CHOI S W, LEE C, LEE J M, et al. Fault detection and identification of nonlinear processes based on kernel PCA [J]. Chemometrics and Intelligent Laboratory Systems, 2005, 75(1): 55-67.
- [11]ZHANG Yingwei, LI Shuai, HU Zhiyong. Improved multi-scale kernel principal component analysis and its applica‐tion for fault detection [J]. Chemical Engineering Research and Design, 2012, 90(9): 1271-1280.
- [12]FAN Jicong, QIN S J, WANG Youqing. Online monitoring of nonlinear multivariate industrial processes using filtering KICA–PCA [J]. Control Engineering Practice, 2014, 22: 205-216.
- [13]JENSSEN R. Kernel entropy component analysis [J]. IEEE Transactions on Pattern Analysis and Machine Intel‐ligence, 2010, 32(5): 847-860.
- [14]DENG Xiaogang, CAI Peipei, CAO Yuping, et al. Two-step localized kernel principal component analysis based incipient fault diagnosis for nonlinear industrial processes [J]. Industrial & Engineering Chemistry Research, 2020, 59(13): 5956-5968.
- [15]邓晓刚,邓佳伟,曹玉苹,等.基于双层局部KPCA的非线性过程微小故障检测方法[J].化工学报, 2018,69(7):3092-3100. DENG Xiaogang, DENG Jiawei, CAO Yuping, et al. Double-level local KPCA method for incipient fault detec‐tion in nonlinear process [J]. CIESC Journal, 2018, 69(7):3092-3100. (in Chinese)
- [16]HU Kunlun, YUAN Jingqi. Multivariate statistical pro‐cess control based on multiway locality preserving projec‐tions [J]. Journal of Process Control, 2008, 18(7/8):797-807.
- [17]ZHANG Muguang, GE Zhiqiang, SONG Zhihuan, et al. Global–local structure analysis model and its application for fault detection and identification [J]. Industrial&Engi‐neering Chemistry Research, 2011, 50(11): 6837-6848.
- [18]VAPNIK V N. An overview of statistical learning theory [J]. IEEE Transactions on Neural Networks, 1999, 10(5):988-999.
- [19]郭金玉,李涛,李元.基于DW-ICA-SVM的工业过程故障检测算法[J].河北科技大学学报,2021,42 (4):369-379. GUO Jinyu, LI Tao, LI Yuan. Fault detection algorithm of industrial process based on DW-ICA-SVM [J]. Journal of Hebei University of Science and Technology, 2021, 42(4):369-379. (in Chinese)
- [20]XUE Yangtao, ZHANG Li, WANG Bangjun, et al. Nonlin‐ear feature selection using Gaussian kernel SVM-RFE for fault diagnosis [J]. Applied Intelligence, 2018, 48(10):3306-3331.
- [21]HUANG Jian, YAN Xuefeng. Related and independent variable fault detection based on KPCA and SVDD [J]. Journal of Process Control, 2016, 39: 88-99.
- [22]LYMAN P R, GEORGAKIS C. Plant-wide control of the Tennessee Eastman problem [J]. Computers & Chemical Engineering, 1995, 19(3): 321-331.