注意力ConvLSTM模型在RUL预测中的应用

2021-03-13 06:00张贝克
小型微型计算机系统 2021年2期
关键词:卷积注意力预测

程 成,张贝克,高 东,许 欣

1(北京化工大学 信息科学与技术学院,北京 100029)

2(北京德普罗尔科技有限公司,北京 100029)

1 引 言

预测性维护旨在通过对设备进行持续地状态检测和数据分析,以预测设备未来的损坏趋势,在故障发生前排除隐患,降低因意外停机造成的维修成本[1];作为预测性维护的关键技术之一,剩余使用寿命(Remaining Useful Life,RUL)预测已经成为近十年来的重要研究课题,RUL是指设备部件或系统从当前时刻到该部件或系统无法执行特定功能时刻为止的持续工作时间长度[2,3],准确的寿命预测在保证系统可靠性和预防系统灾难方面起着至关重要的作用[4].

设备RUL预测方法可分为基于经验模型的方法、基于物理模型的方法和数据驱动的方法[5],由于前两种方法分别存在对领域专家的知识和经验过度依赖和难以挖掘复杂、高可靠性的设备失效机理的问题[6],存在较大的局限性;数据驱动的预测方法仅依靠先前检测到的数据即可对系统状态进行预测,无需对物理参数进行假设或经验估计,成为近年来研究的热点.

传统数据驱动的预测方法包括以神经网络(Neural Networks)、支持向量机(Support Vector Machines,SVM)、贝叶斯网络,隐马尔科夫模型(Hidden Markov Model,HMM)等为代表的机器学习方法和以失效数据及退化数据为基础的统计数据驱动方法.上述方法取得了一定的成绩,但在处理复杂时间序列时力有未逮,难以得出准确、高效的预测结果,不能满足复杂系统的RUL预测需求;近年来,深度学习快速发展,因其具有强大的非线性映射能力和高维特征提取能力[7],在诸多领域都卓有建树,本文意在借助深度学习处理复杂时间序列的优势,并在数据特征处理方面做深入研究,以进一步提高RUL预测准确度.

2 相关工作

Babu等人[8]首次尝试将卷积神经网络(Convolutional Neural Networks,CNN)应用于RUL预测中,利用卷积层和池化层来捕捉不同时间尺度的传感器信号的显著模式,并将所有识别出的显著模式统一起来映射到评估模型以实现RUL预测,获得了明显优于现有浅层回归模型的效果.

Deutsch等人[9]将深度置信网络(Deep Belief Network,DBN)应用于旋转部件的RUL预测中,该方法无需人工干预即可进行加速度传感器信号的特征提取,并通过将预测结果的均方根值(Root Mean Square,RMS)进行函数映射的方式预测轴承的RUL.

Lim等人[10]提出一种基于多层感知器(Multi-Layer Perceptron,MLP)的RUL预测框架,该框架利用移动时间窗口和基于K-Means的特征提取方法来改善基本MLP的性能.

针对轴承RUL预测中统计特征贡献度不同和故障阈值确定困难的问题,Guo等[11]人提出一种基于循环神经网络(Recurrent Neural Network,RNN)的健康指标(Health Index,HI),提出将相似度相近的统计特征与经典时频域特征相结合构成原始特征集,并根据单调性和相似性度量选定最敏感的特征,进而输入到递归神经网络中构建RNN-HI.实验证明,所提的方法具有良好的性能.

Zhang等人[12]提出一种基于长短期记忆(Long Short-Term Memory,LSTM)的预测框架,该框架专门用于发现潜藏在时间序列中的潜在模式,从而可以跟踪系统性能下降趋势预测RUL,实验证明,LSTM在本质上依赖于时间的结构使它能够更有效的揭示设备性能退化模式.

针对数据驱动的RUL预测中难以获得足够的故障数据样本问题,Zhang等[13]人结合迁移学习,提出一种基于双向长短时记忆(BLSTM)递归神经网络的预测方法,在他们的方法中,可以先在不同但相关的数据集上训练模型,然后再通过目标数据集进行微调,实验结果证明,迁移学习通常可以改善基于少量数据样本的预测模型的性能,但在由多种工况迁移到单一工况的情况下,迁移学习会导致更糟的结果.

Lin等[14]人将注意力机制应用于电量预测,利用注意力机制为输入序列数据分配权重系数,结果证明注意力机制的引入能够提高模型预测的准确性.

3 相关概念

3.1 循环神经网络(RNN)

循环神经网络(RNN)是一种常用于时间序列数据的神经网络,与传统神经网络不同的是,RNN中的隐藏层之间的节点不再是无连接的,而是有连接的,且其隐藏层的输入不仅包括输入层的输出,还包括上一时刻隐藏层的输出,因此当前节点的输出能够考虑到上一次的输出结果,使得网络中有了记忆,会依照过往的记忆决定后续的输出结果,而在数据驱动的RUL预测中,每组数据之间存在着先后顺序或因果关系,RNN显然适合处理这种时间序列结构的数据.

RNN的网络结构如图1所示,其中,xt表示t时刻网络的输入;St表示t时刻网络的状态或记忆;U、W和V表示权重向量,ot表示t时刻的输出结果.

图1 RNN网络结构Fig.1 RNN network structure

St=f(Uxt+WSt-1)

(1)

如式(1)所示,t时刻的网络状态St是由当前的输入xt和前一刻的状态St-1通过U和W权重向量计算而来.如式(2)所示,t时刻的状态输出结果ot是由当前状态St通过V权重向量计算而来的.

ot=f(VSt)

(2)

虽然理论上RNN能够处理任意长度的时间序列数据,然而由于此框架在网络训练时采用了反向传播算法,随着时间序列长度的增加,权重参数循环更新会出现大到无法处理的情况,称为梯度爆炸;抑或出现权重参数更新衰减到接近于0,使得网络只关注最近处理的结果,而将时间较久的计算结果遗忘,称为梯度消失.梯度爆炸和梯度消失都会影响网络的训练效果.

3.2 长短期记忆(LSTM)与卷积长短期记忆(ConvLSTM)

图2 LSTM网络结构Fig.2 LSTM network structure

LSTM网络状态更新的过程可以用式(3)-式(8)表示,其中bi、bc、bf和bo均为偏差向量.

it=σ(Wi[ht-1,xt]+bi)

(3)

(4)

ft=σ(Wf[ht-1,xt]+bf)

(5)

St=ftSt-1+it

(6)

ot=σ(Wo[ht-1,xt]+bo)

(7)

ht=ottanh(St)

(8)

卷积长短期记忆(ConvLSTM)的结构与LSTM相似,不同之处在于ConvLSTM引入了卷积运算,其计算过程如式(9)和式(14)所示,其中“*”表示卷积计算,权重W为二维卷积核,细胞状态S、隐藏状态h和i、f、o三个门均是三维Tensor.

it=σ(Wi*[ht-1,xt]+bi)

(9)

(10)

ft=σ(Wf*[ht-1,xt]+bf)

(11)

St=ftSt-1+it

(12)

ot=σ(Wo*[ht-1,xt]+bo)

(13)

ht=ottanh(St)

(14)

ConvLSTM在引入卷积运算之后,不仅能够继承LSTM处理时间特征的优势,还能进一步提取时序数据空间特征,从而构建时空特征模型.

3.3 注意力机制

注意力机制源于人类的视觉系统,当眼睛快速浏览一张图像时,会定位特别需要关注的区域,也就是视线焦点,在视线焦点区域会投入更多的资源,以获取更多的细节信息,而抑制其他无用信息的获取.近年来,一些专家学者将注意力机制引入到深度学习模型的优化中,注意力机制通过对模型的输入特征赋予不同的权重,以突出关键特征对模型的影响,以实现对模型预测性能的优化.

图3 注意力机制Fig.3 Attention mechanism

(15)

(16)

(17)

4 实验与结果分析

4.1 CMAPSS数据集

本文实验选用了由NASA卓越故障预测研究中心提供的用于飞机涡轮引擎的剩余使用寿命预测的CMAPSS数据集,该数据集包括FD0001、FD0002、FD0003、FD0004四个子数据集,这些子数据集由引擎编号、序列号、配置项和从21个传感器获得的传感器数据构成,模拟了由不同初始条件的引擎从健康状态逐渐退化直到发生故障的过程数据,每个子数据集均包含一个训练集和一个测试集,并提供了测试引擎的实际RUL值.

4.2 实验环境

本文实验中使用的深度学习计算平台具有一颗NVIDIA Tesla V100 32GB GPU和一颗8核 CPU,编程语言为Python3.7,使用Tensorflow 1.8版本深度学习框架进行实验.

4.3 算法描述

4.3.1 数据预处理

(18)

4.3.2 RUL标签设置

由于涡轮引擎在正常运行阶段退化趋势不明显,不利于模型训练,仅当在突破退化临界值后,引擎开始加速退化,由文献[16]可知,宜将训练集的RUL标签设置为如图4所示的分段函数,并将临界值设置为130.

图4 RUL标签定义Fig.4 RUL label definition

4.3.3 注意力ConvLSTM模型

如图5所示,本文所提的注意力ConvLSTM模型由卷积计算层、Attention-ConvLSTM层、ConvLSTM层和全连接层组成,对于每次输入的样本原始序列首先进行卷积运算,生成n个由抽象特征组成的特征矩阵{x1,x2,x3,…,xn},继而将其作为Attention-ConvLSTM层的输入特征序列,ConvLSTM网络以Many-to-Many的形式,输出隐藏层特征矩阵h,并经过全连接层和Softmax函数,使用注意力机制为隐藏特征矩阵加权,生成新的特征矩阵序列,经由第2层ConvLSTM层和全连接层以Many-to-One的形式输出预测RUL值.本实验的具体参数设置:实验每次选取样本数为1024,隐藏层节点数为120,对于FD0001、FD0002、FD0003、FD0004四个子数据集分别选用尺寸为30*15、21*18、30*15和19*18的卷积核,实验将原始训练集按照9:1的比例划分为训练集和验证集,将学习率设置为0.001,使用Adam优化器训练网络模型.

图5 注意力ConvLSTM模型结构Fig.5 Attention-ConvLSTM Model structure

4.3.4 算法复杂度分析

深度学习模型的复杂度一般从参数数量(Params)和浮点运算量(Floating Point Operations,FLOPs)两个度量进行评估,其中参数数量关系到模型大小,而FLOPs则关系到模型的计算速度.在本实验中主要涉及卷积层、ConvLSTM和全连接层的参数数量和FLOPs的计算.卷积层和全连接层参数数量和FLOPs的计算公式分别如式(19)和式(20)和式(21)和式(22)所示,其中,卷积层参数数量主要由卷积核宽度kw、卷积核长度kh、输入通道数cin和输出通道数cout决定而FLOPs还受输出特征图长度fh和输出特征图宽度fw影响;全连接层的参数数量和FLOPs均由输入节点数nin和输出节点数nout决定.

pconv=kw*kh*cin*cout+cout

(19)

pfc=nin*nout+nout

(20)

FLOPsconv=(kw*kh*cin*cout+cout)*fh*fw

(21)

FLOPsfc=nin*nout+nout

(22)

对于ConvLSTM,其参数数量主要由一个RNN和3个门的参数数量决定,因它们的转化矩阵维度都相等,一般可按式(23)计算得出,其中dh为隐藏单元维度,din为输入维度;而ConvLSTM的FLOPs则主要取决于卷积运算、哈达玛积运算、加法运算和Tanh函数运算,其计算公式如式(24)所示,其中kw和kh分别为卷积核长度和宽度、cin和cout分别为输入和输出通道数,fh和fw分别为输出特征图的长度和宽度.

pConvLSTM=4*[dh*(dh+din)+dh]

(23)

FLOPsConvLSTM=(16*kw*kh*cin+37)*cout*fh*fw

(24)

为进一步量化评估算法复杂度,本文使用了由Tensorflow 提供的Profiler分析工具,在FD0001、FD0002、FD0003、FD0004四个子数据集分别对模型进行性能分析,得到的精确参数数量和FLOPs如表1所示.

表1 算法复杂度分析参数Table 1 Algorithm complexity analysis parameters

4.4 评价标准

为评估模型预测精度,本文使用了常用的性能度量指标均方根误差RMSE和CMAPSS数据集自定义的Score函数作为模型评价标准,RMSE和Score的定义如式(25)和式(26)所示.

(25)

(26)

图6呈现了两个评价指标与预测误差d的函数关系,由实际情况可知,预测结果滞后(d>0)会比预测结果超前(d<0)产生更坏的影响,因此Score函数对滞后预测加大惩罚,由图像可知,Score和RMSE的值越小,模型预测效果越好.

图6 Score与RMSEFig.6 Score and RMSE

4.5 实验结果

模型在每个数据集分别进行20个Epoch后完成模型训练,然后将训练好的模型依次在FD0001、FD0002、FD0003、FD0004四个测试集进行验证,计算RMSE和Score并保存最终预测RUL值.每个子数据集分别包含100、259、100、249个测试引擎的数据,为更好地展示对比效果,将每个子数据集中的引擎数据按实际RUL数值降序排列,每个子数据集的预测RUL与实际RUL的对比结果如图7所示.

图7 预测结果与实际结果对比Fig.7 Comparison of predicted and actual results

为定量评估模型的预测性能,将本文实验结果与文献中的ANN、SRNN、LSTM、SRU[17]、DLSTM[18]、AdaBN-DCNN[19]模型和未引入注意力机制的BConvLSTM模型的实验结果作对比,由表2可知,本文所提模型的RMSE和Score在FD0001、FD0003和FD0004验证集中性能均为最优,在FD0002验证集上仅次于SRU模型,RMSE指标一直处于较低水平,性能稳定,而Score指标较其他方法有很明显优势.由上述对比数据可知,本文所提的模型具有良好的预测精确度和稳定的性能.

表2 RMSE/Score指标对比Table 2 Comparison of RMSE/Score indicators

为评估算法的实用性,本文进行了多次实验并记录模型的总训练时间和总测试时间,实验结果取均值后如表3所示.

表3 实验时间统计 Table 3 Experiment time statistics

由于在实际应用中模型仅需训练一次且为离线训练,因而本文所提模型的训练时间可以接受,而经计算单个测试样本的测试时间低于4×10-4秒,在绝大多数实际工业应用中,样本采样周期远远大于此测试时间,因而本文所提模型具备可行性、实用性.

5 结束语

深度学习的发展为RUL预测注入了新的动力,本文所提的RUL预测模型,首先对输入时间序列进行卷积运算,提取数据中的时空特征,并利用基于注意力机制的ConvLSTM网络,对影响力不同的特征矩阵赋予不等的权重,突出影响显著的特征因子,与传统方法相比该方法能够更充分地提取并有效利用时间序列中的隐藏特征,经实验表明,本文所提出的注意力ConvLSTM模型具有良好的预测精度、稳定的性能和良好的实用性.

猜你喜欢
卷积注意力预测
无可预测
基于全卷积神经网络的猪背膘厚快速准确测定
选修2-2期中考试预测卷(A卷)
选修2-2期中考试预测卷(B卷)
选修2—2期中考试预测卷(A卷)
让注意力“飞”回来
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
A Beautiful Way Of Looking At Things