基于堆栈自编码网络的铣刀磨损特征提取方法
2022-12-03王明微高静李智昂周竞涛蔡闻峰龚菊贤
王明微,高静,李智昂,周竞涛,蔡闻峰,龚菊贤
(1.西北工业大学 机电学院,陕西 西安 710072;2.上海航天设备制造总厂有限公司,上海 200245)
0 引言
在切削加工过程中,刀具不可避免地会发生磨损甚至破损的现象,刀具状态的变化会直接导致切削力增大、切削温度升高、工件表面粗糙度上升、工件尺寸超出公差要求以及切削颤振等问题的产生[1]。因此,在加工过程中对刀具状态进行监控十分必要。随着传感技术的发展,通过采集加工过程中与刀具磨损相关的传感器信号,如切削力信号、声发射信号、电流(功率)信号灯等[2],利用这些信号与刀具磨损之间的强耦合性,通过提取与刀具磨损状态相关的信号特征间接判断刀具状态,成为加工过程中实时监测刀具的有效手段。
由于从传感器上采集到的信号无法直接使用,必须先对预处理后的信号进行特征提取。传统的刀具磨损特征提取方法,如信号处理中的时频域特征提取方法,是从高维、多源的加工信号、加工工艺等因素中提取刀具磨损特征,其效果一般,且还未完全摆脱对人工经验的依赖。WU等[3]提取了噪声信号和电流信号的均值、方根幅值、标准差、均方根值、峭度、最大值等,并进行特征筛选,实现对刀具剩余寿命预测。YU等[4]对力信号进行时域特征筛选,从中选择标准差作为磨损特征,建立了刀具状态识别模型。王晓强等[5]采用傅里叶变换提取振动信号和声发射信号的频率幅值,融合统计特征和能量特征,采用隐马尔科夫建立磨损量预测模型。尽管当前多数方法可以检测刀具的磨损情况,但其预测的准确性与切削信号的预处理方法和特征提取有很大关系,而信号的预处理以及特征的提取都是人为选择或人为手动构建的,耗时长且效果不理想,无法自适应提取对磨损敏感的特征信息。因此,迫切需要一种方法以解决加工中海量切削数据的特征提取问题,从而对刀具磨损进行精准预测。
近年来,深度学习方法已成为提取非平稳、动态变化数据的有效手段,越来越多地被应用在信号特征提取中。赵光全等[6]提出一种通用性较强的基于深度置信网络的故障特征提取及诊断方法。FU等[7]建立基于深度置信网络(Deep Belief Networks,DBN)的切削状态监测的特征空间,将此方法与梅尔频率倒谱系数、小波方法相比,结果表明,DBN具有更好地表征切割状态监测信号的能力。林杨等[8]采用小波变换对力信号进行特征提取,得到不同频段上的能量,采用堆栈自编码网络(Stacked Auto-Encoder,SAE)建立刀具磨损状态预测模型。孙慧斌[9]采用希尔伯特-黄变换(Hilbert-Huang Transform,HHT)提取监测信号的特征信息,得到固有模态函数的振幅均值和边际谱的最大幅值点。曹大理等[10]利用卷积神经网络自适应的提取特征,通过加深网络进一步挖掘信号中隐藏的微小特征。石国强等[11]利用特征描述符网络实现对图像特征点的特征提取。上述深度学习模型虽然降低了特征提取对人工经验的依赖,但仍存在着由于初始化不合理导致的局部最优问题,以及网络层数过深带来的过拟合现象。因此,本文利用SAE 无监督和有监督学习相结合的特点,自适应地挖掘出切削数据内部的隐藏特征,此方法可以有效避免特征提取时由于初始化不合理导致的局部最优化问题以及网络过拟合问题。
1 SAE 的基本原理
自动编码器(Auto-Encoder,AE)是一种无监督学习神经网络模型,即原始数据不需要添加标签,其本质为一个2 层的神经网络结构,分别为编码层和解码层,网络结构如图1 所示。编码层主要负责提取原始数据中的特征,解码层负责将特征信息恢复成原始输入数据。
图1 自动编码器结构Fig.1 AE structure
图中:X=[X1,X2,…,Xn]T为网络的输入;n为网络输入层节点的个数,表示每个样本的数据维度,则原始数据X经过编码可以得到的特征数据h为
式中:h为经过编码层提取出的特征参数;f为编码过程使用的激活函数,一般使用Sigmoid 函数;W、b分别为编码阶段使用的权重和偏置,W的维数是s×n,s为特征参数的维度。
解码过程是原始输入数据的重构过程,对特征数据h经过解码层可得到重构数据X'为
式中:Y=[Y1,Y2,…,Yn]T为重构出的原始数据;U为解码过程使用的激活函数,一般使用Sigmoid函数;W'和b'分别为编码阶段使用的权重和偏置,其中W'=WT。
针对给定的输入样本X,AE 的训练目标为寻找参数集θ={W,b,W',b'},使得原始输入数据和重构数据之间的误差最小化。在解决回归问题上,一般将均方误差函数作为损失函数,其定义为
式中:m为训练总 样本数;X(i)、X'(i)分别 为第i个样本的原始数据和重构数据。
AE 网络采用反向传播(Back Propagation,BP)训练方法,采用随机梯度下降算法求解式(3)的极小值问题。网络每训练一次,AE 模型的参数更新一次,更新方程为
式中:η∈[0,1]为学习率;α为动量因子;αΔW(t)为动量项,可以改善算法的收敛性能。
自编码器本质上属于浅层神经网络模型,处理复杂问题的能力有限,为了克服这一缺点,提出了SAE。SAE 是将一系列AE 模型依次堆叠,前一个AE 的输出是后一个AE 的输入,SAE 增加了隐藏层的个数,每一个隐藏层都是前一层输出的非线性映射表示,每增加一个隐藏层,网络就可计算出更加复杂的非线性映射关系,能够获取到原始数据更加深层低维的特征,这种标准的SAE 模型具有强大的特征挖掘及表达能力。
具有3 个隐藏层的SAE 模型的构建过程,如图2 所示。首先将原始数据X作为输入,采用无监督的学习方式预训练第一个AE(AE-1)模型,得到隐藏层特征h1,然后将隐藏层特征h1作为下一个AE(AE-2)模型的输入,采用无监督学习方式训练得到新的隐藏层特征h2,以此类推,最终得到下一个AE(AE-3)模型的隐藏层特征数据h3,在此基础上,对整个网络进行有监督微调可以得到更优的特征表达。
图2 SAE 模型的构建过程Fig.2 Construction process of the SAE model
2 铣刀磨损特征提取网络构建
为了从原始切削加工数据中获取深层次的非线性特征,本文将SAE 作为特征学习器,借助SAE在无监督特征提取方面的优势,增强网络自身学习能力,同时减小网络过拟合现象。基于此,提出一种基于SAE 的切削信号数据特征提取网络,其本质是一系列特征自主学习的过程,将原始高维数据中的主体信息映射到低维空间。
在对原始切削信号进行分割、预处理和压缩感知处理后,从中选择分割后的压缩数据片段4 096×3 维切削信号数据进行特征提取,具体的SAE 网络结构设置如图3 所示。压缩后的切削信号通过采用SAE 网络进行特征提取得到的低维刀具磨损特征向量的具体流程见表1。
表1 刀具磨损特征提取流程Tab.1 Cutter wear feature extraction process
图3 基于SAE 的刀具磨损特征提取网络Fig.3 Cutter wear feature extraction network based on SAE
在上述刀具磨损特征提取的过程中,每一个AE 都是为了挖掘隐藏在数据内部的磨损特征,每经历一个隐藏层,都是对数据进行一次非线性映射,即是对数据的抽象特征提取过程。在刀具磨损特征提取网络中,隐藏层节点数依次被设置为:4 096、2 048、1 024、512、128、60。一方面,可以提取到原始切削数据内部的刀具磨损特征,去除冗余特征;另一方面,可以实现原始数据降维,为后续刀具磨损预测网络的输入做准备。
3 基于SAE 的铣刀磨损特征提取能力评估
为了评估基于SAE 提取的切削信号特征,本文从SAE 本身对数据的重构性能和提取到的切削信号特征2个方面评估基于SAE 提取到的切削信号特征。
3.1 基于SAE 的铣刀磨损特征重构
由第1 章对SAE 的理论介绍可知,SAE 由多个AE 堆叠而成,经过压缩感知(Compressed Sensing,CS)压缩后的监测信号作为输入经过编码单元激活函数被映射到隐藏层,再通过解码单元重构出原始切削信号,以最小化重构信号和原始信号的差异为优化目标,得到隐藏层最优解,将此信号作为下一个编码器的输入重复上述过程,最终学习得到深层次的抽象特征。本文采用SAE 对特征数据的重构能力来研究其特征提取性能,数据重构网络如图4 所示。
SAE 数据重构的步骤如下:
步骤1根据表1 所示的刀具磨损特征提取流程逐个对深度自编码网络进行训练,得到经过SAE网络提取到的特征向量;
步骤2在完成SAE 的训练之后,将最终得到的特征参数进行逐层反向重构,建立1 个SAE 重构网络;
步骤3利用原始数据对重构SAE 网络进行微调,得到微调后的网络各层之间的权重和偏置;
步骤4向训练好的重构网络中输入测试数据,得到与原始数据相对应的重构数据。
为了进一步探究SAE 的特征提取能力,对经过SAE 重构得到的数据,准确、有效地评估重构数据质量是非常重要的,本文采用定性分析和定量分析相结合的方法对其能力进行评价。定性分析是指通过可视化输入数据曲线和重构数据曲线来初步评价SAE 的特征提取能力;定量分析是采用均方根误差(RMSE)和失真度(K)来精确、有效评价输入数据和重构数据之间的差异性,RMSE、K的值越小,则输入数据和重构数据的差异性越小,说明SAE 从输入数据提取特征能力越强。RMSE、K可通过式(6)和式(7)进行计算:
式中:x为原始输入数据;y为重构数据;m为样本维数;n为样本总数。
3.2 加工信号特征主成分分析
主成分分析(Principal Component Analysis,PCA)是提取特征中主成分的一种方法,通过计算样本数据协方差矩阵的特征向量,将原始特征矩阵线性映射到低维特征空间中。研究表明:相同工况下,经PCA 降维得到的特征与刀具磨损量的变化趋势越相近,则原始特征中包含的刀具磨损信息越多,即原始特征越优[12]。因此,本文采用PCA 评估SAE 提取特征的优劣,主要步骤如下:
步骤1将经SAE 提取的特征值矩阵T(n为样本数,m为特征数)进行归一化处理得到特征值矩阵T1,对矩阵T1按列(特征种类)进行去均值处理得到特征值矩阵T0;
步骤2计算矩阵的协方差矩阵C=T0·T'0,并求出C对应的特征值λi和相应的特征向量μi;
步骤3将特征值λi按照降序排列,前m个特征值λ1≥λ2≥…≥λm代表前m个主成分的方差,若m个主成分的方差贡献率大于85%,则说明提取的主成分特征能够反应原始特征信息,对应的特征向量μi按照λi的大小换位,得到新的向量P=[μ1,μ2,…,μm]T;
步骤4计算原始特征向量的主成分得分SC=X0·P,SC=[s1,s2,…,sm],其中s1,s2,…,sm为原始特征向量的第1主成分,第2主成分,…,第m主成分。
得到原始特征的主成分矩阵后,依据同种工况下主成分特征与刀具磨损量的相关性程度来判断原始特征的优劣。
4 实例验证
4.1 实验流程
4.1.1 实验装置
本文采用美国故障诊断与健康管理(Prognostic and Health Management,PHM)协会在2010年刀具健康预测竞赛中的公开数据集[13],对本文所提方法进行验证。实验平台为高速数控铣床,实验刀具为碳化钨球头铣刀,切削材料为不锈钢(HRC 52)。
实验采用了多传感器收集铣削过程中的数据,包括力传感器、加速度传感器和声发射传感器。力传感器选择Kistler 压电石英三向平台测力仪,测力仪可直接安装在工作台上,并将工件装夹在测力仪平台上,经Kistler 电荷放大器转化为电压信号并输出;选择压电式加速度传感器(3 个)采集工件振动信号,将其分别安装在工件3 个不同方向的表面上,测量出X、Y、Z3 个方向的振动;选择Kistler 声发射传感器采集铣削过程中的高频压力波信号,将其安装在工件上。
上述传感器收集的信号经过电荷放大后,通过NI DAQ PCI 1200 采集卡(采样频率为50 KHz)转化为数字信号,并将其存入PC 机。PHM 实验装置[14]如图5 所示。
图5 PHM 实验装置Fig.5 PHM experimental facilities
铣削方式为端铣,每次沿着X方向走刀切削108 mm,将它记为一个切削行程,每把刀具切削315 个行程,每次走刀完成,记录铣刀每个切削刃的后刀面磨损量值,切削参数见表2。
表2 铣削参数设置Tab.2 Milling parameter setting
4.1.2 实验数据
共采用3 把刀具进行切削,分别标记为1 号、2 号和3 号,记作C1、C2、C3。每把刀经历315 个切削行程,共945 个切削行程,即945 个样本。每把刀包括315 个传感器数据采集表和1 个刀具磨损量采集表。
传感器数据采集表格式为:csv。表格共7 列,分别为:X、Y、Z方向的铣削力,X、Y、Z方向的振动,声发射信号的均方根。刀具磨损量采集表格式为:csv,共315 行3 列,315 行为315 个样本,3 列为每个样本对应的铣刀3 个刃的磨损量。刀具C1、C2 和C3 分别有315 个切削行程,即为315 个工步,针对每一个工步,将切削力信号数据和振动信号数据以时间片段328 ms 分割,三向切削力共分为10 个片段,三向振动信号数据共分为10 个片段。
4.2 SAE 特征提取能力验证
下面利用4.1 节铣削加工中的振动信号,从SAE 自身角度出发,通过重构信号与原始信号的均方误差和失真度来说明SAE 特征提取的有效性。
SAE 的特征提取通过堆叠AE 来实现,为探讨SAE 的特征提取能力,实验采用上述压缩信号进行研究,从时域信号中取12 288 个数据点,实验中将SAE 的个数设置为3,第1 个AE 节点数为:12 288、4 096、2 048、4 096、12 288;第2 个AE 的节点数为2 048、1 024、512、1 024、2 048。保持前2 个AE 节点个数不变,第3 个AE 保持前2 个节点数设置为512 128,分别设置AE 最后一层的节点数为512、128、60、30,这4种不同的节点代表4个不同的目标特征维数,分别以这4种网络结构讨论SAE 的数据重构能力。
对原始输入数据进行归一化处理,按照第3 章步骤对样本数据按照4 种结构进行重构,为方便观察,取前100 个数据点得到原始数据曲线和重构数据曲线对比如图6 所示。从图6 可知,当目标维数为512维和30 维时,即相对前一层网络维数偏多或过少时,网络的重构效果相对较差,当目标节点个数为60,即维数相对接近上一层节点数时,效果相对最好。
图6 原始曲线和重构曲线Fig.6 Original curve and reconstructed curve
以上定性分析不易得到可靠、直观的结论,为进一步定量分析经SAE 网络重构过程得到的重构数据与原始样本数据之间的差异,本文采用式(6)和式(7)分别计算在每种目标维数下的RMSE值和K值,结果见表3。
由表3 可得,目标层维数为60时RMSE值和K值最小,分别为0.076 5 和0.654 0。该定量分析结果与定性分析结果一致,当目标维数与上一层节点数相差过大时,在对原始数据进行学习的过程中会有较多的信息丢失,导致前向堆叠AE 提取到的特征数据难以重构原始输入数据,这表明:与上一层节点数相比,目标维数过少时,SAE 网络的特征提取能力相对较弱;目标维数过多时,在AE 网络最后一个隐藏层的学习过程中,会引入无用的不相关的信息,因此对数据的重构能力相对较差。
表3 不同目标维数下的RMSE值和S值Tab.3 RMSE and K values in different target dimensions
4.3 加工信号特征方法对比
下面利用铣削加工中的振动信号,将SAE 特征提取方法与其他种类信号特征提取方法进行对比,以PCA 降维后的主成分与磨损量的相关性为指标阐述SAE 特征提取的优势。
将基于SAE 的特征提取方法与传统特征提取方法进行对比,包括信号统计特征(21 种)和基于小波包分解的特征提取(24 种)2 种方法,原始数据的统计特征包括压缩数据的最大值、平均值、均方根值、峭度因子、裕度因子、重心频率、均方频率等[15]。基于小波包分解的特征提取过程为:将原始压缩数据样本进行3 层小波包分解(db2 小波基),提取最高能量频带的特征参数(24 个),公式详见文献[16]。
本文将SAE 方法学习到的深度特征与传统的统计特征以及小波包分解提取到的特征进行可视化对比,采用PCA 分别提取统计特征、小波特征以及深度特征的前2 个主成分,为了避免基于SAE 特征提取的偶然性,按照第1 节所提方法重复运行10次,随机选择其中2 次的特征数据做测试(可视化其中一次结果)。
数据集C3 中3 种特征的主成分1、主成分2 和刀具磨损量的变化趋势,如图7 所示。其中,统计特征的第1、第2 主成分贡献率分别为84.482%、9.377%;小波特征的第1、第2 主成分贡献率分别为85.336%、7.052%;深度特征的第1、第2 主成分贡献率分别为89.909%、5.820%。
图7 二维特征可视化Fig.7 Two-dimensional feature visualization
由图7 可知,同种工况下,3 种特征中主成分特征2 与刀具磨损量的相关度都较低,这可能是由于主成分2 的方差贡献率较小造成的,主成分特征1与刀具磨损量的变化趋势大致相同,其中,深度特征的主成分1 与刀具磨损量的相关程度最高,小波特征次之,统计特征最差。
综上对比,相较于手工提取的特征,采用SAE提取压缩数据的深层特征包含了更多的刀具磨损信息。主要原因是SAE 能够自适应地从压缩数据中学习到最能够表征刀具磨损的代表性特征信息,而人工提取的特征具有一定的盲目性,并不是输入数据最客观的转换,难以得到准确有效的刀具磨损特征信息。
5 结束语
本文主要采用SAE 特征提取方法,设计了堆栈自编码网络结构,利用其无监督学习和有监督学习相结合的优势,自适应地从原始数据中挖掘刀具磨损的特征信号。通过与统计特征和小波特征进行对比可以发现:SAE 能从原始数据中有效提取出加工信号特征,且特征提取效果优于统计特征和小波特征。本文所提方法在压缩信号的特征提取方面表现出明显的优势,进一步说明了SAE 特征提取的有效性。