面向数据不平衡的卷积神经网络故障辨识方法*

2022-05-21 03:10吴耀春赵荣珍靳伍银邢自扬
振动、测试与诊断 2022年2期
关键词:集上卷积精度

吴耀春,赵荣珍,靳伍银,邢自扬

(1.兰州理工大学机电工程学院 兰州,730050)(2.安阳工学院机械工程学院 安阳,455000)

引言

旋转机械在现代工业生产中的作用举足轻重[1-2]。随着传感器、计算机与通信、数据存储等技术的高速发展,旋转机械向大功率复杂化方向发展,为保障此类设备安全、优质高效运行,其监测装置的规模正在逐渐扩大,导致旋转机械监测装置获取的数据呈现出海量、复杂、高维、多源异构和价值低密度等大数据特性[3-4]。因此,改进传统基于信号处理的特征提取+机器学习的方法性能,发展基于工业大数据资源开发利用的旋转机械智能决策技术,对于加快发展智能旋转机械将具有非常重要的推动作用[5-6]。

近年来,作为大数据挖掘利器的深度学习,因其具有可利用原始观测数据、通过自动学习方式即可得到故障的更有效表征信息和能够提取出敏感特征的能力,典型的如CNN 网络等,已经成为旋转机械智能故障辨识研究的热点[7-9]。Janssens 等[10]建立了由卷积层和FC 构成的浅层卷积神经网络模型,以轴承原始振动信号的频谱作为数据源,获得了93.61%的故障识别准确率。Jing 等[11]建立了一种基于CNN 的特征学习与故障诊断方法,该方法在齿轮箱故障诊断的测试中达到98% 的辨识精度。Wen 等[12]将振动信号转换为2D 图像,在LeNet-5 的基础上构造出一种改进CNN 模型用于轴承故障的诊断。Zhang 等[13]利用一种新型训练方法训练深度CNN 模型,实现了强背景噪声、变载荷条件下的轴承故障有效识别。

基于CNN 模型原理的深度学习方式的性能仍需要进一步完善,其缺陷之一是因忽视样本分布不平衡对故障辨识准确率的影响作用。机械故障是偶发的,故障状态信号相较于正常运行数据更加难以采集,因此获取的故障数据具有明显的不平衡性。基于CNN的智能故障诊断方法通常是以提高分类总体精度为目标,数据的不平衡会迫使这些方法偏向于多数类样本的特征学习,而对少数类样本的学习不足,容易造成分类器对少数类样本识别精度下降[14]。然而在工业设备监测中,机械设备故障作为少数类发生,要比多数类(正常)更加重要,若将“故障”误诊为“正常”,让机械系统继续工作,会导致无法预计的后果和损失[15]。因此,在数据不平衡条件下如何准确辨识判断机械系统运行状态是关键问题。

目前,解决数据不平衡分类问题的方法可以分为数据层面和算法层面两大类。数据层面方法主要有欠采样[16]、过采样[17]和合成少数类过采样(synthetic minority oversampling technique,简 称SMOTE)[18]。欠采样是通过减少多数类样本的数量,过采样是增加少数类样本的数量,从而使得样本的分布达到平衡。本质上这两种方法并没有增加额外的数据信息,并且欠采样通过样本剔除有可能破坏数据集的分布,而过采样有可能引入噪声造成模型的过拟合。SMOTE采样通过随机选择同类近邻样本进行插值,生成无重复新的少数类样本,并出现了一系列SMOTE 改进算法[19],但由于合成噪声和边界样本,它们的扩展决策边界仍然难以区分。算法层面方法主要有集成学习[20]和代价敏感学习[14,21]。集成学习是通过将多个基分类器在平衡数据子集上的分类结果按一定方式集成来提升分类器的泛化性能,但这种方法的效率较低。代价敏感学习通过给少数类样本分配更高的错分代价,以分类错误总代价最低为优化目标来处理数据不平衡问题,这种方法简单直观但需要预先定义代价矩阵。事实上,分类器在数据分布边界清晰的不平衡数据集上也可以得到较好的分类结果[22]。在面对样本空间分布重叠、特征不明显的不平衡故障数据集,如果通过有目的特征学习能够获得类边界清晰的特征,就可缓解由于机械数据不平衡导致少数类样本分类正确率偏低的问题。

基于上述分析,针对机械系统健康状况监测中呈现的正常数据丰富、故障数据匮乏现象,以及由此导致的卷积神经网络在处理这种不平衡数据分类时对少数类样本识别率较低的问题,对改进卷积神经网络性能使其避免因数据不平衡干扰智能故障辨识准确率的方法进行研究。

1 CNN 原理与不平衡分类问题简介

1.1 CNN 原理

CNN 是一种深度前馈神经网络,它的基本组成包括卷积层、池化层和FC。其中,卷积层和池化层一般用于提取特征,FC 利用提取的特征实现分类。由于本研究的输入数据是一维振动信号,这里仅介绍一维CNN。

卷积层采用多卷积核对输入数据进行卷积运算并输出特征矢量,每一个卷积核输出一个特征矢量,对应提取一种特征。这个特征矢量的数学模型可表示为

其中:为第l层的第j个卷积核输出的特征矢量;Mj为第l-1 层输出的特征矢量集合;为第l-1 层输出的第j个特征矢量;表示第l-1 层的第i个特征矢量与第l层的第j个特征矢量之间的卷积核矩阵;为第l层的第j个特征矢量对应的偏置;Re lu(·)为激活函数。

卷积层之后是池化层,对输入的特征矢量进行降采样,在实现数据降维的同时进一步突出提取的特征。本研究采取的最大池化运算公式为

其中:为池化运算中第l层的第j个神经元输出值;max {·}为池化运算方式,即选取计算区域的最大值作为输出;为第l-1 层的第j个局部区域;S为该区域的宽度,即池化尺寸。

FC 是卷积池化部分与分类器的连接过渡结构,它通常由一个2~3 层的全连接前馈神经网络组成。多次卷积池化运算后,网络学习的特征矢量集合经过Flatten 展平函数转变为一维特征矢量,在经过FC 时映射到类空间,其计算公式为

其中:xl-1为第l-1层的输出值;为第l-1层和第l层之间的全连接权值矩阵;为第l层的偏置向量。

1.2 不平衡分类问题

CNN 不能有效解决数据不平衡分类问题的原因在于其损失函数是以分类的总体精度最高为优化目标。CNN 使用的softmax 交叉熵损失函数为

其中:xi为FC的第i个神经元输出值;pi为FC 第i个神经元输出的概率值;C为类别数;c为输入样本真实健康状态;yi为网络对输入样本预测值;1{·}表示大括号内等式成立时为1,否则为0。

在模型训练过程中,交叉熵损失函数主要考虑每一个样本对应于其本应所属类别的概率。如果该概率较低,说明模型对该样本特征学习程度不够,予较大的损失;反之,则赋予该样本较小的损失。但对于不平衡数据集而言,由于少数类样本占比小,样本的总体识别率主要由多数类样本的识别率主导。因此,多数类样本误分类对CNN 的训练过程影响较大,而少数类样本误分类在一定程度上被忽略,这导致CNN 对少数类样本的特征学习不充分,在分类器上显现出少数类样本错分率高。

2 数据不平衡故障诊断模型的设计

2.1 最小最大化目标函数

最小最大化目标是直接要求CNN 在第l层提取的样本特征矢量同类距离最小,异类距离最大[23],以利于获取清晰的样本特征分类边界。假设标签为YQ={y1,y2,…,yQ}的最小批次样本输入卷积神经网络,在第l层提取的样本特征集为XQ={x1,x2,…,xQ},其中:Q为训练样本的最小批次;xi为第i个样本的特征矢量集合展平。最小批次样本特征的类内邻接矩阵的元素和类间邻接 矩阵的元素可定义[24]为

其中:Qc为最小批次样本中第c类样本的个数。

式(6)、式(7)分别给出了最小批次样本特征的类内邻接矩阵元素和类间邻接矩阵元素的定义。为了在计算机平台算法实现的方便性,最小批次样本的类内邻接矩阵AW和类间邻接矩阵AB可以由式(8)、式(9)来计算

其中:YQ为最小批次样本标签的独热编码;diag(·)为对角矩阵;ε为1×C的向量,元素取10-8。

最小批次样本特征的类内散度矩阵SW和类间散度矩阵SB可以由式(10)、式(11)来计算

根据式(10)、式(11),最小批次样本特征的同类距离SW和异类距离SB可以表示为

其中:tr(·) 表示矩阵的 迹;矩 阵Φ=(Φi,j)Q×Q,;⊙表示矩阵点乘运算;1Q∈RQ表示所有元素为1 的列向量。

由式(12)、式(13)可以看出,最小化SW可以使同类之间的样本特征紧凑,最大化SB可以使异类之间的样本特征分离。因此,最小最大化目标函数定义为

其中:H=[x1,x2,…,xQ],下标符号(:,i)表示矩阵的第i列。

最小最大化目标函数对样本特征向量xi的偏导数为

2.2 融入最小最大化目标函数的卷积神经网络设计

在面对数据不平衡的故障辨识问题时,传统的CNN 算法存在着对少数类样本识别率偏低的缺陷。导致这种现象的直接原因是CNN 采用softmax 交叉熵作为损失函数进行网络参数优化,模型在训练的过程中偏向多数类样本特征学习,而忽略了少数类样本特征学习。针对此问题,本小节拟将最小最大化目标函数融入到CNN 的损失函数中,提出MMOCNN 模型,如图1 所示。模型重新构造的损失函数为

图1 MMOCNN 结构Fig.1 The structure of MMOCNN

其中:θ为网络参数集合;Ls为交叉熵损失函数;LMMO为最小最大化目标函数;α为调整参数。

MMOCNN 的损失函数在考虑分类总体精度的同时,要求模型提取样本特征的SW小,SB大,期待能够更充分地学习少数类样本特征,以提高模型对不平衡数据中少数类样本的识别精度。

MMOCNN 模型参数的设计主要是卷积核的个数和尺寸。文献[8]指出,在设置深度学习网络的隐层神经元数目时,需遵循的基本原则应当是后一层神经元数目不超过前一层神经元数目的一半,故本研究将3 层卷积层的神经元数目分别设为64,32 和16。卷积核的尺寸第1 层采用大尺寸16×1 的卷积核,这样可以更好地抑制振动信号中的高频噪声[13]。后面的卷积层均采用小尺寸3×1 的卷积核,便于网络加深,提高网络的学习能力。另外,为了加快收敛速度和提升泛化能力,笔者在模型的卷积层后尝试引入批归一化处理,在FC 使用dropout 处理。

模型训练主要是通过最小化损失函数来优化网络参数。根据定义的损失函数采用最小批次梯度下降法(stochastic gradient descent,简称SGD)优化网络中的参数,具体的过程为

其中:η为学习 率;∂Ls/∂θ为交叉熵损失函 数的梯度;∂LMMO/∂θ为最小最大 化目标函数的梯度,由式(17)计算。

实验中发现,最小批次Q设置过小,图1 模型的损失函数振荡严重,在最大迭代次数下难以收敛;批次设置过大,影响模型泛化能力。经过反复调试,最小批次为28,最大迭代次数设为100,学习率η设为0.001。模型的具体参数如表1 所示。

表1 MMOCNN 模型的具体参数Tab.1 Special parameters of MMOCNN

2.3 归纳的诊断方法与流程

在图1 所示的MMOCNN 模型中将最小最大化目标函数融入到交叉熵损失函数中,在模型训练时既考虑分类总体精度高,又要求网络学习样本特征的SW小、SB大。将该模型应用于旋转机械数据不平衡故障辨识的具体流程如图2 所示。

图2 所提方法的流程图Fig.2 Flow chart of the proposed method

2.4 采用的评价指标

实验采用混淆矩阵和准确率作为模型分类性能的评价指标。混淆矩阵的行为测试样本的模型预测结果,列为测试样本的真实标签,对角线表示模型预测值和样本标签一致的样本数目。定义准确率为

其中:ti为第i次实验诊断正确样本的个数;pi为第i次实验测试样本的总数;N为实验次数。

3 实验结果与分析

为验证模型(图1)的有效性,本节使用美国凯斯西储大学电气工程实验室的滚动轴承数据进行实验[25]。数据采集于机械系统驱动端的加速度传感器,负载为0.746 kW,采样频率为12 kHz。数据集中除了正常状态外,还包括轴承的3 种故障状态:滚动体损伤、内圈故障、外圈故障。每一种故障的损伤直径分别为0.177 8 mm(轻微故障)、0.355 6 mm(中等故障)和0.533 4 mm(严重故障)。因此,组合之后的数据集中包括轴承10 种不同运行状态,即{BS,IRS,ORS,BM,IRM,ORM,BL,IRL,ORL,NR}。故障类型与符号之间的对应关系为滚动体轻微故障(BS)、内圈轻微故障(IRS)、外圈轻微故障(ORS)、滚动体中等故障(BM)、内圈中等故障(IRM)、外圈中等故障(ORM)、滚动体严重故障(BL)、内圈严重故障(IRL)、外圈严重故障(ORL)和正常状态(NR)。每一种健康状态采集300 个样本,样本的长度为1 024 点。

根据划分的轴承运行状态,建立用于实验的数据集,见表2。A为平衡数据集,每一种状态的训练样本均为200 个。B为不平衡数据集,在设备状态监测的实际应用中,故障状态数据较之正常运行数据更难以获取,严重故障数据较之轻微故障数据更难以获取,因而轻微、严重故障状态的样本个数依次减少,以模拟实际应用中状态数据的不平衡。

表2 不平衡数据集的描述Tab.2 Description of imbalanced dataset

3.1 调整参数α 的选择

在2.2节模型(图1)的优化过程中,两种损失函数的调整参数α值的设置对模型最终诊断精度影响较大。笔者采用网格搜索方法确定α的值,寻优范围为{1×10-6,2×10-6,…,10×10-6},用数据集B测试模型的训练精度、测试精度和训练时间,每个实验重复10 次,得到的结果如图3 所示。在考虑模型的稳定性和训练难易程度后,最优的α值取6×10-6。

图3 参数α 对MMOCNN 性能的影响Fig.3 The effect ofαon the performance of MMOCNN

3.2 最小最大化目标函数的有效性分析

为验证式(14)所示的最小最大化目标函数的有效性,按照图2 所示诊断流程,用表2 构造数据集中的训练集分别训练MMOCNN 和CNN,用测试集分别对训练的模型进行测试,结果如图4 所示。

由图4(a,b)可看出:用数据集A中的平衡训练集训练模型时,CNN 将3 个BL 类样本错误识别为BS类,7 个ORL 类样本分别错误识别为BS,ORS 和IRS类,总体识别率为99%;MMOCNN 在测试集上没有错误识别样本,总体识别率为100%,这说明MMOCNN 和CNN 在平衡数据上均具有较高的辨识精度。由图4(c,d)可看出:用数据集B中的不平衡训练集训练模型时,CNN 将31 个少数类BL 样本错误识别为BS 类,54个少数类ORL 样本分别错误识别为IRS,ORS 和ORM 类,模型的总体识别率为91.5%,但对少数类样本的识别率为71.67%;MMOCNN 将13 个少数类BL 样本错分,8 个少数类ORL 样本错分,模型的总体识别率为97.7%,对少数类样本的识别率为92.66%,这说明数据不平衡对CNN 和MMOCNN 模型的诊断性能均有一定的影响,MMOCNN 模型在不平衡数据上的诊断性能明显优于CNN,总体诊断精度提高6.2%,少数类样本诊断精度提高20.99%。这表明,最小最大化目标函数有效提高了模型对数据不平衡故障的辨识性能。

为能够更清晰地展示MMOCNN 模型对不平衡数据集的特征学习效果,将测试集分别输入数据集B训练的CNN 和MMOCNN 中,使用核主成分分析(kernel principal components analysis,简称KPCA)维数约简算法对模型的FC 层输出特征进行维数为2的约简并可视化,结果如图5 所示。可以看出:CNN学习的特征比较分散,多数类样本基本能够准确分开,但少数类BL 与BS 发生了严重混叠,少数类ORL与ORS 及IRS 发生了严重混叠,如 图5(a)所 示;MMOCNN 学习的特征相对比较聚集,各类之间没有出现严重的混叠现象,仅有少数类BL 和ORL 中少量样本被错分,如图5(b)所示。这与图4(c,d)的结论基本一致,说明融入最小最大化目标函数可以增强模型在不平衡数据集上的特征学习能力。

图4 两模型在测试集上的混淆矩阵Fig.4 Confusion matrix of two model on test set A and B

为定量分析CNN 与MMOCNN 特征学习的能力,用测试集分别输入训练的模型中,提取FC 层的深度特征,采用式(10)、式(11)来进行评价。SB/SW和(SB+SW)/SW的值越大,表明样本特征的同类距离越小,异类距离越大,学习特征的质量越高。评价的结果如表3 所示。

由表3 可看出:MMOCNN 与CNN 在数据集A上学习的特征质量相近,说明两个模型在平衡数据集上均能学习较高质量的特征,从而实现故障类别的高精度辨识,这与图4(a,b)的结论一致;但在数据集B上,MMOCNN 学习特征的SB/SW和(SB+SW)/SW的值分别为55.36 和56.35,明显高于CNN的27.48 和28.48,这说明MMOCNN 在不平衡数据集上学习特征的质量更高,可以更好地实现故障辨识,这与图5、图4(c,d)的结论一致,再次说明了最小最大化目标函数可以提高模型在不平衡数据集上的特征学习能力。

图5 FC 层提取特征的可视化结果Fig.5 Visualization of features extracted from FC layer

表3 特征学习质量的定量评价Tab.3 Quantitative evaluation of feature learning quality

3.3 对比实验情况

为验证2.3 节所提方法在数据不平衡故障辨识中具有一定优势,本研究借用表4 中列出的故障辨识算法进行对比实验。

1)与手动提取特征的方法进行对比。根据文献[26],将提取的24 种特征分别输入到支持向量机(support vector machine,简称SVM)和反向传播神经网络(back propagation neural network,简 称BPNN)进行数据不平衡故障辨识,其中SVM 的核函数使用高斯径向基函数(radial basis function,简称RBF),C=30,gamma=0.015;BPNN 结构为24-100-10,其激活函数为ReLU。

2)与常用的数据不平衡故障诊断方法代价敏感卷积神经网络(cost sensitive convolutional neural network,简称CSCNN)和SMOTE+CNN 进行对比。其中:CSCNN 的结构和训练参数与本研究方法一致,代价矩阵由样本比例确定;不平衡训练样本经SMOTE 采样后变成平衡样本,然后用CNN 进行故障辨识,CNN 参数与本研究模型保持一致。表4总结了本研究方法与4 种常用辨识算法在表2 构造的数据集上的识别结果。

表4 不同方法在不平衡数据集上的辨识结果Tab.4 Identification results of imbalanced datasets by different methods %

表4 表明,与SVM 和BPNN 方法相比,在平衡数据集A上,手工提取的特征分别取得了95.9% 和96.6% 的辨识精度,而本研究方法的辨识精度为100%,具有一定的优势,这是因为手动提取的特征不全面,关键特征有可能遗漏。在不平衡数据集B上,手动特征的总体辨识精度分别89.8%和87.9%,而在少数类样本上的辨识精度仅为75.33%和67.67%,这说明手动提取的特征对数据不平衡更加敏感,本研究方法在不平衡数据集上依然保持97.7%的辨识精度,具有明显的优势。因此,与手工提取特征相比,图1模型更适用于数据不平衡的故障辨识。

与SMOTE+CNN 和CSCNN 相比,在不平衡数据集B上3 个模型均能获得92%以上的总体辨识精度,这说明SMOTE 采样和损失函数加权在一定程度上能够缓解数据不平衡对模型性能的影响;但是在少数类样本上,前两个模型的诊断精度分别为75.67% 和87%,而本研究的诊断精度为92.66%,能够得到更高的识别率,说明本研究模型通过在损失函数中融入最小最大化目标函数,模型在数据不平衡故障辨识中对少数类样本取得更好的辨识性能。

3.4 模型的泛化性能测试

MMOCNN 模型在公开的轴承数据集上对样本分布不平衡的少数类样本能够取得一个较高的辨识精度,但模型可能存在一定的局限性。为验证本研究MMOCNN 模型的泛化性能,采用综合故障模拟实验台模拟滚动轴承的运行状态,采集不同运行状态下的振动信号进行辨识,如图6 所示。实验过程中由加速度传感器采集轴承(NSK6308)在滚动体故障(BF)、内圈故障(IF)、外圈故障(OF)、保持架故障(FF)和正常共5 种状态下的振动信号,如图7所示。轴承转速为3.2 kr/min,采样频率为8 kHz,每种运行状态采样300 组,样本的长度为1 024 点。用采集的样本构造不平衡数据集,如表5 所示。

图6 双跨转子综合故障模拟平台Fig.6 Double-span rotor comprehensive fault simulation platform

图7 不同运行状态下的振动信号时域波形Fig.7 Time-domain waveforms of vibration signals under different operating states

用表5 的4 种不平衡训练集,按照图2 的流程分别训练MMOCNN 模型,用测试集测试训练模型的辨识精度,结果如图8 所示。

表5 构造测试不平衡数据集的描述Tab.5 Description of measured datasets

由图8 可看出:在 数据集A上,OF 类有8 个样本被错误识别为BF 类,IF 类有1 个样本被错误识别为OF 类,模型的总体辨识精度为98.2%,对少数类样本的辨识精度为92%;在数据集B上,IF 类有16个样本被错误识别为OF 类,模型的总体辨识精度为96.8%,对少数类样本的辨识精度为84%;在数据集C上,模型的总体辨识精度和对少数类样本的辨识精度均为100%;在数据集D上,BF 类有6 个样本被错误识别为OF 类,模型的总体辨识精度为98.8%,对少数类样本的辨识精度为94%。模型在4 个不平衡数据集上的总体辨识精度为98.45%,对少数类样本的平均辨识精度为92.5%。可见,MMOCNN 模型在实测模拟轴承数据不平衡故障辨识中对少数类样本也可以获得较高的辨识精度。这表明,针对数据不平衡的故障辨识,本研究方法具有一定的泛化性能。

图8 所提方法在不平衡数据集上的辨识结果Fig.8 Identification results of the proposed method on imbalanced datasets

4 结论

1)笔者建立的MMOCNN 模型在构造损失函数的同时考虑分类总体精度高、同类距离小和异类距离大,可以对数据不平衡故障中少数类样本实现有效辨识。

2)相比于手动提取特征,特征学习的方法取得了更好的辨识效果。

猜你喜欢
集上卷积精度
关于短文本匹配的泛化性和迁移性的研究分析
热连轧机组粗轧机精度控制
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于互信息的多级特征选择算法
卷积神经网络的分析与设计
从滤波器理解卷积
基于DSPIC33F微处理器的采集精度的提高
基于傅里叶域卷积表示的目标跟踪算法
以工匠精神凸显“中国精度”
师如明灯,清凉温润