凯斯西储大学轴承故障数据

一、项目简介

本文主要介绍如何使用python搭建:一个基于深度学习的滚动轴承故障诊断系统

项目中涉及使用了多种方法对比检测结果,包括:

传统机器学习方法:随机森林深度学习方法:CNN增加残差模块后的深度学习方法:CNN+ResBlock

如各位童鞋需要更换训练数据,完全可以根据源码将图像和标注文件更换即可直接运行。

博主也参考过网上故障检测的相关文章,但大多是理论大于方法。很多同学肯定对原理不需要过多了解,只需要搭建出一个基于深度学习的轴承故障预测系统即可。

也正是因为我发现网上大多的帖子只是针对原理进行介绍,功能实现的相对很少。

如果您有以上想法,那就找对地方了!

不多废话,直接进入正题!

二、数据介绍

本次项目的数据是使用的凯斯西储大学(Case Western Reserve University)轴承数据中心的开源数据集。

数据文件采用Matlab格式。每个文件都包含风扇和驱动端振动数据以及电机转速。对于所有文件,变量名称中的以下项表示:

DE – 驱动端加速计数据

FE – 风扇端加速计数据

BA – 基础加速计数据

time – 时间序列数据

RPM- 测试期间的转速

2.1 故障类型图示2.2 数据图示2.3 查看单个数据文件情况2.4 数据分布情况

博主对:

正常

内圈故障

外圈故障

滚动体故障

四种不同情况下轴承的数据分布进行了可视化展示,由于图示较多,这里只展示内圈故障的一个文件的数据分布情况,其他情况感兴趣的同学可以下载完整代码运行看看。

三、数据预处理

通过可视化观察发现数据波长周期基本上为100-200左右,博主这边使用1000作为采样长度,对所有轴承数据进行采样,并构建label。我们这次需要学习并预测的是输入的轴承数据是为:正常、内圈故障、外圈故障、滚动体故障。中哪一类,因此是一个4分类的任务。处理后数据分布如下:

正常样本:1696个

内圈故障样本:1455个

滚动体故障样本:1457个

外圈故障样本: 1457个

然后对数据进行采样,保证每类数据1400个。

data_train = np.asarray(data_normal[:1400] + data_inner[:1400] + data_ball[:1400] + data_outer[:1400],dtype = 'float64')label = np.asarray(label_normal[:1400] + label_inner[:1400] + label_ball[:1400] + label_outer[:1400],dtype = 'int64')print("处理后样本shape:",data_train.shape)print("处理后数据类别分布:",Counter(label))# 保存数据np.save("train_data/train_data.npy",data_train)np.save("train_data/label.npy",label)print("数据保存成功,位置:/train_data/")

四、模型训练及评估4.1 加载数据

def load_data(): # 读取数据 x = np.load('train_data/train_data.npy') y = np.load('train_data/label.npy') num = len(Counter(y)) print("类别数量为:", num) return x, y, num # 读取数据data, label, label_count = load_data()# 生成训练集测试集,70%用作训练,30%用作测试train_data, train_label, val_data, val_label = create_train_data(data, label, 0.7)print("*"*10)print("训练集数量:",len(train_label))print("测试集数量:",len(val_label))

4.2 随机森林

# 模型参数设置rfc = RandomForestClassifier(n_estimators = 50,min_samples_split = 5,min_samples_leaf = 4,max_depth = 5)# 模型准确率和损失值acc_list = []loss_list = []train_acc_list = []print("开始训练")for i in range(1,epoch +1): # 模型训练 rfc.fit(m_train,train_label) # # 训练集 # y_train = rfc.predict(m_train) # 测试集 y_pred = np.asarray(rfc.predict(m_val),dtype = 'int64') # 计算准确率 acc = round(accuracy_score(val_label, y_pred),3) # 训练集 y_pred = np.asarray(rfc.predict(m_train),dtype = 'int64') # 计算准确率 train_acc = round(accuracy_score(train_label, y_pred),3) # print('测试集准确率:', round(accuracy_score(val_label, y_pred),3)) acc_list.append(acc) train_acc_list.append(train_acc) # 计算损失值 # 使用one-hot编码计算损失值 noe_hot = OneHotEncoder(sparse = False) y_pred_o = noe_hot.fit_transform(y_pred.reshape(1, -1)) val_label_o = noe_hot.fit_transform(val_label.reshape(1, -1))# loss = round(log_loss(val_label_o,y_pred_o),3) # print("loss:",round(log_loss(val_label,y_pred),3))# loss_list.append(loss) print("完成第",i,"轮训练,测试集准确率:",acc)

4.2.1 模型训练4.2.2 模型测试4.3 CNN

构建一个CNN网络,结构如下:

4.3.1 模型训练4.3.2 模型测试

可以看到,使用原始cnn模型训练后准确率只有83。类标2即“内圈故障”的召回率较低,无法准确有效识别。

4.4 CNN+ResBlock

模型构建:

import n_model as mdimport tensorflow as tf# 模型参数model_param = { "a_shape": 1000, "b_shape": 2, "label_count": 4, "num_b":5}data_shape=(model_param['a_shape'],model_param['b_shape'])# 模型实例化model = md.CNN_ResNet_model(model_param['label_count'] , model_param['num_b'] , data_shape=data_shape)# 使用学习率进行训练res_model = model.model_create(learning_rate = 1e-4)# 模型网络结构print("实例化模型成功,网络结构如下:")print(res_model.summary())# 设置模型log输出地址log_dir = os.path.join("logs/ResNet")if not os.path.exists(log_dir): os.mkdir(log_dir)

4.4.1 模型训练4.4.2 模型测试

可以看到,增加了残差模块的CNN网络已经能准确对不同故障类型进行分类,准确率和召回率均在95分以上。

五、完整代码地址

由于项目代码量和数据集较大,感兴趣的同学可以下载完整代码,使用过程中如遇到任何问题可以在评论区评论或者私信我,我都会一一解答。

完整代码下载:

点击即可获取→→→→→AI鈥斺€擹iLiaoHuoQu←←←←←←

声明:壹贝网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者wangteng@admin所有,原文出处。若您的权利被侵害,请联系 756005163@qq.com 删除。

本文链接:https://www.ebaa.cn/36550.html

(0)
上一篇 2024年11月22日
下一篇 2024年11月22日

相关推荐

  • 心理学专业世界排名

    “心理学”最新排名出炉,北京师范大学毫无争议排名全国第一,华南师范大学超过北京大学排名第二让我长见识了,西南大学排名第四位。西南大学成立也有二十年了,感觉发展势头还没有以前的西南师范大学和西南农业大学好,这是我的错觉还是你们也有这个想法呢! 全国前十中,只有排名第三的北京大学和第十的浙江大学不是“师范大学”,中国人民大学只能排名第11位,随后就是南京师范大学…

    2025年10月30日
  • 央行安排下一阶段金融稳定工作 完善系统性风险认定机制 强化风险提示和早期预警

    中国人民银行近日召开2024年金融稳定工作会议,总结2023年金融稳定工作,分析当前金融形势,安排下一阶段工作。 会议认为,2023年中国人民银行金融稳定系统深入贯彻党中央、国务院决策部署,持续健全金融风险监测评估框架,坚持对风险早识别、早预警、早暴露、早处置,有效防范化解金融风险,强化金融稳定保障体系,推动深化金融体制改革,助力金融高质量发展和金融强国建设…

    2024年4月18日
  • 亚利桑那州立大学校徽

    在1961年,约翰·肯尼迪创立美国旅行社开始推动旅游业的发展以后,美国联邦政府及全国50个州、波多黎各和哥伦比亚特区纷纷设立了专门的旅游部门。这些部门通过融合各地的自然风光、文化遗产、地方特色及户外活动等元素,成功地打造了各自鲜明的旅游形象,有效地吸引了游客并促进了当地旅游业的发展。这些标志不仅仅是视觉符号,更承载着各地区的历史传承与独特魅力。 许多州的旅游…

    2025年8月8日
  • 法国最佳十大商学院

    法国雷恩商学院(Rennes School of Business)位于法国第一宜居城市-雷恩市,是全欧洲最具国际化的商学院。学院95%的教授来自法国以外的42个国家,55%的在校生为国际学生,与全球300多所精英大学建立了交流与合作。学院通过AACSB、EQUIS、AMBA三大权威认证,全球只有不到1%的商学院可以同时获得此三大认证,是全球最好的商学院之一…

    2024年7月26日
  • 出国留学中介收费标准_出国留学中介收费标准是多少

    作为很多同学在留学申请过程中的重要一环,留学中介近年来受到的关注也越来越多,除了中介好坏,中介口碑等问题,对于中介费用的关注也在逐渐增多。为什么不同机构的留学中介费用差别那么大?影响中介费用的因素到底有哪些?下面英国本土留学机构–优越留学为您介绍。 出国留学中介费用有多少? 中介的费用大多是由每个留学机构自定的,因为在出国留学中介费用上,目前物价…

    2024年4月19日
  • 日本国立鸟取大学的世界排名

    近日,QS 公布了 2025 亚洲大学排行榜(QS University Rankings Asia 2025)此次排名涵盖了亚洲地区 25 个高等教育体系中的 984 所优秀高校,与去年相比,新增了 127 所院校。 2025 QS亚洲大学排行榜呈现出以下特点: 一、整体上榜情况: 2025QS 亚洲大学排名覆盖了亚洲地区 25 个高等教育体系的 984 …

    2024年11月24日
  • 证监会:证券交易所对程序化交易实行实时监控 加强高频交易监管

    5月15日,中国证监会发布《证券市场程序化交易管理规定(试行)》(以下简称《管理规定》),进一步促进程序化交易规范发展,维护证券交易秩序和市场公平。《管理规定》自2024年10月8日起正式实施。 《管理规定》紧紧围绕强监管、防风险、促高质量发展的主线,坚持“趋利避害、突出公平、有效监管、规范发展”的总体思路,对证券市场程序化交易(市场通常称为量化交易)监管作…

    2024年5月16日
  • 官方大学排名(官方大学排名全国)

    中国哪些大学排名靠前?今天为大家分享由中国大学排行榜官网(CNUR)发布的2023中国大学排名榜,其中包括师范类、财经类、医药类、政法类等排名以及公办、民办、独立学院、中外合作大学排名榜,小伙伴们快来了解一下吧~ 师范类 财经类 医药类 语言类 艺术类 体育类 政法类 中国大学排名主榜600强 中国民办大学排名 中国独立学院排名 中外合作办学 END

    2023年11月24日
  • 贵州大学明德学院是公办吗

    2月18日,贵州省教育厅官网发布《关于对8所独立学院转设的公示》,拟按程序将贵州大学科技学院、贵州大学明德学院等在内的8所独立学院转设。 公示全文如下: 省教育厅关于对8所独立学院转设的公示 根据《中华人民共和国高等教育法》《普通高等学校设置暂行条例》《普通本科学校设置暂行规定》和《教育部办公厅印发〈关于加快推进独立学院转设工作的实施方案〉的通知》(教发厅〔…

    2025年4月18日
  • 2024美国留学

    界面新闻记者 | 查沁君 界面新闻编辑 | 宋佳楠 过去一年,中国留学市场持续回暖,但在细分留学目的地上,呈现出明显分化。 一方面,留学占比最高的中国留美、留英市场持续缩水,尚未恢复到疫情前规模;另一方面,以中国港澳地区、新加坡为代表的亚洲留学/求学目的地,和以德国、法国、意大利为代表的欧洲国家留学增势强劲。 印度学生规模15年来首次超越中国,成为美国最大的…

    2026年1月8日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信