基于ReliefF-SFA的热处理炉过程监测方法
2021-06-04王伟兵
王伟兵
河钢股份有限公司邯郸分公司信息自动化部,河北 邯郸 056000
随着科学技术的发展,现代工业系统的规模和复杂程度也日益增加。热处理炉设备[1]在退火过程中有着十分重要的地位,其运行状态对产品质量产生了直接的影响。因此,对常化炉的运行过程监测方法的研究显得十分重要。多元统计的方法[2]是目前较为常用的过程监测方法,慢特征分析(SFA)作为一种全新的特征提取和降维方法,近年来受到了广泛关注。它能够从时序信号中提取出变化最缓慢的成分,有效表征系统所固有的本质属性,这些成分被称为慢特征。然而传统的SFA只是对数据做了一个映射变换,并不能实现数据的降维,在实际的热处理设备工业背景下,生产过程复杂,数据变量少则数十个,多则上千个。即使变量维度不大,如果盲目地放入算法中,将不能保证监测的有效性,可能会出现漏报或误报的现象,对于热处理炉的过程监测存在一定的挑战性。
在SFA方法的基础上,文章提出了ReliefF-SFA方法,将原有方法进行扩展,先对数据进行映射变换得到慢特征;然后采用ReliefF方法选取权重大的变量放入主子空间,其余的放入残余子空间,使其能够判断是否发生故障。
1 慢特征分析概述
慢特征分析(SFA)是Wiskott[3]提出的一种从快速变化的时序信号中提取不变或慢变特征的方法,它作为一种新的特征提取方法受到广泛关注。慢特征表征了数据所属事物的固有性质,在时序信号的分析中发挥了重要的作用,其通过将主元分析应用于输入信号的白化和白化后信号的一阶时间导数,从而提取出一组按时间慢度从小到大排列的不相关特征。因此,慢特征分析具有挖掘工业过程真实情况的潜力,其详细步骤可参照文献[4-5]。
2 ReliefF算法原理
FReliefF算法是基于Relief算法[6-7]的一种特征选择算法,Relief作为经典的特征权重算法,根据各个特征与类别的相关性赋予各个特征权重,但是其缺点是局限于处理二分类问题。
ReliefF算法应用于多类问题,需要每次从样本训练集里面随机抽取某一样本D,然后从同于D类的样本集中选出D的k个近邻样本,从每个不同于D类的样本集中均选出k个近邻样本,接着特征权重全部更新,其表达如下式:
式中:diff(A,Ri,Rj)为样本Ri和样本Rj在特征A上的差,其计算公式为Mj(C),表示C中的第j个最邻近样本。其表达如下式:
相关学者在Relief基础上提出了ReliefF算法,从而解决了多分类问题。ReliefF的伪代码如下所述。
3 ReliefF-SFA分析方法
通过对SFA算法的分析可知,它只是完成了一次投影变换,使得输出代表了原数据最本质的特征,然而其无法去除数据冗余特征。ReliefF算法能计算出每个特征的权重值,将对分类起到积极作用的特征权重予以保留,从而实现数据的降维。文章提出ReliefF-SFA的方法,基本思路是通过慢特征分析将正常工况下的数据和故障数据转换成对应的慢特征,并给这些不同类的特征打上标签,作为ReliefF算法的输入,再通过ReliefF算法,计算出每个特征的权重值,该特征权重越大,则该特征的分类能力越强。最后通过设置阈值,筛选出对故障识别能力强的特征放进主子空间中,将对故障识别能力弱的特征放进残差空间中。
3.1 ReliefF-SFA算法步骤
(1)对m维输入向量进行中心标准化得到x(t)。
(2)输入矩阵进行白化:z(t) =S(x(t)),矩阵S是白化矩阵,可由对x(t)进行主成分分析确定。
且λ1≤λ2≤...≤λJ,则输出信号如下:
(4)通过公式(1)将正常工况下的数据和故障数据转换成对应的慢特征,并给这些不同类的特征打上标签,作为ReliefF算法的训练样本集。
(5)设置ReliefF算法中样本抽样次数为c,近邻点个数设置为k,并将所有特征的权重值置0。
(6)执行c次循环,每次循环执行以下步骤:①在特征yj的样本集中随机选择一个样本R。②从同类样本中找到k个最近邻样本Hj,从每个不同类(C≠class(R))样本中都找到k个最近邻样本Mj。③循环计算R的m个不同特征的权值(yj为其中某一个特征):
式中:yj为某一个特征;W(yj)为特征权重;diff (yj,Ri,Hj)为样本R与近邻样本Hj在第yj个特征上的距离;p(C)为类的分布概率。
(7)计算出所有的特征权重后,采取贡献率的方法设置阈值δ,若W(yj)>δ,则放入主子空间Y中,其余的放入残余空间Ye中。
3.2 基于ReliefF-SFA的试验结果
针对热处理炉工作过程,文章主要选取了常化炉的入口温度、辐射管的温度、风机电流等36个变量作为主要监测的过程数据;按照5s的间距取,一共形成1500组正常数据。利用正常的1000组数据对慢特征分析进行建模,转变成1000个慢特征,并标记为类型0。经查阅,历史故障数据集一共有两种故障:第一种故障是加热一区的传感器测量值偏移故障;第二种故障是加热三区的传感器测量值偏移故障。
从这两种故障中提取1000组数据,转变成慢特征并标记为类型1、类型2。将1000组正常数据对应的慢特征和这两种故障数据对应的慢特征组成3000×36的数据矩阵,作为ReliefF算法的输入,设置ReliefF算法中的k值为10。其得到的36个特征权重数值按顺序排列后如图1所示。按照贡献率的原则,确定阈值为0.01,即权重大于0.01的放入主子空间(共27个),其余放入残余空间。
图1 不同特征权重柱状图
为了验证基于ReliefF-SFA方法过程监测的有效性,文章将ReliefF-SFA算法与SFA算法进行比较,并通过监测气垫炉运行过程来验证该方法的有效性。该数据是从某生产线上以5s为间隔采集的数据,包括正常数据1500个(1000个用于建模,500个用于测试)。控制限为98%的置信度,如果统计量的值超过控制限,则表示发生了故障;如果统计量的值没有超过控制限,则表示系统正常运行。在该试验中,在第50个数据后引入故障,两种方法的故障检测率如表1所示。以故障2为例,ReliefF-SFA与SFA算法的比较如图2、图3所示。
表1 SFA和RSFA的故障检测率
图2 SFA在故障2下的监测效果图
图3 ReliefF-SFA在故障2下的监测效果图
从图2、图3中可以看出,ReliefF-SFA方法比SFA方法能更好地检测出故障,在前50个点中,两种方法的统计量都位于控制限之下,即都是正常数据。然而在SFA中,第50个点后的统计量不全超过控制限,存在漏报的问题,通过比较,ReliefF-SFA在两个子空间能很好地检测出故障。
4 结束语
文章针对慢特征分析方法不能降维的问题,提出一种基于ReliefF-SFA慢特征分析的过程监测方法,首先对数据进行投影变换,得到了慢特征;然后将正常和故障数据的慢特征放入ReliefF算法中,选取了对故障识别能力强的一些特征,实现了维度的下降。