一种基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法
未命名
08-12
阅读:216
评论:0
1.本发明涉及故障诊断领域,尤其涉及一种基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法。
背景技术:
2.行星滚柱丝杠以其承载能力强、精度高、极限转速高等优点,在航空、航天、航海等领域以及一些要求精密伺服传动场合的应用逐渐增多,但是行星滚柱丝杠通常以机械单余度的形式存在,其可靠性决定了整个系统的可靠工作,所以迫切需要对行星滚柱丝杠的故障诊断模型构建方法进行研究。
3.相比齿轮和轴承成熟的加工工艺,行星滚柱丝杠的加工工艺复杂,故障植入难度大,故障实验成本高,故障数据采集周期长,所以面临缺乏行星滚柱丝杠故障数据和缺乏针对行星滚柱丝杠故障诊断模型构建方法的问题,而且数据具有隐私性,所以各个机构并不会选择公开已获得的故障数据,形成了数据壁垒,进一步阻碍了行星滚柱丝杠的故障诊断模型构建方法研究。
4.联邦学习利用分散在各个客户端的数据来建模,然后上传模型至云端,各客户端模型在云端聚合,最终得到一个全局模型,然后全局模型的参数信息回传至各个客户端。联邦学习既保证了数据的隐私性,又可以充分利用多方数据来协同训练模型,但是联邦学习训练模型时参数需要不断地上传、聚合和回传,相比本地训练,联邦学习训练模型的时间大大增加,难以真正应用于实际工业环境。
5.关于行星滚柱丝杠的故障诊断模型构建方法,2020年发表在《journal of physics:conference series》的文章《fault diagnosis of planetary roller screw mechanism based on bird swarm algorithm and support vector machine》,提出采用鸟群算法和支持向量机的行星滚柱丝杠故障诊断模型构建方法,该文章只考虑了一种行星滚柱丝杠的故障状态,更适用于单一故障的情况,难以应用于多类故障,而且没有解决各客户端数据不共享的问题。
6.关于采用联邦学习的故障诊断模型构建方法,发明专利202110644538.6提出的“一种基于异步去中心化联邦学习的光伏电站联合故障诊断方法”,该方法通过将本地模型参数发送给其它参与者来更新模型,在一定程度上提高了模型的通信和训练效率,但是该方法需要各个参与者之间不停地交换模型,对参与者的服务器性能要求较高,没有减少模型本地训练的时间,没有解决联邦学习各参与者之间传输成本高的问题。
7.针对上述问题,本专利提出了一种基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法,可以在保证数据隐私的同时利用各客户端的数据来训练行星滚柱丝杠故障诊断模型,而且可以减少模型的本地训练时间和模型的参数传输成本。
技术实现要素:
8.有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是现阶段缺少针对行星滚柱丝杠的故障诊断模型构建方法,各客户端之间数据不共享和联邦学习传输成本高的问题。
9.为实现上述目的,本发明提出了一种基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法,其特征在于,包括以下步骤:
10.步骤1、数据采集;
11.进一步地,步骤1采集的数据包括行星滚柱丝杠正常、润滑失效、滚柱一侧断齿三种状态运行时x、y、z三个方向的振动数据,振动传感器安装在行星滚柱丝杠的螺母上。
12.步骤2、数据预处理;
13.进一步地,步骤2包括以下步骤:
14.步骤2.1、原始数据划分为训练集和测试集,并设置不同类型标签;
15.步骤2.2、对步骤2.1所述的训练集随机划分,构成联邦学习中各客户端(host和guest)的训练集,其中host和guest的训练集不重叠且数据量不同;
16.步骤2.3、对步骤2.2所述的host和guest客户端的训练集和测试集按式(1)作归一化处理得到x*;
[0017][0018]
其中,xi为当前样本数据值,min(x)为当前样本的最小值,max(x)为当前样本的最大值,m为归一化后数据的最大值,m为归一化后数据的最小值,利用式(1)可以将数据归一化到任意范围,本发明考虑到行星滚柱丝杠运行时振动数据具有方向性的特点,同时为了缩小数据跨度,将数据归一化到[-1,1],即m为1,m为-1;
[0019]
步骤2.4、为了增加训练集样本的数量,对步骤2.3所述的归一化后的数据通过窗口裁剪的方式进行数据增强,获得的样本数量p如公式(2)所示:
[0020][0021]
其中,n为数据点的数量,w为采样信号长度,s数据采样间隔;
[0022]
步骤2.5、行星滚柱丝杠的振动信号为非平稳信号,所以对步骤2.4所述的数据通过公式(3)进行小波包变换,得到高频信号的细节系数w
i+1,2j
和低频信号的近似系数w
i+1,2j+1
,然后最后一层各频段的近似系数和细节系数按行排列构成64
×
64的系数矩阵,之后将x、y、z三个方向的系数矩阵堆叠得到64
×
64
×
3的矩阵,作为神经网络的输入;
[0023][0024]
其中,h(
·
)为高通正交滤波器,g(
·
)为低通正交滤波器,w
i,j
(k),k=1,2,
…
,n/2i为第i层,第j个子节点处的小波包系数,τ为平移量。
[0025]
步骤3、因为正常、润滑失效、滚柱一侧断齿等多种状态的行星滚柱丝杠运行时x、y、z方向的振动数据并不完全独立,存在一定的关系,但是作为时序信号,各个时间点的信号存在较大差异,针对所述数据特点,对传统的卷积层进行改造,称为对称卷积层,使空间
上各个位置进行乘加运算的核不同,但是不同通道使用一组权重完全相同的核,以对称卷积层为主要网络层,通过用对称卷积层替换传统18层残差神经网络中的卷积层,搭建如图3所示的轻量化神经网络模型sresnet18,包括对称卷积层、batch normalization、relu激活函数、最大池化层、卷积层、对称卷积残差层1、对称卷积残差层2、全局平局池化层、全连接层、softmax函数,下面对其进行具体介绍;
[0026]
①
对称卷积层:如图4所示,对称卷积层在空间中有多个权重不同的核,与空间中不同位置的输入进行乘加运算,可以在不同的空间位置中自适应地提取更多空间信息,所有通道共享一组核,减少了参数的数量,使得对称卷积层可以使用尺寸更大的核,从而能够捕捉长距离特征,在每个通道上的计算过程由式(4)定义:
[0027][0028]
其中,x为输入,i为对称卷积核,所有通道共享一组权重相同的对称卷积核,u、v为对称卷积核和输入的中心位置的邻域偏移量,k为对称卷积核大小,ci为第i个通道;
[0029]
所述对称卷积核在空间中有多个,且不同位置对称卷积核的权重不同,所以需要在不同的位置动态生成不同的对称卷积核,本发明通过图5所示的瓶颈层生成对称卷积核,其中r为决定瓶颈层大小的参数,当对称卷积核移动的步长s大于1时,输入的高度h0和宽度w0会发生变化,只通过一个瓶颈层生成的对称卷积核的尺寸与输入不匹配,所以需要通过一个池化层来减小输入的高度h0和宽度w0,经过一个池化层之后,高度w1和宽度w1分别变为h1=h0/s、w1=w0/s,当对称卷积核移动的步长s等于1时,只通过一个瓶颈层生成的对称卷积核的尺寸与输入匹配,所以不需要图5虚线中的结构;
[0030]
所述对称卷积层通过一组对称卷积核与输入的c0个通道分别进行乘加运算,得到一个通道为c0的输出,对称卷积层输出的通道数量与输入的通道数量相同,所以需要在对称卷积层之后增加一个卷积核大小为1
×
1,步长为1的卷积层来改变通道数量;
[0031]
②
batch normalization:batch normalization可以使梯度下降算法在梯度下降过程中更加稳定;
[0032]
③
relu激活函数:为了提高神经网络的拟合能力,需要对输出进行去线性化操作,本发明选择的是relu激活函数,如式(5)所示:
[0033][0034]
其中,x为输入;
[0035]
④
最大池化层:最大池化层以一定的步长进行滑移遍历整个输入,输出窗口内数据的最大值;
[0036]
⑤
卷积层:卷积层通过在输入矩阵上滑移卷积核,计算卷积核和输入在各个位置的点积,计算过程由式(6)定义:
[0037][0038]
其中,x为输入,f为卷积核,u、v为卷积核和输入的中心位置的邻域偏移量,k为卷积核大小,c1为输出的通道数量;
[0039]
⑥
对称卷积残差层:对称卷积残差层通过增加恒等映射,避免了梯度爆炸和梯度消失,当第一个对称卷积层的步长s大于1时,图6所示的对称卷积残差层1的输出y与输入x的高度和宽度不相等,无法作相加运算,所以需要增加一个步长为s,大小为1
×
1的卷积层来改变输入的大小;当第一个对称卷积层的步长s等于1时,图7所示的对称卷积残差层2的输出y与输入x的高度和宽度相等,可以直接作相加运算;
[0040]
⑦
全局平局池化层:全局平均池化层在空间方向上对所有的输入取平均,输出的高度和宽度均为1,在全连接层前使用全局平均池化层可以在很大程度上减少参数量;
[0041]
⑧
全连接层与softmax函数:全连接层和softmax配合输出故障诊断分类结果;
[0042]
步骤4、基于联邦学习框架及轻量化模型开展行星滚柱丝杠联合故障诊断建模。本发明的目的是在确保数据隐私的前提下,建立行星滚柱丝杠故障诊断模型,充分利用多个客户端的行星滚柱丝杠数据,提高模型的性能,而且针对联邦学习框架下模型参数传输成本的问题,建立了步骤3所述的轻量化模型sresnet18。值得注意的是,在本发明的方法中,各个客户端不需要提供本地的数据,只需要上传训练的模型参数,通过数据不动模型动的方法得到准确率和训练速度快的模型。在多个客户端联合建立行星滚柱丝杠故障诊断模型的过程中,主要有以下步骤:
[0043]
步骤4.1、host和guest利用本地训练集训练本地故障诊断模型;
[0044]
步骤4.2、host和guest将得到的本地故障诊断模型的参数上传至云端;
[0045]
步骤4.3、在云端各模型聚合得到一个全局模型,全局模型的参数为pc,聚合过程由式(7)定义:
[0046][0047]
其中,ph和pg分别为host和guest模型的参数;
[0048]
步骤4.4、全局模型参数回传,更新host和guest本地故障诊断模型的参数为pc;
[0049]
不断重复上述步骤4.1~4.4,直到得到一个性能优异的模型。
[0050]
步骤5、联合故障诊断建模及轻量化模型性能评估。为了验证联邦学习对行星滚柱丝杠故障诊断建模的有效性和轻量化模型在联邦学习框架下对训练速度提高的有效性,本发明利用采集到的行星滚柱丝杠正常状态、润滑失效状态和滚柱一侧断齿的数据进行故障诊断实验,为了验证本发明方法的有效性,分别从三个层面来评估,具体包括:
[0051]
①
模型的大小、复杂度;
[0052]
②
模型在测试集的准确率;
[0053]
③
联邦学习框架下模型的训练时间。
[0054]
与现有技术相比,本发明的有益效果在于:本发明首次提出了行星滚柱丝杠故障诊断数据的处理方法,首次提出采用联邦学习的方法来对行星滚柱丝杠进行故障诊断,在保证数据隐私的前提下解决了单一机构持有的行星滚柱丝杠故障诊断数据不足的问题,提升了模型的性能,而且针对振动信号的特点,提出了一种参数量少的轻量化模型,在联邦学习框架下,不仅减少了本地模型训练的时间,同时减少了模型参数上传、模型聚合、模型参数回传的时间,可以缩短联邦学习框架下行星滚柱丝杠故障诊断建模的时间。而且除行星滚柱丝杠外,本发明对其他重要机构如轴承、齿轮箱等智能诊断技术的发展和应用落地也有一定的促进作用。
附图说明
[0055]
图1为本发明基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法的结构图。
[0056]
图2为小波包变换系数矩阵生成示意图。
[0057]
图3为sresnet18结构图。
[0058]
图4为对称卷积层前向传播示意图。
[0059]
图5为对称卷积核生成过程示意图。
[0060]
图6为对称卷积残差层1结构图。
[0061]
图7为对称卷积残差层2结构图。
[0062]
图8为联邦学习框架下resnet18在测试集的输出结果分布图和混淆矩阵热力图。
[0063]
图9为联邦学习框架下sresnet18在测试集的输出结果分布图和混淆矩阵热力图。
具体实施方式
[0064]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0065]
本发明针对缺乏行星滚柱丝杠故障诊断模型构建方法,各客户端之间故障诊断数据不共享,联邦学习框架下传输成本高的问题提出了如图1所示的基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法。本发明首先介绍了行星滚柱丝杠故障诊断数据集的构建方法。之后,介绍了针对行星滚柱丝杠振动数据的处理方法。接着,本发明搭建了用于训练故障诊断模型的sresnet18模型,该模型参数量少,可以减少联邦学习框架下参数的传输成本。之后,基于本发明开展行星滚柱丝杠的联邦学习故障诊断建模。最后,本发明进行故障诊断实验,评估了故障诊断模型的大小、复杂度,模型在测试集的准确率和联邦学习框架下模型的训练时间,用于验证本发明方法的有效性,具体包括以下步骤:
[0066]
1、数据采集:本发明提出了一种多个客户端协同建模的行星滚柱丝杠故障诊断模型构建方法。其中,本发明用到的行星滚柱丝杠的具体参数为:丝杠直径为24mm,螺距为2mm,头数为5,滚柱个数为10,具体工况为丝杠转速为104r/min,载荷为9kn,并采集了行星滚柱丝杠正常状态及润滑失效和滚柱一侧断齿两种常见故障状态下x、y、z三个方向的振动数据,其中振动传感器安装在行星滚柱丝杠的螺母上。
[0067]
2、数据预处理:在本发明中,各客户端均对数据作相同的数据预处理。
[0068]
首先,数据划分为训练集和测试集。
[0069]
之后,考虑到实际工业场景中各客户端持有的数据量不同其数据不重叠,所以对训练集进行随机划分,得到host和guest的训练集。
[0070]
接着,为了减小数据跨度,对host和guest客户端的训练集和测试集进行归一化处理,由于振动数据有方向性,为了保留数据的方向性,同时减少数据的跨度,将数据按式(8)映射到[-1,1]范围内;
[0071]
[0072]
其中,xi为当前样本数据值,m为归一化后数据的最大值,为1,m为归一化后数据的最小值,为-1。
[0073]
之后,为了提高模型性能,通过窗口裁剪的数据增强方法,增加host和guest训练集的数据量,数据增强后样本的数量p如公式(9)所示:
[0074][0075]
其中,n为数据点的数量,w为采样信号长度,s数据采样间隔;
[0076]
最后,因为行星滚柱丝杠的振动信号为非平稳信号,所以通过公式(10)进行小波包变换,选择的小波函数为“db1”,小波包分解层数为6层,经过小波包变换以后,得到高频信号的细节系数w
i+1,2j
和低频信号的近似系数w
i+1,2j+1
,如图2所示,低频部分的近似系数和高频部分的细节系数按行排列构成64
×
64的系数矩阵,然后x、y、z三个方向的系数矩阵堆叠得到64
×
64
×
3的矩阵,作为神经网络的输入;
[0077][0078]
其中,h(
·
)为高通正交滤波器,g(
·
)为低通正交滤波器系数,w
i,j
(k),k=1,2,
…
,n/2i为第i层,第j个子节点处的小波包系数,τ为平移量。
[0079]
3、搭建轻量化模型。因为正常、润滑失效、滚柱一侧断齿等多种状态的行星滚柱丝杠运行时x、y、z方向的振动数据并不完全独立,存在一定的关系,但是作为时序信号,各个时间点的信号存在较大差异,针对所述数据特点,对传统的卷积层进行改造,称为对称卷积层,使空间上各个位置进行乘加运算的核不同,但是不同通道使用一组权重完全相同的核,以对称卷积层为主要网络层,通过用对称卷积层替换传统18层残差神经网络中的卷积层,搭建如图3所示的轻量化神经网络模型sresnet18,包括对称卷积层、batch normalization、relu激活函数、最大池化层、卷积层、对称卷积残差层1、对称卷积残差层2、全局平局池化层、全连接层、softmax函数,下面对其进行具体介绍;
[0080]
①
对称卷积层:如图4所示,对称卷积层在空间中有多个权重不同的核,与空间中不同位置的输入进行乘加运算,可以在不同的空间位置中自适应地提取更多空间信息,所有通道共享一组核,减少了参数的数量,使得对称卷积层可以使用尺寸更大的核,从而能够捕捉长距离特征,在每个通道上的计算过程由式(11)定义:
[0081][0082]
其中,x为输入,i为对称卷积核,所有通道共享一组权重相同的对称卷积核,u、v为对称卷积核和输入的中心位置的邻域偏移量,k为对称卷积核大小,ci为第i个通道;
[0083]
所述对称卷积核在空间中有多个,且不同位置的对称卷积核权重不同,所以需要在不同的位置动态生成不同的对称卷积核,本发明通过图5所示的瓶颈层生成对称卷积核,其中r为决定瓶颈层大小的参数,当对称卷积核移动的步长s大于1时,输入的高度h0和宽度w0会发生变化,只通过一个瓶颈层生成的对称卷积核的尺寸与输入不匹配,所以需要通过一个池化层来减小输入的高度h0和宽度w0,经过一个池化层之后的高度w1和宽度w1分别变为h1=h0/s、w1=w0/s,当对称卷积核移动的步长s等于1时,只通过一个瓶颈层生成的对称
卷积核的尺寸与输入匹配,所以不需要图5虚线中的结构;
[0084]
所述对称卷积层通过一组对称卷积核与输入的c0个通道分别进行乘加运算,得到一个通道为c0的输出,对称卷积层输出的通道数量与输入的通道数量相同,所以需要在对称卷积层之后增加一个卷积核大小为1
×
1,步长为1的卷积层来改变通道数量;
[0085]
②
batch normalization:batch normalization可以使梯度下降算法在梯度下降过程中更加稳定;
[0086]
③
relu激活函数:为了提高神经网络的拟合能力,需要对输出进行去线性化操作,本发明选择的是relu激活函数,如式(12)所示:
[0087][0088]
其中,x为输入;
[0089]
④
最大池化层:最大池化层以一定的步长进行滑移遍历整个输入,输出窗口内数据的最大值;
[0090]
⑤
卷积层:卷积层通过在输入矩阵上滑移卷积核,计算卷积核和输入在各个位置的点积,计算过程由式(13)定义:
[0091][0092]
其中,x为输入,f为卷积核,u、v为卷积核和输入的中心位置的邻域偏移量,k为卷积核大小,c1为输出的通道数量;
[0093]
⑥
对称卷积残差层:对称卷积残差层通过增加恒等映射,避免了梯度爆炸和梯度消失,当第一个对称卷积层的步长s大于1时,图6所示的对称卷积残差层1的输出y与输入x的高度和宽度不相等,无法作相加运算,所以需要增加一个步长为s,大小为1
×
1的卷积层来改变输入的大小;当第一个对称卷积层的步长等于1时,图7所示的对称卷积残差层2的输出y与输入x的高度和宽度相等,可以直接作相加运算;
[0094]
⑦
全局平局池化层:全局平均池化层在空间方向上对所有的输入取平均,输出的高度和宽度均为1,在全连接层前使用全局平均池化层可以在很大程度上减少参数量;
[0095]
⑧
全连接层与softmax函数:全连接层和softmax配合输出故障诊断分类结果;
[0096]
4、基于联邦学习框架及轻量化模型开展行星滚柱丝杠联合故障诊断建模:考虑到现阶段单个机构持有的行星滚柱丝杠故障诊断数据不足,但各机构之间数据不共享,联邦学习框架下传输成本高,本发明提出了一种基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法来解决上述问题,利用kubefate-docker-compose-v1.6.0框架,实现多个客户端的快速联合故障诊断建模。
[0097]
首先,host和guest利用本地训练集训练本地故障诊断模型;
[0098]
之后,host和guest将得到的本地故障诊断模型的参数上传至云端;
[0099]
接着,在云端各模型聚合得到一个全局模型,全局模型的参数为pc,聚合过程由式(14)定义:
[0100]
[0101]
其中,ph和pg分别为host和guest模型的参数;
[0102]
然后,全局模型参数回传,更新host和guest本地故障诊断模型的参数为pc;
[0103]
最后,不断重复上述步骤直到全局模型收敛到较高的准确率,完成多个客户端的联合故障诊断建模。
[0104]
5、联合故障诊断建模及轻量化模型性能评估:为了验证联邦学习对行星滚柱丝杠故障诊断建模的有效性和轻量化模型在联邦学习框架下对训练速度提高的有效性,本发明利用采集到的行星滚柱丝杠正常状态、润滑失效状态和滚柱一侧断齿的数据进行故障诊断实验,为了验证本发明方法的有效性,分别从三个层面来评估,具体包括:
[0105]
①
模型的大小、复杂度;
[0106]
②
模型在测试集的准确率;
[0107]
③
联邦学习框架下模型的训练时间。
[0108]
(1)数据集介绍
[0109]
最终得到的数据集的具体描述如表1所示。
[0110]
表1数据集
[0111][0112]
(2)实验设计
[0113]
为了验证本发明提出的方法的有效性,设置对比实验:a.传统的18层的残差神经网络模型resnet18,b.本发明提出的轻量化模型sresnet18。与resnet18相比,sresnet18中增加了4层卷积核大小为1
×
1、步长为1的卷积层用于改变输入的通道。具体的实验对比包括:
[0114]
①
为了比较模型的大小和复杂度,对比了resnet18和sresnet18模型的参数量和浮点运算数;
[0115]
②
为了验证联邦学习对行星滚柱丝杠故障诊断建模的有效性,对比resnet18和sresnet18本地训练模型和联邦学习模型在测试集的准确率;
[0116]
③
为了验证轻量化模型对联邦学习框架下训练速度提高的有效性,对比resnet18和sresnet18在联邦学习框架下模型的训练时间。
[0117]
(3)参数设置
[0118]
本发明实验的具体网络参数如表2所示。
[0119]
表2各模型参数设置
[0120]
模型网络层数学习率批大小训练轮数优化器resnet18180.0164100adamsresnet18220.0164100adam
[0121]
(4)实验结果分析
[0122]
各模型的参数量和浮点运算数如表3所示,其中模型参数量表示模型需要不断更新的参数的数量,可以衡量模型的大小,浮点运算数表示模型的计算量,可以衡量模型的复杂度。
[0123]
表3各模型的参数量和浮点运算数
[0124]
模型参数量浮点运算数resnet1811.2m0.297gsresnet180.552m0.0235g
[0125]
除sresnet18增加了4层用于改变通道数的卷积层外,resnet18和sresnet18的网络深度完全相同,由表3可以看出,sresnet18的参数量和浮点运算数分别比resnet18减少了95.07%和92.09%,所以无论是模型的大小,还是模型的复杂度,相比传统的resnet18,本发明提出的sresnet18都有巨大的优势。
[0126]
因为在kubefate联邦学习框架下,模型的训练由guest发起,所以本地训练模型指的是利用guest的训练集训练的模型,因为在联邦学习框架下,host和guest均参与训练,所以训练集的准确率分别为host和guest训练集的准确率,各模型在测试集的准确率如表4所示。
[0127]
表4各模型在测试集的准确率
[0128][0129]
由表4可以看出,本地训练时,虽然传统的resnet18训练集准确率有99.5%,但是测试集准确率却只有67.5%,说明本地训练时resnet18发生了严重的过拟合,但是sresnet18测试集准确率和训练集准确率差距较小,说明本发明提出的轻量化模型sresnet18可以减轻过拟合的现象;联邦学习训练模型时,resnet18在guest训练集的准确率只有37.1%,在测试集的准确率只有36.3%,均低于本地训练时的准确率,这是因为resnet18参数较多,需要更多轮训练才能得到一个准确率高的resnet18模型,但是设置较大的训练轮数会增加时间成本和运算成本,造成不必要的浪费,相反地,sresnet18在guest训练集的准确率为99.4%,测试集的准确率高达99.2%,均比本地训练时高,而且几乎没有过拟合现象。综合以上,sresnet18在联邦学习框架下的性能最好,在测试集的准确率最高,而且由sresnet18在本地训练和联邦学习框架下测试集的准确率可以看出,联邦学习可以
减轻过拟合现象,提高模型的性能。
[0130]
各模型在联邦学习框架下的训练时间如表5所示。
[0131]
表5各模型在联邦学习框架下的训练时间
[0132]
模型模型训练时间resnet189039ssresnet183551s
[0133]
从表5可以看到,在联邦学习框架下,sresnet18比resnet18的建模时间减少了60.71%,说明本发明提出的轻量化sresnet18模型可以显著提高模型的训练速度,减少联邦学习框架下的传输成本。
技术特征:
1.一种基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法,其特征在于,包括以下步骤:步骤1、数据采集;采集的数据包括行星滚柱丝杠正常、润滑失效、滚柱一侧断齿三种状态运行时x、y、z三个方向的振动数据,振动传感器安装在行星滚柱丝杠的螺母上;步骤2、数据预处理;具体包括如下子步骤:步骤2.1、原始数据划分为训练集和测试集,并设置不同类型标签;步骤2.2、对步骤2.1所述的训练集随机划分,构成联邦学习中各客户端(host和guest)的训练集,其中host和guest的训练集不重叠且数据量不同;步骤2.3、对步骤2.2所述的host和guest客户端的训练集和测试集按式(1)作归一化处理得到x*;其中,x
i
为当前样本数据值,min(x)为当前样本的最小值,max(x)为当前样本的最大值,m为归一化后数据的最大值,m为归一化后数据的最小值,利用式(1)可以将数据归一化到任意范围,本发明考虑到行星滚柱丝杠运行时振动数据具有方向性的特点,同时为了缩小数据跨度,将数据归一化到[-1,1],即m为1,m为-1;步骤2.4、为了增加训练集样本的数量,对步骤2.3所述的归一化后的数据通过窗口裁剪的方式进行数据增强,获得的样本数量p如公式(2)所示:其中,n为数据点的数量,w为采样信号长度,s数据采样间隔;步骤2.5、行星滚柱丝杠的振动信号为非平稳信号,所以对步骤2.4所述的数据通过公式(3)进行小波包变换,得到高频信号的细节系数w
i+1,2j
和低频信号的近似系数w
i+1,2j+1
,然后最后一层各频段的近似系数和细节系数按行排列构成64
×
64的系数矩阵,之后将x、y、z三个方向的系数矩阵堆叠得到64
×
64
×
3的矩阵,作为神经网络的输入;其中,h(
·
)为高通正交滤波器,g(
·
)为低通正交滤波器,w
i,j
(k),k=1,2,
…
,n/2
i
为第i层,第j个子节点处的小波包系数,τ为平移量。步骤3、对传统的卷积层进行改造,称为对称卷积层,使空间上各个位置进行乘加运算的核不同,但是不同通道使用一组权重完全相同的核,以对称卷积层为主要网络层,通过用对称卷积层替换传统18层残差神经网络中的卷积层,搭建轻量化神经网络模型sresnet18,包括对称卷积层、batch normalization、relu激活函数、最大池化层、卷积层、对称卷积残差层1、对称卷积残差层2、全局平局池化层、全连接层、softmax函数:
①
对称卷积层:对称卷积层在空间中有多个权重不同的核,与空间中不同位置的输入进行乘加运算,所有通道共享一组核,在每个通道上的计算过程由式(4)定义:
其中,x为输入,i为对称卷积核,所有通道共享一组权重相同的对称卷积核,u、v为对称卷积核和输入的中心位置的邻域偏移量,k为对称卷积核大小,c
i
为第i个通道;所述对称卷积核在空间中有多个,且不同位置对称卷积核的权重不同,通过瓶颈层生成对称卷积核,通过一个池化层来减小输入的高度h0和宽度w0,经过一个池化层之后,高度w1和宽度w1分别变为h1=h0/s、w1=w0/s,当对称卷积核移动的步长s等于1时,只通过一个瓶颈层生成的对称卷积核的尺寸与输入匹配,;所述对称卷积层通过一组对称卷积核与输入的c0个通道分别进行乘加运算,得到一个通道为c0的输出,对称卷积层输出的通道数量与输入的通道数量相同,所以需要在对称卷积层之后增加一个卷积核大小为1
×
1,步长为1的卷积层来改变通道数量;
②
batch normalization:batch normalization可以使梯度下降算法在梯度下降过程中更加稳定;
③
relu激活函数:如式(5)所示:其中,x为输入;
④
最大池化层:最大池化层以一定的步长进行滑移遍历整个输入,输出窗口内数据的最大值;
⑤
卷积层:卷积层通过在输入矩阵上滑移卷积核,计算卷积核和输入在各个位置的点积,计算过程由式(6)定义:其中,x为输入,f为卷积核,u、v为卷积核和输入的中心位置的邻域偏移量,k为卷积核大小,c1为输出的通道数量;
⑥
对称卷积残差层:对称卷积残差层通过增加恒等映射,避免了梯度爆炸和梯度消失,当第一个对称卷积层的步长s大于1时,增加一个步长为s,大小为1
×
1的卷积层来改变输入的大小;当第一个对称卷积层的步长s等于1时,对称卷积残差层2的输出y与输入x的高度和宽度相等,可以直接作相加运算;
⑦
全局平局池化层:全局平均池化层在空间方向上对所有的输入取平均,输出的高度和宽度均为1,在全连接层前使用全局平均池化层可以在很大程度上减少参数量;
⑧
全连接层与softmax函数:全连接层和softmax配合输出故障诊断分类结果;步骤4、基于联邦学习框架及轻量化模型开展行星滚柱丝杠联合故障诊断建模。本发明的目的是在确保数据隐私的前提下,建立行星滚柱丝杠故障诊断模型,充分利用多个客户端的行星滚柱丝杠数据,提高模型的性能,而且针对联邦学习框架下模型参数传输成本的问题,建立了步骤3所述的轻量化模型sresnet18;在多个客户端联合建立行星滚柱丝杠故障诊断模型的过程中,主要有以下步骤:步骤4.1、host和guest利用本地训练集训练本地故障诊断模型;
步骤4.2、host和guest将得到的本地故障诊断模型的参数上传至云端;步骤4.3、在云端各模型聚合得到一个全局模型,全局模型的参数为p
c
,聚合过程由式(7)定义:其中,p
h
和p
g
分别为host和guest模型的参数;步骤4.4、全局模型参数回传,更新host和guest本地故障诊断模型的参数为p
c
;不断重复上述步骤4.1~4.4,直到得到一个性能优异的模型。步骤5、联合故障诊断建模及轻量化模型性能评估。2.一种如权利要求1所述的基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法,其特征在于,所述步骤5中故障诊断建模及轻量化模型性能评估时,利用采集到的行星滚柱丝杠正常状态、润滑失效状态和滚柱一侧断齿的数据进行故障诊断实验,分别从三个层面来评估,具体包括:
①
模型的大小、复杂度;
②
模型在测试集的准确率;
③
联邦学习框架下模型的训练时间。
技术总结
本发明公开了一种基于联邦学习及轻量化模型的行星滚柱丝杠故障诊断模型构建方法,涉及故障诊断领域。采集行星滚柱丝杠正常状态和故障状态的振动数据,构建数据集;数据预处理;搭建轻量化模型SResNet18;基于联邦学习框架及轻量化模型开展行星滚柱丝杠联合故障诊断建模;最后评估模型的大小和复杂度、模型的准确率和联邦学习框架下模型的训练时间。本发明有效解决了现阶段缺少针对行星滚柱丝杠故障诊断模型构建方法的问题;在保证数据隐私的前提下充分利用各客户端的数据联合建立行星滚柱丝杠故障诊断模型;本发明提出的轻量化模型SResNet18减少了联邦学习框架下模型的训练时间,解决了联邦学习传输成本高的问题。解决了联邦学习传输成本高的问题。解决了联邦学习传输成本高的问题。
技术研发人员:马尚君 牛茂东 付晓军 刘更
受保护的技术使用者:西北工业大学
技术研发日:2023.04.28
技术公布日:2023/8/9
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种促进红掌萜类物质释放的方法 下一篇:一种中文事件抽取模型构建方法
