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

往期精彩内容:
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博客
创新度高!!!需要发论文的同学即买即用
前言
轴承故障诊断面临着一些挑战。首先,轴承故障信号通常是复杂的非线性信号,包含丰富的频域和时域信息。传统的分析方法往往难以完整地捕捉到故障信号中的特征。其次,轴承故障信号往往伴随着背景噪声和干扰信号,增加了故障信号的提取和识别的难度。最后,轴承故障的类型和程度多种多样,需要一种灵活的方法来区分不同的故障模式。
本文基于凯斯西储大学(CWRU)轴承数据,使用特征提取和机器学习方法进行故障识,特征提取是通过从原始信号中提取有意义的特征来减少数据维度,并捕捉到信号的关键信息,机器学习方法能够基于这些特征建立模型,并通过训练和学习来识别不同的故障模式。这种结合可以提高轴承故障诊断的准确性和效率。凯斯西储大学轴承数据的详细介绍可以参考下文:
Python-凯斯西储大学(CWRU)轴承数据解读与分类处理_凯斯西储大学轴承数据集-CSDN博客
1 数据集和特征提取
1.1 数据集导入
参考之前的文章,进行故障10分类的预处理,凯斯西储大学轴承数据10分类数据集:

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

根据信号时间步长 1024 和 重叠率 0.5制作数据集

形成2330个样本, 单个样本长度 1024,加上一个标签类别。
1.2 故障信号特征提取
(1) 峭度(Kurtosis):衡量信号的尖锐程度,用于检测信号中的高频成分
(2) 熵值(Entropy):衡量信号的复杂程度和随机性,用于检测信号的频谱特性
(3) 分形值(Fractal Dimension):衡量信号的自相似性和复杂度,用于分析信号的分形特征
(4) 波形指标(Waveform Indicators):包括峰值因子、脉冲因子、裕度因子等,用于分析信号的时域特征
(5) 频谱指标(Spectral Indicators):包括峰值频率、能量比值、谱线形指标等,用于分析信号的频域特征
(6) 频域指标(Time-Frequency Indicators):包括瞬时频率、瞬时能量等,用于分析信号的时频特征
(7) 统计特征(Statistical Features):包括均值、方差、偏度等,用于描述信号的统计特性
(8) 小波包特征(Wavelet Packet Features):通过小波变换提取的特征,用于分析信号的时频局部特性
(9) 振动特征(Vibration Features):包括峰值振动、有效值振动等,用于描述信号的振动特性


选择了多种特征提取方法来捕捉信号的不同特征,共提取9类13个特征指标,来作为机器学习模型的训练与识别。
2超强模型XGBoost——原理介绍
2.1 原理介绍
论文链接:
XGBoost | Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining
GBoost模型(eXtreme Gradient Boosting)是一种梯度提升框架,由Tianqi Chen在2014年开发,并在机器学习领域广泛应用。XGBoost的核心思想是通过迭代地训练多个弱学习器,并将它们组合起来,实现强大的预测能力。它在梯度提升算法的基础上进行了改进和优化,具有高效、灵活和可扩展的特点。
下面是XGBoost的一些关键特性和原理:
1. 梯度提升:XGBoost使用了梯度提升算法,也称为增强学习(Boosting)算法。它通过迭代地训练多个弱学习器,并通过梯度下降的方式来优化模型的预测能力。每个弱学习器都是在前一个弱学习器的残差上进行训练,从而逐步减小预测误差。
2. 基于树的模型:XGBoost采用了基于树的模型,即决策树。决策树是一种非常灵活和可解释的模型,能够学习到复杂的非线性关系。XGBoost使用了CART(Classification and Regression Trees)作为默认的基学习器,每个决策树都是通过不断划分特征空间来实现分类或回归任务。
3. 正则化策略:为了防止过拟合,XGBoost引入了正则化策略。它通过控制决策树的复杂度来限制模型的学习能力。常用的正则化策略包括限制决策树的最大深度、叶子节点的最小样本数和叶子节点的权重衰减等。
4. 特征选择和分裂:XGBoost在构建决策树时,通过特征选择和分裂来最大化模型的增益。特征选择基于某种评估准则(如信息增益或基尼系数),选择对当前节点的划分最有利的特征。特征分裂则是确定特征划分点的过程,使得划分后的子节点能够最大程度地减小预测误差。
5. 并行计算:为了提高模型的训练速度,XGBoost使用了并行计算的策略。它通过多线程和分布式计算等技术,将训练任务分解为多个子任务,并在不同的处理器上同时进行计算。这样可以加快模型的训练速度,特别是在处理大规模数据集时表现优异。
6. 自定义损失函数:XGBoost允许用户自定义损失函数,以适应不同的任务和需求。用户可以根据具体问题的特点,定义适合的损失函数,并在模型训练过程中使用它。
XGBoost模型通过梯度提升算法和基于树的模型,在许多机器学习任务中都取得了很好的效果,包括分类、回归、排序和推荐等。我们利用其高效、灵活和可扩展的特性,使用XGBoost来构建一个梯度提升模型,通过迭代地训练多个决策树来实现轴承故障识别。
2.2 特征数据集制作

3 模型评估和对比
3.1 随机森林分类模型
模型分数、准确率、精确率、召回率、F1 Score

混淆矩阵

3.2 支持向量机SVM分类模型
模型分数、准确率、精确率、召回率、F1 Score

故障十分类混淆矩阵:

3.3 XGBoost分类模型
模型分数、准确率、精确率、召回率、F1 Score

故障十分类混淆矩阵:

实验结果表明,所提取的各种特征都对轴承故障诊断有一定的贡献。峭度、熵值和分形值能够帮助捕捉信号的尖锐程度、复杂程度和自相似性,从而有效地区分不同类型的故障。波形指标、频谱指标和频域指标能够提供信号的时域和频域特征,有助于识别故障的时频特性。统计特征、小波包特征和振动特征则能够描述信号的统计特性和振动特性,从而更好地区分故障模式。
对比可以看出来, XGBoost分类模型性能最好,在训练集、测试集上的表现最优,模型分数也是最高,在轴承故障诊断中取得了良好的效果。通过准确地捕捉到信号的特征和模式,能够对不同类型和程度的轴承故障进行准确的识别和分类,准确率达到100%,速度快,性能好,创新度高。
4 代码、数据整理如下:

相关文章:
Python轴承故障诊断 (13)基于故障信号特征提取的超强机器学习识别模型
往期精彩内容: Python-凯斯西储大学(CWRU)轴承数据解读与分类处理 Pytorch-LSTM轴承故障一维信号分类(一)-CSDN博客 Pytorch-CNN轴承故障一维信号分类(二)-CSDN博客 Pytorch-Transformer轴承故障一维信号分类(三)-CSDN博客 三十多个开源…...
VScode分文件编写C++报错 | 如何进行VScode分文件编写C++ | 不懂也能轻松解决版
分文件编写遇到的问题 分文件编写例子如下所示: 但是直接使用 Run Code 或者 调试C/C文件 会报错如下: 正在执行任务: C/C: g.exe 生成活动文件 正在启动生成… cmd /c chcp 65001>nul && D:\Librarys\mingw64\bin\g.exe -fdiagnostics-col…...
洞察前沿趋势!2024深圳国际金融科技大赛——西丽湖金融科技大学生挑战赛技术公开课指南
在当前信息技术与“互联网”深度融合的背景下,金融行业的转型升级是热门话题,创新与发展成为金融科技主旋律。随着区块链技术、人工智能技术、5G通信技术、大数据技术等前沿科技的飞速发展,它们与金融领域的深度融合,正引领着新型…...
Unity3D学习FPS游戏(4)重力模拟和角色跳跃
前言:前面两篇文章,已经实现了角色的移动和视角转动,但是角色并没有办法跳跃,有时候还会随着视角移动跑到天上。这是因为缺少重力系统,本篇将实现重力和角色跳跃功能。觉得有帮助的话可以点赞收藏支持一下!…...
C#基础知识-枚举
目录 枚举 1.分类 1.1普通枚举 1)默认情况 2)指定起始值 1.2标志枚举(Flag Enum) 位运算符与标志枚举 1)组合标志 2)检查标志 2.枚举与不同类型之间的转换 1)枚举->整型 2&#…...
系统架构设计师教程 第2章 2.1-2计算机系统及硬件 笔记
2.1计算机系统概述 ★☆☆☆☆ 计算机系统 (Computer System) 是指用于数据管理的计算机硬件、软件及网络组成的系统。 一般指由硬件子系统和软件子系统组成的系统,简称为计算机。 将连接多个计算机以实现计算机间数据交换能力的网络设备,称为计算机网…...
通过使用Visual Studio将你的程序一键发布到Docker
通过使用Visual Studio将你的程序一键发布到Docker 代码 阿里云容器镜像服务 https://www.aliyun.com/product/acr 添加Docker CE阿里云镜像仓库 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 安装Docker CE、Doc…...
vue2和vue3动态引入路由,权限控制
后端返回的路由结构(具体路由可以本地模拟) // 此路由自己本地模拟即可 const menus [{"title": "动态路由","meta": "{\"title\":\"动态路由\",\"noCache\":true}","component": "/t…...
Spring Boot:植物健康的智能守护者
2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…...
红黑树 学习笔记
目录 1.红黑树的概念 1.1红黑树的规则 1.2红黑树的效率 2.红黑树的实现 2.1红黑树的大致结构 2.2红黑树的插入 2.2.1红黑树插入的大致过程 2.2.2情况1:变色 2.2.3情况2:单旋+变色 2.2.4情况3:双旋变色 2.3红黑树的查找…...
linux更改系统时间
测试环境和生产环境代码完全一致,但是生产环境代码碰到了问题,报错类似time expired,猜测和系统时间有关系,修改之后确实好了。测试如下: 参考:centos7时间同步教程_centos7 时间同步,如果遇到…...
B站C#刘铁猛笔记
C#——刘铁猛笔记 类、名称空间(简述) 类(class)是构成程序的主体 名称空间(namespace)以树形结构组织类(其他类型) 名称空间:名称空间是用来组织和管理类、接口、结构…...
如何使用信号发生器产生正弦波并用数字示波器进行测量
使用信号发生器产生正弦波并用数字示波器进行测量的步骤如下: 1. 准备工作 所需设备 信号发生器数字示波器探头(通常为10X衰减探头)BNC电缆和适配器(如果需要) 2. 设置信号发生器 连接 使用BNC电缆将信号发生器的…...
XJ04、消费金融|授信基本概念及其流程设计
银行是经营风险的特殊行业,而银行授信则与银行业务和风险天然相伴。它是银行与客户建立业务关系的起点,也是银行风险管理的关键环节和核心要素。若要了解银行业务,就得先了解银行的授信业务;若要理解银行经营,就得先理…...
儿童预防接种预约微信小程序springboot+论文源码调试讲解
2相关技术 2.1微信小程序 小程序是一种新的开放能力,开发者可以快速地开发一个小程序。小程序可以在微信内被便捷地获取和传播,同时具有出色的使用体验。尤其拥抱微信生态圈,让微信小程序更加的如虎添翼,发展迅猛。 2.2 MYSQL数据…...
nginx 修改配置
如果你的后端服务在不同的端口上运行,但静态资源访问路径相同,你可以使用 Nginx 的 location 配置来将请求转发到不同的后端服务,同时处理静态文件。这里有几种常见的方式: 方案 1: 基于路径的配置 如果所有服务的静态资源路径相…...
孤岛架构在安全性方面
孤岛架构在安全性方面的考虑主要涉及如何确保每个孤岛的安全性,同时维护整个系统的安全。 关键的安全性考虑: 1. 数据隔离和访问控制 数据隔离:每个孤岛应该有独立的数据存储,以确保数据隔离。这有助于防止数据泄露和未经授权的…...
COSCon'24 志愿者招募令:共创开源新生活!
亲爱的开源爱好者们, 第九届中国开源年会(COSCon24)即将在北京中关村国家自主创新示范区会议中心于2024年11月2日至3日隆重举行。今年的主题是“Open Source, Open Life|开源新生活”,旨在探索开源技术如何在各个领域推…...
vscode使用make编译c的问题
问题1:makefile:2: *** missing separator. Stop vscode的配置问题,看这哥们的文章即可:https://blog.csdn.net/m0_57464986/article/details/134220676 问题2:创建makefile文件 直接创建文件名为“makefile”的文件即可&#x…...
管家婆财贸ERP BB019.操作员制单日期控制
最低适用版本: 财贸系列 20.0 插件简要功能说明: 定制操作员权限功能,根据服务器日期控制系统单据新增和修改更多细节描述见下方详细文档 插件操作视频: 进销存类定制插件--操作员制单日期控制 插件详细功能文档: …...
DSub:Android平台上最完整的Subsonic音乐客户端指南
DSub:Android平台上最完整的Subsonic音乐客户端指南 【免费下载链接】Subsonic Home of the DSub Android client fork 项目地址: https://gitcode.com/gh_mirrors/su/Subsonic DSub是一款专为Android设备设计的开源Subsonic客户端,让您能够随时随…...
为什么说Poe the Poet是Poetry和UV的最佳搭档?完整指南解析
为什么说Poe the Poet是Poetry和UV的最佳搭档?完整指南解析 【免费下载链接】poethepoet A task runner that works well with poetry or uv. 项目地址: https://gitcode.com/gh_mirrors/po/poethepoet Poe the Poet是一个功能强大的Python任务运行器&#x…...
AI辅助开发在扫地机机器人技术中的应用
扫地机机器人作为智能家居的核心产品,其开发涉及软件、结构和硬件等多个方向。传统开发流程依赖人工经验和试错,但人工智能(AI)技术的引入正逐步变革这一领域。本文将详细探讨AI如何辅助扫地机机器人的开发,覆盖软件、结构和硬件方向,并提供相关面试问题与答案。 引言 …...
Kubernetes_Pod调度策略与资源管理深度实战
Kubernetes Pod调度策略与资源管理深度实战:从原理到生产级配置指南 🎯 适用人群:有Docker基础的开发者、DevOps工程师、后端架构师 📖 阅读时间:约25分钟 | 代码实战:50+配置示例 💡 核心价值:掌握K8s Pod调度的核心机制,避免生产环境中的资源管理陷阱 前言:为什…...
用DevC++和OpenCV 2.4.10写个图像处理小工具:从环境搭建到第一个窗口程序
用DevC和OpenCV 2.4.10打造图像处理工具:从零到实战 在编程学习的道路上,没有什么比"动手做出一个实际可用的工具"更能激发学习动力了。本文将带你用DevC和OpenCV 2.4.10,从环境搭建开始,一步步创建一个能实际处理图像的…...
数据中台治理工具2026年排行
一、数据中台的“最后一公里”,卡在治理企业搭建数据中台,底层架构通常不会出大问题——数据湖、数据仓库、调度引擎、计算框架,市面上成熟的方案已经足够多。但真正让企业头疼的,是数据中台“建好之后”的问题:数据确…...
智能衬衫核心技术解析:柔性ECG传感器与云端监护系统如何守护心脏健康
1. 项目概述:一件能“救命”的智能衬衫 还记得那句经典的广告词吗?“我摔倒了,我起不来了!”几十年前,独居老人或心脏病患者的安全保障,往往依赖于一个挂在脖子上的紧急呼叫按钮。这种设备虽然提供了一种基…...
FPGA高速收发器CDR模块深度解析:从NRZ码中“捞出”时钟的RXOUTCLKPMA是怎么工作的?
FPGA高速收发器CDR模块技术探秘:解码NRZ数据中的时钟玄机 在高速数字通信系统中,时钟数据恢复(CDR)技术如同一位技艺精湛的侦探,能够从看似杂乱无章的NRZ(非归零码)数据流中,精准地&…...
AGENTS.md:为AI编码助手定制的项目说明书,提升人机协作效率
1. 项目概述:为什么你的项目需要一个“AI专属说明书”?如果你最近在尝试用GitHub Copilot、Cursor或者Claude Code来辅助开发,大概率遇到过这样的场景:你满怀期待地给AI下达一个指令,比如“帮我给这个React组件添加一个…...
如何通过智能LaTeX模板自动化论文排版,让学术写作回归本质
如何通过智能LaTeX模板自动化论文排版,让学术写作回归本质 【免费下载链接】BIThesis 📖 北京理工大学非官方 LaTeX 模板集合,包含本科、研究生毕业设计模板及更多。🎉 (更多文档请访问 wiki 和 release 中的手册&…...
