一种基于DCNN-LSTM混合模型的RUL预测方法
2021-01-12温海茹陈雯柏
温海茹,陈雯柏
(北京信息科技大学 自动化学院, 北京 100101)
在航空航天、军工装备、工业制造业领域,研究关键设备的剩余使用寿命(Remaining Useful Life,RUL),对有效改进维护策略和避免发生故障具有重要的实际意义。剩余使用寿命是可靠性分析中的重要指标之一,是指关键设备从运行条件开始当前时刻到失效时刻的时间间隔[1]。在大数据背景下,传统的寿命预测技术正逐渐向人工智能预测方向转变,在利用人工智能技术进行剩余寿命预测方面,数据驱动的寿命预测方法成为主流,根据文献[2]数据驱动的方法可分为统计数据驱动方法和机器学习方法。统计数据驱动方法需要已知退化模型并依赖状态监测数据。基于机器学习的方法可输入多种类型的数据不局限于状态监测数据且能够解决退化模型未知的问题,按深度可分为浅层机器学习方法和深度学习方法。对于浅层机器学习的寿命预测方法,文献[3]提出一种基于最小二乘法和支持向量机结合的寿命预测方法并成功应用于数字电路74LS280剩余寿命预测。文献[4]提出一种基于PSO-BP神经网络的刀具寿命预测,利用粒子群算法(PSO)优化网络权重,克服了BP神经网络反向传播收敛速度慢的问题。这些浅层方法不能提取设备数据之间的深层特征,大多数还是依赖信号处理技术,难以处理海量数据。对于深度学习的寿命预测方法,文献[5]构建了一种卷积神经网络(Convolutional Neural Networks,CNN),在所获取的监测信号中使用时间变量序列来实现剩余寿命预测,自动提取空间特征。文献[6]提出一种利用循环神经网络(RNN)方法对轴承设备健康状态进行长期预测。这些方法要么只考虑空间特征提取,要么只考虑时序数据时间相关性,都比较单一。长短时记忆(Long Short Term Memory,LSTM)网络作为非线性循环神经网络中的一种,虽然能够处理数据的时序性和非线性关系[7],但是它不能挖掘非连续数据之间的潜在特征和有效信息,预测精度还有待提高。
针对上述算法的不足,本文提出一种深度学习混合网络模型,将深度卷积神经网络(Deep Convolutional Neural Networks,DCNN)与长短时记忆网络结合进行剩余寿命预测。首先利用滑动时间窗的方法从原始数据中进行样本制备,构造连续特征图,作为DCNN的输入;然后利用网格搜索法优化算法模型,并提取特征形成特征向量;最后将卷积中提取的特征输入到一个堆叠的长短时记忆网络中,以学习长期和短期的时间依赖关系,并通过全连接层作为回归层来输出剩余寿命值,提高了预测精度。
1 DCNN-LSTM模型
1.1 CNN卷积模型
CNN卷积模型作为深度学习理论中主流网络之一,已经在工业领域应用取得了巨大成功,包括计算机视觉、自然语言处理、语音识别等方面[8]。本文所提出的算法不同于计算机视觉方面的二维卷积操作,而是利用一维卷积来提取时间序列上的深层特征,不设置池化层。
如图1所示,输入的数据以二维的样式输入,一维表示特征的时间序列,另一维表示传感器所采集到的特征。每层卷积层包含若干个同样大的卷积核,通过卷积核计算整个输入数据,提取每个输入样本的局部特征并依次组合,产生更高层、更抽象的特征空间。所有特征空间组合在一起后作为下一层CNN的输入。
图1 一维卷积原理示意图
1.2 LSTM网络模型
LSTM网络是处理时间序列的一种网络结构,它是根据循环神经网络改进得来的。长短时记忆网络能够解决RNN在实际应用中出现的梯度爆炸和消失的问题[9],可以学习时间序列长短时的依赖关系。此网络有三层结构,分别为输入层、隐含层和输出层,并设计了记忆单元,历史信息分别受到了输入门、遗忘门和输出门的影响。
图2 LSTM单元结构示意图
当前时刻临时记忆单元:
(1)
记忆单元:
(2)
输入门:
i(t)=σ(Wxix(t)+Whih(t-1)+
Wci(t-1)+bi)
(3)
遗忘门:
f(t)=σ(Wxfx(t)+Whfh(t-1)+
Wcfc(t-1)+bf)
(4)
输出门:
o(t)=σ(Wxox(t)+Whoh(t-1)+
Wcoc(t-1)+bo)
(5)
计算LSTM单元的输出:
h(t)=o(t)·tanh(c(t))
(6)
式(1)~(6)中:σ表示sigmoid激活函数;W表示输入权重;b表示权重偏置。
2 DCNN-LSTM混合算法实现
2.1 时间窗口
为了提高深度学习模型的预测准确度,需要在模型构建之前确认样本输入大小。复杂系统设备产生的故障数据往往是时间序列的,而研究基于剩余寿命预测的多变量时间序列的问题与研究在单个时间步长内多变量数据值相比,通常能从多变量时间序列数据中获取更多信息。时间序列处理具有更大的潜力,可以提供更好的预测性能。本文采用时间窗口进行数据准备以处理多变量时间信息。如图3所示,不同传感器监测的传感器数据代表不同的特征,把设备多个传感器值作为网络的输入并利用滑动窗口来构建DCNN-LSTM模型的训练样本。
图3 时间滑动窗口示意图
输入形式为(batch_size,time_step,feature_nums),分别表示训练过程中批处理的样本数量、时间序列长度、特征维度。时间窗口的长度为DCNN-LSTM模型的时间步长time_step,窗口的高度为传感器维数n,窗口以n*time_step的大小沿着时间轴滑动,每滑动一个时间步长,就得到一个训练样本。
2.2 DCNN-LSTM混合模型
本文提出的DCNN-LSTM网络混合模型如图4所示。
图4 DCNN-LSTM混合模型框图
DCNN-LSTM模型主要分为2个部分:深度卷积神经网络(DCNN)部分实现对空间特征的提取,堆叠长短时记忆网络(LSTM)部分实现对序列时间依赖性的特征提取及剩余使用寿命的输出。假设多个传感器监测到设备的数据为Xn=[x1,x2,…,xt,…,xTn]∈Rm×Tn。其中m为每个设备上的传感器数量,n为设备的时间序列长度,各个设备上采集到的m维测量值向量表示为x(t)=[x1(t),x2(t),…,xm(t)]∈Rm×1,其中xm(t)为t时刻下设备传感器所得到的传感器值,Tn为故障发生的时间。在t时刻,将x(t)作为网络的输入,网络的输出作为当前时刻的剩余寿命输出值。更深的网络意味着模型具有更深的特征抽取能力,因此模型设置一维卷积(conv1D)层数为5层,卷积核数目按层数依次设为32、16、16、16、16,卷积核大小为2~6,时间窗口大小为10~30。因为模型参数数量较少,所以本文在卷积层后不加池化层,并使用零填充的方法使时间窗口大小保持不变。卷积核沿着时间轴进行卷积运算,实现多传感器数据自动融合并直接输出给堆叠的长短时记忆网络。对于LSTM部分,不同的LSTM层在空间相连,时间序列数据从上层输出到下一层。每层LSTM都包含许多LSTM神经元,以提取数据的时间依赖性。在每层LSTM中,神经元之间进行彼此信息的交换,实现时间性的连接。此外,每个神经元的输出不仅要在下一刻循环进入自身,还要与其他神经元共享。要提高模型精确性,确定时间窗口大小以及LSTM部分的层数和神经元数量十分重要,因此要进行参数优化。在模型训练的过程中,训练数据的剩余寿命值是已知的,通常用最小化J值的方法来求取训练过程的损失函数值。通常使用式(7)来进行优化。
(7)
模型采用Adam优化算法来更新网络的权值,在每层LSTM后加入Dropout正则化技术来降低过拟合带来的影响,参数大小为0.5,整个网络都采用rule激活函数并引入了Early-Stopping机制,当模型损失不在变化是停止训练。最后将LSTM层之后的特征向量连接到全连接层(Dense),输出剩余寿命值。
2.3 混合模型参数优化
在固定卷积层数和卷积核数目的前提下,本文进行堆叠的长短时记忆网络结构优化,涉及到的模型结构参数包括长短时记忆网络层数和神经元的数量,这是堆叠的LSTM网络模型的重要超参数,直接影响结构模型预测的准确率。网络搜索法是一种穷举搜索方法[10],首先对LSTM层数和神经元数量进行排列组合形成一个二维网格,并验证网格中的每个参数以选择最佳网络结构参数。最后具备最佳验证预测性能的参数被认为是最优的,并用于剩余寿命模型预测中。对于网格搜索算法而言,搜索比较全面而且利用到的每组参数是相互独立的,并行性较高,在参数一定的条件下,其运算复杂度比较出众。此方法容易实现,对计算资源的要求比较低。故选择网格搜索法进行优化可降低计算时间。其网格优化参数如表1所示。
表1 优化模型参数
2.4 模型评价指标
剩余寿命预测算法性能评估常用评分函数(Score Function)和均方根误差(RMSE)作为评价指标。式(9)表示评分函数,其中N是测试集样本的个数,di为剩余寿命预测值和真实值的差值,并给出预测结果不同的惩罚权重。当di为非负数时,机器设备会在预计发生故障之前失效,会造成判断滞后,惩罚系数较大;当di为负数时,表示预测提前,惩罚系数较小。预测提前有助于制定维修计划规避风险,故di不大于0时,其绝对值越小越好。式(10)表示均方根误差,对提前或滞后预测给出相同的惩罚。
di=RULpre-RULact,i=1,2,…,N
(8)
(9)
(10)
如图5所示,函数Score是非对称指标,若预测值大于真实值,随着误差的增加,惩罚将呈指数级增长,而较晚的预测可能会导致设备严重故障。RMSE是对称性的指标,对剩余寿命预测高低的惩罚是一样的,RMSE值越小,表明误差越小,预测精度越高。使用这2种指标能够全面的衡量算法的性能。
图5 综合性能算法指标曲线
3 实验研究与分析
本文在Windows10下采用Tensorflow、Keras框架来实现提出的网络结构。所用编程语言版本是Python3.6,所有实验都是在Inter Core i7-7700HQ(2.8GHz)CPU、16GB RAM的计算机上进行的。
3.1 C-MAPSS数据描述与预处理
如表2所示,美国NASA卓越故障预测研究中心的C-MAPSS数据集[11]包含4个子数据集,每个子数据集分为训练集和测试集,且每个子集包含了26列数据:发动机编号,发动机运行周期,3列可操作的运行环境设置和21列不同传感器采集的时序数据。
表2 C-MAPSS数据集
接着利用卡尔曼滤波方法对多传感器监测到的时间序列数据进行滤波处理,之后为了消除操作条件变化对数据的影响,对每个传感器监测到的数据进行归一化处理,采用min-max标准化的方法,将数据归一化到[0,1]范围内。此训练集没有给出发动机从开始到结束的明确剩余使用寿命,故要自行添加标签。在发动机运行初期,考虑到设备比较新,使用分段线性函数代替线性函数作为剩余寿命值,设最大剩余寿命值为125个周期。
3.2 模型参数分析
针对FD001数据集进行了实验,在100个发动机单元中选择了变化比较明显的传感器数据,构建了DCNN-LSTM模型,并通过网格搜索法将长短时记忆网络层数和神经元数量形成一个二维的网格,并将每个组合的节点参数作为候选参数。考虑到计算资源和时间限制,将LSTM层数设置为1~4,神经元数量50到200,利用网格搜索和交叉验证确定了3层LSTM,每层LSTM中100个神经元参数结构可以实现DCNN-LSTM模型最佳性能。每两个参数作为一个组合,表3记录了部分参数组合,选择7个训练结果比较好的组合参数对比分析。
表3 不同LSTM层数和神经元数量的性能参数
通过比较组合中的参数和训练时长,可以看出此算法模型训练时长能够随着网络层数的增加和神经元数量的增加而逐渐延长。虽然组合1的训练时间比较短,但是为了更好地得到预测精确值,在固定DCNN层数不变的条件下,最终选择了3层LSTM为最佳。传感器监测到的数据都为时间序列数据,具有时序特征,因此DCNN-LSTM模型的预测准确率也会受到滑动窗口大小的影响。图6给出了不同时间窗口大小下FD001测试集RMSE和训练时长的变化情况。可见随着时间窗口的增大,RMSE逐渐减小。实验结果表明,当时间窗口制备的样本数据增多时,DCNN-LSTM模型提取的时序特征增多,训练时间增加,预测误差减小。
图6 不同时间窗大小测试集的RMSE和训练时长直方图
RMSE递减幅度变缓慢,表明输入样本达到一定数据量时,对训练模型的准确率影响减小,不必再增加数据量。当时间窗口大小为30时,RMSE最小,故窗口大小为30是模型最佳选择。
3.3 算法对比分析
经过实验确定模型参数和模型结构后,运行DCNN-LSTM模型 6次并记录最终预测结果,同最好的RUL传统方法多层感知器(Multi-Layer Perceptron,MLP)、 支持向量回归(Support Vector Regression,SVR)、相关向量回归(Relevance Vector Regression,RVR)和CNN及单一的LSTM进行比较。证明了在4个相同公开数据集下,DCNN-LSTM混合模型预测效果更好。实验结果用以下公式来衡量算法的改进程度,即:
(11)
表4为评价指标Score在不同数据集上的预测结果。可以看到,DCNN-LSTM方法在CMAPSS数据上的性能表现都超过了传统的机器学习方法和单一的CNN与LSTM网络。在子集FD001和FD003上相对于较好的LSTM 模型,Imp指数分别提高了10.05%和36.61%。这表明DCNN部分可以有效地提取单一环境下的故障退化信息,LSTM可以有效地捕获序列前后的时间关系,此算法能大大提高剩余使用寿命预测精度。针对运行环境复杂、多故障的子集FD002和FD004,DCNN-LSTM方法在Score上比单一的LSTM方法提高了60%左右,表明越深层的网络结构对故障模式、操作模式较多的数据越敏感,对预测精度的提高越有效率。表5为 RMSE在不同数据集上的预测结果。
表4 Score在不同数据集上的预测结果
表5 RMSE在不同数据集上的预测结果
由表5可知:DCNN-LSTM模型的RMSE最小,性能均超过单一的LSTM网络和单一的CNN网络,提升指数Imp达到9.8%。这意味着所提出的DCNN-LSTM模型具有最佳的预测性能,同时也证明了此算法在发动机剩余使用寿命预测问题上的有效性。
图7是测试集中随机选取的4台发动机单元寿命退化过程曲线,反映了涡扇发动机真实的RUL变化。从图7(c)可见,中期RUL预测值小于真实值,退化过程存在较早预测的倾向,但幅度不大。从图7(a)、图7(b)、图7(d)中可明显看到,当设备开始退化时,预测值有些波动,具有较晚预测的倾向;随着运行周期的增加,在中后期RUL值较小时,即故障发生程度较大时,预测结果很少有波动,基本上可拟合真实的曲线。可见多层长短时记忆网络能够提取和保留数据的历史信息,也反映出DCNN网络深层提取特征的优势。
图7 FD001中4台涡轮发动机RUL预测结果曲线
图8给出了100台发动机输出的预测值和真实值曲线。剩余使用寿命(RUL)值比较大的发动机故障退化不明显,部分预测结果误差较大,但是大部分还是可观的。当发动机的RUL偏小时,即故障程度较大,退化明显时,预测结果可以很好的追踪真实值,预测精度明显增强,显示出了所提算法的优越性。
图8 FD001中100台涡轮发动机预测曲线
4 结论
针对复杂系统设备RMSE的预测精度日益提高的要求,本文构建了一种深度学习混合的DCNN-LSTM网络系统模型。优势如下:1)利用滑动时间窗口构造输入样本利于发现微小故障;构建深层的卷积神经网络处理多传感器数据便于提取深层空间特征,降低寿命预测的不确定性;固定卷积层数不变,堆叠长短时记忆网络能够较好的处理复杂系统设备多传感器数据的时序性和非线性关系。2)本文方法兼顾深层卷积神经网络和长短时记忆网络特点,使用CMAPSS数据集验证并与浅层的机器学习和单一的深度学习模型相比,提高了剩余寿命的预测精度。3)利用简单的网格搜索法优化参数,降低了计算资源;自动融合多传感器数据特征,不需人工提取特征,对于其他工业领域设备而言具有可移植性。