doi:10.3772/j.issn.1002-0470.2021.01.001
基于Transformer神经网络的滚动轴承故障类型识别①邱大伟②…*刘子辰*周一青③…*龙隆…*谭雯雯如曹欢…*
(”中国科学院计算技术研究所移动计算与新型终端北京市重点实验室北京100190)
(”中国科学院大学北京100049)
(十北京化工大学信息科学与技术学院北京100029)
摘要工程应用中的滚动轴承故障类型识别要求同时具有较高的识别准确度和时间效率,基于上述需求提出基于Transformer神经网络的滚动轴承故障类型识别方法。所提方法结合小波包变换时频域能量特征和快速傅里叶变换频域特征生成满足Transformer神经网络的输入样本矩阵,解决Transformer神经网络的输入问题。同时,提出应用于滚动轴承故障类型识别的归一化位置编码方法,解决Transformer神经网络在滚动轴承故障分析领域的位置编码问题。在此基础上,提出Transfoi-mer神经网络双向输入样本矩阵处理机制和算法训练过程中错误样本权重增强机制,提升所提方法的鲁棒性。使用KAt数据中心的滚动轴承数据集验证所提方法的识别性能,与现有常用深度学习方法相比,所提方法在时间效率和准确度性能上均有一定的优势,其中,准确度能够提升11%以上,单个样本的平均处理时间小于1ms。
关键词滚动轴承;故障类型识别;Transformer神经网络;前向特征矩阵;后向特征矩阵;归一化位置编码;权重增强
0引言
滚动轴承作为机械设备的重要组成部分,其健康的运行状态是机械设备正常运行的基础。然而,在实际工程应用中,如在无人拖拉机的应用中⑴,滚动轴承经常由于长时间运行或者恶劣的环境因素而出现各种故障,如塑形变形,故障严重时会导致整个轴承烧毁,甚至导致机械设备的损坏。但是在对滚动轴承的日常维护中,对于出现损伤的轴承往往进行整体替换,无法针对具体的故障部位进行有效更换,在频繁维修时会造成轴承的浪费和经济损失O 因此,本文针对上述问题对工业应用中常见的滚动轴承故障进行具体分析,为滚动轴承的维护和保养提供有力保障。
基于以上需求,研究人员展开对滚动轴承故障类型识别的研究。现有研究方法中,有很多文献针对滚动轴承故障类型检测进行研究。由于支持向量机(support vector machine,SVM)在分类方面取得一- 定成果,很多研究者将SVM应用于滚动轴承故障诊断,如使用簇间距离优化的SVM进行滚动轴承故障诊断⑵、使用最大类分离性的二元粒子优化算法的SVM进行滚动轴承的故障诊断⑶等。SVM属于早期的机器学习算法,对样本量的需求相对较少,传统数据模式下均能取得较好的效果,但是在物联网和大数据时代,样本量剧增,SVM算法由于其轻量
①北京市自然科学基金(L172049),中国科学院科技促进经济社会发展STS项目(KFJ-STS-ZDTP-O57)和中国科学院智能农业机械装备
工程实验室(GC20190742)资助项目。
②男,1991年生,博士生;研究方向:农机设备故障诊断分析;E-mail:***************
③通信作者,E-mail:*****************
(收稿日期=2019-12-23)
—1
化的设计难以再提高算法的准确度,因而需要更复杂的方法结合大量数据来提高算法的准确性。在这样的背景驱动下,有研究者提出了具备深度堆叠结构可学习的最小二乘支持向量机用于滚动轴承故障诊断,能够做到自动提取故障诊断的敏感特征⑷。因此,在大数据时代,具备强大的学习能力及不同要素映射能力的算法将更有发展空间。
物联网、大数据和人工智能技术的快速发展,为滚动轴承的故障类型识别提供了大数据量和智能化处理的基本保证;同时,随着信息通信技术的快速发展g],也为数据的实时传输提供了保证。但是如何
在这样的背景下进行准确、高效的滚动轴承故障类型识别依然是一个挑战。现有大量研究方法被提出并用于滚动轴承的故障类型识别。如文献[8]提出使用经验模式分解进行特征提取,然后使用人工神经网络(artificial neural network,ANN)进行故障诊断。随着深度学习技术越来越成熟,研究者将深度学习算法应用于滚动轴承的故障诊断,如使用深度神经网络进行滚动轴承故障诊断⑼,但是深度神经网络存在参数膨胀的问题,导致其工程应用性不强。为了解决这个问题,目前提出的比较典型的方法是使用卷积神经网络(convolutional neural net­work,CNN)进行滚动轴承的故障诊断[。⑶,其能够通过局部连接和权值共享减少神经网络需要训练的参数个数,具备简单化的结构设计,使网络更容易训练,能有效应对大数据量的问题,同时能够保证较高的模型准确度性能。但是CNN对于输入时间序列的远距离特征捕获能力较差,远距离捕获能力是提升模型性能的有效手段,而增加其远距离特征捕获能力的代价是增加神经网络的深度,无疑进一步增加了算法的复杂度。为了有效解决神经网络的远距离捕获能力,长短时记忆(long-short term memory, LSTM)网络被提出,并用于滚动轴承的故障诊断[⑷。也有研究者将CNN和LSTM结合,提出了卷积双向LSTM网络[⑸进行滚动轴承故障诊断,使用CNN进行特征提取,然后使用双向LSTM对特征进行分类。
LSTM具有强大的时间序列远距离特征捕获能力得益于它的长短时记忆结构和循环处理结构,但—2—是这种结构使它很难做到并行计算,导致算法的时间效率低,因此在工程中应用的并不多。那么,如何做到既能捕获时间序列的远距离特征又能进行并行计算保证较高的时间效率一直是研究者面临的难
点问题。在此需求T,Transformer神经网络应运而生。Transformer是一种基于注意力机制的神经网络,包含的注意力机制可以很轻松地解决时间序列的远距离特征捕获问题,而位置编码能够使神经网络在处理输入序列时考虑时间序列的顺序性问题。截至目前‘Transformer已经在自然语言处理的多个领域取得较好的效果,比如机器翻译、语义抽取及阅读理解等。但是,其独特的结构限制了直接应用于滚动轴承故障分析领域,如滚动轴承故障分析领域的数据与自然语言的词向量间的有效映射和自然语言处理领域的位置编码并不适合于滚动轴承故障分析领域。本文针对上述限制展开研究,将Transformer神经网络由自然语言处理领域引入到滚动轴承故障分析领域,进行滚动轴承的故障类型识别,属于Trans­former神经网络的全新应用,为其在工业领域增加了新的应用场景。
为了解决上述限制和问题,本文提出了基于Transformer神经网络的滚动轴承故障类型识别方法,论文的贡献总结如下。
(1)提出结合小波包变换时频域能量特征和快速傅里叶变换频域特征生成满足Transformer神经网络的输入样本矩阵,解决Transformer神经网络的输入问题。
(2)提出应用于滚动轴承故障类型识别的归一化位置编码方法,解决Transformer神经网络在滚动轴承故障分析领域的位置编码问题。
(3)提出Transformer神经网络双向输入样本矩阵处理机制并提出算法训练过程中错误样本权重增强机制,
提升了算法的鲁棒性。
论文的其余部分组织如下。第1节给出滚动轴承故障类型识别方法,同时,介绍本文使用的特征提取方法及构成样本矩阵的流程。第2节介绍本文在进行滚动轴承故障类型识别时使用的Transformer 神经网络。第3节给出所提方法的性能评估结果。第4节给出论文总结和未来工作方向。
邱大伟等:基于Transformer神经网络的滚动轴承故障类型识别
1滚动轴承故障类型识别方法
11故障类型识别框架
本文使用Transformer神经网络识别滚动轴承故障类型。设力〃是滚动轴承真实故障类型,$是滚动轴承振动数据。借助Transformer神经网络可以使用s计算力d,计算公式为
fid=
=(2)式中A是滚动轴承振动数据s的特征,所有特征组成特征矩阵,矩阵尺寸为i xj,了和了为特征的前向和后向排列。E是本文提岀的归一化位置编码矩阵,其尺寸与特征矩阵的尺寸一致,为ixj。T 是Transformer神经网络故障类型识别模型。o■表示模型预测值与真实值的偏差,在工程应用中Q为随机
变量,很难进行预测,因此,故障类型识别模型得到的识别结果近似为滚动轴承故障类型,如式(2)所示。总之,本文的目标是设计特征提取方法构建前向特征矩阵、后向特征矩阵和设计位置编码方法构建位置信息,使用Transformer神经网络从前向和后向处理输入数据得到滚动轴承故障类型识别结果。
本文提出的使用Transformer神经网络的滚动轴承故障类型识别的通用架构如图1所示,图中所示架构包含3个部分,分别是数据预处理、识别模型构建和滚动轴承故障类型识别。原始振动数据经过数据预处理后得到前向和后向排列的特征矩阵。数据预处理包含4个数据处理部分,分别是时频域特征提取、频域特征提取、前向特征矩阵构建和后向特征矩阵构建。识别模型构建是滚动轴承故障类型识别的核心部分,主要包括创建模型和训练模型两部分。本文设计归一化位置编码使Transformer神经网络可以分别捕获前向特征矩阵和后向特征矩阵数据的位置信息,在构建完成Transformer神经网络故障类型识别模型后,前向特征矩阵和后向特征矩阵均被送入Transformer(构成双向数据处理机制)进行模型的训练,模型训练时使用提出的错误样本权重增强机制。训练过程中,当使用验证数据集得到最大的验证准确度时,保存故障类型识别模型为最优模型。最后,可以使用测试数据集测试最优滚动轴承故障类型识别模型的性能。
图1滚动轴承故障类型识别通用架构
12数据预处理
1.2.1时频域特征提取
轴承滚动运转过程中由于发生故障(如剥落、松动、裂纹及断裂)将导致动态振动信号的非平稳性的现象(信号的统计特征,如均值、方差等,随时间的变化而变化)。而这些非平稳性信号是表征某些故障最直接的工具。因此,进行故障类型识别的关键是对轴承动态信号的非平稳性进行有效的分析。已有研究表明〔⑹,小波包变换能够在时频域中对信号进行分析,滚动轴承的非平稳振动信号包含
—3—
高技术通讯2021年1月第31卷第1期
的频谱分布与滚动轴承的特征结构、故障类型密切相关,非平稳振动信号经小波包分解后在最底层上不同正交小波包空间的能量分布可以表示故障特征频率谱,是滚动轴承运行状况的本质特征。因此,本文引用小波包变换技术获取轴承序列数据的小波包能量特征,作为滚动轴承运行状态提取的时频域特征。
小波包分解及其系数重构可参看文献[16]。
本文所使用的小波包空间能量算子E(j,n)定义如下:
E(j,n)=丿工AezU几(",j,k)I『(3)其中,久5,j,◎是小波包变换系数,$为原始信号,]为小波包分解层数,卩为第丿•层节点索引。
对原始信号sQ)进行丿层小波包分解,在分解层数J上信号sQ)的小波包能量特征表示如下:
C(J,5)=[£(J,0),£(J,1),-,E(J,2;-1)]
(4)
本文采用的小波包变换提取时频域能量特征过程如算法1所示。
算法1小波包变换时频域能量特征提取
输入:滚动轴承振动原始数据data;
输岀:滚动轴承能量特征/一坍
1:加载data;
2:for i.e{1,…,size(data,1);•do
3:使用dblO小波对data(i,:)进行6层小波包分解,得到小波树tree;
4:forje j11do
5:重构tree第6层j处的小波包系数,得到corf;6:使用c。护利用式(3)计算小波包空间能量en-ergy(j);
7:end for
8:energy标准化为均值为0、标准差为1的标准化数据/_%,:);
9:end for
10:return f tf.
1.2.2频域特征提取
虽然上述小波包变换得到的能量特征能够在时频域有效地区分滚动轴承非平稳振动信号,但是为了更直观地表示振动信号的频率特征,本文使用快速傅里叶变换对滚动轴承振动信号进行频域信号特—4—征提取,快速傅里叶变换的具体变换公式可参看文献[17]。本文采用的快速傅里叶变换提取频域特征过程如算法2所示。
算法2快速傅里叶变换频域特征提取
输入:滚动轴承振动原始数据血加,采样点数N;
输出:滚动轴承频域特征/
1:加载data;
2:for i e j1,•••,size(data, 1)}do
3:使用快速傅里叶变换处理竝z(i,:),得到变换值Y;4:取丫的幅值,并换算成实际的幅度A;
5:取4的前半部分作为傅里叶变换特征值f_f &,:);
6:end for
7:return
1.2.3特征矩阵构建
为了满足Transformer神经网络的输入需求,将上述时频域特征和频域特征进行组合,构成前向特征矩阵。前向特征矩阵的生成过程如图2所示。
2048未识别的网络
0.1129150.3845210.07934570.671387-0.0610352-0.0701904
64
滚动轴承原始振动数据
dblO小波包变换提収
时频域能量特征
1.37605
2.31436-0.809894-1.42214
快速傅!叶委换一
或特征
时频域能量特征
1024
复制—'().00289977().0.009335240.0346754
变形
64
1.37605
1.37605
2.31436
2.31436•.........-0.809X94
-1.42214|
-1.42214
e  1.37605  -0.809894・1.42214
1.37605
2.31436-1.42214!
0.002899770.00726356().00205322I
••••••u.uuougu〉
0.004023460.(X)793047・・・・・・
0.0346754|
丽向特征矩阵
图2前向特征矩阵构造
图2所示使用dblO类型的小波基函数对原始数据进行小波包变换,获取时频域能量特征,使用的
邱大伟等:基于Transformer神经网络的滚动轴承故障类型识别
小波包分解层数为6层,得到64个时频域特征。使
用快速傅里叶变换提取原始信号的频域特征,特征
点数为1024。对时频域能量特征使用复制机制和
对频域特征使用变形机制,构成尺寸为32X64的前
向特征矩阵。
对于上述过程需要说明的是,由于滚动轴承振
动信号是离散信号,所以小波基函数选择的原则是
必须具有离散小波变换能力,而选用不同的小波基
函数,小波包变换的结果也有差异。本文所使用的
曲10小波基函数仅提供示例性应用。对于小波包
分解层数的选择也可由读者自行尝试使用不同的层
数。对于特征矩阵的尺寸也不仅仅局限于32x64o
得到前向特征矩阵后,通过式(5)得到后向特
征矩阵,然后即可将前向特征矩阵和后向特征矩阵
输入Transformer神经网络进行Transformer故障类
型识别模型的训练。
_/1,1""/1,16',2,26■■■732,1'
:(5)
2 Transformer神经网络故障类型识别
模型
2.1模型构建
完整结构的Transformer神经网络具有编码器-解码器结构[⑻。编码器用于将输入序列的符号表示映射为序列的连续表示,解码器即将连续表示恢复为符号表示。完整的编码器-解码器结构更多地用于语言模型和翻译模型的建模。结合滚动轴承故障类型识别任务的特点,只需要计算出输入序列的连续表示,即可得到故障类型。所以本文中只需使用Transformer的编码器部分即可完成滚动轴承的故障类型识别。本文使用的基于Transformer的滚动轴承故障类型识别模型如图3所示,模型由4部分组成,即归一化位置编码、前向数据Transformer 处理层、后向数据Transformer处理层和全连接& Argmax层。归一化位置编码使Transformer在处理滚动轴承特征数据时考虑矩阵的位置信息,关于归一化位置编码的详细介绍将在下节给出。
图3基于Transformer的滚动轴承故障类型识别模型
前向数据Transformer处理层和后向数据Trans-former处理层在结构上是相同的,区别仅在于输入数据的不同。每个Transformer处理层由N=\2的相同层堆叠排列而成。每一个相同层包含两个子层,分别是多头自注意力机制层和一维卷积层。为了使网络结构具备通过增加深度来提高准确率的能力,即解决增加深度带来的副作用(退化问题,指层数逐渐增加后,出现准确率反而下降的情况),每个子层内部均使用残差连接,同时,每个子层末端使用层归一化㈤]以提高神经网络的训练速度和泛化性能。因此,每个子层的输出可表示为
o=LayerNorm(%+Sublayer(久))(6)其中,Sublayer(%)是每个子层内部的函数,本文中为自注意力机制层处理函数和一维卷积层处理函数。LayerNorm(•)为层归一化处理函数。
多头自注意力机制可以描述为将查询和一组键-值对映射到输出,输出是一组值的加权和,其中分配给每个值的权重由使用键值进行查询计算得到。多头注意力机制允许模型在不同位置共同关注来自不同表示子空间的信息。多头自注意力机制的
—5