本发明属于继电器贮存寿命预测算法优化领域,具体地说是一种交叉验证算法优化lstm网络继电器贮存寿命预测方法。
背景技术:
电磁继电器通过触头的接通或断开控制电路,具有转换深度高、物理隔离性能好等优点,广泛应用于自动控制系统、电力保护系统以及通信系统中,起控制、检测、保护和调节的作用,是国防尖端技术、先进的工业和民用设备不可缺少的基本元件之一。作为国防军事武器控制系统的重要器件,电磁继电器常常与武器系统一样处于贮存状态,其贮存可靠性对系统的可靠性有着重要的影响。
大量的经验、数据和原理分析表明,电磁继电器贮存过程中性能参数的变化可以精确地反映出电磁继电器的退化情况,体现其内部结构缓慢的变化,进而判别器件是否失效并用获得的数据建立模型预测继电器的贮存寿命。近年来,电磁继电器向着高可靠性,长寿命的方向发展,且航天继电器、军用继电器等造价昂贵,因此这些继电器的贮存可靠性试验有着小子样的特点,其贮存寿命预测就变得难以估算,而交叉验证法对于大的数据集,经过多次划分大大降低了结果的偶然性,能够提高模型的准确性,对数据的使用率也比较高。
在机器学习中,交叉验证(crossvalidation)是一种用来做模型选择的方法。如果给定的样本数据充足,我们可以随机地将数据集切分成训练集、验证集和测试集,训练集用来训练模型,验证集用于模型的选择,而测试集用于最终对方法进行评估。然而实际情况中数据往往是不够充分的,为了更好地选择模型,可以使用交叉验证的方法。具体而言,当我们开始一个机器学习的建模工作时,首先会将数据集切分成训练集和测试集,我们在训练集上进行模型的训练和参数的调优,最终到测试集上验证模型的效果。为了能够选择出最优的模型和参数,我们通常会在训练集中再切分出一小部分作为验证集,通过观察模型在验证集上的效果来评估其好坏。但是如果训练集的数目不太多,那么不同验证集的选择方式可能会对模型的效果有很大影响。因此,我们可以采用交叉验证的方式。最常用的是k-fold交叉验证法,我们随机的将训练集等分为k份,每次训练时取其中的一份作为验证集,剩下的作为训练集,通过观察模型在k次实验中的各个指标的平均值,可以对模型的效果有一个比较准确地了解,而不至于受到验证集选择方式的影响。我们可以设置不同的模型参数并逐一观察它们的平均效果,最终可以选择出一组最优的参数应用到测试集上。为了避免这种因为测试集的选择方式所导致的模型效果出现波动的问题,我们也可以使用交叉验证的方式,通过观察模型在多个测试集上的平均效果来总体地评估模型的效果。本发明在构建的lstm模型基础上,通过使用交叉验证的方式来优化模型参数,使模型得到优化。
lstm算法全称为longshort-termmemory,是一种特定形式的rnn,而rnn是一系列能够处理序列数据的神经网络的总称。这里要注意循环神经网络和递归神经网络(recursiveneuralnetwork)的区别。
一般地,rnn包含如下三个特性:
a)循环神经网络能够在每个时间节点产生一个输出,且隐单元间的连接是循环的;
b)循环神经网络能够在每个时间节点产生一个输出,且该时间节点上的输出仅与下一时间节点的隐单元有循环连接;
c)循环神经网络包含带有循环连接的隐单元,且能够处理序列数据并输出单一的预测。
rnn还有许多变形,例如双向rnn(bidirectionalrnn)等。然而,rnn在处理长期依赖(时间序列上距离较远的节点)时会遇到巨大的困难,因为计算距离较远的节点之间的联系时会涉及雅可比矩阵的多次相乘,这会带来梯度消失(经常发生)或者梯度膨胀(较少发生)的问题,这样的现象被许多学者观察到并独立研究。为了解决该问题,研究人员提出了许多解决办法,例如esn(echostatenetwork),增加有漏单元(leakyunits)等等。其中最成功应用最广泛的就是门限rnn(gatedrnn),而lstm就是门限rnn中最著名的一种。有漏单元通过设计连接间的权重系数,从而允许rnn累积距离较远节点间的长期联系;而门限rnn则泛化了这样的思想,允许在不同时刻改变该系数,且允许网络忘记当前已经累积的信息。
lstm就是这样的门限rnn,lstm的巧妙之处在于通过增加输入门限,遗忘门限和输出门限,使得自循环的权重是变化的,这样一来在模型参数固定的情况下,不同时刻的积分尺度可以动态改变,从而避免了梯度消失或者梯度膨胀的问题。
技术实现要素:
本发明的目的在于解决现有的继电器贮存寿命预测算法计算速度慢以及预测精度不高的问题,在此基础上提供一种交叉验证算法优化lstm网络继电器贮存寿命预测方法。
本发明为实现上述目的,采用以下技术方案:
一种交叉验证算法优化lstm网络继电器贮存寿命预测方法,它包括如下步骤:
步骤一:选取继电器贮存过程中变化的接触电阻,线圈电阻,释放电压作为特征参量;
步骤二:对电磁继电器进行加速贮存退化试验,获取步骤一中性能参数在历史时间维度中样本数据,并对样本进行归一化处理,并随机划分样本训练数据和测试数据;
步骤三:构建包括输入层、隐藏层、输出层的长短期记忆网络预测模lstm;
步骤四:、使用步骤二中获得的训练集数据对步骤三中构建的长短期记忆网络预测模型lstm进交叉验证优化,在满足预测模型评价指标最优的基础上确定长短期记忆网络预测模型lstm的最优参数,以此为基础重新建立优化后的长短期记忆网络预测模型lstm;
步骤五:使用步骤二中获得的测试集数据作为步骤四中经优化的长短期记忆网络预测模型lstm的输入变量,选取步骤一中的特征参量之一作为步骤四中经优化的长短期记忆网络预测模型lstm的输出变量,得到预测结果。
本发明的进一步改进,步骤一所述特征参量,不仅可以是接触电阻线圈电阻、释放电压,也可以是释放电压、释放时间、超呈差等其他能表征继电器性能退化的性能参数。
本发明的进一步改进,步骤二中数据归一化采用线性函数中的均值法将原始数据变化到[0,1]区间中,均值归一法由下式给出:
式中,
步骤二中划分训练集数据和测试集数据指随机将归一化处理后的样本数据的90%作为训练集数据,将归一化处理后的样本数据的10%作为测试集数据。
本发明的进一步改进,步骤三构建lstm预测模型是一种改进的rnn,比一般的rnn更适合长期依赖。每一个单元相输入输出,但也有更多的参数和控制信息流动的门控单元系统,即状态单元
inputgates:
forgetgates:
cells:
outputgates:
celloutputs:
其中
流程一:将试验所获得的参数数据作为长短期记忆神经网络预测模型lstm的输入层样本数据;
流程二:将流程一中各特征参量的样本数据进行归一化处理,映射到[0,1]之间,随机划分得到训练集数据和测试集数据;
流程三.隐藏层采用流程二得到的训练集数据对长短期记忆网络预测模型lstm进行训练,在预测结果评价标准误差较小的情况下,确定长短期记忆网络预测模型lstm的参数;
流程四、采用流程三得到的长短期记忆网络预测模型lstm对测试集数据进行预测,得到预测结果p1、p2、…pn;
流程五、输出层采用以平均绝对百分比误差的方式计算流程四得到的n个预测结果,并进行反归一化处理得到最终的预测结果,最后结合实验评价指标对预测结果进行评价分析。
本发明的进一步改进,步骤四利用交叉验证方式对长短期记忆神经网络lstm模型进行参数寻优,具体流程如下
流程一:将全部训练集s分成k个不相交的子集,假设s中的训练样例个数为m,那么每个子集有m/k个训练样例,相应的子集称作{s1,s2,…sk}.
流程二:每次从分好的子集里面,拿出一个作为测试集,其他k-1个作为训练集;
流程三:计算k次求得的分类率平均值,作为该模型的真实分类率。
本发明的进一步改进,步骤五中得到的预测结果使用平均相对百分误差ym、根均方误差yr、预测精度yfa等3个实验评价指标进行评价
上式中:n表示测试数据集的样本容量;xa(i)和xp(i)(i=1,2,…n)分别为第i时刻继电器接触电阻的真实值和预测值;其中ym与yr数值越小,yfa数值越大、表示拟合优度越大,模型预测结果越准确。
本发明的有益效果;本发明解决了现有的继电器贮存寿命预测算法计算速度慢以及预测精度不高的问题。
附图说明
图1为本发明的流程图。
图2为本发明中lstm网络示意图。
图3为本发明中交叉验证流程图。
具体实施方式
下面将结合附图来描述本发明的示例性实施方式。应当理解,附图中的示出以及描述的具体实施方式只是示例性的,旨在阐述本发明的应用原理,并非限制本发明的应用范围。
一种交叉验证算法优化lstm网络继电器贮存寿命预测方法,下面以某型电磁继电器的实测数据为例,实例中所用的电磁继电器选用厦门宏发公司的jzc-200m超小型中功率密封直流电磁继电器,给出了该实施例的具体步骤:
步骤一:开展继电器加速贮存试验,以温度作为加速应力,设置125℃,150℃,175℃和210℃四个温度等级,分别对每个温度下10支电磁继电器进行了为期180天的加速退化实验,以9天为一个周期测试继电器各项参数,获得20个周期的接触电阻退化数据,利用这些退化数据建立预测模型对继电器的贮存寿命进行预测,具体的模型训练以及优化后的预测流程如图1所示;
步骤二:现以175℃温度应力下的20个周期的接触电阻数据为例,将数据进行归一化处理,并随机划分样本训练数据和测试数据;
步骤三:构建包括输入层、隐藏层、输出层的长短期记忆网络预测lstm,利用lstm网络模型对继电器的贮存寿命进行预测,具体的lstm网络模型示意图如图2所示;
步骤四:、使用步骤二中获得的训练集数据对步骤三中构建的长短期记忆网络预测模型lstm进交叉验证优化,在满足预测模型评价指标最优的基础上确定长短期记忆网络预测模型lstm的最优参数,以此为基础重新建立优化后的长短期记忆网络预测模型lstm,具体的验证优化模型流程如图3所示;
步骤五:使用步骤二中获得的测试集数据作为步骤四中经优化的长短期记忆网络预测模型lstm的输入变量,选取步骤一中的特征参量之一作为步骤四中经优化的长短期记忆网络预测模型lstm的输出变量,得到预测结果。
以上所述的具体实施方式,对本发明的目的、技术方案、实施方案以及有益效果做了进一步的详细说明,上述实施例仅为进一步阐述发明原理,帮助读者理解本发明的设计思路,应被理解为本发明的保护范围不仅限于特别称述的实施例,凡在本发明原理之内,所做的任何修改、同等替换,均应包含在本发明的保护范围之内。
1.一种交叉验证算法优化lstm网络继电器贮存寿命预测方法,其特征在于,包括如下步骤:
步骤一:选取继电器贮存过程中变化的接触电阻,线圈电阻,释放电压作为特征参量;
步骤二:对电磁继电器进行加速贮存退化试验,获取步骤一中性能参数在历史时间维度中样本数据,并对样本进行归一化处理,并随机划分样本训练数据和测试数据;
步骤三:构建包括输入层、隐藏层、输出层的长短期记忆网络预测模lstm;
步骤四:、使用步骤二中获得的训练集数据对步骤三中构建的长短期记忆网络预测模型lstm进交叉验证优化,在满足预测模型评价指标最优的基础上确定长短期记忆网络预测模型lstm的最优参数,以此为基础重新建立优化后的长短期记忆网络预测模型lstm;
步骤五:使用步骤二中获得的测试集数据作为步骤四中经优化的长短期记忆网络预测模型lstm的输入变量,选取步骤一中的特征参量之一作为步骤四中经优化的长短期记忆网络预测模型lstm的输出变量,得到预测结果。
2.根据权利要求1所述的交叉验证算法优化lstm网络继电器贮存寿命预测方法,其特征在于,所述步骤一中的特征参量是接触电阻线圈电阻、释放电压或表征继电器性能退化的性能参数。
3.根据权利要求1所述的交叉验证算法优化lstm网络继电器贮存寿命预测方法,其特征在于,所述步骤二中数据归一化采用线性函数中的均值法将原始数据变化到[0,1]区间中,均值归一法由下式给出:
式中,
4.根据权利要求3所述的交叉验证算法优化lstm网络继电器贮存寿命预测方法,所述步骤二中划分训练集数据和测试集数据指随机将归一化处理后的样本数据的90%作为训练集数据,将归一化处理后的样本数据的10%作为测试集数据。
5.根据权利要求1所述的交叉验证算法优化lstm网络继电器贮存寿命预测方法,其特征在于,所述步骤三构建lstm预测模型是一种改进的rnn,比一般的rnn更适合长期依赖,每一个单元相输入输出,但也有更多的参数和控制信息流动的门控单元系统,即状态单元
inputgates:
forgetgates:
cells:
outputgates:
celloutputs:
其中,
6.根据权利要求5所述的交叉验证算法优化lstm网络继电器贮存寿命预测方法,其特征在于,所述步骤三构建lstm预测模型具体流程如下:
流程一:将试验所获得的参数数据作为长短期记忆神经网络预测模型lstm的输入层样本数据;
流程二;将流程一中各特征参量的样本数据进行归一化处理,映射到[0,1]之间,随机划分得到训练集数据和测试集数据;
流程三;隐藏层采用流程二得到的训练集数据对长短期记忆网络预测模型lstm进行训练,在预测结果评价标准误差较小的情况下,确定长短期记忆网络预测模型lstm的参数;
流程四;采用流程三得到的长短期记忆网络预测模型lstm对测试集数据进行预测,得到预测结果p1、p2、…pn;
流程五;输出层采用以平均绝对百分比误差的方式计算流程四得到的n个预测结果,并进行反归一化处理得到最终的预测结果,最后结合实验评价指标对预测结果进行评价分析。
7.根据权利要求1所述的交叉验证算法优化lstm网络继电器贮存寿命预测方法,其特征在于,所述步骤四利用交叉验证方式对长短期记忆神经网络lstm模型进行参数寻优,具体流程如下:
流程一:将全部训练集s分成k个不相交的子集,假设s中的训练样例个数为m,那么每个子集有m/k个训练样例,相应的子集称作{s1,s2,…sk};
流程二:每次从分好的子集里面,拿出一个作为测试集,其他k-1个作为训练集;
流程三:计算k次求得的分类率平均值,作为该模型的真实分类率。
8.根据权利要求1所述的交叉验证算法优化lstm网络继电器贮存寿命预测方法,其特征在于:所述步骤五中得到的预测结果使用平均相对百分误差ym、根均方误差yr、预测精度yfa3个实验评价指标进行评价
上式中:n表示测试数据集的样本容量;xa(i)和xp(i)(i=1,2,…n)分别为第i时刻继电器接触电阻的真实值和预测值;其中ym与yr数值越小,yfa数值越大、表示拟合优度越大,模型预测结果越准确。
技术总结