高创新模型,基于STFT-SWT-双流CNN-SVM的小样本轴承故障诊断方法,MATLAB代码

。前言

现如今,大家为了找创新点发个小论文,也真是煞费苦心!各大博主推出的很多算法层出不穷,各式各样的组合真是看花了眼!但有时也不能为了创新而创新,效果好才是真的好!

本期推出一种《基于STFT-SWT-双流CNN-SVM的小样本轴承故障诊断方法 》,首先利用短时傅里叶变换和同步压缩小波变换两大方法的互补性,同时对轴承数据进行特征提取,然后将提取的特征采用双流CNN-SVM模型实现故障诊断。实验表明,在每种类型故障样本量仅为20的小样本情况下,本文提出的模型仍有较高的精度。实现了小样本轴承故障诊断方法。

此方法为作者独创,不要问,问就是肯定没有人发过!

STFT:短时傅里叶变换(short-time Fourier transform,STFT)

SWT:同步压缩小波变换(Synchrosqueezed Wavelet Transform, SWT)

现在网上已有关于STFT-CNN的故障诊断文献:

1\]余传粮,梁睿君,冉文丰,等.基于STFT和CNN的齿轮箱故障诊断\[J\].机械制造与自动化,2022,51(03):152-154+195.DOI:10.19344/j.cnki.issn1671-5276.2022.03.037. 也有关于SWT-CNN的故障诊断文献: \[1\]唐纪凯,卢一相,柏壮壮,等.基于同步压缩小波变换和CNN的滚动轴承故障诊断\[J\].传感器与微系统,2022,41(06):130-133.DOI:10.13873/J.1000-9787(2022)06-0130-04. 但是还没有将两者融合的文章。 同步压缩小波变换(SWT)和短时傅立叶变换(STFT)在信号处理中具有一定的互补性: **互补性** **( SWT · STFT )** ①SWT的选择性缺失问题是指在进行小波变换时,小波基函数的选择可能会导致某些频率的信号被忽略或失真,SWT的选择性缺失问题可能会导致信号的频率信息丢失或失真。而短时傅立叶变换(STFT)在某种程度上可以避免选择性缺失问题,因为它使用固定的窗口函数对信号进行分析,窗口函数的频率特性与信号的频率特性相对应。在STFT中,信号在时间和频率上被分解成窄带信号,每个时间点上的频率信息都能够得到较好的保留。 ②SWT具有多尺度分析的能力,相比于STFT,可以在不同尺度上对信号进行分析,提供更全面的频率信息。 **本期代码实现功能:** ![6b3b44f2dbbfb1abd81a90b4d3b370e7.gif](https://img-blog.csdnimg.cn/img_convert/6b3b44f2dbbfb1abd81a90b4d3b370e7.gif) ①实现了同步压缩小波变换(SWT)-CNN的故障诊断 ②实现了短时傅立叶变换(STFT)-CNN的故障诊断 ③实现了SWT-STFT-双流CNN故障诊断 ④实现了SWT-STFT-双流CNN-SVM故障诊断 ⑤本次实验的数据集,每个故障类别有100个样本。分别选取训练集为样本总量的70%、30%、20%对以上四种方法进行对比,验证本文提出方法在小样本诊断时的优势。 ![69320fc8fd9d12c50b5027558f7dfc4b.gif](https://img-blog.csdnimg.cn/img_convert/69320fc8fd9d12c50b5027558f7dfc4b.gif) 模型结构图如下: ![ab69d799c8947e95d5db240428507655.png](https://img-blog.csdnimg.cn/img_convert/ab69d799c8947e95d5db240428507655.png) **内容详解** **一、数据处理** ①对官方下载的西储大学数据进行处理,步骤如下: 1. 一共加载10种数据,然后取每个数据的DE_time(%DE是驱动端数据 FE是风扇端数据 BA是加速度数据 选择其中一个就行) 2. 设置滑动窗口w,每个数据的故障样本点个数s,每个故障类型的样本量m 3. 将所有的数据滑窗完毕之后,综合到一个data变量中 4. 有关西储大学数据的处理之前有文章也讲过,大家可以看这篇文章:[西储大学轴承诊断数据处理,matlab免费代码获取]() 最后得到的数据是一个1000\*2048的矩阵,其中1000是样本量,2048是特征。1000又等于100\*10,10是指10种故障状态,100是指每种状态有100个样本。在代码中是data_total_1797.mat 二,对数据进行SWT和STFT变换 SWT变换结果: ![ef0b1ac963c7cf5601ee38b2a674f5d1.png](https://img-blog.csdnimg.cn/img_convert/ef0b1ac963c7cf5601ee38b2a674f5d1.png) STFT变换结果: ‍![2e749c15b09d4de716e21b6e5c3df20f.png](https://img-blog.csdnimg.cn/img_convert/2e749c15b09d4de716e21b6e5c3df20f.png) 三,结果展示 本期模型数据中,一共取了10种状态的数据,每种状态数据有100个样本。下面分别对**每个**样本选取70,30,20个作为训练集,其余样本作为测试集,对四种方法进行对比验证。 **为了有效对比,设定四种方法的CNN参数全部一致!** **①当训练集中每个样本量为70个时,即700个样本作为训练集,剩余300个为测试集:** **同步压缩小波变换(SWT)-CNN诊断结果**: ![2cb1da1d55c63b8f9010ce5c2d346de9.png](https://img-blog.csdnimg.cn/img_convert/2cb1da1d55c63b8f9010ce5c2d346de9.png) **短时傅立叶变换(STFT)-CNN诊断结果:** ![d05455e2c1f9cdd351237af39c3fd1ae.png](https://img-blog.csdnimg.cn/img_convert/d05455e2c1f9cdd351237af39c3fd1ae.png) **SWT-STFT-双流CNN诊断结果:** ![107f8a0fa7fc330d85701f31e2d190e0.png](https://img-blog.csdnimg.cn/img_convert/107f8a0fa7fc330d85701f31e2d190e0.png) **SWT-STFT-双流CNN-SVM诊断结果:** ![44400589259854eb3ac325bc946cfe9e.png](https://img-blog.csdnimg.cn/img_convert/44400589259854eb3ac325bc946cfe9e.png) 到这里,可以发现,当样本量为70%时,四种效果基本相当,不分上下。都能够达到一个比较不错的诊断效果。 **提示:**为节省篇幅,这里不再展示30%的训练结果。直接展示每个样本量为20个时的小样本训练结果。大家在写论文的过程中可以多考虑几种情况。 **②当训练集中每个样本量为20个时,即200个样本作为训练集,剩余800个为测试集:** ****同步压缩小波变换(SWT)-CNN诊断结果**:** **![71e11a3f7f9987b9cc0c6a076d578bf1.png](https://img-blog.csdnimg.cn/img_convert/71e11a3f7f9987b9cc0c6a076d578bf1.png)** *** ** * ** *** **短时傅立叶变换(STFT)-CNN诊断结果:** **![da182a8508402ff47f3230def37e4b13.png](https://img-blog.csdnimg.cn/img_convert/da182a8508402ff47f3230def37e4b13.png)** *** ** * ** *** **SWT-STFT-双流CNN诊断结果:** ****![22b40402e42f5370a08a01bd4d932f1d.png](https://img-blog.csdnimg.cn/img_convert/22b40402e42f5370a08a01bd4d932f1d.png)**** *** ** * ** *** **SWT-STFT-双流CNN-SVM诊断结果:** **![dc53543d80fd7b5d68e0af1ae52f5301.png](https://img-blog.csdnimg.cn/img_convert/dc53543d80fd7b5d68e0af1ae52f5301.png)** 可以看到,当采用小样本数据进行模型训练时,本文提出的**SWT-STFT-双流CNN-SVM模型相比于其他模型精度很高,达到了97%以上。** 同时为了证明上述结果的非偶然性,笔者对提到的《**SWT-STFT-双流CNN-SVM模型》做了10次实验,实验准确率均在90%以上,平均准确率达到了95%以上,最高一次准确率达到98.875%。明显优于其他3种模型。** 在写论文的时候,你也可以对上述模型做多次实验,对平均结果行一个统计,突出所提模型的优越性,这里就不再赘述。 本期所提出的并行CNN网络结构如下,与上面给出的示意图结构是一致的。 ![ef0dbdc47421ee4dc0b23524de435a4f.jpeg](https://img-blog.csdnimg.cn/img_convert/ef0dbdc47421ee4dc0b23524de435a4f.jpeg) 此照程序代码每个文件夹都包含了一个说明.txt,请运行前仔细阅读,会帮助你更好的理解程序。步骤一步步执行即可。 **在此承诺,以上实验均真实有效!** **代码目录** ![7d1f5d305d4c9ce5aa9c98985ab6916c.png](https://img-blog.csdnimg.cn/img_convert/7d1f5d305d4c9ce5aa9c98985ab6916c.png) **代码获取** 链接:https://mbd.pub/o/bread/ZZ6TmZhx ![3545288fcef419484b9c43cb228a82e5.png](https://img-blog.csdnimg.cn/img_convert/3545288fcef419484b9c43cb228a82e5.png) 参考文献: \[1\]余传粮,梁睿君,冉文丰,等.基于STFT和CNN的齿轮箱故障诊断\[J\].机械制造与自动化,2022,51(03):152-154+195.DOI:10.19344/j.cnki.issn1671-5276.2022.03.037. \[2\]唐纪凯,卢一相,柏壮壮,等.基于同步压缩小波变换和CNN的滚动轴承故障诊断\[J\].传感器与微系统,2022,41(06):130-133.DOI:10.13873/J.1000-9787(2022)06-0130-04. **获取更多代码:** ![62148cb217e1c37ce05b5fa82bec92a3.png](https://img-blog.csdnimg.cn/img_convert/62148cb217e1c37ce05b5fa82bec92a3.png) ```javascript 或者复制链接跳转: https://docs.qq.com/sheet/DU3NjYkF5TWdFUnpu ```

相关推荐
AI军哥17 分钟前
MySQL8的安装方法
人工智能·mysql·yolo·机器学习·deepseek
余弦的倒数31 分钟前
知识蒸馏和迁移学习的区别
人工智能·机器学习·迁移学习
Allen Bright31 分钟前
【机器学习-线性回归-2】理解线性回归中的连续值与离散值
人工智能·机器学习·线性回归
青松@FasterAI1 小时前
【程序员 NLP 入门】词嵌入 - 上下文中的窗口大小是什么意思? (★小白必会版★)
人工智能·自然语言处理
AIGC大时代1 小时前
高效使用DeepSeek对“情境+ 对象 +问题“型课题进行开题!
数据库·人工智能·算法·aigc·智能写作·deepseek
硅谷秋水1 小时前
GAIA-2:用于自动驾驶的可控多视图生成世界模型
人工智能·机器学习·自动驾驶
偶尔微微一笑2 小时前
AI网络渗透kali应用(gptshell)
linux·人工智能·python·自然语言处理·编辑器
深度之眼2 小时前
2025时间序列都有哪些创新点可做——总结篇
人工智能·深度学习·机器学习·时间序列
沅_Yuan2 小时前
基于贝叶斯优化的Transformer多输入单输出回归预测模型Bayes-Transformer【MATLAB】
神经网络·matlab·回归·贝叶斯·transformer·回归预测
晓数2 小时前
【硬核干货】JetBrains AI Assistant 干货笔记
人工智能·笔记·jetbrains·ai assistant