当前位置: 首页 > article >正文

Python轴承故障诊断 (15)基于CNN-Transformer的一维故障信号识别模型

往期精彩内容:

Python-凯斯西储大学(CWRU)轴承数据解读与分类处理

Pytorch-LSTM轴承故障一维信号分类(一)-CSDN博客

Pytorch-CNN轴承故障一维信号分类(二)-CSDN博客

Pytorch-Transformer轴承故障一维信号分类(三)-CSDN博客

三十多个开源数据集 | 故障诊断再也不用担心数据集了!

Python轴承故障诊断 (一)短时傅里叶变换STFT-CSDN博客

Python轴承故障诊断 (二)连续小波变换CWT-CSDN博客

Python轴承故障诊断 (三)经验模态分解EMD-CSDN博客

Python轴承故障诊断 (四)基于EMD-CNN的故障分类-CSDN博客

Python轴承故障诊断 (五)基于EMD-LSTM的故障分类-CSDN博客

Python轴承故障诊断 (六)基于EMD-Transformer的故障分类-CSDN博客

Python轴承故障诊断 (七)基于EMD-CNN-LSTM的故障分类-CSDN博客

Python轴承故障诊断 (八)基于EMD-CNN-GRU并行模型的故障分类-CSDN博客

Python轴承故障诊断 (九)基于VMD+CNN-BiLSTM的故障分类-CSDN博客

Python轴承故障诊断 (十)基于VMD+CNN-Transfromer的故障分类-CSDN博客

基于FFT + CNN - BiGRU-Attention 时域、频域特征注意力融合的轴承故障识别模型-CSDN博客

基于FFT + CNN - Transformer 时域、频域特征融合的轴承故障识别模型-CSDN博客

Python轴承故障诊断 (11)基于VMD+CNN-BiGRU-Attenion的故障分类-CSDN博客

交叉注意力融合时域、频域特征的FFT + CNN -BiLSTM-CrossAttention轴承故障识别模型-CSDN博客

交叉注意力融合时域、频域特征的FFT + CNN-Transformer-CrossAttention轴承故障识别模型-CSDN博客

轴承故障诊断 (12)基于交叉注意力特征融合的VMD+CNN-BiLSTM-CrossAttention故障识别模型_基于残差混合域注意力cnn的轴承故障诊断及其时频域可解释性-CSDN博客

Python轴承故障诊断 (13)基于故障信号特征提取的超强机器学习识别模型-CSDN博客

Python轴承故障诊断 (14)高创新故障识别模型-CSDN博客

注意:本模型继续加入 凯斯西储大学(CWRU)轴承故障诊代码 全家桶中,之前购买的同学请及时更新下载

全网最低价,入门轴承故障诊断最佳教程,高性价比、高质量代码,大家可以了解一下:(所有全家桶模型会不断加入新的模型进行更新!后续会逐渐提高价格,越早购买性价比越高!!!

前言

本文基于凯斯西储大学(CWRU)轴承数据,先经过数据预处理进行数据集的制作和加载,最后通过Pytorch实现CNN-Transformer模型对故障数据的分类。凯斯西储大学轴承数据的详细介绍可以参考下文:

Python-凯斯西储大学(CWRU)轴承数据解读与分类处理_凯斯西储大学轴承数据集-CSDN博客

1 模型整体结构

模型整体结构如下所示:

2 轴承数据加载与预处理

2.1 导入数据

参考之前的文章,进行故障10分类的预处理,凯斯西储大学轴承数据10分类数据集:

train_set、val_set、test_set 均为按照7:2:1划分训练集、验证集、测试集,最后保存数据

上图是数据的读取形式以及预处理思路

2.2 数据预处理,制作数据集

3 基于Pytorch的CNN-Transfromer轴承故障诊断分类

3.1 定义CNN-Transfromer分类网络模型

注意:输入数据维度为[32, 1, 1024], 先送入CNN网络进行1d的卷积池化,然后再把卷积池化的空间特征送入Transformer进行信号特征增强,最终送入全连接层和softmax进行分类。

3.2 设置参数,训练模型

100个epoch,准确率将近100%,CNN-Transformer网络分类效果显著,CNN-Transformer模型能够充分提取轴承故障信号的全局空间和局部特征,收敛速度快,性能特别优越,效果明显。

注意调整参数:

  • 可以适当增加 CNN层数和隐藏层维度数,微调学习率;

  • 增加Transformer编码器层数和维度数,增加更多的 epoch (注意防止过拟合)

  • 可以改变一维信号堆叠的形状(设置合适的长度和维度)

3.3 模型评估

准确率、精确率、召回率、F1 Score

故障十分类混淆矩阵:

4 代码、数据整理如下:



http://www.kler.cn/a/374950.html

相关文章:

  • 从0攒一个分布大数据/人工智能/数据库 处理引擎
  • 【Coroutines】Full Understanding of Kotlinx.Corutines Framework
  • 深度学习模型入门教程指南
  • C语言指针的介绍
  • OpenAI 的 Whisper:盛名之下,其实难副?
  • ZeroNL2SQL:零样本 NL2SQL
  • vue2 的12种 vs vue3 的9种组件通信整理
  • 【Wi-Fi】Wi-Fi 7(802.11be) Vs Wi-Fi 8 (802.11bn)
  • 「Mac畅玩鸿蒙与硬件19」鸿蒙UI组件篇9 - 自定义动画实现
  • 臻于智境 安全护航 亚信安全受邀出席新华三智算新品发布会
  • vue3二次封装UI组件
  • 深入理解 Dockerfile 和 docker-compose[实战篇]
  • 持续监控和反馈:工具与方法详解
  • Python数据类型:数字
  • 信息学奥赛复赛考点变化趋势分析:动态规划与数据结构成主流
  • .NET Core WebApi第6讲:WebApi的前端怎么派人去拿数据?(区别MVC)
  • STM32之看门狗
  • C++学习路线(二十七)
  • 12. 内存管理
  • 修改Windows远程桌面3389端口
  • 一. nginx学习笔记 又长又臭篇幅
  • Go如何实现自旋锁
  • 【项目小技巧】【C++】 Debug 日志输出 调用者的函数名,所在文件名和行号
  • C语言学,标准库 <string.h>
  • 自适应神经网络架构:原理解析与代码示例
  • 操作系统期中复习第一单元