一种基于改进Transformer模型的水泵设备剩余使用寿命预测方法

文档序号:33152781发布日期:2023-02-03 23:11阅读:130来源:国知局
一种基于改进Transformer模型的水泵设备剩余使用寿命预测方法
一种基于改进transformer模型的水泵设备剩余使用寿命预测方法
技术领域
1.本发明涉及到一种基于改进transformer模型的水泵设备剩余使用寿命预测方法。


背景技术:

2.在我国城市化快速发展的背景下,居民用水和工业用水的需求激增,这对供水企业输送稳定的供水提出了更高的要求,因此水泵设备运行的可靠性显得十分重要。对水泵设备的剩余使用寿命进行准确的预测,一方面可以保障供水的稳定性,同时也可以减少水泵设备的维护成本以及能够及时更换即将损坏的水泵设备。
3.目前对于设备剩余使用寿命的预测方法可以分为基于物理模型、统计模型和人工智能的方法,其中人工智能的方法因其优秀的信息提取和信息表征能力,能够对设备剩余使用寿命实现准确的预测。在人工智能领域,循环神经网络及其变种被广泛使用,但是循环神经网络模型训练的速度较慢,随着输入序列长度的增加,预测能力会明显下降,影响了模型的预测精度。


技术实现要素:

4.为了克服现有方法在预测水泵设备剩余使用寿命时预测精度不高和预测模型冗余的问题,本发明提出基于改进的transformer模型来进行水泵设备剩余使用寿命的预测。本模型在注意力机制的基础上做出改进,提出了一种度量标准来筛选出重要注意力。使用筛选出的注意力预测剩余使用寿命,在保证了模型预测精度的同时,减少了模型的参数。
5.本发明的技术方案如下,一种基于改进transformer模型的水泵设备剩余使用寿命预测方法,包括以下步骤:
6.s1、采集不同时刻的传感器测量特征和水泵设备剩余使用寿命组成数据集s,对数据集s进行预处理得到数据集s1,数据集s表示为{si|si=(t,x1,x2,...,xk,r),1≤i≤n},其中si表示第i个数据,t表示采集时间、x1,x2,...,xk表示第1个至第k个传感器测量特征,r表示剩余使用寿命,k表示传感器测量特征的个数,n为数据集s的大小;
7.s2、将数据集s1按比例划分为训练集t和验证集v;
8.s3、对数据集s1使用滑动窗口构建输入向量,输入向量为向量f
input
和向量f
output

9.s4、对向量f
input
和向量f
output
分别进行编码以得到对应向量和向量
10.s5、对向量和向量分别进行第一层多头自注意力机制处理后输入到transformer模型的残差网络和全连接层以得到对应输出向量和向量
11.s6、将向量和向量同时进行第二层多头注意力机制处理后得到向量然后向量输入到transformer模型的残差网络和全连接层得到最终的输出结果f
out

12.s7、通过非对称损失函数计算输出结果f
out
的损失值,输出结果f
out
的输入向量来自训练集t时反向传播更新模型参数,f
out
的输入向量来自验证集v时记录损失值;
13.s8、重复执行s3至s7对transformer模型进行训练,对验证集v中每个滑动窗口记录的损失值并求取平均值作为该轮训练的损失值,对模型进行n轮训练,将损失值最小的transformer模型参数作为最优的transformer模型参数保存;
14.s9、获得水泵设备的传感器的检测值,得到维度为(l-1)
×
(m+2)的向量,输入transformer模型得到剩余使用寿命r。
15.优选的,所述步骤s1中,预处理步骤包括:
16.s1.1、去除无效的传感器特征,计算每个传感器特征的标准差,去除数据标准差小于预设标准差的传感器特征,得到数据集s1表示为其中m≤k;
17.s1.2、对数据集s1进行标准化处理,包括时间特征t标准化和数据特征x1,x2,...,xm,r标准化,时间特征t标准化是将时间特征t转化为数值分布在[-0.5,0.5]区间内的特征向量,维度由n
×
1转化为n
×
a,其中a是转换后的时间特征t的长度,数据特征x1,x2,...,xm,r标准化是通过公式得到均值为0、标准差为1和维度为n
×
(m+1)的标准化向量,最后将时间特征t的向量和数据特征x1,x2,...,xm,r的向量通过矩阵拼接得到维度为n
×
(a+m+1)的数据集s1,其中μ1,μ2,...μm,μr和σ1,σ2,...σm,σr分别是数据集s1中数据特征x1,x2,...xm,r的平均值和标准差。
[0018]
优选的,所述步骤s3中通过滑动窗口构建输入向量的方式为:
[0019]
滑动窗口选取的特征向量维度为l
×
(a+m+1),滑动窗口的长度为l,步长为1,从当前滑动窗口中取前l-1条数据作为向量f
input
,向量f
input
的维度为(l-1)
×
(a+m+1),取后条数据作为向量f
output
,向量f
output
的维度为
[0020]
优选的,所述步骤s4中,编码的步骤包括:
[0021]
s4.1、对向量f
input
的数据特征x1,x2,...,xm,r进行值编码,通过卷积核为3的一维卷积运算将向量f
input
的维度由(l-1)
×
(m+1)提升至(l-1)
×
512,得到值矩阵av;
[0022]
s4.2、对向量f
input
的数据特征x1,x2,...,xm,r进行位置编码,通过公式或计算得到维度为(l-1)
×
512的位置矩阵a
p
,其中0≤j<256;
[0023]
s4.3、对向量f
input
的时间特征t进行时间编码,通过全连接层将时间特征t维度由(l-1)
×
a提升至(l-1)
×
512,得到时间矩阵a
t

[0024]
s4.4、将值矩阵av、位置矩阵a
p
和时间矩阵a
t
相加得到向量向量的维度为(l-1)
×
512;
[0025]
s4.5、对向量f
output
的最后一行的x1,x2,...,xm,r特征设置为0遮挡,计算向量f
output
的值矩阵av、位置矩阵a
p
、时间矩阵a
t
并相加得到向量的维度为
[0026]
优选的,所述步骤s5中,对向量和向量分别进行第一层多头自注意力机制处理后输入到transformer模型的残差网络和全连接层以得到对应输出向量和向量的步骤如下:
[0027]
s5.1、将向量进行多头自注意力机制处理,首先将向量分别赋值给q、k、v,然后将q、k、v划分为8个自注意力得到q
t
、k
t
、v
t
,其中1≤t≤8,向量的维度由(l-1)
×
512调整为8
×
(l-1)
×
64,分别对q
t
、k
t
、v
t
使用度量公式:进行计算,其中qi∈q
t
,kj∈k
t
,1≤i、j≤l-1,计算的m(qi,k
t
)的值降序排列并选择排列在前的(l-1)/2个值,值的个数向下取整,在q
t
中筛选出的qi,qi表述q
t
中的第i行数据,使用注意力公式:中的第i行数据,使用注意力公式:计算注意力值,对v
t
按行均值化,在行均值化后的v
t
中对筛选出的qi的位置索引,并将该位置索引处的数据替换为计算的注意力值以得到f
t
,将8个f
t
通过矩阵拼接得到维度为(l-1)
×
512的向量f
att

[0028]
s5.2、将向量f
att
输入到transformer模型的残差网络和全连接层得到向量
[0029]
s5.3、使用多头自注意力机制处理向量其中m(qi,k
t
)的值降序排列并选择排列靠前的(l+1)/4个值,并将处理后的向量输入到transformer模型的残差网络和全连接层得到向量
[0030]
优选的,所述步骤s6中,包括以下步骤:
[0031]
s6.1、向量赋值给q,向量赋值给,向量q、k和v拆分为8个注意力块后分别计算注意力,将8个注意力块矩阵拼接为向量
[0032]
s6.2、将向量输入到transformer模型的残差网络和全连接层得到向量f
out
,向量f
out
维度为
[0033]
优选的,所述步骤s7中损失值计算过程为:
[0034]fout
最后一行数据记为预测值f
pred
,向量f
output
的最后一行数据记为真实值f
true
,通过非对称损失函数loss计算损失值。
[0035]
优选的,所述非对称损失函数loss为:
[0036]
其中
[0037]
本发明的有益效果:通过采集水泵设备的运行时间和传感器信息来预测水泵的剩余使用寿命,使用改进的多头注意力机制筛选出重要注意力,既保证重要信息的提取能力,还减少了模型的参数并且预测的效果更好。同时在预测模型中加入非对称的损失函数,使得模型的剩余使用寿命预测尽量小于真实值,以便及时更换使用寿命不足的水泵设备,避免预测值过于偏后造成严重损失。
附图说明
[0038]
图1为本发明水泵设备剩余使用寿命预测方法流程图。
[0039]
图2为改进transformer模型训练流程图
[0040]
图3为改进transformer模型训练的滑动窗口示意图。
[0041]
图4为本发明方法的预测模型示意图。
具体实施方式
[0042]
下面结合附图对本发明做进一步说明。
[0043]
参照图1~图4,一种基于改进transformer模型的水泵设备剩余使用寿命预测,包括以下步骤:
[0044]
步骤s1、对数据集s预处理,数据集s由采集水泵的振动信号得到,该水泵额定功率20kw,通过传感器测量6个不同部位的振动信号,每次测量间隔15分钟,测量了水泵由开始使用到出现故障时的全部数据,共4605条数据,表1为测量的部分数据,t为时间,x1,x2,x3,x4,x5,x6为传感器测量特征,r为剩余使用寿命。
[0045]
表1.传感器的测量数据
[0046][0047]
s1.1、去除无效的传感器特征,通过计算x1,x2,x3,x4,x5,x6的标准差,得到x3特征列的标准差小于1
×
10-6
,将x3特征从数据集s中删除,得到数据集s1。
[0048]
s1.2、对数据集s1做标准化处理,处理后的维度为4605
×
11。数据集s1的标准化分为两个部分,一部分对时间特征t标准化,将时间特征t转化为数值在[-0.5,0.5]区间内的特征向量,计算方式为:计算当前分钟除以59、计算小时除以23、计算当天是一周中的第几天除以6、计算当天在一个月中的第几天除以30、计算当天是一年中的第几天除以365,最后将计算结果减去0.5以得到特征向量,以本实施例中的时间特征为例,时间2020-03-01 11:15的时间特征向量为[-0.24576,-0.02174,0.50000,-0.50000,-0.33562],在本实施例中a为5,时间特征向量维度为4605
×
5。另一部分为x1,x2,x4,x5,x6,r特征标准化,通过公式计算得到,其中μ1,μ2,μ4,μ5,μ6,μr分别是数据集s1中x1,x2,x4,x5,x6,r特征列的平均值,σ1,σ2,σ4,σ5,σ6,σr分别是数据集s1中x1,x2,x4,x5,x6,r特征列的标准差。在本实施例中m为5,计算得到均值为0,标准差为1和维度为4605
×
6的标准化数据。通过矩阵拼接时间特征t的向量和数据特征x1,x2,x4,x5,x6,r的向量得到维度为4605
×
11的数据集s1。
[0049]
步骤s2、将数据集s1按4:1的比例划分为训练集t和验证集v。在本实施例中,训练集t为3684条数据,验证集v为921条数据。
[0050]
步骤s3、将数据集s1使用滑动窗口构建输入向量,输入向量为向量f
input
、向量foutput
。在本实施例中,滑动窗口的长度l设置为25,步长为1,选取的数据维度为25
×
11,包含时间特征t维度为25
×
5和数据特征x1,x2,x4,x5,x6,r维度为25
×
6。取前24条数据作为f
input
且维度为24
×
11,取后6条数据作为f
output
且维度为13
×
11。其中训练集t得到3660组输入向量,验证集v得到897组输入向量。
[0051]
步骤s4、分别对向量f
input
和向量f
output
进行编码得到向量和向量具体如下:
[0052]
s4.1、对向量f
input
的数据特征x1,x2,x4,x5,x6,r进行值编码。通过卷积核为3的一维卷积运算,将维度为24
×
6提升至维度为24
×
512,得到值矩阵av。
[0053]
s4.2、对向量f
input
的数据特征x1,x2,x4,x5,x6,r进行位置编码,计算公式为其中0≤j<256,将维度为24
×
6提升至维度为24
×
512,得到位置矩阵a
p

[0054]
s4.3、对向量f
input
的时间特征t进行时间编码,通过全连接层将时间特征维度24
×
5提升至24
×
512维,得到时间矩阵a
t

[0055]
s4.4、将值矩阵av、位置矩阵a
p
、时间矩阵a
t
相加得到维度为24
×
512的向量
[0056]
s4.5、对向量f
output
的最后一行的x1,x2,x4,x5,x6,r特征设置为0遮挡,计算向量f
output
的值矩阵av、位置矩阵a
p
、时间矩阵a
t
,然后相加得到维度为13
×
512的
[0057]
步骤s5、分别对向量和向量进行第一层改进的多头自注意力机制处理后得到各自的向量f
att
,然后分别输入到残差网络和全连接层得到对应的输出向量和向量具体如下:
[0058]
s5.1、将向量进行改进的多头自注意力机制处理。首先将向量分别赋值给q、k、v,然后将q、k、v划分为8个自注意力得到q
t
、k
t
、v
t
,其中1≤t≤8,维度由24
×
512变为8
×
24
×
64。分别将q
t
、k
t
、v
t
代入度量公式:代入度量公式:其中qi∈q
t
,kj∈k
t
,1≤i、j≤24。对m(qi,k
t
)的值降序排列并选择靠前的12个值。在q
t
中筛选出的qi,qi表述q
t
中的第i行数据,使用注意力公式:中的第i行数据,使用注意力公式:计算注意力值,对v
t
按行均值化,在行均值化后的v
t
中对筛选出的qi的位置索引,并将该位置索引处的数据替换为计算的注意力值以得到f
t
,将8个f
t
通过矩阵拼接得到维度为(l-1)
×
512的向量f
att

[0059][0060]
s5.1、将更新后的f
att
通过残差网络和全连接层得到维度为24
×
512向量
[0061]
s5.1、使用步骤(5.1)和(5.2)中改进的多头自注意力机制处理向量其中对m(qi,k
t
)的值降序排列并选择靠前的6个值,最终得到维度为13
×
512的向量
[0062]
步骤s6、将向量和向量进行第二层多头注意力机制处理后得到各自的向量然后输入到残差网络和全连接层得到最终的输出结果f
out

[0063]
s6.1、将向量赋值给q、向量赋值给k、v,然后拆分为8个注意力块,分别计算注意力,最后将8个注意力块矩阵拼接为向量
[0064]
s6.1、将向量输入到残差网络和全连接层得到向量f
out
,维度为13
×
6。
[0065][0066]
步骤s7、通过非对称损失函数计算向量f
out
损失值,向量f
out
的输入向量来自训练集t时反向传播更新模型参数,向量f
out
的输入向量来自验证集v时记录损失值。在本实施例中,损失值的计算方法为:截取f
out
最后一行数据记为预测值f
pred
=[0.3323,0.5051,-0.9062,0.0625,-0.1143,0.0922],截取向量f
output
的最后一行数据记为真实值f
true
=[1.2921,-1.5065,-0.0267,0.0177,-0.2252,-1.1172],通过非对称损失函数计算损失,其中非对称损失函数为:
[0067][0068]
步骤s8、重复执行步骤s3至步骤s7对模型进行训练,对验证集v中897组滑动窗口记录的损失值并求取平均值以得到该轮训练的损失值。在本实施例中,对改进transformer模型进行6轮训练,将损失值最小的改进transformer模型参数作为最优的改进transformer模型参数保存。
[0069]
步骤s9、加载训练好的改进transformer模型,预测水泵设备的剩余使用寿命。将维度为24
×
7的向量输入改进transformer模型得到维度为1
×
6的预测向量,该向量包含下
一时刻的数据特征x1,x2,x4,x5,x6,r的预测值,提取预测向量中的特征r得到剩余使用寿命,本实施例中最终预测的剩余使用寿命为695.19。
[0070]
表2显示了改进transformer模型与正常transformer模型以及lstm模型的对比,改进transformer模型的均方误差mse和平均绝对误差mae均为最低,预测结果更为准确。
[0071]
表2.改进transformer模型与transformer模型以及lstm模型的对比
[0072][0073]
本技术领域中的普通技术人员应当认识到,以上内容仅是用来说明本发明,而并非用作为对本发明的限定,只要在本发明的实质精神范围内,对以上实例的变化、变型都将落在本发明的权利要求书范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1