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

一、项目简介

本文主要介绍如何使用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日

相关推荐

  • 埃克塞特排名_埃克塞特排名qs

    美国高中申请最后时间已经到来。最近,想要申请到高端私立高中的家长有所增加。他们中的大多数人都想去排名好的学校,但许多家长对这些学校不是很熟悉。可以说他们对排名只是一知半解。留美网奉劝大家其实没必要太执着于排名。给孩子最好的学校是适合孩子的学校,这与孩子的性格和学术水平以及申请大学密切相关。当学生进入一所适合自己的学校时,他们的优势和潜力可以得到发掘,最好在全…

    2024年3月24日
  • 爱尔兰利默瑞克大学费用

    利莫瑞克大学是爱尔兰七所国立大学之一,是世界优秀大学之一。今天兆龙留学-爱尔兰留学签证网为大家介绍一下利莫瑞克大学新的航空相关本科专业。不同于我们常见的航空工程,航空管理类专业。这次UL新推出的是名为:飞机维护与运营技术的本科专业。课程代码:LM120。 关于利莫瑞克大学 爱尔兰利莫瑞克大学(UL)是一所具有活力和创新的综合性大学,在校13000名学生并且具…

    2025年9月4日
  • 沙特国王大学qs排名

    您是否希望在其中一所沙特大学学习?无论您是沙特公民还是国际申请人,我们都会根据QS世界大学排名,QS阿拉伯地区大学排名和QS高等教育系统实力排名等全球排名,为您带来沙特王国排名前七的大学。这些排名试图突出那些在培养学生和开展突破性研究方面做得很好的大学。沙特阿拉伯不仅在过去几年中发展了中东地区发展最快的高等教育系统之一,而且还成为阿拉伯地区许多领先大学的所在…

    2024年11月12日
  • 文科专业排名(文科专业排名排行榜)

    我们将一些热门专业在内蒙古高考、2022年文科本一批录取分,按大类排序整理出来,供2023届高考生和家长填报志愿参考。一般来说,近几年招生院校及专业相对稳定。 院校+专业(类)的录取分顺序,基本反映了院校、专业的热度及录取难度。 这些热门专业均为人文社科类,包括经济学02、财政学类02、金融学类02、经济与贸易类02、法学类03、政治学类03(不推荐)、社会…

    2023年11月5日
  • 荷兰是北欧国家吗

    北欧,你或许并不知道它具体所指,但多少不会陌生——在家居、设计领域,北欧以简约、文艺或性冷淡风风靡全球,我国也不例外。从家居装饰到家用电器,从穿衣到出行工具(汽车),从旅游到美食,北欧标签,正在越来越多地受到我国人民的欢迎。 爱旅游的人觉得,北欧就是看极光的地方; 爱家居的人觉得,北欧就是宜家品牌的故乡瑞典….. 有时候,会有北欧三国,有时候又有…

    2024年6月12日
  • 布鲁塞尔自由大学在哪里

    4月14日上午,比利时布鲁塞尔自由大学(荷兰语,VUB)校长Caroline Pauwels教授和比利时布鲁塞尔自由大学(法语,ULB)校长Yvon Englert教授共同率两校代表团访问西电,这是两所布鲁塞尔自由大学首次共同到访中国。 西安电子科技大学副校长李建东在北校区行政楼第三会议室会见了代表团。 李建东对代表团的来访表示热烈的欢迎,然后介绍了西电的基…

    2024年11月29日
  • 最新加拿大留学费用_最新加拿大留学费用一览表

    出国留学,这对于当代中国学生来说,一部分学生会选择,也有一部分学生因为不知如何准备留学从而对留学望而却步。今天来分享一些关于留学加拿大的申请攻略,希望有所帮助。 ✅国家简介加拿大是全球发达的经济体之一,制造业、高科技产业、服务业发达,资源工业、初级制造业和农业是国民经济的主要支柱,经济持续稳定增长 ✅留学费用相较于美国、欧洲、澳洲,加拿大留学费用还是比较低的…

    2024年4月16日
  • 美国佛罗里达州所有大学排名

    今天,US News发布了全新的2025年全美大学综合排名。从最新公布的排名来看,加州系院校以及公立院校,依然延续了去年强势的劲头。 “三巨头”今年格局依然保持,分别是普林斯顿大学、麻省理工学院和哈佛大学。 而加州大学系统的各院校,今年表现依然强势: 第一梯队还是UCB和UCLA,均进入前20;第二梯队为UCSD、UCD、UCI和UCSB,分别为29、33、…

    2024年11月20日
  • 香港大学四个校区都在哪

    文︱郭一鸣 中山大学深圳校区是我见过的内地最现代化的大学校园。所有建筑都仿照广州中山大学百年学府以及中山纪念堂的红墙绿瓦中西合璧的独特风格,形神兼备,连图书馆前的孙中山雕像,也是以一比一复制广州校区内的雕像。雕像矗立在校园内一座树木苍翠的小山顶,背后是一个欧式马蹄形走廊,走廊后面是六角形的图书馆,这里是整个校区的地标和核心。图书馆居高临下,从顶层可以俯瞰整个…

    2024年8月14日
  • 深圳国际学校小学排名一览表_深圳国际学校小学排名一览表和收费

    深圳国际小学数量多达数十所,目前不均匀地分布在深圳各区,其中以南山区是最多的; 本文小编分区一一整理了学校名单,并对各校学费进行了排序,择校家庭赶紧收藏! 大家可以根据学校位置以及费用预算从中筛选出合适学校。 罗湖区国际小学 1.深圳市华美外国语学校 【学费】8.80万/学年 (此处已添加小程序,请到今日头条客户端查看) 2.深圳市罗湖区港人子弟学校 【学费…

    2024年3月6日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

关注微信