发明内容
本发明的目的在于提供一种无全寿命周期样本的机电设备跨域剩余寿命预测方法及系统,从而解决现有技术中存在的前述问题。
为了实现上述目的,本发明采用的技术方案如下:
一种无全寿命周期样本的机电设备跨域剩余寿命预测方法,包括如下步骤,
S1、数据预处理:
采用滑动窗口对数据集中的源域数据集合和目标域数据集合进行切分,获取原始输入,并将原始输入按比例划分为训练集和测试集;
S2、Transformer域自适应模型构建:
基于Transformer网络模型构造域自适应编码器、域自适应解码器以及全连接结构的预测器,以形成Transformer域自适应模型;
S3、Transformer域自适应模型多层特征对齐:
将训练集输入到Transformer域自适应模型中对其进行训练;训练过程中,基于域自适应编码器的对齐损失、域自适应解码器的对齐损失以及预测器的回归误差损失和威布尔分布损失,获取模型总损失,并通过最小化模型总损失以优化域自适应编码器、域自适应解码器以及预测器的参数,获取训练好的Transformer域自适应模型;
S4、剩余使用寿命预测:
将测试集中输入到训练好的Transformer域自适应模型中获取初始预测结果;计算训练集和测试集的相似度以获取偏移补偿项,利用偏移补偿项修正初始预测结果,获取最终预测结果。
优选的,所述源域数据集合包括各源域多维时间序列数据样本所对应的多维退化特征以及各多维退化特征所对应的RUL标签;所述目标域数据集包括各目标域多维时间序列数据样本所对应的多维退化特征。
优选的,源域多维时间序列数据样本为机电设备运行到失效时采集的机电设备监测数据;目标域多维时间序列数据样本为无机电设备运行到故障时采集的完整机电设备监测数据;
所述源域多维时间序列数据样本是具有机电设备剩余寿命作为标签的有监督数据;所述目标域多维时间序列数据样本是不具有机电设备剩余寿命标签的无监督数据。
优选的,采用滑动窗口对源域数据集合和目标域数据集合中的数据进行切分,以获取等长度的数据。
优选的,所述Transformer域自适应模型包括依次连接的域自适应编码器输入层、位置编码层、域自适应编码器、域自适应解码器输入层、域自适应解码器以及全连接结构的预测器;
所述域自适应编码器包括多个相同的编码器块,编码器块由多头自注意力机制层和前馈层这两个子层构成,每个子层后跟随一个归一化层;
所述域自适应解码器包括多个相同的解码器块,解码器块由多头自注意力机制层和前馈层这两个子层构成,每个子层后跟随一个归一化层;所述解码器块比编码器块多一个多头自注意力机制层和归一化层。
优选的,步骤S3具体包括如下内容,
S31、利用域自适应编码器对训练集中的源域数据和目标域数据进行编码,获取编码后的时序特征矩阵并进行第一层特征对齐,获取域自适应编码器的对齐损失;
S32、利用域自适应解码器对域自适应编码器的输出进行解码,得到解码后的时序特征矩阵并对其进行特征对齐,得到域自适应解码器的第一对齐损失和域自适应解码器的第二对齐损失;
S33、汇总域自适应编码器的对齐损失、域自适应解码器的第一对齐损失和域自适应解码器的第二对齐损失,获取多层特征对齐总损失;
S34、将域自适应解码器的输出输入到全连接结构的预测器中,输出预测值;利用训练集中源域数据的预测值和真实值构造回归损失函数,获取回归误差损失;
S35、基于威布尔累计分布函数,利用训练集中源域数据的预测值和真实值的威布尔分布,构造基于威布尔分布的损失函数,获取威布尔分布损失;
S36、基于多层特征对齐总损失、回归误差损失和威布尔分布损失,获取模型总损失,最小化模型总损失以优化域自适应编码器、域自适应解码器以及预测器的参数,获取训练好的Transformer域自适应模型。
优选的,对齐损失利用多核最大平均差值来衡量。
优选的,步骤S4具体为,将测试集中的目标域数据输入到训练好的Transformer域自适应模型中获取初始预测结果;利用基于形状距离相似度算法SBD计算训练集中的目标域数据和测试集中的目标域数据的SBD相似度,并为每个数据赋予相应的权重,以获取偏移补偿项,利用偏移补偿项修正初始预测结果,获取最终预测结果。
本发明的目的还在于提供一种无全寿命周期样本的机电设备跨域剩余寿命预测系统,系统用于实现上述任一所述的方法,所述系统包括,
预处理模块:用于进行数据预处理;
采用滑动窗口对数据集中的源域数据集合和目标域数据集合进行切分,获取原始输入,并将原始输入按比例划分为训练集和测试集;
模型构建模块:用于构建Transformer域自适应模型;
基于Transformer网络模型构造域自适应编码器、域自适应解码器以及全连接结构的预测器,以形成Transformer域自适应模型;
对齐模块:用于进行Transformer域自适应模型多层特征对齐;
将训练集输入到Transformer域自适应模型中对其进行训练;训练过程中,基于域自适应编码器的对齐损失、域自适应解码器的对齐损失以及预测器的回归误差损失和威布尔分布损失,获取模型总损失,并通过最小化模型总损失以优化域自适应编码器、域自适应解码器以及预测器的参数,获取训练好的Transformer域自适应模型;
寿命预测模块:用于预测剩余使用寿命;
将测试集中输入到训练好的Transformer域自适应模型中获取初始预测结果;计算训练集和测试集的相似度以获取偏移补偿项,利用偏移补偿项修正初始预测结果,获取最终预测结果。
本发明的有益效果是:1、构建基于Transformer网络的域自适应模型,利用其多头自注意力机制和并行计算的特点,可以捕捉更丰富的时序特征信息并提高计算效率。2、针对源域与目标域的数据分布差异问题,本发明采用基于多层特征对齐的域自适应策略,通过对多个网络层输出的特征矩阵进行对齐,更加充分的利用了各层网络的信息,使得对齐后的源域与目标域数据分布更加接近,提高迁移模型的泛化性。3、为提高预测模型的精度和稳定度,引入了基于威布尔分布的损失项,将外部知识与回归损失相集成,优化模型的预测性能。4、对于现有技术未曾解决的目标域训练数据和测试数据不完整性差异所导致的预测精度下降问题,本发明采用基于形状距离(Shape-based Distance,SBD)相似度的预测补偿策略,通过计算目标域测试序列与训练序列的SBD相似度,构造出了预测补偿项,该补偿项能够对模型测试阶段的预测结果进行修正,得到更准确的输出。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。
实施例
本实施例中,提供了一种无全寿命周期样本的机电设备跨域剩余寿命预测方法,包括如下步骤,
一、数据预处理:
采用滑动窗口对数据集中的源域数据集合和目标域数据集合进行切分,获取原始输入,并将原始输入按比例划分为训练集和测试集。
本实施例中,所述源域数据集合包括各源域多维时间序列数据样本所对应的多维退化特征以及各多维退化特征所对应的RUL标签;所述目标域数据集包括各目标域多维时间序列数据样本所对应的多维退化特征。
源域多维时间序列数据样本为机电设备运行到失效时采集的机电设备监测数据;目标域多维时间序列数据样本为无机电设备运行到故障时采集的完整机电设备监测数据;
所述源域多维时间序列数据样本是具有机电设备剩余寿命作为标签的有监督数据;所述目标域多维时间序列数据样本是不具有机电设备剩余寿命标签的无监督数据。
采用滑动窗口对源域数据集合和目标域数据集合中的数据进行切分,以获取等长度的数据。
二、Transformer域自适应模型构建:
基于Transformer网络模型构造域自适应编码器、域自适应解码器以及全连接结构的预测器,以形成Transformer域自适应模型。
本实施例中,所述Transformer域自适应模型包括依次连接的域自适应编码器输入层、位置编码层、域自适应编码器、域自适应解码器输入层、域自适应解码器以及全连接结构的预测器;
所述域自适应编码器包括多个相同的编码器块,编码器块由多头自注意力机制层和前馈层这两个子层构成,每个子层后跟随一个归一化层;
所述域自适应解码器包括多个相同的解码器块,解码器块由多头自注意力机制层和前馈层这两个子层构成,每个子层后跟随一个归一化层;所述解码器块比编码器块多一个多头自注意力机制层和归一化层。
三、Transformer域自适应模型多层特征对齐:
将训练集输入到Transformer域自适应模型中对其进行训练;训练过程中,基于域自适应编码器的对齐损失、域自适应解码器的对齐损失以及预测器的回归误差损失和威布尔分布损失,获取模型总损失,并通过最小化模型总损失以优化域自适应编码器、域自适应解码器以及预测器的参数,获取训练好的Transformer域自适应模型。具体包括如下步骤,
1、利用域自适应编码器对训练集中的源域数据和目标域数据进行编码,获取编码后的时序特征矩阵并进行第一层特征对齐,获取域自适应编码器的对齐损失;
2、利用域自适应解码器对域自适应编码器的输出进行解码,得到解码后的时序特征矩阵并进行该部分特征对齐,得到域自适应解码器的第一对齐损失和域自适应解码器的第二对齐损失;
3、汇总域自适应编码器的对齐损失、域自适应解码器的第一对齐损失和域自适应解码器的第二对齐损失,获取多层特征对齐总损失;
4、将域自适应解码器的输出输入到全连接结构的预测器中,输出预测值;利用训练集中源域数据的预测值和真实值构造回归损失函数,获取回归误差损失;
5、基于威布尔累计分布函数,利用训练集中源域数据的预测值和真实值的威布尔分布,构造基于威布尔分布的损失函数,获取威布尔分布损失;
6、基于多层特征对齐总损失、回归误差损失和威布尔分布损失,获取模型总损失,最小化模型总损失以优化域自适应编码器、域自适应解码器以及预测器的参数,获取训练好的Transformer域自适应模型。
本实施例中,对齐损失利用多核最大平均差值来衡量。
四、剩余使用寿命预测:
将测试集中输入到训练好的Transformer域自适应模型中获取初始预测结果;计算训练集和测试集的相似度以获取偏移补偿项,利用偏移补偿项修正初始预测结果,获取最终预测结果。
具体地,将测试集中的目标域数据输入到训练好的Transformer域自适应模型中获取初始预测结果;利用基于形状距离相似度算法SBD计算训练集中的目标域数据和测试集中的目标域数据的SBD相似度,并为每个数据赋予相应的权重,以获取偏移补偿项,利用偏移补偿项修正初始预测结果,获取最终预测结果。
本实施例中,提供了一种无全寿命周期样本的机电设备跨域剩余寿命预测系统,系统用于实现所述的方法,所述系统包括,
1、预处理模块:用于进行数据预处理;
采用滑动窗口对数据集中的源域数据集合和目标域数据集合进行切分,获取原始输入,并将原始输入按比例划分为训练集和测试集;
2、模型构建模块:用于构建Transformer域自适应模型;
基于Transformer网络模型构造域自适应编码器、域自适应解码器以及全连接结构的预测器,以形成Transformer域自适应模型;
3、对齐模块:用于进行Transformer域自适应模型多层特征对齐;
将训练集输入到Transformer域自适应模型中对其进行训练;训练过程中,基于域自适应编码器的对齐损失、域自适应解码器的对齐损失以及预测器的回归误差损失和威布尔分布损失,获取模型总损失,并通过最小化模型总损失以优化域自适应编码器、域自适应解码器以及预测器的参数,获取训练好的Transformer域自适应模型;
4、寿命预测模块:用于预测剩余使用寿命;
将测试集中输入到训练好的Transformer域自适应模型中获取初始预测结果;计算训练集和测试集的相似度以获取偏移补偿项,利用偏移补偿项修正初始预测结果,获取最终预测结果。
实施例
本实施例中,结合具体实例,详细说明本发明方法的执行过程:
一、数据预处理
为了实现数据的实时分析,首先要对数据进行预处理,即在数据集中的特征矩阵输入到网络之前,需要对原始的序列进行滑动窗口定义和切分工作,具体设置为:假设,其中,表示源域数据集合,即源域中的第个样本所对应的多维退化特征,则是对应的RUL标签,样本满足边缘概率分布。令,其中,表示目标域数据集合,就是目标域的第个样本所对应的多维退化特征,目标域数据没有相应的标签,且只有设备前期部分数据,该部分数据满足边缘概率分布。源域和目标域的数据分布是不一致的,即。由于源域和目标域都是不同长度的多维时间序列数据,因此需要用滑动窗口函数确保输入序列的长度相同,窗口长度为,序列的总长度为,则在第个时间步长的输入数据的表示如公式(1)所示:
(1)
滑动窗口每次滑动一个时间步长,切分后的数据将会输出到模型中用于训练。
二、Transformer域自适应模型构建
为了能够充分利用时序数据中的位置信息,解决大部分时序网络存在的长期依赖问题,本发明以Transformer网络作为模型的主干网络,构造基于Transformer模型构造域自适应解码器和域自适应编码器,以此作为时序特征提取器。
1、Transformer结构:
在说明本发明的网络结构前,首先对Transformer的整体框架以及各部分结构进行说明。Transformer是一种序列到序列的结构,由输入部分、编码器、解码器和输出部分组成。原始序列首先通过输入部分对特征矩阵进行维度变换与位置编码,得到具有位置信息的位置编码矩阵,然后再将该矩阵输入到编码器中,通过自注意力机制找到序列内的关系,然后将输入序列编码为隐含特征输入到解码器中,解码器将隐含特征逐层解码为一个输出序列,即预测结果。编码器部分和解码器部分分别由多个相同的编码器块和解码器块组成的,图5展示了编码器块和解码器块的结构,编码器块由两个子层组成:多头自注意力机制层和前馈层,每个子层后面还跟随了一个归一化层,解码器块比编码器块多了一个编码-解码多头自注意力机制子层和一个归一化层。
具体的,在将序列输入至编码器前,首先要利用位置编码进行预处理,采用公式(2)(3)通过利用不同频率的正弦和余弦函数来对原始输入进行编码,以此将位置信息添加到输入序列当中:
(2)
(3)
其中,指输入序列的维度,是当前元素在序列中的位置,代表当前的维度。利用位置编码可以更好地学习序列中的位置信息。处理后的序列将会被输入到编码器当中。对于剩余使用寿命预测问题来说,位置编码将会提供时序位置信息,将时序数据的前后关系编码至矩阵中。
经过位置编码后的序列将被输入到编码器中,编码器是由多个相同的编码器块组成的,编码器块由两个子层组成:多头自注意力机制层和前馈层,每个子层后面还跟随了一个归一化层。所以位置编码后的序列首先会输入到编码器块的多头自注意力机制层,Transformer的多头自注意力机制层的主要目的是找到特征之间的依赖关系,并忽略它们在序列中的距离,其核心是自注意力机制,自注意力机制的原理是当给定一组键值K以及其对应的值V时,对每一次查询Q,注意力机制会给每一个值计算一个注意力权值,以此突出相关性最高的值,Transformer采用了一种与传统attention不同的多头attention,公式如下所示:
(4)
(5)
(6)
其中Softmax函数的作用是将权值映射到(0,1)之间,是的维度,其作用是使梯度更加稳定,代表第个注意头,,,是映射权值矩阵,是一个可训练权值矩阵。最终的输出就是所有的连接。多头自注意力机制层的输出再经由归一化层进行残差连接以及归一化,其作用是使特征数值维持在合理范围内,采用公式(7)计算:
(7)
对于Transformer而言,表示多头注意力机制层或前馈层的输入,表示多头注意力机制层或前馈层的输出,的作用是对输入归一化。
归一化层的输出再输入到前馈层中,前馈层是一个两层的全连接层,其作用是增强模型的拟合能力,第一个全连接层使用了激活函数,第二个全连接层不使用激活函数,采用如下公式计算:
(8)
其中,代表激活函数,表示输入。前馈层的输出再经过其连接的归一层处理后便输入到了下一个编码器块。顶层编码器的输出提供了一种关系信息,将其作为解码器部分编码-解码多头自注意力机制子层的K和V。
解码器和编码器的组成相似,由多个相同的解码器块组成,但是解码器块比编码器块多了一个编码-解码多头自注意力机制子层和一个归一化层,编码器的输出会直接输入到每个解码器块的编码-解码多头自注意力机制子层,解码器最终得到一个输出序列,该输出序列在经由后续的预测器即可得到预测的剩余使用寿命值。
2、本发明Transformer域自适应模型的结构
本发明所设计的网络结构如图3和图4所示,与传统的Transformer一致,特征提取部分由编码器和解码器组成,编码器块和解码器块的结构与图5中的一致,输入部分包含编码器输入层、位置编码层和解码器输入层,预测器则是由全连接网络构建的。整个模型的流程为:数据首先经过编码器进行编码,再通过解码器得到输出序列,最后再利用预测器进行预测。
三、Transformer网络多层特征对齐
因为源域和目标域之间存在差异,因此本发明采用了一种多层特征对齐策略,通过该策略来减少不同数据域之间的差异,对齐不同分布的数据。即在模型构建完成后,经过滑动窗口切片完的源域与目标域数据将被输入到模型中,依次经过域自适应编码器和域自适应解码器处理,在这个过程中,本发明利用了多层特征对齐得到数据分布更加接近的源域与目标域的时序特征矩阵。具体步骤包括:
1、利用域自适应编码器对源域和目标域进行编码,得到编码后的时序特征矩阵并进行第一层特征对齐
首先,将滑动窗口切片后的数据输入到域自适应编码器中,即原始的时间序列和被长度为的滑动窗口变成和之后输入到域自适应编码器中。域自适应编码器是由编码器输入层、位置编码层、5个相同的编码器块组成。输入层首先利用全连接网络将处理后的多维时间序列映射为维向量。位置编码层将输入向量与位置编码向量逐元素相加。所得到的具有位置信息的输入向量被送入编码器块堆栈中,得到如公式(9)、(10)所示的向量:
(9)
(10)
和分别是源域数据和目标域数据经过域自适应编码器后得到的特征向量。为了解决数据域分布差异,这里需要进行第一层分布对齐,得到第一部分对齐损失,即令源域与目标域的时序特征矩阵数据分布更加接近。本发明采用的策略就是将特征矩阵映射到子空间中,拉近两个域的特征矩阵的距离,选择了多核最大平均差值(Multi-KernelMaximum Mean Discrepancy,MMD)作为域间距离的衡量指标。MMD的核心思想是如果两个数据产生的分布是相同的,那么所有的统计数据也是一致的。对于两个不同域的概率分布和,它们的MMD定义为:
(11)
这里,代表的是拥有特征核k的再生希尔伯特空间(RKHS),映射函数定义了从原始数据到RKHS的映射,代表源域样本,代表目标域样本,核函数被定义为映射的内积,即:
(12)
<·>就是内积操作。也就是说,MMD距离等于两个分布的平均嵌入,并映射到RKHS上,表示如下:
(13)
就是的无偏估计。对于一般的MMD,是一个固定的函数,MK-MMD则是将核转化为一组不同核函数的组合来获得更好的结果,表示如下:
(14)
其中,代表一个半正定核,就是其对应的权重。下面的公式(15)用来计算和的距离:
(15)
即是编码器部分所得到的对齐损失。
2、利用域自适应解码器对域自适应编码器的输出进行解码,得到解码后的时序特征矩阵并进行这一部分特征对齐
域自适应解码器由解码器输入层、个相同的解码器块组成,本发明中,由于是要对一个窗口内的数据预测,所以选取了每个窗口内的最后两个元素构成的序列作为域自适应解码器输入层的输入。该输入被映射为维向量后,与域自适应编码器输出的编码向量一起送入到第一个解码器块中。经过解码器后的特征向量表示为:
(16)
(17)
和分别是源域数据和目标域数据经过域自适应解码器后得到的特征向量,同时,模型又增加了第一个解码器块输出的特征向量和来进行对齐,公式(18)、(19)用来计算和、和的距离:
(18)
(19)
结合公式(15)、(18)、(19),得到多层特征对齐的总损失为:
(20)
通过最小化对齐损失,就可以学习到域不变特征,进而缩减目标域与源域之间的分布差异,完成源域到目标域的知识迁移,提高模型的泛化性,使得模型在两个数据域上都能取得突出的预测效果。
3、利用域自适应解码器的输出对预测器进行训练
将上一步得到的特征矩阵将被输入到预测器中进行训练,输出预测的RUL值,预测器由全连接网络构成,预测结果被表示为:
(21)
(22)
和分别是对源域和目标域训练数据的预测结果。对于源域有标签数据,采用下式作为回归的损失函数:
(23)
其中,代表源域第个训练样本的预测值,是该样本的真实值。同时,为了增强对设备退化趋势的建模能力,本发明将威布尔分布引入到了模型构建,威布尔分布用来表示一个设备组件失效的可能性,本发明采用两个参数的威布尔累积分布函数(CDF)来进行研究,CDF函数的公式如下式(24)所示:
(24)
其中,是形状参数,为特征寿命。设备组件的威布尔分布可以反映设备退化的趋势.对于RUL预测问题来说,通过预测值和真实值的威布尔分布也可以更好地提高预测的准确性。基于此,本发明引入了基于威布尔分布的损失函数:
(25)
其中,是网络预测值对应的失效分数,则是真实值对应的失效分数。引入基于威布尔分布的损失项可以实现外部知识集成,实现对回归误差损失的优化和完善。
本发明的损失总共由三部分组成,即回归误差损失、多层域迁移损失和威布尔分布损失。的目标是最小化源域与目标域之间的分布差异;是为了更好地预测设备退化的趋势,提高模型的准确性和稳定性。总的损失定义为:
(26)
其中,和分别是和的惩罚系数。通过最小化,实现对网络参数的优化,直至满足收敛条件。
四、剩余寿命预测
对于测试阶段,由于目标域训练数据和测试数据都是不完整的周期数据,所以存在时间轴上的差异,因此本发明提出了一种基于SBD的预测补偿项来目标域测试测试数据的预测结果进行修正,SBD是一种时间序列的相似性评估方法。其核心思想是,将两条时间序列在时间轴上做相向移动,每移动一次,计算重叠部分的内积,最后返回最大的内积作为这两条时间序列之间的相似度。SBD的计算公式如下:
(27)
(28)
(29)
(30)
式中,、、分别代表序列和序列的互相关系数、归一化后的互相关系数和SBD。考虑到需要处理的是多维数据,我们还引入了Discrete Cosine Transform(DCT)变换来进行降维,然后再通过计算每个目标域训练序列与测试序列的相似性,为每个序列赋予一个权重,权重的计算公式为:
(31)
最终的预测结果表示为:
(32)
其中,是最终的结果,是模型对目标域测试数据预测的结果,是第个目标域训练集的输入序列,是该序列包含的数据量,是目标域测试集的输入序列,是该序列包含的数据量。
通过这一补偿策略,能够更好地度量目标域训练数据与测试数据之间的偏差,并将此偏差作为补偿项,对预测结果进行修正,减少因“时序分布偏移”导致的预测结果不准确问题。
通过采用本发明公开的上述技术方案,得到了如下有益的效果:
本发明提供了一种无全寿命周期样本的机电设备跨域剩余寿命预测方法及系统,构建基于Transformer网络的域自适应模型,利用其多头自注意力机制和并行计算的特点,可以捕捉更丰富的时序特征信息并提高计算效率。针对源域与目标域的数据分布差异问题,本发明采用基于多层特征对齐的域自适应策略,通过对多个网络层输出的特征矩阵进行对齐,更加充分的利用了各层网络的信息,使得对齐后的源域与目标域数据分布更加接近,提高迁移模型的泛化性。为提高预测模型的精度和稳定度,引入了基于威布尔分布的损失项,将外部知识与回归损失相集成,优化模型的预测性能。对于现有技术未曾解决的目标域训练数据和测试数据不完整性差异所导致的预测精度下降问题,本发明采用基于形状距离(Shape-based Distance,SBD)相似度的预测补偿策略,通过计算目标域测试序列与训练序列的SBD相似度,构造出了预测补偿项,该补偿项能够对模型测试阶段的预测结果进行修正,得到更准确的输出。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。