4种顶会注意力机制模块及1D-CNN的滚动轴承故障诊断

概要

本期实现基于pytorch框架实现4种顶会注意力机制模块及1D-CNN的滚动轴承故障诊断。对西储大学数据进行加噪处理,实验结果证明,添加注意力机制的CNN比原始的CNN诊断的准确率更高。其中原始的1DCNN准确率为97.5%,ECA-1DCNN准确率:99.21875%,CBAM-1DCNN准确率:99.53125%,GAM-1DCNN准确率:100%。

4种注意力机制模块分别为:

  • SE 注意力模块:

论文地址:https://arxiv.org/pdf/1709.01507.pdf

  • CBAM 注意力模块

论文地址:https://arxiv.org/pdf/1807.06521.pdf

  • ECA 注意力模块

论文地址:https://arxiv.org/abs/2103.02907

  • GAM注意力模块

论文地址:https://arxiv.org/pdf/2112.05561v1.pdf

下图为CNN-AM 模型结构。其中的AM表示注意力机制模块,本期代码实现4种注意力机制与1DCNN的结合

实验过程介绍

实验采用凯斯西储大学滚动轴承振动数据,为SKF-6205驱动端轴承,采样频率为12 kHz,转速为1797 r/min,负载设定有0、1、2、3 hp 这4 种,实验选择0 负载工况下的数据训练模型。故障类型有10种:滚动体故障(B)、外圈故障(OR)、内圈故障(IR),每种故障类型包含3 种故障尺寸:0.007、0.014 和0.021 in(1 in 等于0.0254 m)。因此可将轴承状态划分为9 种故障状态和1 种正常状态,取连续的2048 个数据点为一个样本。每种状态设置320个样本,选取测试集比例为20%。

同时为了提高模型的泛化能力,证明添加注意力机制的CNN比原始CNN效果更好,在原始信号的基础上加入高斯白噪声,信噪比SNR =1.2

实验在Pytorch深度学习框架中实现。训练前将数据集划分为训练集、测试集,其比例分别为80%、20%。训练时采用Adam 优化器,学习率为0.001,训练次数为30 次,小批量mini-batch 大小为64,损失函数选用交叉熵损失函数。

实验结果展示

原始的1DCNN结果:

对原始轴承数据添加信噪比为1.2的情况下,原始的1DCNN结果如下,测试集准确率为:97.5%

ECA-1DCNN结果:

对原始轴承数据添加信噪比为1.2的情况下,融合ECA注意力机制的1DCNN结果如下,测试集准确率可达99.21875%。

CBAM-1DCNN结果:

对原始轴承数据添加信噪比为1.2的情况下,融合CBAM注意力机制的1DCNN结果如下,测试集准确率可达99.53125%。

SENET-1DCNN结果:

对原始轴承数据添加信噪比为1.2的情况下,融合SENET注意力机制的1DCNN结果如下,测试集准确率可达98.75%。

GAM-1DCNN结果:

对原始轴承数据添加信噪比为1.2的情况下,融合GAM注意力机制的1DCNN结果如下,测试集准确率可达100%。

五种实验结果的损失曲线对比图:

可以看到表现最佳的是GAM-CNN,准确率可达100%。

每种方法在跑完程序后都可以绘制Tsne降维图、损失函数图等,这里仅以GAM-1DCNN为例进行展示:

代码获取

链接:https://mbd.pub/o/bread/ZpqUk51x

或者点击下方阅读原文获取。

已将此代码添加至故障诊断全家桶中

已购买故障诊断全家桶的小伙伴,可以直接跳转以下链接下载哦!

故障诊断全家桶获取链接:

一次购买永久更新!目前已经包含数十种方法了!

https://mbd.pub/o/bread/ZJ2Ym5ts


获取更多代码:

或者复制链接跳转:https://docs.qq.com/sheet/DU3NjYkF5TWdFUnpu
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

淘个代码_

不想刀我的可以选择爱我

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值