<s>基于LSTM循环神经网络的故障时间序列预测</s>
<s>王鑫 吴际 刘超 杨海燕 杜艳丽 牛文生</s>
<s>北京航空航天大学计算机学院 丰台职业教育中心学校 中航工业西安航空计算技术研究所</s>
<s>北京航空航天大学学报 2018(04)</s>

<s>摘要： 有效地预测使用阶段的故障数据对于合理制定可靠性计划以及开展可靠性维护活动等具有重要的指导意义。</s><s>从复杂系统的历史故障数据出发, 提出了一种基于长短期记忆 (LSTM) 循环神经网络的故障时间序列预测方法, 包括网络结构设计、网络训练和预测过程实现算法等, 进一步以预测误差最小为目标, 提出了一种基于多层网格搜索的LSTM预测模型参数优选算法, 通过与多种典型时间序列预测模型的实验对比, 验证了所提出的LSTM预测模型及其参数优选算法在故障时间序列分析中具有很强的适用性和更高的准确性。</s>
<s>基金： 中国民用航空专项研究项目(MJ-S-2013-10) ; 国防科工局技术基础项目(JSZL2014601B008) ; 国家自然科学基金(61602237)~~</s>
<s>关键词： 长短期记忆(LSTM)模型 ; 循环神经网络 ; 故障时间序列预测 ; 多层网格搜索 ; 深度学习</s>
<s>作者简介： 王鑫, 男, 博士研究生。</s><s>主要研究方向:数据驱动技术。</s><s>吴际, 男, 博士, 副教授, 硕士生导师。</s><s>主要研究方向:模型驱动、软件可靠性分析, E-mail:wuji@buaa.edu.cn;刘超, 男, 博士, 教授, 博士生导师。</s><s>主要研究方向:软件工程、软件测试。</s>
<s>收稿日期： 2017-05-08</s>

<s>对于有高可靠性和安全性需要的复杂系统, 有效地预测使用阶段的可靠性指标是十分重要的。</s><s>目前, 已有众多方法用来解决可靠性预测问题, 这些方法大致可以分为3类 [1] : (1) 基于故障机理 (Physics-of-Failure, Po F) 的方法, Po F是一种根据故障发生的内在机制和根本原因进行间接预测的方法; (2) 数据驱动 (Data-Driven, DD) 的方法, DD是一种应用统计学或者机器学习等技术手段对可靠性指标进行直接预测的方法; (3) 融合的方法, 这种方法是一种Po F和DD相结合的方法。</s><s>近年来, 数据驱动的方法由于其便捷性和高效性等特点, 在实际可靠性预测中的应用日渐广泛 [2-3] 。</s>
<s>故障时间序列, 作为一个重要的可靠性指标, 能够展示故障的动态演化过程, 并且已经被多种数据驱动的方法预测, 比如自回归移动平均 (Autoregressive Integrated Moving Average, ARIMA) [4] 、奇异谱分析 (Singular Spectrum Analysis, SSA) [5] 、支持向量回归 (Support Vector machines Regression, SVR) [6] 、人工神经网络 (Artificial Neural Network, ANN) [7] 等。</s><s>由于可靠性数据通常不易获取, 已有的研究大多是面向组件级故障数据的, 比如文献[7]提供的柴油机涡轮增压器和汽车发动机故障时间序列。</s><s>这些数据表现为规则性很强的曲线形态并且能够被单一模型很好地拟合和预测。</s><s>然而, 对于系统级故障数据, 比如文献[3]提供的民航飞机整机故障时间序列, 由于其复杂且不规则的曲线形态, 已有的单一模型很难达到理想的预测效果 [8] 。</s><s>为此, 文献[8]提出了一种基于SSA和SVR的混合方法, 该方法首先从原始数据中提取故障特征成分然后分别建模和预测, 得到了比单一模型更好的实验结果。</s><s>然而, 混合方法的构建过程复杂、人工依赖性强, 不利于在实际中推广和使用。</s>
<s>近年来, 随着深度学习技术的不断发展, 一些深度学习模型逐渐被应用到时序数据的研究中。</s><s>深度学习模型是一种拥有多个非线性映射层级的深度神经网络模型, 能够对输入信号逐层抽象并提取特征, 挖掘出更深层次的潜在规律 [9] 。</s><s>在众多深度学习模型中, 循环神经网络 (Recurrent Neural Network, RNN) 将时序的概念引入到网络结构设计中, 使其在时序数据分析中表现出更强的适应性。</s><s>在众多RNN的变体中, 长短期记忆 (Long Short-Term Memory, LSTM) 模型 [10] 弥补了RNN的梯度消失和梯度爆炸、长期记忆能力不足等问题, 使得循环神经网络能够真正有效地利用长距离的时序信息。</s><s>LSTM模型在不同领域的时序数据研究中已有不少成功的应用案例, 包括文字语言相关的语言建模、语音识别、机器翻译 [11] , 多媒体相关的音频和视频数据分析、图片标题建模 [12-13] , 道路运输相关的交通流速预测 [14] , 以及医学相关的蛋白质二级结构序列预测 [15] 等。</s><s>然而, 在可靠性领域, LSTM模型的应用非常有限, 特别是对于故障时间序列预测这一研究问题, 目前还未发现相关研究。</s>
<s>本文针对系统级故障时间序列数据, 提出了一种基于LSTM循环神经网络的预测方法, 包括3层 (输入层、隐藏层和输出层) 网络结构的详细设计, 以及网络训练和网络预测的实现算法等。</s><s>在此基础上, 以预测误差最小为目标, 进一步提出了一种基于多层网格搜索的LSTM预测模型参数优选算法。</s><s>应用文献[3]提供的民航飞机故障数据展开实验, 并与Holt-Winters、ARIMA等多种时间序列预测模型进行实验对比。</s><s>实验结果展示了所提出的LSTM预测模型及其参数优选算法在故障时间序列预测中的优越性能。</s>
<s>1 相关理论和技术</s>
<s>本节简要介绍LSTM模型, 包括前向计算方法、基于时间的反向传播 (Back Propagation Through Time, BPTT) 算法、Adam参数优化算法, 以及相关的RNN、GRU模型。</s>
<s>对于给定序列x= (x 1 , x 2 , …, x n ) , 应用一个标准的RNN模型 [16] (如图1所示) , 可以通过迭代式 (1) ~式 (2) 计算出一个隐藏层序列h= (h 1 , h 2 , …, h n ) 和一个输出序列y= (y 1 , y 2 , …, y n ) 。</s>
<s>式中:W为权重系数矩阵 (比如W xh 表示输入层到隐藏层的权重系数矩阵) ;b为偏置向量 (比如b h 表示隐藏层的偏置向量) ;f a 为激活函数 (比如tanh函数) ;下标t表示时刻。</s>
<s>尽管RNN能够有效地处理非线性时间序列, 但是仍然存在以下2个问题 [14] : (1) 由于梯度消失和梯度爆炸的问题, RNN不能处理延迟过长的时间序列; (2) 训练RNN模型需要预先确定延迟窗口长度, 然而实际应用中很难自动地获取这一参数的最优值。</s><s>由此, LSTM模型应用而生。</s><s>LSTM模型是将隐藏层的RNN细胞替换为LSTM细胞, 使其具有长期记忆能力。</s><s>经过不断地演化, 目前应用最为广泛的LSTM模型细胞结构 [16] 如图2所示, z为输入模块, 其前向计算方法可以表示为</s>
<s>式中:i、f、c、o分别为输入门、遗忘门、细胞状态、输出门;W和b分别为对应的权重系数矩阵和偏置项;σ和tanh分别为sigmoid和双曲正切激活函数。</s><s>LSTM模型训练过程采用的是与经典的反向传播 (Back Propagation, BP) 算法原理类似的BPTT算法 [17] , 大致可以分为4个步骤: (1) 按照前向计算方法 (式 (3) ~式 (7) ) 计算LSTM细胞的输出值; (2) 反向计算每个LSTM细胞的误差项, 包括按时间和网络层级2个反向传播方向; (3) 根据相应的误差项, 计算每个权重的梯度; (4) 应用基于梯度的优化算法更新权重。</s>
<s>图1 RNN模型及隐藏层细胞结构Fig.1 RNN model and cell structure in hidden layer</s>
<s>图2 LSTM隐藏层细胞结构Fig.2 LSTM cell structure in hidden layer</s>
<s>基于梯度的优化算法种类众多, 比如随机梯度下降 (Stochastic Gradient Descent, SGD) [18] 、Ada Grad [19] 、RMSProp [20] 等算法。</s><s>本文选用的是文献[21]提出的适应性动量估计 (Adaptive moment estimation, Adam) 算法。</s><s>Adam优化算法是一种有效的基于梯度的随机优化方法, 该算法融合了Ada Grad和RMSProp算法的优势, 能够对不同参数计算适应性学习率并且占用较少的存储资源。</s><s>相比于其他随机优化方法, Adam算法在实际应用中整体表现更优 [21] 。</s>
<s>此外, LSTM模型演化出了很多变体, 其中最成功的一种是文献[22]提到的门限循环单元 (Gated Recurrent Unit, GRU) 。</s><s>GRU模型是LSTM模型的简化版本, 但是保留了LSTM模型的长期记忆能力, 其主要变动是将LSTM细胞中的输入门、遗忘门、输出门替换为更新门和重置门, 并将细胞状态和输出2个向量合二为一。</s><s>在实际应用中, GRU模型与LSTM模型具有很强的可比性 [22] 。</s>
<s>2 研究方法</s>
<s>根据系统级故障时间序列数据的特点, 结合第1节介绍的相关理论和技术, 本节给出基于LSTM模型的故障时间序列预测方法, 以及对应的基于多层网格搜索的参数优选算法。</s>
<s>2.1 基于LSTM的故障时间序列预测</s>
<s>考虑到单变量故障时间序列有限样本点的数据特征, 以及循环神经网络从简的设计原则, 本文构建LSTM预测模型的整体框架如图3所示, 包括输入层、隐藏层、输出层、网络训练以及网络预测5个功能模块。</s><s>输入层负责对原始故障时间序列进行初步处理以满足网络输入要求, 隐藏层采用图2表示的LSTM细胞搭建单层循环神经网络, 输出层提供预测结果, 网络训练采用第1节提到的Adam优化算法, 网络预测采用迭代的方法逐点预测。</s>
<s>图3 基于LSTM的故障时间序列预测框架Fig.3 LSTM based framework for failure time series prediction</s>
<s>2.1.1 网络训练</s>
<s>网络训练主要以隐藏层为研究对象。</s><s>首先在输入层中, 定义原始故障时间序列为F o ={f 1 , f 2 , …, f n }, 则划分的训练集和测试集可以表示为F tr ={f 1 , f 2 , …, f m }和F te ={f m+1 , f m+2 , …, f n }, 满足约束条件m<n和m, n∈N。</s><s>然后对训练集中的元素f t 进行标准化, 采用经典的z-score标准化公式 (均值为0, 标准差为1, 表示为zscore) , 标准化后的训练集可以表示为</s>
<s>为了适应隐藏层输入的特点, 应用数据分割的方法对F&apos; tr 进行处理, 设定分割窗口长度取值为L, 则分割后的模型输入为</s>
<s>对应的理论输出为</s>
<s>接下来, 将X输入隐藏层。</s><s>从图3可以看出, 隐藏层包含L个按前后时刻连接的同构LSTM细胞, X经过隐藏层后的输出可以表示为</s>
<s>式中:C p-1 和H p-1 分别为前一个LSTM细胞的状态和输出;LSTM forward 表示第1节提到的LSTM细胞前向计算方法 (式 (3) ~式 (7) ) 。</s><s>设定细胞状态向量大小为S state , 则C p-1 和H p-1 2个向量的大小均为S state 。</s><s>可以看出, 隐藏层输出P、模型输入X和理论输出Y都是维度为 (m-L, L) 的二维数组。</s><s>选用均方误差作为误差计算公式, 训练过程的损失函数可以定义为</s>
<s>设定损失函数最小为优化目标, 给定网络初始化的随机种子数seed、学习率η以及训练步数steps, 应用Adam优化算法不断更新网络权重, 进而得到最终的隐藏层网络。</s>
<s>2.1.2 网络预测</s>
<s>本小节应用训练好的LSTM网络 (表示为LSTM * net ) 进行预测。</s><s>预测过程采用迭代的方法。</s><s>首先, 理论输出Y的最后一行数据为</s>
<s>将Y f 输入LSTM * net , 输出结果可以表示为</s>
<s>则m+1时刻的预测值为p m+1 。</s><s>然后, 将Y f 的最后L-1个数据点和p m+1 合并为新的一行数据</s>
<s>将Y f+1 输入LSTM * net , 则m+2时刻的预测值为p m+2 , 依次类推, 得到的预测序列为</s>
<s>接下来, 通过对P o 进行z-score反标准化 (表示为de_zscore) , 得到最终的与测试集F te 对应的预测序列为</s>
<s>类似地, 将X的每一行作为模型输入可以得到与训练集F tr 对应的拟合序列P tr 。</s><s>最后, 通过计算F tr 和P tr , 以及F te 和P te 的偏差定量地给出模型的拟合和预测精度。</s>
<s>总的来说, 基于LSTM的故障时间序列模型训练和预测算法概括如下:</s>
<s>算法1训练并预测LSTM故障时间序列模型</s>
<s>输入:F o , m, L, S state , seed, steps, η。</s>
<s>输出:与测试集对应的预测序列以及模型精度。</s>
<s>其中:训练过程涉及输入层、隐藏层、输出层、网络训练4个模块, 预测过程主要涉及输出层模块;LSTM cell 表示LSTM隐藏层细胞 (如图2所示) ;LSTM net 表示LSTM隐藏层网络 (如图3所示) ;ε e 为误差度量函数。</s>
<s>2.2 基于多层网格搜索的LSTM预测模型参数优选</s>
<s>在构建上述LSTM预测模型中, 涉及到众多参数, 其中以分割窗口长度L、状态向量大小S state 和学习率η最为关键 [16] 。</s><s>为了达到更好的预测效果, 本文采用网格搜索的方法对这3个参数进行优选。</s><s>相比与其他的超参数优化方法 (比如遗传算法 [23] 、随机搜索算法 [16] 、粒子群算法 [24] , 贝叶斯算法 [25] 等) , 网格搜索是一种简单实用、容易并行计算且计算耗时可控的优化方法 [26] , 能够很好地满足故障时间序列预测的任务需求和实验要求。</s><s>参数优选的依据是测试集全部测试点上的预测精度最高, 即预测误差ε (P te , F te ) 最小, 目标函数可以表示为</s>
<s>式中:step L 、step state 和step η 分别为对应参数的网格搜索步长。</s><s>L、S state 和η这3个参数构成了一个三维搜索空间, 可以通过多层网格搜索算法 (算法2) 获取最优参数组合。</s><s>搜索过程主要包括3层, 从内到外分别对S state 、L和η进行网格搜索。</s><s>首先, 固定随机种子数seed和训练步数steps, 根据式 (23) 预设3个参数的取值范围 (为了降低模型复杂度, 分别将L max 和S max 控制在较小的取值) ;然后, 分别遍历3个参数的取值范围, 在最内层训练并预测LSTM故障时间序列模型 (如算法2所示, 表示为LSTM predict ) , 保存对应的模型参数和模型精度;最后, 对所有保存的结果按照预测精度由高到低排序, 则最前面的参数组合即优选的模型参数。</s>
<s>算法2 LSTM预测模型参数优选</s>
<s>3 实验验证</s>
<s>本节结合一个航空领域的工业案例, 应用第2节提出的LSTM预测模型及其参数优选算法展开实验验证。</s>
<s>3.1 实验准备</s>
<s>首先介绍实验中所选用的故障数据集, 与本文提出的LSTM模型相对比的其他时间序列预测模型, 评价不同预测模型优劣的精度度量指标, 以及实验运行平台和软硬件环境配置。</s>
<s>3.1.1 数据集</s>
<s>实验数据采用文献[3]提供的系统级故障时间序列数据集。</s><s>该数据集包含两架正在运营的波音737飞机18年 (1997—2014年) 的故障记录, 通过整理后得到2个包含216个数据点的月度故障时间序列数据。</s><s>故障时间序列如图4所示, 分别对应A飞机和B飞机2个数据源, 横坐标为年份, 纵坐标为月度故障数。</s><s>从图中可以看出, 这2个系统级故障数据相比于文献[7]提供的组件级故障数据表现出更为复杂的曲线形态。</s><s>此外, 对于复杂系统来说, 一定时期内发生的故障数可以视为系统的平均故障率 [27] , 用公式表示为 , 其中f i 和t i 分别为第i次使用周期中发生的故障数和工作时长, N为指定时期内的工作次数, MTBF (Mean Time Between Failure) 为平均故障间隔时间。</s><s>因此, 本文选择故障数这一重要的可靠性指标作为实验对象, 并设定前17年的204个数据点作为训练集, 第18年的12个数据点作为测试集。</s>
<s>图4 A、B飞机的月度故障时间序列数据Fig.4 Monthly failure time series data for Aircraft A and Aircraft B</s>
<s>3.1.2 对比模型</s>
<s>除了第1节提到的RNN和GRU模型, 本文将LSTM模型与以下5种时间序列预测模型进行实验对比。</s>
<s>1) Holt-Winters模型</s>
<s>Holt-Winters又称3次指数平滑, 是一种能够处理含有趋势性和周期性成分的时间序列分析方法 [28] 。</s><s>其思想是利用历史数据的不同特征成分 (水平、趋势和季节) 来递推当前数据。</s><s>Holt-Winters模型的重要参数是与特征成分对应的3个平滑系数, 即α、β和γ, 取值均为0到1之间, 且越靠近1则预测结果越依赖于近期观测值。</s><s>此外, 根据季节性成分在递推公式中的不同组织形式, Holt-Winters模型又分为加法和乘法2种类型 (分别表示为Holt-Winters a 和Holt-Winters m ) 。</s><s>在实际使用中, 这2种类型均需要计算不同特征成分的初始值, 并根据均方误差最小来计算3个平滑系数。</s>
<s>2) 自回归移动平均</s>
<s>ARIMA是时间序列分析的经典理论和方法, 其模型可以表示为ARIMA (p, d, q) , 其中p、d、q分别为自回归项数、差分次数、移动平均项数 [29] 。</s><s>在实际使用中, 这3个参数可以通过观测自相关函数 (Auto Correlation Function, ACF) 和偏自相关函数 (Partial Auto Correlation Function, PACF) 确定, 也可以通过计算AIC (Akaike Information Criterion) 或BIC (Bayesian Information Criterion) 值取其最小来确定。</s><s>本文采用了文献[30]提出的自动化方法建立ARIMA模型。</s>
<s>3) 奇异谱分析</s>
<s>SSA是一种时域和频域相结合的非参数方法, 可以用于处理非线性、非平稳以及包含噪声的时间序列, 其核心思想是提取序列中的有效成分建模和预测 [31] 。</s><s>SSA包括分解和重构2个过程, 其中分解过程又包括嵌入和奇异值分解 (Singular Value Decomposition, SVD) 2个子过程, 重构过程又包括分组和对角平均2个子过程。</s><s>在实际使用中, 需要确定的2个参数为嵌入子过程的窗口长度L ssa 和分组子过程的分组类别G ssa 。</s><s>本文根据文献[32]提出的方法确定这2个参数的取值范围并取其最大值。</s><s>此外, SSA包含递归和向量2种预测方法 (分别表示为SSA r 和SSA v ) , 其中向量预测方法拥有更好的稳定性但是需要消耗更多的计算资源。</s>
<s>4) 多元线性回归</s>
<s>多元线性回归 (Multiple Linear Regression, MLR) 是一种广泛应用于预测任务的多因素分析方法 [33] 。</s><s>MLR用于时间序列预测的模型可以表示为Y t =a 0 +a 1 Y t-1 +a 2 Y t-2 +…+a k Y t-k +e, 其中:Y t 为t时刻的预测值, a 1 , a 2 , …, a k 为不同历史时刻数据Y t-1 , Y t-2 , …, Y t-k 对应的回归系数, a 0 和e分别为偏置项和误差项 [34] 。</s><s>当连续的历史时刻数据被选为多因素变量时, k也可以称为窗口长度 (表示为L mlr ) 。</s><s>本文选定连续2年的月度故障数据点个数24作为k的取值。</s>
<s>5) 支持向量回归</s>
<s>SVR是一种可以用于时间序列预测的机器学习方法 [35] 。</s><s>这种方法通过一个非线性核函数将多维输入映射到更高维度的特征空间后执行回归运算, 进而得到与输出指标的非线性映射关系。</s><s>本文选择常用的高斯径向基函数 (Gaussian Radial Basis Function, RBF) 作为非线性核函数, 并采用文献[36]提出的启发式方法计算核函数参数σ svr 和误差边界ε。</s><s>此外, SVR模型的惩罚因子C和窗口长度L svr 分别设置为3和24。</s>
<s>3.1.3 度量指标</s>
<s>本文从以下2个方面评价所有的预测模型:计算耗时和模型精度。</s><s>对于计算耗时, 本文统计了每个模型在构建过程中消耗的时间;对于模型精度, 本文选择均方根误差 (Root Mean Square Error, RMSE) 作为度量标准。</s><s>RMSE的计算公式可以表示为 , 其中, f t 和y t 分别为故障时间序列在t时刻的观测值和模型输出值, T为数据点个数。</s><s>本文通过对训练集和测试集分别计算RMSE值来定量地评价模型的拟合和预测精度。</s>
<s>3.1.4 平台和环境</s>
<s>实验所使用计算机的配置如下:处理器为英特尔酷睿Duo CPU i5-6500, CPU频率为3.20 GHz和3.19 GHz;内存为4.00 GB;操作系统为Windows 10 (64位) ;程序设计语言为Python 3.5.2 (64位) 和R 3.3.3 (64位) ;集成开发环境为PyCharm Community Edition 2016.3.2和Rstudio0.99.903。</s><s>程序设计过程中, RNN、LSTM和GRU模型由Python的tensorflow 0.12.0rc0 [37] 程序包实现, Holt-Winters、ARIMA、SSA、MLR和SVR模型由R的stats 3.3.3 [38] 、forecast 8.0 [39] 、Rssa0.14 [40] 和rminer 1.4.2 [41] 程序包实现。</s>
<s>3.2 实验结果</s>
<s>首先, 以飞机A为例, 应用2.1节提出的方法对标准化后的故障时间序列训练集建立LSTM预测模型。</s><s>这里初步根据经验确定模型参数, 分割窗口长度L取最小值2, 状态向量大小S state 取半年的月度故障数据点个数6, 随机种子数seed=1, 训练步数steps=500。</s><s>图5展示了相同参数下不同学习率 (η=0.05, 0.1, 0.5) 训练LSTM模型的损失变化和模型精度。</s><s>可以看出:当η=0.05和η=0.1时, 最终获得的损失较小 (0.83左右) ;3个学习率对应的训练集拟合精度基本相同 (RMSE值在2.0附近) ;在3、4、5、6和12个测试点上, η=0.1的预测精度最高 (RMSE值最低) 。</s><s>因此, 本文选定η=0.1训练LSTM模型。</s>
<s>为了验证LSTM模型在不同类型循环神经网络中的优势, 本文将LSTM模型的隐藏层细胞替换为RNN和GRU结构, 并以相同参数进行实验。</s><s>实验结果如图6所示。</s><s>从图中可以看出:LSTM和GRU的损失变化相似并且都优于RNN, 对应的训练集拟合精度也较高;在5、6和12个测试点上, LSTM的预测精度要高于RNN和GRU。</s>
<s>图5 不同学习率的损失变化和模型精度对比 (A飞机) Fig.5 Comparison of loss change and model accuracy with different learning rates (Aircraft A)</s>
<s>为了进一步验证LSTM模型的应用效果, 本文采用不同的时间序列预测模型进行对比, 实验结果如表1所示。</s><s>从表中可以看出:LSTM模型的拟合精度要低于SSA和SVR模型, 但是高于其他6种模型;LSTM模型的整体预测精度较高, 在6和12个测试点上的预测精度最高 (RMSE值分别达到了2.109和2.196) ;LSTM模型在该参数组合下的计算耗时要少于ARIMA模型, 但是多于其他8种模型。</s>
<s>对于B飞机, 实验流程与A飞机类似。</s><s>这里根据经验调整模型参数, 令状态向量大小S state 仍然取6, 分割窗口长度L取一年的月度故障数据点个数12, 随机种子数seed=100, 训练步数steps=1 000。</s><s>图7展示了相同参数下不同学习率 (η=0.01, 0.03, 0.05) 训练LSTM模型的损失变化和模型精度。</s><s>可以看出:3个学习率对应的训练集拟合精度基本相同 (RMSE值在1.2附近) ;η=0.05时存在一定的过拟合现象, 导致预测精度波动较大;在6和12个测试点上, η=0.03的预测精度最高 (RMSE值最低) 。</s><s>因此, 本文选定η=0.03训练LSTM模型。</s>
<s>图6 不同隐藏层细胞的损失变化和模型精度对比 (学习率η=0.1, A飞机) Fig.6 Comparison of loss change and model accuracy with different hidden layer cells (learning rateη=0.1, Aircraft A)</s>
<s>接下来, 本文替换隐藏层细胞为RNN和GRU结构并进行实验, 结果如图8所示。</s><s>可以看出, LSTM模型无论是在损失变化还是整体模型精度上都优于RNN和GRU模型。</s><s>图9展示了LSTM模型的拟合 (图9 (a) ) 和预测 (图9 (b) ) 结果, 其中黑色线条分别代表原始故障时间序列数据划分的训练集和测试集, 灰色线条分别代表LSTM模型在训练集和测试集上的拟合序列和预测序列。</s><s>从图中可以看出, 在12个测试点上, LSTM模型很好地跟踪了真实的故障数据, 达到了比较理想的预测效果。</s>
<s>表1 不同预测模型实验结果对比 (A飞机) Table 1 Experimental results for different prediction models (Aircraft A)</s>
<s>注:最小RMSE值和最小耗时由下划线标记。</s>
<s>图7 不同学习率的损失变化和模型精度对比 (B飞机) Fig.7 Comparison of loss change and model accuracy with different learning rates (Aircraft B)</s>
<s>图8 不同隐藏层细胞的损失变化和模型精度对比 (学习率η=0.03, B飞机) Fig.8 Comparison of loss change and model accuracy with different hidden layer cells (learning rateη=0.03, Aircraft B)</s>
<s>最后, LSTM模型和不同时间序列预测模型的实验对比结果如表2所示。</s><s>从表中可以看出:LSTM模型的拟合精度要低于SSA模型, 但是高于其他7种模型;LSTM模型的整体预测精度较高, 在3、6、12个测试点上的预测精度最高 (RMSE值分别达到了1.703、1.237和1.580) ;RNN、GRU和LSTM模型在该参数组合下的计算耗时要明显多于其他7种模型, 并且以LSTM模型耗时最多。</s>
<s>图9 LSTM模型的拟合和预测结果 (学习率η=0.03, B飞机) Fig.9 Fitting and forecasting results with LSTM model (learning rateη=0.03, Aircraft B)</s>
<s>3.3 参数优选</s>
<s>在3.2节的实验中, LSTM模型的参数取值主要是通过经验来确定的。</s><s>本节应用2.2节提到的多层网格搜索算法, 对LSTM模型的3个关键参数进行优选。</s><s>首先, 固定非关键参数取值:随机种子数seed=1, 训练步数steps=500;然后, 设定3个参数的取值范围:分割窗口长度L∈{2, 3, …, 24}, 状态向量大小S state ∈{2, 3, …, 24}, 学习率η∈{0.001, 0.003, 0.005, 0.01, 0.03, 0.05}, 其中L和S state 的搜索步长为1;最后, 设置目标函数为12个测试点上预测精度最高 (RMSE值最小) , 应用2.2节中的算法2进行网格搜索。</s>
<s>图10和图11分别展示了针对2个数据源 (A飞机和B飞机) 建立2.1节提到的LSTM预测模型的参数搜索结果。</s><s>在每个子图中, 横坐标为分割窗口长度L, 纵坐标为状态向量大小S state , Rm为最小RMSE值;不同子图对应学习率η的不同取值;网格中的方块面积越大、颜色越深表示RMSE值越小。</s><s>从图10和图11中可以看出, 当L和S state 取值较小时更容易获得较高的预测精度。</s><s>表3和表4分别列出了针对2个数据源的前5组最优参数组合以及对应的模型精度。</s><s>表1和表2对比可知, 优选后的LSTM模型精度明显提高。</s>
<s>表2 不同预测模型实验结果对比 (B飞机) Table 2 Experimental results for different prediction models (Aircraft B)</s>
<s>注:最小RMSE值和最小耗时由下划线标记。</s>
<s>图1 0 LSTM模型3参数多层网格搜索结果 (A飞机) Fig.10 Multilayer grid search results for three parameters of LSTM model (Aircraft A)</s>
<s>图1 1 LSTM模型3参数多层网格搜索结果 (B飞机) Fig.11 Multilayer grid search results for three parameters of LSTM model (Aircraft B)</s>
<s>表3 LSTM模型前5组最优参数组合以及对应的模型精度 (A飞机) Table 3 The first five groups of optimal parameters andcorresponding model accuracy for LSTM model (Aircraft A)</s>
<s>表4 LSTM模型前5组最优参数组合以及对应的模型精度 (B飞机) Table 4 The first five groups of optimal parameters and corresponding model accuracy for LSTM model (Aircraft B)</s>
<s>4结论</s>
<s>本文提出了基于LSTM循环神经网络的系统级故障时间序列预测方法, 包括对LSTM模型的训练、预测以及参数优选等内容。</s><s>实验验证表明:</s>
<s>1) 与典型的时间序列预测模型相比, LSTM模型的拟合和预测性能整体更优。</s>
<s>2) LSTM模型在训练过程中的损失变化和模型精度对学习率的取值较为敏感, 过低或过高的学习率可能会导致欠拟合或过拟合问题, 影响模型的预测性能。</s>
<s>3) 与其他类型的循环神经网络 (RNN和GRU) 相比, LSTM模型的拟合和预测精度整体更高, 但是训练过程的耗时也更多。</s>
<s>4) 基于多层网格搜索的参数优选算法效果显著, 特别是对于第2个数据源 (B飞机) , 在测试点12上的预测精度 (RMSE值) 达到了0.864, 而文献[8]中提出的混合模型其最优RMSE值仅为1.879。</s>
<s>总的来说, 本文验证了LSTM模型在可靠性预测领域中的适用性, 扩展了深度学习技术的应用范畴。</s><s>基于目前的工作, 后续可以展开进一步研究:比如扩展隐藏层层数, 检验多隐藏层LSTM网络结构的应用效果;或者从众多LSTM模型参数入手, 寻求更有效的参数优化方法。</s><s>此外, 本文是从历史数据出发, 应用数据驱动的技术逆向建立预测模型。</s><s>下一步, 可以从可靠性相关的领域知识出发, 应用提取出来的关键特征和要素正向研究可靠性预测方法。</s>
